1 /* { dg-do compile } */
2 /* { dg-require-effective-target ilp32 } */
3 /* { dg-options "-O1 -mvis3" } */
10 double fnegd (double a
)
15 float fmuls (float a
, float b
)
20 double fmuld (double a
, double b
)
25 double fsmuld (float a
, float b
)
27 return (double)a
* (double)b
;
30 double fnsmuld (float a
, float b
)
32 return -((double)a
* (double)b
);
35 /* { dg-final { scan-assembler-times "movwtos\t%" 13 } } */
36 /* { dg-final { scan-assembler "fnegs\t%" } } */
37 /* { dg-final { scan-assembler "fnegd\t%" } } */
38 /* { dg-final { scan-assembler "fmuls\t%" } } */
39 /* { dg-final { scan-assembler "fmuld\t%" } } */
40 /* { dg-final { scan-assembler "fsmuld\t%" } } */
41 /* { dg-final { scan-assembler "fnsmuld\t%" } } */