1 /* { dg-do compile } */
2 /* { dg-options "-O1" } */
3
neq(int a,int b)4 int neq (int a, int b)
5 {
6 return a != b;
7 }
8
eq(int a,int b)9 int eq (int a, int b)
10 {
11 return a == b;
12 }
13
lt(unsigned int a,unsigned int b)14 int lt (unsigned int a, unsigned int b)
15 {
16 return a < b;
17 }
18
leq(unsigned int a,unsigned int b)19 int leq (unsigned int a, unsigned int b)
20 {
21 return a <= b;
22 }
23
geq(unsigned int a,unsigned int b)24 int geq (unsigned int a, unsigned int b)
25 {
26 return a >= b;
27 }
28
gt(unsigned int a,unsigned int b)29 int gt (unsigned int a, unsigned int b)
30 {
31 return a > b;
32 }
33
34 /* { dg-final { scan-assembler-times "xor\t%" 2 } } */
35 /* { dg-final { scan-assembler-times "addx\t%" 3 } } */
36 /* { dg-final { scan-assembler-times "subx\t%" 3 } } */
37 /* { dg-final { scan-assembler-times "cmp\t%" 6 } } */
38 /* { dg-final { scan-assembler-not "sra\t%" { target lp64 } } } */
39