(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
guality/
pr95343.c
       1  /* { dg-do run } */
       2  /* { dg-options "-g -fno-ipa-icf" } */
       3  
       4  volatile int v;
       5  
       6  int __attribute__((noipa))
       7  get_val0 (void)  {return 0;}
       8  int __attribute__((noipa))
       9  get_val2 (void)  {return 2;}
      10  
      11  struct S
      12  {
      13    int a, b, c;
      14  };
      15  
      16  static int __attribute__((noinline))
      17  bar (struct S s, int x, int y, int z, int i)
      18  {
      19    int r;
      20    v = s.a + s.b;		/* { dg-final { gdb-test . "i+1" "3" } } */
      21    return r;
      22  }
      23  
      24  static int __attribute__((noinline))
      25  foo (struct S s, int i)
      26  {
      27    int r;
      28    r = bar (s, 3, 4, 5, i);
      29    return r;
      30  }
      31  
      32  
      33  int
      34  main (void)
      35  {
      36    struct S s;
      37    int i;
      38    i = get_val2 ();
      39    s.a = get_val0 ();
      40    s.b = get_val0 ();
      41    s.c = get_val0 ();
      42    int r = foo (s, i);
      43    v = r + i;
      44    return 0;
      45  }