annotate gcc/testsuite/gcc.dg/tree-ssa/pr94718-5.c @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
152
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
1 /* PR tree-optimization/94718 */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 /* { dg-do compile } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3 /* { dg-options "-O2 -fno-ipa-icf -fdump-tree-optimized" } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4 /* { dg-final { scan-tree-dump-times "= \[xy]_\[0-9]+\\\(D\\\) \\^ \[xy]_\[0-9]+\\\(D\\\);" 8 "optimized" } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5 /* { dg-final { scan-tree-dump-times "\[0-9]+ >= 0;" 8 "optimized" } } */
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 f1 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10 return (x < 0) == (y < 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14 f2 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 return (x >= 0) == (y >= 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 f3 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22 return (x < 0) != (y >= 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26 f4 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
27 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
28 return (x >= 0) != (y < 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
29 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
30
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
31 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
32 f5 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
33 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
34 int s = (x < 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
35 int t = (y < 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
36 return s == t;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
37 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
38
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
39 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
40 f6 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
41 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
42 int s = (x >= 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
43 int t = (y >= 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
44 return s == t;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
45 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
46
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
47 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
48 f7 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
49 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
50 int s = (x < 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
51 int t = (y >= 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
52 return s != t;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
53 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
54
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
55 int
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
56 f8 (int x, int y)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
57 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
58 int s = (x >= 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
59 int t = (y < 0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
60 return s != t;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
61 }