1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fno-tree-vrp -fdump-tree-dom-details" } */
3 
4 
5 
load(long * p)6 static 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)15 long 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