1 /* PR tree-optimization/46491 */
2 /* { dg-do run } */
3 /* { dg-options "-O2" } */
4 
5 extern void abort (void);
6 
7 __attribute__((noinline)) int
foo(int * p)8 foo (int *p)
9 {
10   int r;
11   asm ("movl $6, (%1)\n\txorl %0, %0" : "=r" (r) : "r" (p) : "memory");
12   return r;
13 }
14 
15 int
main(void)16 main (void)
17 {
18   int p = 8;
19   if ((foo (&p) ? : p) != 6)
20     abort ();
21   return 0;
22 }
23