annotate gcc/testsuite/gcc.dg/pr66299-3.c @ 132:d34655255c78

update gcc-8.2
author mir3636
date Thu, 25 Oct 2018 10:21:07 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* PR tree-optimization/66299 */
kono
parents:
diff changeset
2 /* { dg-do run } */
kono
parents:
diff changeset
3 /* { dg-options "-fdump-tree-original" } */
kono
parents:
diff changeset
4
kono
parents:
diff changeset
5 void __attribute__ ((noinline, noclone))
kono
parents:
diff changeset
6 test1 (int x)
kono
parents:
diff changeset
7 {
kono
parents:
diff changeset
8 if ((2 << x) == 1
kono
parents:
diff changeset
9 || (8 << x) == 1
kono
parents:
diff changeset
10 || (8 << x) == 2
kono
parents:
diff changeset
11 || (3072 << x) == 3
kono
parents:
diff changeset
12 || (294912 << x) == 9
kono
parents:
diff changeset
13 || (45056 << x) == 11
kono
parents:
diff changeset
14 || (2176 << x) == 17)
kono
parents:
diff changeset
15 __builtin_abort ();
kono
parents:
diff changeset
16 }
kono
parents:
diff changeset
17
kono
parents:
diff changeset
18 void __attribute__ ((noinline, noclone))
kono
parents:
diff changeset
19 test2 (int x)
kono
parents:
diff changeset
20 {
kono
parents:
diff changeset
21 if ((2 << x) != 1
kono
parents:
diff changeset
22 && (8 << x) != 1
kono
parents:
diff changeset
23 && (8 << x) != 2
kono
parents:
diff changeset
24 && (3072 << x) != 3
kono
parents:
diff changeset
25 && (294912 << x) != 9
kono
parents:
diff changeset
26 && (45056 << x) != 11
kono
parents:
diff changeset
27 && (2176 << x) != 17)
kono
parents:
diff changeset
28 ;
kono
parents:
diff changeset
29 else
kono
parents:
diff changeset
30 __builtin_abort ();
kono
parents:
diff changeset
31 }
kono
parents:
diff changeset
32
kono
parents:
diff changeset
33 void __attribute__ ((noinline, noclone))
kono
parents:
diff changeset
34 test3 (int x)
kono
parents:
diff changeset
35 {
kono
parents:
diff changeset
36 if ((3 << x) == 4
kono
parents:
diff changeset
37 || (1 << x) == 12
kono
parents:
diff changeset
38 || (40 << x) == 1024
kono
parents:
diff changeset
39 || (2 << x) == 84
kono
parents:
diff changeset
40 || (3 << x) == 16384
kono
parents:
diff changeset
41 || (10 << x) == 6144)
kono
parents:
diff changeset
42 __builtin_abort ();
kono
parents:
diff changeset
43 }
kono
parents:
diff changeset
44
kono
parents:
diff changeset
45 void __attribute__ ((noinline, noclone))
kono
parents:
diff changeset
46 test4 (int x)
kono
parents:
diff changeset
47 {
kono
parents:
diff changeset
48 if ((3 << x) != 4
kono
parents:
diff changeset
49 && (1 << x) != 12
kono
parents:
diff changeset
50 && (40 << x) != 1024
kono
parents:
diff changeset
51 && (2 << x) != 84
kono
parents:
diff changeset
52 && (3 << x) != 16384
kono
parents:
diff changeset
53 && (10 << x) != 6144)
kono
parents:
diff changeset
54 ;
kono
parents:
diff changeset
55 else
kono
parents:
diff changeset
56 __builtin_abort ();
kono
parents:
diff changeset
57 }
kono
parents:
diff changeset
58
kono
parents:
diff changeset
59 int
kono
parents:
diff changeset
60 main (void)
kono
parents:
diff changeset
61 {
kono
parents:
diff changeset
62 test1 (0);
kono
parents:
diff changeset
63 test2 (1);
kono
parents:
diff changeset
64 test3 (1);
kono
parents:
diff changeset
65 test4 (2);
kono
parents:
diff changeset
66 }
kono
parents:
diff changeset
67
kono
parents:
diff changeset
68 /* { dg-final { scan-tree-dump-not "(<<|==|!=)" "original" } } */