/* PR rtl-optimization/70222 */ #if __CHAR_BIT__ == 8 && __SIZEOF_INT__ == 4 && __SIZEOF_LONG_LONG__ == 8 __attribute__((noinline, noclone)) unsigned int foo (int x) { unsigned long long y = -1ULL >> x; return (unsigned int) y >> 31; } #endif int main () { #if __CHAR_BIT__ == 8 && __SIZEOF_INT__ == 4 && __SIZEOF_LONG_LONG__ == 8 if (foo (15) != 1 || foo (32) != 1 || foo (33) != 0) __builtin_abort (); #endif return 0; }