]>
Commit | Line | Data |
---|---|---|
46935749 | 1 | /* { dg-do compile } */ |
4f4b0ab8 | 2 | /* { dg-skip-if "128-bit long double" { *-*-hpux* } } */ |
46935749 RH |
3 | /* { dg-options "-O" } */ |
4 | /* Don't confuse the fma insn with the fma in the filename. */ | |
5 | /* { dg-final { scan-assembler-times "fma\[ \]" 2 } } */ | |
6 | /* { dg-final { scan-assembler-times "fms" 1 } } */ | |
7 | /* { dg-final { scan-assembler-times "fnma" 2 } } */ | |
8 | ||
9 | #ifndef __FP_FAST_FMAL | |
10 | # error "__FP_FAST_FMAL should be defined" | |
11 | #endif | |
12 | ||
13 | typedef long double LD; | |
14 | ||
15 | LD L0(LD x, LD y, LD z) { return __builtin_fmal(x,y,z); } | |
16 | LD L1(LD x, LD y, LD z) { return __builtin_fmal(x,y,-z); } | |
17 | LD L2(LD x, LD y, LD z) { return __builtin_fmal(-x,y,z); } | |
18 | LD L3(LD x, LD y, LD z) { return __builtin_fmal(x,-y,z); } | |
19 | LD L4(LD x, LD y, LD z) { return __builtin_fmal(-x,-y,z); } |