1 /* PR middle-end/111683 */
3 /* { dg-options "-O2" } */
5 int b
[6] = { 3, 4, 5, 6, 7, 8 }, c
[12];
6 int d
[16] = { 0, 1, 3, 6, 10, 14, 12, 9, 5, 0, 0, 0 };
12 if (sizeof (int) * 2 != sizeof (long long))
14 for (i
= 0; i
< 6; i
++)
17 __builtin_memcpy (&a
, &c
[i
], sizeof (a
));
18 a
+= (((long long) i
) << (sizeof (int) * __CHAR_BIT__
)) + i
;
19 __builtin_memcpy (&c
[i
], &a
, sizeof (a
));
20 __builtin_memcpy (&a
, &c
[i
+ 2], sizeof (a
));
21 a
+= (((long long) i
) << (sizeof (int) * __CHAR_BIT__
)) + i
;
22 __builtin_memcpy (&c
[i
+ 2], &a
, sizeof (a
));
24 if (__builtin_memcmp (&c
[0], &d
[0], sizeof (c
)))