annotate gcc/testsuite/gcc.c-torture/compile/pr47157.c @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 /* PR rtl-optimization/47157 */
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 struct S { unsigned a; unsigned b; } c = { 1, 0 };
kono
parents:
diff changeset
4 unsigned long int e;
kono
parents:
diff changeset
5 void bar (int);
kono
parents:
diff changeset
6 int baz (void);
kono
parents:
diff changeset
7
kono
parents:
diff changeset
8 static int
kono
parents:
diff changeset
9 foo (int x, short y)
kono
parents:
diff changeset
10 {
kono
parents:
diff changeset
11 return ((x ^ y) & ((x ^ (x ^ y) & ~__INT_MAX__) - y ^ y)) < 0 ? x : x - y;
kono
parents:
diff changeset
12 }
kono
parents:
diff changeset
13
kono
parents:
diff changeset
14 void
kono
parents:
diff changeset
15 test (void)
kono
parents:
diff changeset
16 {
kono
parents:
diff changeset
17 bar (foo (baz () != (c.a | c.b), -1L));
kono
parents:
diff changeset
18 for (e = 0; e; e = 1)
kono
parents:
diff changeset
19 ;
kono
parents:
diff changeset
20 }