/* { dg-require-effective-target int128 } */ | |
typedef unsigned __int128 u128; | |
int a, c, d; | |
u128 b; | |
unsigned long long g0, g1; | |
void | |
store (unsigned long long a0, unsigned long long a1) | |
{ | |
g0 = a0; | |
g1 = a1; | |
} | |
void | |
foo (void) | |
{ | |
b += a; | |
c = d != 84347; | |
b /= c; | |
u128 x = b; | |
store (x >> 0, x >> 64); | |
} | |
int | |
main (void) | |
{ | |
foo (); | |
if (g0 != 0 || g1 != 0) | |
__builtin_abort (); | |
return 0; | |
} |