]>
Commit | Line | Data |
---|---|---|
ea5a0c95 RM |
1 | # Makefile fragment for PowerPC with no FPU. |
2 | ||
3 | ifeq ($(subdir),soft-fp) | |
84c3f208 | 4 | sysdep_routines += $(gcc-single-routines) $(gcc-double-routines) \ |
0d2163eb | 5 | sqrtsf2 sqrtdf2 \ |
91a1f3fe JM |
6 | sim-full atomic-feholdexcept atomic-feclearexcept \ |
7 | atomic-feupdateenv flt-rounds | |
ea5a0c95 RM |
8 | endif |
9 | ||
10 | ifeq ($(subdir),math) | |
19584095 | 11 | libm-support += fenv_const |
3de10437 DJ |
12 | CPPFLAGS += -I../soft-fp/ |
13 | # The follow CFLAGS are a work around for GCC Bugzilla Bug 29253 | |
14 | # "expand_abs wrong default code for floating point" | |
15 | # As this is not a regression, a fix is not likely to go into | |
16 | # gcc-4.1.1 and may be too late for gcc-4.2. So we need these flags | |
17 | # until the fix in a gcc release and glibc drops support for earlier | |
18 | # versions of gcc. | |
e134ca17 JM |
19 | # |
20 | # This bug can cause wrong signs of zero results from fabsl, and | |
21 | # spurious "invalid" exceptions from comparisons with NaN in the | |
22 | # default code sequence generated. The fpclassify expansion used by | |
23 | # __builtin_fpclassify, which is used in the absence of | |
24 | # -fsignaling-nans, uses __builtin_fabsl, and is not affected by | |
25 | # -fno-builtin-fabsl, so requiring -fsignaling-nans for some affected | |
26 | # source files. | |
22562bb2 | 27 | CFLAGS-e_atan2l.c += -fno-builtin-fabsl |
bd878fc0 | 28 | CFLAGS-e_hypotl.c += -fno-builtin-fabsl |
3de10437 | 29 | CFLAGS-e_powl.c += -fno-builtin-fabsl |
e134ca17 JM |
30 | CFLAGS-s_cacosl.c += -fsignaling-nans |
31 | CFLAGS-s_cacoshl.c += -fsignaling-nans | |
32 | CFLAGS-s_casinhl.c += -fsignaling-nans | |
33 | CFLAGS-s_catanl.c += -fsignaling-nans | |
34 | CFLAGS-s_catanhl.c += -fsignaling-nans | |
35 | CFLAGS-s_ccoshl.c += -fno-builtin-fabsl -fsignaling-nans | |
36 | CFLAGS-s_cexpl.c += -fsignaling-nans | |
37 | CFLAGS-s_csinhl.c += -fno-builtin-fabsl -fsignaling-nans | |
38 | CFLAGS-s_clogl.c += -fno-builtin-fabsl -fsignaling-nans | |
39 | CFLAGS-s_clog10l.c += -fno-builtin-fabsl -fsignaling-nans | |
40 | CFLAGS-s_csinl.c += -fno-builtin-fabsl -fsignaling-nans | |
41 | CFLAGS-s_csqrtl.c += -fno-builtin-fabsl -fsignaling-nans | |
f67d7819 GG |
42 | CFLAGS-w_acosl_compat.c += -fno-builtin-fabsl |
43 | CFLAGS-w_asinl_compat.c += -fno-builtin-fabsl | |
44 | CFLAGS-w_atanhl_compat.c += -fno-builtin-fabsl | |
45 | CFLAGS-w_j0l_compat.c += -fno-builtin-fabsl | |
46 | CFLAGS-w_j1l_compat.c += -fno-builtin-fabsl | |
bd8d53bb WD |
47 | CFLAGS-e_lgammal_r.c += -fno-builtin-fabsl |
48 | CFLAGS-e_log10l.c += -fno-builtin-fabsl | |
49 | CFLAGS-e_log2l.c += -fno-builtin-fabsl | |
b2584ac2 | 50 | CFLAGS-e_remainderl.c += -fno-builtin-fabsl |
87faac55 JM |
51 | CFLAGS-s_fmaxmagl.c += -fno-builtin-fabsl |
52 | CFLAGS-s_fminmagl.c += -fno-builtin-fabsl | |
90f0ac10 JM |
53 | CFLAGS-s_fmaximum_magl.c += -fno-builtin-fabsl |
54 | CFLAGS-s_fmaximum_mag_numl.c += -fno-builtin-fabsl | |
55 | CFLAGS-s_fminimum_magl.c += -fno-builtin-fabsl | |
56 | CFLAGS-s_fminimum_mag_numl.c += -fno-builtin-fabsl | |
ea5a0c95 | 57 | endif |