1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-original" } */
3 
f(int x)4 int f(int x)
5 {
6 	return (x >> 2) & 128;
7 }
8 
g(int x)9 int g(int x)
10 {
11 	return !!(x & 512) << 7;
12 }
13 
h(int x)14 int h(int x)
15 {
16 	return ((x >> 9) & 1) << 7;
17 }
18 
i(int x)19 int i(int x)
20 {
21 	return (x & 512) >> 9 << 7;
22 }
23 
j(int x)24 int j(int x)
25 {
26 	return ((x >> 9) & 1) ? 128 : 0;
27 }
28 
k(int x)29 int k(int x)
30 {
31 	return (x & 512) ? 128 : 0;
32 }
33 
34 /* { dg-final { scan-tree-dump-not " \\? " "original" } } */
35 /* { dg-final { scan-assembler-not "sall" { target i?86-*-* x86_64-*-* } } }" */
36