aboutsummaryrefslogtreecommitdiff
path: root/math/Makefile
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2022-10-31 23:20:08 +0000
committerJoseph Myers <joseph@codesourcery.com>2022-10-31 23:20:08 +0000
commitf66780ba46805760a328f01967836416b06c93ca (patch)
treeb8a849cc06de88841f75424706ab0ebdd3423b48 /math/Makefile
parentbbff275fb1b16f5b7dd95933bde6e1e496414dbf (diff)
downloadglibc-f66780ba46805760a328f01967836416b06c93ca.zip
glibc-f66780ba46805760a328f01967836416b06c93ca.tar.gz
glibc-f66780ba46805760a328f01967836416b06c93ca.tar.bz2
Fix build with GCC 13 _FloatN, _FloatNx built-in functions
GCC 13 has added more _FloatN and _FloatNx versions of existing <math.h> and <complex.h> built-in functions, for use in libstdc++-v3. This breaks the glibc build because of how those functions are defined as aliases to functions with the same ABI but different types. Add appropriate -fno-builtin-* options for compiling relevant files, as already done for the case of long double functions aliasing double ones and based on the list of files used there. I fixed some mistakes in that list of double files that I noticed while implementing this fix, but there may well be more such (harmless) cases, in this list or the new one (files that don't actually exist or don't define the named functions as aliases so don't need the options). I did try to exclude cases where glibc doesn't define certain functions for _FloatN or _FloatNx types at all from the new uses of -fno-builtin-* options. As with the options for double files (see the commit message for commit 49348beafe9ba150c9bd48595b3f372299bddbb0, "Fix build with GCC 10 when long double = double."), it's deliberate that the options are used even if GCC currently doesn't have a built-in version of a given functions, so providing some level of future-proofing against more such built-in functions being added in future. Tested with build-many-glibcs.py for aarch64-linux-gnu powerpc-linux-gnu powerpc64le-linux-gnu x86_64-linux-gnu (compilers and glibcs builds) with GCC mainline.
Diffstat (limited to 'math/Makefile')
-rw-r--r--math/Makefile247
1 files changed, 240 insertions, 7 deletions
diff --git a/math/Makefile b/math/Makefile
index 7dae231..b3dae4e 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -668,18 +668,18 @@ CFLAGS-s_csinh.c += -fno-builtin-csinhl
CFLAGS-s_csqrt.c += -fno-builtin-csqrtl
CFLAGS-s_ctan.c += -fno-builtin-ctanl
CFLAGS-s_ctanh.c += -fno-builtin-ctanhl
-CFLAGS-s_dadd.c += -fno-builtin-daddl
-CFLAGS-s_ddiv.c += -fno-builtin-ddivl
-CFLAGS-s_dfma.c += -fno-builtin-dfmal
-CFLAGS-s_dmul.c += -fno-builtin-dmull
-CFLAGS-s_dsqrt.c += -fno-builtin-dsqrtl
-CFLAGS-s_dsub.c += -fno-builtin-dsubl
CFLAGS-s_erf.c += -fno-builtin-erfl
CFLAGS-s_erfc.c += -fno-builtin-erfcl
CFLAGS-e_exp.c += -fno-builtin-expl
CFLAGS-w_exp10.c += -fno-builtin-exp10l
CFLAGS-e_exp2.c += -fno-builtin-exp2l
CFLAGS-s_expm1.c += -fno-builtin-expm1l
+CFLAGS-s_f32xaddf64.c += -fno-builtin-daddl
+CFLAGS-s_f32xdivf64.c += -fno-builtin-ddivl
+CFLAGS-s_f32xfmaf64.c += -fno-builtin-dfmal
+CFLAGS-s_f32xmulf64.c += -fno-builtin-dmull
+CFLAGS-s_f32xsqrtf64.c += -fno-builtin-dsqrtl
+CFLAGS-s_f32xsubf64.c += -fno-builtin-dsubl
CFLAGS-s_fabs.c += -fno-builtin-fabsl
CFLAGS-s_fadd.c += -fno-builtin-faddl
CFLAGS-s_fdim.c += -fno-builtin-fdiml
@@ -707,7 +707,6 @@ CFLAGS-s_fromfp.c += -fno-builtin-fromfpl
CFLAGS-s_fromfpx.c += -fno-builtin-fromfpxl
CFLAGS-s_fsqrt.c += -fno-builtin-fsqrtl
CFLAGS-s_fsub.c += -fno-builtin-fsubl
-CFLAGS-s_gamma.c += -fno-builtin-gammal
CFLAGS-s_getpayload.c += -fno-builtin-getpayloadl
CFLAGS-w_hypot.c += -fno-builtin-hypotl
CFLAGS-w_ilogb.c += -fno-builtin-ilogbl
@@ -766,6 +765,240 @@ CFLAGS-s_y1.c += -fno-builtin-y1l
CFLAGS-s_yn.c += -fno-builtin-ynl
endif
+# Likewise, for _Float32x and _Float64 aliases.
+CFLAGS-w_acos.c += -fno-builtin-acosf32x -fno-builtin-acosf64
+CFLAGS-w_acosh.c += -fno-builtin-acoshf32x -fno-builtin-acoshf64
+CFLAGS-w_asin.c += -fno-builtin-asinf32x -fno-builtin-asinf64
+CFLAGS-s_asinh.c += -fno-builtin-asinhf32x -fno-builtin-asinhf64
+CFLAGS-s_atan.c += -fno-builtin-atanf32x -fno-builtin-atanf64
+CFLAGS-w_atan2.c += -fno-builtin-atan2f32x -fno-builtin-atan2f64
+CFLAGS-w_atanh.c += -fno-builtin-atanhf32x -fno-builtin-atanhf64
+CFLAGS-s_cabs.c += -fno-builtin-cabsf32x -fno-builtin-cabsf64
+CFLAGS-s_cacos.c += -fno-builtin-cacosf32x -fno-builtin-cacosf64
+CFLAGS-s_cacosh.c += -fno-builtin-cacoshf32x -fno-builtin-cacoshf64
+CFLAGS-s_canonicalize.c += -fno-builtin-canonicalizef32x -fno-builtin-canonicalizef64
+CFLAGS-s_carg.c += -fno-builtin-cargf32x -fno-builtin-cargf64
+CFLAGS-s_casin.c += -fno-builtin-casinf32x -fno-builtin-casinf64
+CFLAGS-s_casinh.c += -fno-builtin-casinhf32x -fno-builtin-casinhf64
+CFLAGS-s_catan.c += -fno-builtin-catanf32x -fno-builtin-catanf64
+CFLAGS-s_catanh.c += -fno-builtin-catanhf32x -fno-builtin-catanhf64
+CFLAGS-s_cbrt.c += -fno-builtin-cbrtf32x -fno-builtin-cbrtf64
+CFLAGS-s_ccos.c += -fno-builtin-ccosf32x -fno-builtin-ccosf64
+CFLAGS-s_ccosh.c += -fno-builtin-ccoshf32x -fno-builtin-ccoshf64
+CFLAGS-s_ceil.c += -fno-builtin-ceilf32x -fno-builtin-ceilf64
+CFLAGS-s_cexp.c += -fno-builtin-cexpf32x -fno-builtin-cexpf64
+CFLAGS-s_cimag.c += -fno-builtin-cimagf32x -fno-builtin-cimagf64
+CFLAGS-s_clog.c += -fno-builtin-clogf32x -fno-builtin-clogf64
+CFLAGS-s_clog10.c += -fno-builtin-clog10f32x -fno-builtin-clog10f64
+CFLAGS-s_conj.c += -fno-builtin-conjf32x -fno-builtin-conjf64
+CFLAGS-s_copysign.c += -fno-builtin-copysignf32x -fno-builtin-copysignf64
+CFLAGS-s_cos.c += -fno-builtin-cosf32x -fno-builtin-cosf64
+CFLAGS-w_cosh.c += -fno-builtin-coshf32x -fno-builtin-coshf64
+CFLAGS-s_cpow.c += -fno-builtin-cpowf32x -fno-builtin-cpowf64
+CFLAGS-s_cproj.c += -fno-builtin-cprojf32x -fno-builtin-cprojf64
+CFLAGS-s_creal.c += -fno-builtin-crealf32x -fno-builtin-crealf64
+CFLAGS-s_csin.c += -fno-builtin-csinf32x -fno-builtin-csinf64
+CFLAGS-s_csinh.c += -fno-builtin-csinhf32x -fno-builtin-csinhf64
+CFLAGS-s_csqrt.c += -fno-builtin-csqrtf32x -fno-builtin-csqrtf64
+CFLAGS-s_ctan.c += -fno-builtin-ctanf32x -fno-builtin-ctanf64
+CFLAGS-s_ctanh.c += -fno-builtin-ctanhf32x -fno-builtin-ctanhf64
+CFLAGS-s_erf.c += -fno-builtin-erff32x -fno-builtin-erff64
+CFLAGS-s_erfc.c += -fno-builtin-erfcf32x -fno-builtin-erfcf64
+CFLAGS-e_exp.c += -fno-builtin-expf32x -fno-builtin-expf64
+CFLAGS-w_exp10.c += -fno-builtin-exp10f32x -fno-builtin-exp10f64
+CFLAGS-e_exp2.c += -fno-builtin-exp2f32x -fno-builtin-exp2f64
+CFLAGS-s_expm1.c += -fno-builtin-expm1f32x -fno-builtin-expm1f64
+CFLAGS-s_fabs.c += -fno-builtin-fabsf32x -fno-builtin-fabsf64
+CFLAGS-s_fadd.c += -fno-builtin-f32addf32x -fno-builtin-f32addf64
+CFLAGS-s_fdim.c += -fno-builtin-fdimf32x -fno-builtin-fdimf64
+CFLAGS-s_fdiv.c += -fno-builtin-f32divf32x -fno-builtin-f32divf64
+CFLAGS-s_ffma.c += -fno-builtin-f32fmaf32x -fno-builtin-f32fmaf64
+CFLAGS-s_floor.c += -fno-builtin-floorf32x -fno-builtin-floorf64
+CFLAGS-s_fma.c += -fno-builtin-fmaf32x -fno-builtin-fmaf64
+CFLAGS-s_fmax.c += -fno-builtin-fmaxf32x -fno-builtin-fmaxf64
+CFLAGS-s_fmaximum.c += -fno-builtin-fmaximumf32x -fno-builtin-fmaximumf64
+CFLAGS-s_fmaximum_mag.c += -fno-builtin-fmaximum_magf32x -fno-builtin-fmaximum_magf64
+CFLAGS-s_fmaximum_mag_num.c += -fno-builtin-fmaximum_mag_numf32x -fno-builtin-fmaximum_mag_numf64
+CFLAGS-s_fmaximum_num.c += -fno-builtin-fmaximum_numf32x -fno-builtin-fmaximum_numf64
+CFLAGS-s_fmaxmag.c += -fno-builtin-fmaxmagf32x -fno-builtin-fmaxmagf64
+CFLAGS-s_fmin.c += -fno-builtin-fminf32x -fno-builtin-fminf64
+CFLAGS-s_fminimum.c += -fno-builtin-fminimumf32x -fno-builtin-fminimumf64
+CFLAGS-s_fminimum_mag.c += -fno-builtin-fminimum_magf32x -fno-builtin-fminimum_magf64
+CFLAGS-s_fminimum_mag_num.c += -fno-builtin-fminimum_mag_numf32x -fno-builtin-fminimum_mag_numf64
+CFLAGS-s_fminimum_num.c += -fno-builtin-fminimum_numf32x -fno-builtin-fminimum_numf64
+CFLAGS-s_fminmag.c += -fno-builtin-fminmagf32x -fno-builtin-fminmagf64
+CFLAGS-w_fmod.c += -fno-builtin-fmodf32x -fno-builtin-fmodf64
+CFLAGS-s_fmul.c += -fno-builtin-f32mulf32x -fno-builtin-f32mulf64
+CFLAGS-s_frexp.c += -fno-builtin-frexpf32x -fno-builtin-frexpf64
+CFLAGS-s_fromfp.c += -fno-builtin-fromfpf32x -fno-builtin-fromfpf64
+CFLAGS-s_fromfpx.c += -fno-builtin-fromfpxf32x -fno-builtin-fromfpxf64
+CFLAGS-s_fsqrt.c += -fno-builtin-f32sqrtf32x -fno-builtin-f32sqrtf64
+CFLAGS-s_fsub.c += -fno-builtin-f32subf32x -fno-builtin-f32subf64
+CFLAGS-s_getpayload.c += -fno-builtin-getpayloadf32x -fno-builtin-getpayloadf64
+CFLAGS-w_hypot.c += -fno-builtin-hypotf32x -fno-builtin-hypotf64
+CFLAGS-w_ilogb.c += -fno-builtin-ilogbf32x -fno-builtin-ilogbf64
+CFLAGS-w_j0.c += -fno-builtin-j0f32x -fno-builtin-j0f64
+CFLAGS-w_j1.c += -fno-builtin-j1f32x -fno-builtin-j1f64
+CFLAGS-w_jn.c += -fno-builtin-jnf32x -fno-builtin-jnf64
+CFLAGS-s_ldexp.c += -fno-builtin-ldexpf32x -fno-builtin-ldexpf64
+CFLAGS-w_lgamma.c += -fno-builtin-lgammaf32x -fno-builtin-lgammaf64
+CFLAGS-w_lgamma_r.c += -fno-builtin-lgammaf32x_r -fno-builtin-lgammaf64_r
+CFLAGS-w_llogb.c += -fno-builtin-llogbf32x -fno-builtin-llogbf64
+CFLAGS-s_llrint.c += -fno-builtin-llrintf32x -fno-builtin-llrintf64
+CFLAGS-s_llround.c += -fno-builtin-llroundf32x -fno-builtin-llroundf64
+CFLAGS-e_log.c += -fno-builtin-logf32x -fno-builtin-logf64
+CFLAGS-w_log10.c += -fno-builtin-log10f32x -fno-builtin-log10f64
+CFLAGS-w_log1p.c += -fno-builtin-log1pf32x -fno-builtin-log1pf64
+CFLAGS-e_log2.c += -fno-builtin-log2f32x -fno-builtin-log2f64
+CFLAGS-s_logb.c += -fno-builtin-logbf32x -fno-builtin-logbf64
+CFLAGS-s_lrint.c += -fno-builtin-lrintf32x -fno-builtin-lrintf64
+CFLAGS-s_lround.c += -fno-builtin-lroundf32x -fno-builtin-lroundf64
+CFLAGS-s_modf.c += -fno-builtin-modff32x -fno-builtin-modff64
+CFLAGS-s_nan.c += -fno-builtin-nanf32x -fno-builtin-nanf64
+CFLAGS-s_nearbyint.c += -fno-builtin-nearbyintf32x -fno-builtin-nearbyintf64
+CFLAGS-s_nextafter.c += -fno-builtin-nextafterf32x -fno-builtin-nextafterf64
+CFLAGS-s_nextdown.c += -fno-builtin-nextdownf32x -fno-builtin-nextdownf64
+CFLAGS-s_nextup.c += -fno-builtin-nextupf32x -fno-builtin-nextupf64
+CFLAGS-e_pow.c += -fno-builtin-powf32x -fno-builtin-powf64
+CFLAGS-w_remainder.c += -fno-builtin-remainderf32x -fno-builtin-remainderf64
+CFLAGS-s_remquo.c += -fno-builtin-remquof32x -fno-builtin-remquof64
+CFLAGS-s_rint.c += -fno-builtin-rintf32x -fno-builtin-rintf64
+CFLAGS-s_round.c += -fno-builtin-roundf32x -fno-builtin-roundf64
+CFLAGS-s_roundeven.c += -fno-builtin-roundevenf32x -fno-builtin-roundevenf64
+CFLAGS-w_scalbln.c += -fno-builtin-scalblnf32x -fno-builtin-scalblnf64
+CFLAGS-s_scalbn.c += -fno-builtin-scalbnf32x -fno-builtin-scalbnf64
+CFLAGS-s_setpayload.c += -fno-builtin-setpayloadf32x -fno-builtin-setpayloadf64
+CFLAGS-s_setpayloadsig.c += -fno-builtin-setpayloadsigf32x -fno-builtin-setpayloadsigf64
+CFLAGS-s_sin.c += -fno-builtin-sinf32x -fno-builtin-sinf64
+CFLAGS-s_sincos.c += -fno-builtin-sincosf32x -fno-builtin-sincosf64
+CFLAGS-w_sinh.c += -fno-builtin-sinhf32x -fno-builtin-sinhf64
+CFLAGS-w_sqrt.c += -fno-builtin-sqrtf32x -fno-builtin-sqrtf64
+CFLAGS-s_tan.c += -fno-builtin-tanf32x -fno-builtin-tanf64
+CFLAGS-s_tanh.c += -fno-builtin-tanhf32x -fno-builtin-tanhf64
+CFLAGS-w_tgamma.c += -fno-builtin-tgammaf32x -fno-builtin-tgammaf64
+CFLAGS-s_totalorder.c += -fno-builtin-totalorderf32x -fno-builtin-totalorderf64
+CFLAGS-s_totalordermag.c += -fno-builtin-totalordermagf32x -fno-builtin-totalordermagf64
+CFLAGS-s_trunc.c += -fno-builtin-truncf32x -fno-builtin-truncf64
+CFLAGS-s_ufromfp.c += -fno-builtin-ufromfpf32x -fno-builtin-ufromfpf64
+CFLAGS-s_ufromfpx.c += -fno-builtin-ufromfpxf32x -fno-builtin-ufromfpxf64
+CFLAGS-s_y0.c += -fno-builtin-y0f32x -fno-builtin-y0f64
+CFLAGS-s_y1.c += -fno-builtin-y1f32x -fno-builtin-y1f64
+CFLAGS-s_yn.c += -fno-builtin-ynf32x -fno-builtin-ynf64
+
+# Likewise, for _Float32 aliases.
+CFLAGS-w_acosf.c += -fno-builtin-acosf32
+CFLAGS-w_acoshf.c += -fno-builtin-acoshf32
+CFLAGS-w_asinf.c += -fno-builtin-asinf32
+CFLAGS-s_asinhf.c += -fno-builtin-asinhf32
+CFLAGS-s_atanf.c += -fno-builtin-atanf32
+CFLAGS-w_atan2f.c += -fno-builtin-atan2f32
+CFLAGS-w_atanhf.c += -fno-builtin-atanhf32
+CFLAGS-s_cabsf.c += -fno-builtin-cabsf32
+CFLAGS-s_cacosf.c += -fno-builtin-cacosf32
+CFLAGS-s_cacoshf.c += -fno-builtin-cacoshf32
+CFLAGS-s_canonicalizef.c += -fno-builtin-canonicalizef32
+CFLAGS-s_cargf.c += -fno-builtin-cargf32
+CFLAGS-s_casinf.c += -fno-builtin-casinf32
+CFLAGS-s_casinhf.c += -fno-builtin-casinhf32
+CFLAGS-s_catanf.c += -fno-builtin-catanf32
+CFLAGS-s_catanhf.c += -fno-builtin-catanhf32
+CFLAGS-s_cbrtf.c += -fno-builtin-cbrtf32
+CFLAGS-s_ccosf.c += -fno-builtin-ccosf32
+CFLAGS-s_ccoshf.c += -fno-builtin-ccoshf32
+CFLAGS-s_ceilf.c += -fno-builtin-ceilf32
+CFLAGS-s_cexpf.c += -fno-builtin-cexpf32
+CFLAGS-s_cimagf.c += -fno-builtin-cimagf32
+CFLAGS-s_clogf.c += -fno-builtin-clogf32
+CFLAGS-s_clog10f.c += -fno-builtin-clog10f32
+CFLAGS-s_conjf.c += -fno-builtin-conjf32
+CFLAGS-s_copysignf.c += -fno-builtin-copysignf32
+CFLAGS-s_cosf.c += -fno-builtin-cosf32
+CFLAGS-w_coshf.c += -fno-builtin-coshf32
+CFLAGS-s_cpowf.c += -fno-builtin-cpowf32
+CFLAGS-s_cprojf.c += -fno-builtin-cprojf32
+CFLAGS-s_crealf.c += -fno-builtin-crealf32
+CFLAGS-s_csinf.c += -fno-builtin-csinf32
+CFLAGS-s_csinhf.c += -fno-builtin-csinhf32
+CFLAGS-s_csqrtf.c += -fno-builtin-csqrtf32
+CFLAGS-s_ctanf.c += -fno-builtin-ctanf32
+CFLAGS-s_ctanhf.c += -fno-builtin-ctanhf32
+CFLAGS-s_erff.c += -fno-builtin-erff32
+CFLAGS-s_erfcf.c += -fno-builtin-erfcf32
+CFLAGS-e_expf.c += -fno-builtin-expf32
+CFLAGS-w_exp10f.c += -fno-builtin-exp10f32
+CFLAGS-e_exp2f.c += -fno-builtin-exp2f32
+CFLAGS-s_expm1f.c += -fno-builtin-expm1f32
+CFLAGS-s_fabsf.c += -fno-builtin-fabsf32
+CFLAGS-s_fdimf.c += -fno-builtin-fdimf32
+CFLAGS-s_floorf.c += -fno-builtin-floorf32
+CFLAGS-s_fmaf.c += -fno-builtin-fmaf32
+CFLAGS-s_fmaxf.c += -fno-builtin-fmaxf32
+CFLAGS-s_fmaximumf.c += -fno-builtin-fmaximumf32
+CFLAGS-s_fmaximum_magf.c += -fno-builtin-fmaximum_magf32
+CFLAGS-s_fmaximum_mag_numf.c += -fno-builtin-fmaximum_mag_numf32
+CFLAGS-s_fmaximum_numf.c += -fno-builtin-fmaximum_numf32
+CFLAGS-s_fmaxmagf.c += -fno-builtin-fmaxmagf32
+CFLAGS-s_fminf.c += -fno-builtin-fminf32
+CFLAGS-s_fminimumf.c += -fno-builtin-fminimumf32
+CFLAGS-s_fminimum_magf.c += -fno-builtin-fminimum_magf32
+CFLAGS-s_fminimum_mag_numf.c += -fno-builtin-fminimum_mag_numf32
+CFLAGS-s_fminimum_numf.c += -fno-builtin-fminimum_numf32
+CFLAGS-s_fminmagf.c += -fno-builtin-fminmagf32
+CFLAGS-w_fmodf.c += -fno-builtin-fmodf32
+CFLAGS-s_frexpf.c += -fno-builtin-frexpf32
+CFLAGS-s_fromfpf.c += -fno-builtin-fromfpf32
+CFLAGS-s_fromfpxf.c += -fno-builtin-fromfpxf32
+CFLAGS-s_getpayloadf.c += -fno-builtin-getpayloadf32
+CFLAGS-w_hypotf.c += -fno-builtin-hypotf32
+CFLAGS-w_ilogbf.c += -fno-builtin-ilogbf32
+CFLAGS-w_j0f.c += -fno-builtin-j0f32
+CFLAGS-w_j1f.c += -fno-builtin-j1f32
+CFLAGS-w_jnf.c += -fno-builtin-jnf32
+CFLAGS-s_ldexpf.c += -fno-builtin-ldexpf32
+CFLAGS-w_lgammaf.c += -fno-builtin-lgammaf32
+CFLAGS-w_lgammaf_r.c += -fno-builtin-lgammaf32_r
+CFLAGS-w_llogbf.c += -fno-builtin-llogbf32
+CFLAGS-s_llrintf.c += -fno-builtin-llrintf32
+CFLAGS-s_llroundf.c += -fno-builtin-llroundf32
+CFLAGS-e_logf.c += -fno-builtin-logf32
+CFLAGS-w_log10f.c += -fno-builtin-log10f32
+CFLAGS-w_log1pf.c += -fno-builtin-log1pf32
+CFLAGS-e_log2f.c += -fno-builtin-log2f32
+CFLAGS-s_logbf.c += -fno-builtin-logbf32
+CFLAGS-s_lrintf.c += -fno-builtin-lrintf32
+CFLAGS-s_lroundf.c += -fno-builtin-lroundf32
+CFLAGS-s_modff.c += -fno-builtin-modff32
+CFLAGS-s_nanf.c += -fno-builtin-nanf32
+CFLAGS-s_nearbyintf.c += -fno-builtin-nearbyintf32
+CFLAGS-s_nextafterf.c += -fno-builtin-nextafterf32
+CFLAGS-s_nextdownf.c += -fno-builtin-nextdownf32
+CFLAGS-s_nextupf.c += -fno-builtin-nextupf32
+CFLAGS-e_powf.c += -fno-builtin-powf32
+CFLAGS-w_remainderf.c += -fno-builtin-remainderf32
+CFLAGS-s_remquof.c += -fno-builtin-remquof32
+CFLAGS-s_rintf.c += -fno-builtin-rintf32
+CFLAGS-s_roundf.c += -fno-builtin-roundf32
+CFLAGS-s_roundevenf.c += -fno-builtin-roundevenf32
+CFLAGS-w_scalblnf.c += -fno-builtin-scalblnf32
+CFLAGS-s_scalbnf.c += -fno-builtin-scalbnf32
+CFLAGS-s_setpayloadf.c += -fno-builtin-setpayloadf32
+CFLAGS-s_setpayloadsigf.c += -fno-builtin-setpayloadsigf32
+CFLAGS-s_sinf.c += -fno-builtin-sinf32
+CFLAGS-s_sincosf.c += -fno-builtin-sincosf32
+CFLAGS-w_sinhf.c += -fno-builtin-sinhf32
+CFLAGS-w_sqrtf.c += -fno-builtin-sqrtf32
+CFLAGS-s_tanf.c += -fno-builtin-tanf32
+CFLAGS-s_tanhf.c += -fno-builtin-tanhf32
+CFLAGS-w_tgammaf.c += -fno-builtin-tgammaf32
+CFLAGS-s_totalorderf.c += -fno-builtin-totalorderf32
+CFLAGS-s_totalordermagf.c += -fno-builtin-totalordermagf32
+CFLAGS-s_truncf.c += -fno-builtin-truncf32
+CFLAGS-s_ufromfpf.c += -fno-builtin-ufromfpf32
+CFLAGS-s_ufromfpxf.c += -fno-builtin-ufromfpxf32
+CFLAGS-s_y0f.c += -fno-builtin-y0f32
+CFLAGS-s_y1f.c += -fno-builtin-y1f32
+CFLAGS-s_ynf.c += -fno-builtin-ynf32
+
# These files quiet sNaNs in a way that is optimized away without
# -fsignaling-nans.
CFLAGS-s_modf.c += -fsignaling-nans