]> git.ipfire.org Git - thirdparty/glibc.git/blob - sysdeps/ieee754/ldbl-opt/Makefile
Add test infrastructure for narrowing libm functions.
[thirdparty/glibc.git] / sysdeps / ieee754 / ldbl-opt / Makefile
1 # The`long double' type is a distinct type we support if
2 # -mlong-double-128 option is used (or when it becomes a default
3 # when -mlong-double-64 is not used).
4 long-double-fcts = yes
5 ifeq (,$(filter -mlong-double-128,$(sysdep-CFLAGS)))
6 sysdep-CFLAGS += -mlong-double-128
7 endif
8
9 ifeq ($(subdir),math)
10 libm-routines += s_nexttowardfd
11 routines += math_ldbl_opt nldbl-compat
12
13 extra-libs += libnldbl
14 libnldbl-calls = asprintf dprintf fprintf fscanf fwprintf fwscanf iovfscanf \
15 obstack_printf obstack_vprintf printf scanf snprintf \
16 sprintf sscanf swprintf swscanf vasprintf vdprintf vfprintf \
17 vfscanf vfwprintf vfwscanf vprintf vscanf vsnprintf \
18 vsprintf vsscanf vswprintf vswscanf vwprintf vwscanf \
19 wprintf wscanf printf_fp printf_size \
20 fprintf_chk fwprintf_chk printf_chk snprintf_chk sprintf_chk \
21 swprintf_chk vfprintf_chk vfwprintf_chk vprintf_chk \
22 vsnprintf_chk vsprintf_chk vswprintf_chk vwprintf_chk \
23 wprintf_chk asprintf_chk vasprintf_chk dprintf_chk \
24 vdprintf_chk obstack_printf_chk obstack_vprintf_chk \
25 syslog syslog_chk vsyslog vsyslog_chk \
26 strfmon strfmon_l \
27 strfroml \
28 strtold strtold_l strtoldint wcstold wcstold_l wcstoldint \
29 qecvt qfcvt qgcvt qecvt_r qfcvt_r \
30 isinf isnan finite signbit scalb log2 lgamma_r ceil \
31 significand acos asin atan atan2 cos sin tan cosh sinh \
32 tanh acosh asinh atanh exp log log10 exp10 expm1 \
33 log1p logb exp2 sqrt cbrt fabs floor j0 j1 y0 y1 erf erfc \
34 lgamma tgamma gamma rint nearbyint round trunc \
35 copysign fdim fmax fmin nextafter pow hypot fmod \
36 remainder ldexp scalbn frexp modf scalbln fma nan sincos \
37 jn yn ilogb remquo lrint lround llrint llround nexttowardf \
38 nexttoward conj cacos cacosh casin catan catanh ccos ccosh \
39 casinh cexp clog cproj csin csinh csqrt ctan ctanh cpow \
40 cabs carg cimag creal clog10 \
41 isoc99_scanf isoc99_fscanf isoc99_sscanf \
42 isoc99_vscanf isoc99_vfscanf isoc99_vsscanf \
43 isoc99_wscanf isoc99_fwscanf isoc99_swscanf \
44 isoc99_vwscanf isoc99_vfwscanf isoc99_vswscanf \
45 nextup nextdown totalorder totalordermag getpayload \
46 canonicalize setpayload setpayloadsig llogb fmaxmag fminmag \
47 roundeven fromfp ufromfp fromfpx ufromfpx
48 libnldbl-routines = $(libnldbl-calls:%=nldbl-%)
49 libnldbl-inhibit-o = $(object-suffixes)
50 libnldbl-static-only-routines = $(libnldbl-routines)
51 extra-objs += $(addsuffix .oS, $(libnldbl-routines))
52
53 CFLAGS-nldbl-acos.c = -fno-builtin-acosl
54 CFLAGS-nldbl-acosh.c = -fno-builtin-acoshl
55 CFLAGS-nldbl-asin.c = -fno-builtin-asinl
56 CFLAGS-nldbl-asinh.c = -fno-builtin-asinhl
57 CFLAGS-nldbl-atan.c = -fno-builtin-atanl
58 CFLAGS-nldbl-atan2.c = -fno-builtin-atan2l
59 CFLAGS-nldbl-atanh.c = -fno-builtin-atanhl
60 CFLAGS-nldbl-cabs.c = -fno-builtin-cabsl
61 CFLAGS-nldbl-cacos.c = -fno-builtin-cacosl
62 CFLAGS-nldbl-cacosh.c = -fno-builtin-cacoshl
63 CFLAGS-nldbl-canonicalize.c = -fno-builtin-canonicalizel
64 CFLAGS-nldbl-carg.c = -fno-builtin-cargl
65 CFLAGS-nldbl-casin.c = -fno-builtin-casinl
66 CFLAGS-nldbl-casinh.c = -fno-builtin-casinhl
67 CFLAGS-nldbl-catan.c = -fno-builtin-catanl
68 CFLAGS-nldbl-catanh.c = -fno-builtin-catanhl
69 CFLAGS-nldbl-cbrt.c = -fno-builtin-cbrtl
70 CFLAGS-nldbl-ccos.c = -fno-builtin-ccosl
71 CFLAGS-nldbl-ccosh.c = -fno-builtin-ccoshl
72 CFLAGS-nldbl-ceil.c = -fno-builtin-ceill
73 CFLAGS-nldbl-cexp.c = -fno-builtin-cexpl
74 CFLAGS-nldbl-cimag.c = -fno-builtin-cimagl
75 CFLAGS-nldbl-clog.c = -fno-builtin-clogl
76 CFLAGS-nldbl-clog10.c = -fno-builtin-clog10l
77 CFLAGS-nldbl-conj.c = -fno-builtin-conjl
78 CFLAGS-nldbl-copysign.c = -fno-builtin-copysignl
79 CFLAGS-nldbl-cos.c = -fno-builtin-cosl
80 CFLAGS-nldbl-cosh.c = -fno-builtin-coshl
81 CFLAGS-nldbl-cpow.c = -fno-builtin-cpowl
82 CFLAGS-nldbl-cproj.c = -fno-builtin-cprojl
83 CFLAGS-nldbl-creal.c = -fno-builtin-creall
84 CFLAGS-nldbl-csin.c = -fno-builtin-csinl
85 CFLAGS-nldbl-csinh.c = -fno-builtin-csinhl
86 CFLAGS-nldbl-csqrt.c = -fno-builtin-csqrtl
87 CFLAGS-nldbl-ctan.c = -fno-builtin-ctanl
88 CFLAGS-nldbl-ctanh.c = -fno-builtin-ctanhl
89 CFLAGS-nldbl-erf.c = -fno-builtin-erfl
90 CFLAGS-nldbl-erfc.c = -fno-builtin-erfcl
91 CFLAGS-nldbl-exp.c = -fno-builtin-expl
92 CFLAGS-nldbl-exp10.c = -fno-builtin-exp10l
93 CFLAGS-nldbl-exp2.c = -fno-builtin-exp2l
94 CFLAGS-nldbl-expm1.c = -fno-builtin-expm1l
95 CFLAGS-nldbl-fabs.c = -fno-builtin-fabsl
96 CFLAGS-nldbl-fdim.c = -fno-builtin-fdiml
97 CFLAGS-nldbl-finite.c = -fno-builtin-finitel
98 CFLAGS-nldbl-floor.c = -fno-builtin-floorl
99 CFLAGS-nldbl-fma.c = -fno-builtin-fmal
100 CFLAGS-nldbl-fmax.c = -fno-builtin-fmaxl
101 CFLAGS-nldbl-fmaxmag.c = -fno-builtin-fmaxmagl
102 CFLAGS-nldbl-fmin.c = -fno-builtin-fminl
103 CFLAGS-nldbl-fminmag.c = -fno-builtin-fminmagl
104 CFLAGS-nldbl-fmod.c = -fno-builtin-fmodl
105 CFLAGS-nldbl-frexp.c = -fno-builtin-frexpl
106 CFLAGS-nldbl-fromfp.c = -fno-builtin-fromfpl
107 CFLAGS-nldbl-fromfpx.c = -fno-builtin-fromfpxl
108 CFLAGS-nldbl-gamma.c = -fno-builtin-gammal
109 CFLAGS-nldbl-getpayload.c = -fno-builtin-getpayloadl
110 CFLAGS-nldbl-hypot.c = -fno-builtin-hypotl
111 CFLAGS-nldbl-ilogb.c = -fno-builtin-ilogbl
112 CFLAGS-nldbl-isinf.c = -fno-builtin-isinfl
113 CFLAGS-nldbl-isnan.c = -fno-builtin-isnanl
114 CFLAGS-nldbl-j0.c = -fno-builtin-j0l
115 CFLAGS-nldbl-j1.c = -fno-builtin-j1l
116 CFLAGS-nldbl-jn.c = -fno-builtin-jnl
117 CFLAGS-nldbl-ldexp.c = -fno-builtin-ldexpl
118 CFLAGS-nldbl-lgamma.c = -fno-builtin-lgammal
119 CFLAGS-nldbl-lgamma_r.c = -fno-builtin-lgammal_r
120 CFLAGS-nldbl-llogb.c = -fno-builtin-llogbl
121 CFLAGS-nldbl-llrint.c = -fno-builtin-llrintl
122 CFLAGS-nldbl-llround.c = -fno-builtin-llroundl
123 CFLAGS-nldbl-log.c = -fno-builtin-logl
124 CFLAGS-nldbl-log10.c = -fno-builtin-log10l
125 CFLAGS-nldbl-log1p.c = -fno-builtin-log1pl
126 CFLAGS-nldbl-log2.c = -fno-builtin-log2l
127 CFLAGS-nldbl-logb.c = -fno-builtin-logbl
128 CFLAGS-nldbl-lrint.c = -fno-builtin-lrintl
129 CFLAGS-nldbl-lround.c = -fno-builtin-lroundl
130 CFLAGS-nldbl-modf.c = -fno-builtin-modfl
131 CFLAGS-nldbl-nan.c = -fno-builtin-nanl
132 CFLAGS-nldbl-nearbyint.c = -fno-builtin-nearbyintl
133 CFLAGS-nldbl-nextafter.c = -fno-builtin-nextafterl
134 CFLAGS-nldbl-nextdown.c = -fno-builtin-nextdownl
135 CFLAGS-nldbl-nexttoward.c = -fno-builtin-nexttoward -fno-builtin-nexttowardl
136 CFLAGS-nldbl-nexttowardf.c = -fno-builtin-nexttowardf
137 CFLAGS-nldbl-nextup.c = -fno-builtin-nextupl
138 CFLAGS-nldbl-pow.c = -fno-builtin-powl
139 CFLAGS-nldbl-remainder.c = -fno-builtin-remainderl -fno-builtin-dreml
140 CFLAGS-nldbl-remquo.c = -fno-builtin-remquol
141 CFLAGS-nldbl-rint.c = -fno-builtin-rintl
142 CFLAGS-nldbl-round.c = -fno-builtin-roundl
143 CFLAGS-nldbl-roundeven.c = -fno-builtin-roundevenl
144 CFLAGS-nldbl-scalb.c = -fno-builtin-scalbl
145 CFLAGS-nldbl-scalbln.c = -fno-builtin-scalblnl
146 CFLAGS-nldbl-scalbn.c = -fno-builtin-scalbnl
147 CFLAGS-nldbl-setpayload.c = -fno-builtin-setpayloadl
148 CFLAGS-nldbl-setpayloadsig.c = -fno-builtin-setpayloadsigl
149 CFLAGS-nldbl-significand.c = -fno-builtin-significandl
150 CFLAGS-nldbl-sin.c = -fno-builtin-sinl
151 CFLAGS-nldbl-sincos.c = -fno-builtin-sincosl
152 CFLAGS-nldbl-sinh.c = -fno-builtin-sinhl
153 CFLAGS-nldbl-sqrt.c = -fno-builtin-sqrtl
154 CFLAGS-nldbl-tan.c = -fno-builtin-tanl
155 CFLAGS-nldbl-tanh.c = -fno-builtin-tanhl
156 CFLAGS-nldbl-tgamma.c = -fno-builtin-tgammal
157 CFLAGS-nldbl-totalorder.c = -fno-builtin-totalorderl
158 CFLAGS-nldbl-totalordermag.c = -fno-builtin-totalordermagl
159 CFLAGS-nldbl-trunc.c = -fno-builtin-truncl
160 CFLAGS-nldbl-ufromfp.c = -fno-builtin-ufromfpl
161 CFLAGS-nldbl-ufromfpx.c = -fno-builtin-ufromfpxl
162 CFLAGS-nldbl-y0.c = -fno-builtin-y0l
163 CFLAGS-nldbl-y1.c = -fno-builtin-y1l
164 CFLAGS-nldbl-yn.c = -fno-builtin-ynl
165
166 tests += test-narrow-macros-ldbl-64
167 CFLAGS-test-narrow-macros-ldbl-64.c += -mlong-double-64
168
169 endif