1 /* { dg-require-effective-target int128 } */ 2 3 typedef unsigned __int128 u128; 4 5 int a, c, d; 6 u128 b; 7 8 unsigned long long g0, g1; 9 10 void store(unsigned long long a0,unsigned long long a1)11store (unsigned long long a0, unsigned long long a1) 12 { 13 g0 = a0; 14 g1 = a1; 15 } 16 17 void foo(void)18foo (void) 19 { 20 b += a; 21 c = d != 84347; 22 b /= c; 23 u128 x = b; 24 store (x >> 0, x >> 64); 25 } 26 27 int main(void)28main (void) 29 { 30 foo (); 31 if (g0 != 0 || g1 != 0) 32 __builtin_abort (); 33 return 0; 34 } 35