PR tree-optimization/86231
[official-gcc.git] / gcc / testsuite / gcc.c-torture / execute / pr86231.c
blob79232ebd7f163fa01dba685e5765bb3012ec8c9e
1 /* PR tree-optimization/86231 */
3 #define ONE ((void *) 1)
4 #define TWO ((void *) 2)
6 __attribute__((noipa)) int
7 foo (void *p, int x)
9 if (p == ONE) return 0;
10 if (!p)
11 p = x ? TWO : ONE;
12 return p == ONE ? 0 : 1;
15 int v[8];
17 int
18 main ()
20 if (foo ((void *) 0, 0) != 0
21 || foo ((void *) 0, 1) != 1
22 || foo (ONE, 0) != 0
23 || foo (ONE, 1) != 0
24 || foo (TWO, 0) != 1
25 || foo (TWO, 1) != 1
26 || foo (&v[7], 0) != 1
27 || foo (&v[7], 1) != 1)
28 __builtin_abort ();
29 return 0;