(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.target/
powerpc/
dfp-builtin-2.c
       1  /* { dg-do compile { target { powerpc*-*-linux* } } } */
       2  /* { dg-require-effective-target hard_dfp } */
       3  /* { dg-options "-mdejagnu-cpu=power7 -O2" } */
       4  /* { dg-final { scan-assembler-times "ddedpdq " 4    } } */
       5  /* { dg-final { scan-assembler-times "denbcdq " 2    } } */
       6  /* { dg-final { scan-assembler-times "dxexq "   1    } } */
       7  /* { dg-final { scan-assembler-times "diexq "   1    } } */
       8  /* { dg-final { scan-assembler-times "dscliq "  2    } } */
       9  /* { dg-final { scan-assembler-times "dscriq "  2    } } */
      10  /* { dg-final { scan-assembler-not    "bl __builtin" } } */
      11  /* { dg-final { scan-assembler-not   "dctqpq"        } } */
      12  /* { dg-final { scan-assembler-not   "drdpq"         } } */
      13  /* { dg-final { scan-assembler-not   "stfd"          } } */
      14  /* { dg-final { scan-assembler-not   "lfd"           } } */
      15  
      16  _Decimal128
      17  do_dedpdq_0 (_Decimal128 a)
      18  {
      19    return __builtin_ddedpdq (0, a);
      20  }
      21  
      22  _Decimal128
      23  do_dedpdq_1 (_Decimal128 a)
      24  {
      25    return __builtin_ddedpdq (1, a);
      26  }
      27  
      28  _Decimal128
      29  do_dedpdq_2 (_Decimal128 a)
      30  {
      31    return __builtin_ddedpdq (2, a);
      32  }
      33  
      34  _Decimal128
      35  do_dedpdq_3 (_Decimal128 a)
      36  {
      37    return __builtin_ddedpdq (3, a);
      38  }
      39  
      40  _Decimal128
      41  do_enbcdq_0 (_Decimal128 a)
      42  {
      43    return __builtin_denbcdq (0, a);
      44  }
      45  
      46  _Decimal128
      47  do_enbcdq_1 (_Decimal128 a)
      48  {
      49    return __builtin_denbcdq (1, a);
      50  }
      51  
      52  _Decimal128
      53  do_xexq (_Decimal128 a)
      54  {
      55    return __builtin_dxexq (a);
      56  }
      57  
      58  _Decimal128
      59  do_iexq (_Decimal128 a, _Decimal128 b)
      60  {
      61    return __builtin_diexq (a, b);
      62  }
      63  
      64  _Decimal128
      65  do_scliq_1 (_Decimal128 a)
      66  {
      67    return __builtin_dscliq (a, 1);
      68  }
      69  
      70  _Decimal128
      71  do_scliq_10 (_Decimal128 a)
      72  {
      73    return __builtin_dscliq (a, 10);
      74  }
      75  
      76  _Decimal128
      77  do_scriq_1 (_Decimal128 a)
      78  {
      79    return __builtin_dscriq (a, 1);
      80  }
      81  
      82  _Decimal128
      83  do_scriq_10 (_Decimal128 a)
      84  {
      85    return __builtin_dscriq (a, 10);
      86  }