1 /* PR tree-optimization/33136 */
3 /* { dg-options "-O2" } */
5 extern void abort (void);
18 __attribute__((noinline, const))
25 __attribute__((noinline))
30 /* As nothing ever takes the address of any int * field in struct S,
31 the write to *f can't alias with the s.c field. */
36 __attribute__((noinline))
41 /* Function foo takes address of an int field in struct S,
42 so *x can alias with the s.b field (and it does in this testcase). */
47 __attribute__((noinline))
51 return 10 * (bar (&f) != &d) + baz (foo ());