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_i16(int16_t x)8long_double_from_i16 (int16_t x) 9 { 10 return x; 11 } 12 13 /* { dg-final { scan-assembler-times {\n\tcxfbr\t} 1 } } */ 14 15 int main(void)16main (void) 17 { 18 assert (long_double_from_i16 (42) == 42.L); 19 assert (long_double_from_i16 (-42) == -42.L); 20 } 21