1 /* PR tree-optimization/58791 */ 2 /* { dg-do run } */ 3 /* { dg-options "-g" } */ 4 5 #include "../nop.h" 6 7 __attribute__((noinline, noclone)) int foo(unsigned char c)8foo (unsigned char c) 9 { 10 int ret; 11 _Bool a, b, d, e, f; 12 13 a = c == 34; 14 b = c == 32; 15 d = a | b; 16 f = !d; 17 if (d) 18 ret = 1; 19 else 20 { 21 e = c <= 31; 22 ret = e; 23 } 24 25 asm volatile (NOP : : : "memory"); /* { dg-final { gdb-test pr58791-2.c:27 "d & 1" "1" } } */ 26 asm volatile (NOP : : : "memory"); /* { dg-final { gdb-test pr58791-2.c:27 "f & 1" "0" } } */ 27 return ret; 28 } 29 30 31 int main()32main () 33 { 34 foo (32); 35 return 0; 36 } 37