2018-04-09 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / gcc.dg / pr69442.c
blobee75f92951a432f9f4706462d17251634bc4677d
1 /* PR target/69442 */
2 /* { dg-do run } */
3 /* { dg-options "-Og" } */
5 unsigned long long __attribute__ ((noinline, noclone))
6 foo (unsigned int x, unsigned long long y)
8 x |= 0xffff;
9 y -= 0xffULL;
10 y %= 0xffff0000ffffffe7ULL;
11 return x + y;
14 int
15 main ()
17 if (sizeof (unsigned long long) * __CHAR_BIT__ != 64)
18 return 0;
20 if (foo (0, 0) != 0xffff0000ff19ULL)
21 __builtin_abort ();
22 return 0;