]> git.ipfire.org Git - thirdparty/glibc.git/blob - sysdeps/powerpc/nofpu/Makefile
Disable use of -fsignaling-nans if compiler does not support it
[thirdparty/glibc.git] / sysdeps / powerpc / nofpu / Makefile
1 # Makefile fragment for PowerPC with no FPU.
2
3 ifeq ($(subdir),soft-fp)
4 sysdep_routines += $(gcc-single-routines) $(gcc-double-routines) \
5 sqrtsf2 sqrtdf2 \
6 sim-full atomic-feholdexcept atomic-feclearexcept \
7 atomic-feupdateenv flt-rounds
8 endif
9
10 ifeq ($(subdir),math)
11 libm-support += fenv_const
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.
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.
27 CFLAGS-e_atan2l.c += -fno-builtin-fabsl
28 CFLAGS-e_hypotl.c += -fno-builtin-fabsl
29 CFLAGS-e_powl.c += -fno-builtin-fabsl
30 CFLAGS-s_cacosl.c += $(config-cflags-signaling-nans)
31 CFLAGS-s_cacoshl.c += $(config-cflags-signaling-nans)
32 CFLAGS-s_casinhl.c += $(config-cflags-signaling-nans)
33 CFLAGS-s_catanl.c += $(config-cflags-signaling-nans)
34 CFLAGS-s_catanhl.c += $(config-cflags-signaling-nans)
35 CFLAGS-s_ccoshl.c += -fno-builtin-fabsl $(config-cflags-signaling-nans)
36 CFLAGS-s_cexpl.c += $(config-cflags-signaling-nans)
37 CFLAGS-s_csinhl.c += -fno-builtin-fabsl $(config-cflags-signaling-nans)
38 CFLAGS-s_clogl.c += -fno-builtin-fabsl $(config-cflags-signaling-nans)
39 CFLAGS-s_clog10l.c += -fno-builtin-fabsl $(config-cflags-signaling-nans)
40 CFLAGS-s_csinl.c += -fno-builtin-fabsl $(config-cflags-signaling-nans)
41 CFLAGS-s_csqrtl.c += -fno-builtin-fabsl $(config-cflags-signaling-nans)
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
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
50 CFLAGS-e_remainderl.c += -fno-builtin-fabsl
51 CFLAGS-s_fmaxmagl.c += -fno-builtin-fabsl
52 CFLAGS-s_fminmagl.c += -fno-builtin-fabsl
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
57 endif