Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/gcc.dg/pr28685-1.c @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 /* { dg-do compile } */ | |
2 /* { dg-options "-O2 -fdump-tree-optimized -fno-ipa-icf" } */ | |
3 | |
4 /* Should produce <=. */ | |
5 int test1 (int a, int b) | |
6 { | |
7 return (a < b || a == b); | |
8 } | |
9 | |
10 /* Should produce <=. */ | |
11 int test2 (int a, int b) | |
12 { | |
13 int lt = a < b; | |
14 int eq = a == b; | |
15 | |
16 return (lt || eq); | |
17 } | |
18 | |
19 /* Should produce <= (just deleting redundant test). */ | |
20 int test3 (int a, int b) | |
21 { | |
22 int lt = a <= b; | |
23 int eq = a == b; | |
24 | |
25 return (lt || eq); | |
26 } | |
27 | |
28 /* Should produce <= (operands reversed to test the swap logic). */ | |
29 int test4 (int a, int b) | |
30 { | |
31 int lt = a < b; | |
32 int eq = b == a; | |
33 | |
34 return (lt || eq); | |
35 } | |
36 | |
37 /* Should produce constant 0. */ | |
38 int test5 (int a, int b) | |
39 { | |
40 int lt = a < b; | |
41 int eq = a == b; | |
42 | |
43 return (lt && eq); | |
44 } | |
45 | |
46 /* { dg-final { scan-tree-dump-times " <= " 4 "optimized" } } */ | |
47 /* { dg-final { scan-tree-dump-times "return 0" 1 "optimized" } } */ | |
48 /* { dg-final { scan-tree-dump-not " < " "optimized" } } */ | |
49 /* { dg-final { scan-tree-dump-not " == " "optimized" } } */ |