1  /* { dg-do run { target { power10_hw } } } */
       2  /* { dg-do link { target { ! power10_hw } } } */
       3  /* { dg-options "-mdejagnu-cpu=power8 -O2" } */
       4  /* { dg-require-effective-target powerpc_elfv2 } */
       5  /* { dg-require-effective-target power10_ok } */
       6  
       7  /* Test local calls between pcrel and non-pcrel code.
       8  
       9     Despite the cpu=power10 option, the code generated here should just
      10     be plain powerpc64, even the necessary linker stubs.  */
      11  
      12  int one = 1;
      13  
      14  int __attribute__ ((target("cpu=power8"),noclone,noinline))
      15  p8_func (int x)
      16  {
      17    return x - one;
      18  }
      19  
      20  int __attribute__ ((target("cpu=power10"),noclone,noinline))
      21  p10_func (int x)
      22  {
      23    return p8_func (x);
      24  }
      25  
      26  int
      27  main (void)
      28  {
      29    return p10_func (1);
      30  }