(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
powerpc/
fusion-p10-addadd.c
       1  /* { dg-do compile } */
       2  /* { dg-options "-mdejagnu-cpu=power10 -O3 -dp" } */
       3  
       4  long addadd0(long a, long b, long c)
       5  {
       6    return a+b+c;
       7  }
       8  long addadd1(long a, long b, long c, long *t)
       9  {
      10    long r=a+b+c;
      11    *t = b;
      12    return r;
      13  }
      14  long addadd2(long s, long a, long b, long c)
      15  {
      16    return b+c+a;
      17  }
      18  
      19  typedef vector long vlong;
      20  vlong vaddadd(vlong a, vlong b, vlong c)
      21  {
      22    return a+b+c;
      23  }
      24  vlong vaddadd1(vlong a, vlong b, vlong c, vlong *t)
      25  {
      26    vlong r=a+b+c;
      27    *t = b;
      28    return r;
      29  }
      30  vlong vaddadd2(vlong s, vlong a, vlong b, vlong c)
      31  {
      32    return a+b+c;
      33  }
      34  
      35  /* { dg-final { scan-assembler-times {\mfuse_add_add\M/}                3 { target lp64 } } } */
      36  /* { dg-final { scan-assembler-times {\mfuse_vaddudm_vaddudm\M/}        3 { target lp64 } } } */
      37  /* { dg-final { scan-assembler-times {\mfuse_add_add\M/}                3 { target ilp32 } } } */
      38  /* { dg-final { scan-assembler-times {\mfuse_vaddudm_vaddudm\M/}        0 { target ilp32 } } } */