(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
ira-shrinkwrap-prep-1.c
       1  /* { dg-do compile { target { { { i?86-*-* x86_64-*-* } && lp64 } || { { powerpc*-*-* && lp64 } || { arm_nothumb || { aarch64*-*-* && lp64 } } } } } } */
       2  /* { dg-options "-O3 -fdump-rtl-ira -fdump-rtl-pro_and_epilogue -fno-ipa-ra"  } */
       3  
       4  long __attribute__((noinline, noclone))
       5  foo (long a)
       6  {
       7    return a + 5;
       8  }
       9  
      10  static long g __attribute__ ((used));
      11  
      12  long __attribute__((noinline, noclone))
      13  bar (long a)
      14  {
      15    long r;
      16  
      17    if (a)
      18      {
      19        r = foo (a);
      20        g = r + a;
      21      }
      22    else
      23      r = a+1;
      24    return r;
      25  }
      26  
      27  /* { dg-final { scan-rtl-dump "Will split live ranges of parameters" "ira" } } */
      28  /* { dg-final { scan-rtl-dump "Split live-range of register" "ira" { xfail *-*-* } } } */
      29  /* { dg-final { scan-rtl-dump "Performing shrink-wrapping" "pro_and_epilogue" { xfail powerpc*-*-* } } } */