1 /* { dg-do compile } */ 2 /* { dg-options "-O2 -fno-tree-vrp -fdump-tree-dom-details" } */ 3 4 5 load(long * p)6static inline long load(long *p) 7 { 8 long ret; 9 asm ("xyzzy %1,%0\n\t" : "=r" (ret) : "m" (*p)); 10 if (ret != *p) 11 __builtin_unreachable(); 12 return ret; 13 } 14 foo(long * mem)15long foo(long *mem) 16 { 17 long ret; 18 ret = load(mem); 19 return ret + *mem; 20 } 21 22 /* { dg-final { scan-tree-dump "Folded to: _\[0-9\]+ = _\[0-9\]+ \\* 2" "dom2" } } */ 23