1 /* { dg-do compile } */
2 /* { dg-options "-O3 -march=z14 -mzarch --save-temps" } */
3 /* { dg-do run { target { s390_z14_hw } } } */
4 #include <assert.h>
5 #include <stdint.h>
6 
7 __attribute__ ((noipa)) static long double
long_double_from_decimal128(_Decimal128 x)8 long_double_from_decimal128 (_Decimal128 x)
9 {
10   return x;
11 }
12 
13 /* { dg-final { scan-assembler-times {\n\tpfpo\n} 1 } } */
14 
15 int
main(void)16 main (void)
17 {
18   assert (long_double_from_decimal128 ((_Decimal128) 42) == 42.L);
19   assert (long_double_from_decimal128 ((_Decimal128) -42) == -42.L);
20 }
21