1  /* { dg-do compile } */
       2  /* { dg-options "-O2 -fno-tree-vrp -fdump-tree-dom-details" } */
       3  
       4  
       5  
       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  
      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" } } */