1/* { dg-do compile } */ 2/* { dg-options "-O2 -fdump-tree-original" } */ 3 4int test1(int a, int b) 5{ 6 return ~a == ~b; 7} 8 9int test2(int c, int d) 10{ 11 return -c == -d; 12} 13 14int test3(int e) 15{ 16 return -e == 5; 17} 18 19int test4(int f) 20{ 21 return ~f == 5; 22} 23 24int test5(int g, int h) 25{ 26 return ~g < ~h; 27} 28 29int test6(int i, int j) 30{ 31 return ~i >= ~j; 32} 33 34int test7(int k) 35{ 36 return ~k < 3; 37} 38 39int test8(int l) 40{ 41 return ~l >= 2; 42} 43 44/* { dg-final { scan-tree-dump-times "b == a" 1 "original" } } */ 45/* { dg-final { scan-tree-dump-times "c == d" 1 "original" } } */ 46/* { dg-final { scan-tree-dump-times "e == -5" 1 "original" } } */ 47/* { dg-final { scan-tree-dump-times "f == -6" 1 "original" } } */ 48/* { dg-final { scan-tree-dump-times "h < g" 1 "original" } } */ 49/* { dg-final { scan-tree-dump-times "j >= i" 1 "original" } } */ 50/* { dg-final { scan-tree-dump-times "k >= -3" 1 "original" } } */ 51/* { dg-final { scan-tree-dump-times "l < -2" 1 "original" } } */ 52/* { dg-final { cleanup-tree-dump "original" } } */ 53 54