1 /* PR middle-end/30322 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-tree-original" } */
4
test1(int a)5 int test1(int a)
6 {
7 return a + ~a;
8 }
9
test2(int b)10 int test2(int b)
11 {
12 return ~b + b;
13 }
14
test3(unsigned int c)15 unsigned int test3(unsigned int c)
16 {
17 return c + ~c;
18 }
19
test4(unsigned int d)20 unsigned int test4(unsigned int d)
21 {
22 return ~d + d;
23 }
24
25 /* { dg-final { scan-tree-dump-times "\\+ a" 0 "original" } } */
26 /* { dg-final { scan-tree-dump-times "\\+ b" 0 "original" } } */
27 /* { dg-final { scan-tree-dump-times "\\+ c" 0 "original" } } */
28 /* { dg-final { scan-tree-dump-times "\\+ d" 0 "original" } } */
29 /* { dg-final { cleanup-tree-dump "original" } } */
30
31