| /* { dg-do compile } */ | |
| /* { dg-options "-O2 -fno-tree-ccp -fno-tree-forwprop -fdump-tree-vrp1" } */ | |
| int f(int x) | |
| { | |
| if (x >= 0 && x <= 3) | |
| { | |
| x = x ^ 3; | |
| x = x & 3; | |
| } | |
| return x; | |
| } | |
| int g(int x) | |
| { | |
| if (x >= 0 && x <= 3) | |
| { | |
| x = x ^ 2; | |
| x = x & 3; | |
| } | |
| return x; | |
| } | |
| int h(int x) | |
| { | |
| if (x >= 0 && x <= 3) | |
| { | |
| x = x ^ 1; | |
| x = x & 3; | |
| } | |
| return x; | |
| } | |
| /* { dg-final { scan-tree-dump-not " & 3;" "vrp1" } } */ |