| /* { dg-do compile } */ |
| /* { dg-options "-O2 -mvis3" } */ |
| |
| float test_fnadds(float x, float y) |
| { |
| return -(x + y); |
| } |
| |
| double test_fnaddd(double x, double y) |
| { |
| return -(x + y); |
| } |
| |
| float test_fnmuls(float x, float y) |
| { |
| return -(x * y); |
| } |
| |
| double test_fnmuld(double x, double y) |
| { |
| return -(x * y); |
| } |
| |
| double test_fnsmuld(float x, float y) |
| { |
| return -((double)x * (double)y); |
| } |
| |
| /* { dg-final { scan-assembler "fnadds\t%" } } */ |
| /* { dg-final { scan-assembler "fnaddd\t%" } } */ |
| /* { dg-final { scan-assembler "fnmuls\t%" } } */ |
| /* { dg-final { scan-assembler "fnmuld\t%" } } */ |
| /* { dg-final { scan-assembler "fnsmuld\t%" } } */ |