1 /* { dg-do compile { target { powerpc*-*-linux* } } } */
2 /* { dg-require-effective-target ppc_float128_sw } */
3 /* { dg-require-effective-target vsx_hw } */
4 /* { dg-options "-mvsx -O2 -mfloat128 -mabi=ieeelongdouble -Wno-psabi" } */
6 /* Test whether we convert __builtin_<math>l to __builtin_<math>f128 if the
7 default long double type is IEEE 128-bit. Also test that using the explicit
8 __builtin_<math>f128 function does not interfere with the __builtin_<math>l
11 extern __float128
sinf128 (__float128
);
13 void foo (__float128
*p
, long double *q
, long double *r
)
16 *q
= __builtin_sinl (*q
);
19 /* { dg-final { scan-assembler-times {\mbl sinf128\M} 2 } } */
20 /* { dg-final { scan-assembler-not {\mbl sinl\M} } } */