1 /* { dg-do compile } */
2 /* { dg-require-effective-target ilp32 } */
3 /* { dg-options "-O1 -mvis3" } */
4 
5 double d;
6 float f;
7 
test_convert_from_float(void)8 int test_convert_from_float(void)
9 {
10   return f;
11 }
12 
test_convert_from_double(void)13 int test_convert_from_double(void)
14 {
15   return d;
16 }
17 
test_convert_to_float(int x)18 float test_convert_to_float(int x)
19 {
20   return x;
21 }
22 
test_convert_to_double(int x)23 double test_convert_to_double(int x)
24 {
25   return x;
26 }
27 
28 /* { dg-final { scan-assembler-times "movstouw\t%" 2 } } */
29 /* { dg-final { scan-assembler-times "movwtos\t%" 2 } } */
30