(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
guality/
pr43329-1.c
       1  /* PR debug/43329 */
       2  /* { dg-do run } */
       3  /* { dg-options "-g" } */
       4  
       5  #include "../nop.h"
       6  
       7  static inline void
       8  foo (int argx)
       9  {
      10    int varx = argx;
      11    __asm__ volatile (NOP);			/* { dg-final { gdb-test .+1 "argx" "25" } } */
      12    __asm__ volatile (NOP : : "g" (varx));	/* { dg-final { gdb-test . "varx" "25" } } */
      13  }
      14  
      15  int i;
      16  
      17  __attribute__((noinline))
      18  void baz (int x)
      19  {
      20    asm volatile ("" : : "r" (x) : "memory");
      21  }
      22  
      23  static inline void
      24  bar (void)
      25  {
      26    foo (25);
      27    i = i + 2;
      28    i = i * 2;
      29    i = i - 4;
      30    baz (i);
      31    i = i * 2;
      32    i = i >> 1;
      33    i = i << 6;
      34    baz (i);
      35    i = i + 2;
      36    i = i * 2;
      37    i = i - 4;
      38    baz (i);
      39    i = i * 2;
      40    i = i >> 6;
      41    i = i << 1;
      42    baz (i);
      43  }
      44  
      45  int
      46  main (void)
      47  {
      48    __asm__ volatile ("" : "=r" (i) : "0" (0));
      49    bar ();
      50    bar ();
      51    return i;
      52  }