1/* PR rtl-optimization/17581 */ 2/* { dg-do run } */ 3/* { dg-options "-O2" } */ 4 5void abort (void); 6 7int foo(int x) 8{ 9 unsigned long long tmp = 0; 10 11 switch(x) { 12 case 21: 13 tmp |= 1; 14 tmp |= 2; 15 tmp |= 8; 16 break; 17 default: 18 break; 19 } 20 21 return (int)tmp; 22} 23 24int main() 25{ 26 if (foo(21) != 11) 27 abort (); 28 return 0; 29} 30 31