1 /* The same code as nmadd-2.c, but compiled with -fno-finite-math-only.
2 We can't use nmadd and nmsub in that case. */
3 /* { dg-do compile } */
4 /* { dg-options "-fno-fast-math -fno-finite-math-only -mmadd4 isa=4 -mhard-float" } */
5 /* { dg-final { scan-assembler-not "\tnmadd" } } */
6 /* { dg-final { scan-assembler-not "\tnmsub" } } */
7
8 float
9 sub1 (float f, float g, float h)
10 {
11 return -((f * g) + h);
12 }
13
14 double
15 sub2 (double f, double g, double h)
16 {
17 return -((f * g) + h);
18 }
19
20 float
21 sub3 (float f, float g, float h)
22 {
23 return -((f * g) - h);
24 }
25
26 double
27 sub4 (double f, double g, double h)
28 {
29 return -((f * g) - h);
30 }