https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89769

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
--- pr89769.c.126t.pre_ 2019-03-19 07:17:59.000000000 -0400
+++ pr89769.c.126t.pre  2019-03-19 07:18:28.000000000 -0400
@@ -120,7 +120,7 @@ main ()
     goto <bb 4>;

   <bb 4>:
-  pretmp_5 = bid_Kx192[1].w[1];
+  pretmp_5 = bid_Kx192[1]{lb: 0 sz: 16}.w[1];

   <bb 5>:
   # i_24 = PHI <0(4), i_14(5)>

is the first difference and that difference is there up to *.optimized.
sizeof(bid_Kx192) is 768 bytes, so the aligned(16) attribute looks bogus, so
maybe just invalid testcase?
If one uses typedef struct __attribute__((aligned(16))) { unsigned long long
w[3]; } UINT192;
where the type then has 32 bytes in size, 16 byte alignment, rather than 24
bytes in size, then it works fine.

Reply via email to