1 /* { dg-do compile } */
2 /* { dg-options "-fdump-tree-gimple" } */
f(int a,int b)3 int f (int a, int b) {
4 	return ~(a ^ -(b + 1));
5 }
6 
g(int a,int b)7 int g (int a, int b) {
8 	return b ^ a;
9 }
10 
h(unsigned int a,unsigned int b)11 unsigned int h (unsigned int a, unsigned int b) {
12 	return ~(-(b + 1) ^ a);
13 }
14 
15 /* { dg-final { scan-tree-dump-times "b \\^ a" 3 "gimple" } } */
16 /* { dg-final { cleanup-tree-dump "gimple" } } */
17