]> git.ipfire.org Git - thirdparty/glibc.git/blob - math/Versions
Fix build with GCC 10 when long double = double.
[thirdparty/glibc.git] / math / Versions
1 %include <float128-abi.h>
2 libc {
3 GLIBC_2.0 {
4 # functions used in inline functions or macros
5 __isnan; __isnanf; __isnanl; __finite; __finitef; __finitel;
6 __isinf; __isinff; __isinfl;
7
8 # global variables
9 __fpu_control;
10
11 # c*
12 copysign; copysignf; copysignl;
13
14 # f*
15 finite; finitef; finitel; frexp; frexpf; frexpl;
16
17 # i*
18 isinf; isinff; isinfl; isnan; isnanf; isnanl; ldexp; ldexpf; ldexpl;
19
20 # m*
21 modf; modff; modfl;
22
23 # s*
24 scalbn; scalbnf; scalbnl;
25 }
26 GLIBC_2.1 {
27 # functions used in inline functions or macros
28 __signbit; __signbitf; __signbitl;
29
30 # s*
31 scalbln; scalblnf; scalblnl;
32 }
33 GLIBC_2.20 {
34 }
35 }
36
37 libm {
38 GLIBC_2.0 {
39 # mathematical functions
40 acos; acosf; acosl;
41 acosh; acoshf; acoshl;
42 asin; asinf; asinl;
43 asinh; asinhf; asinhl;
44 atan2; atan2f; atan2l;
45 atan; atanf; atanl;
46 atanh; atanhf; atanhl;
47 cbrt; cbrtf; cbrtl;
48 ceil; ceilf; ceill;
49 copysign; copysignf; copysignl;
50 cos; cosf; cosl;
51 coshf; cosh; coshl;
52 drem; dremf; dreml;
53 erf; erff; erfl;
54 erfc; erfcf; erfcl;
55 exp; expf; expl;
56 expm1; expm1f; expm1l;
57 fabs; fabsf; fabsl;
58 finite; finitef; finitel;
59 floor; floorf; floorl;
60 fmod; fmodf; fmodl;
61 frexp; frexpf; frexpl;
62 gamma; gammaf; gammal;
63 gamma_r; gammaf_r; gammal_r;
64 hypot; hypotf; hypotl;
65 ilogb; ilogbf; ilogbl;
66 j0; j0f; j0l;
67 j1; j1f; j1l;
68 jn; jnf; jnl;
69 ldexp; ldexpf; ldexpl;
70 lgamma; lgammaf; lgammal;
71 lgamma_r; lgammaf_r; lgammal_r;
72 log10; log10f; log10l;
73 log1p; log1pf; log1pl;
74 log; logf; logl;
75 logb; logbf; logbl;
76 matherr;
77 modf; modff; modfl;
78 nextafter; nextafterf; nextafterl;
79 pow; powf; powl;
80 remainder; remainderf; remainderl;
81 rint; rintf; rintl;
82 scalb; scalbf; scalbl;
83 scalbn; scalbnf; scalbnl;
84 significand; significandf; significandl;
85 sin; sinf; sinl;
86 sinh; sinhf; sinhl;
87 sqrt; sqrtf; sqrtl;
88 tan; tanf; tanl;
89 tanh; tanhf; tanhl;
90 y0; y0f; y0l;
91 y1; y1f; y1l;
92 yn; ynf; ynl;
93
94
95 # global variables
96 _LIB_VERSION; signgam;
97 }
98 GLIBC_2.1 {
99 # mathematical functions
100 exp2; exp2f; # exp2l; -- bug omitted this until GLIBC_2.4 (below)
101 exp10; exp10f; exp10l;
102 fdim; fdimf; fdiml;
103 fma; fmaf; fmal;
104 fmax; fmaxf; fmaxl;
105 fmin; fminf; fminl;
106 log2; log2f; log2l;
107 nan; nanf; nanl;
108 nearbyint; nearbyintf; nearbyintl;
109 nexttoward; nexttowardf; nexttowardl;
110 pow10; pow10f; pow10l;
111 remquo; remquof; remquol;
112 lrint; lrintf; lrintl;
113 llrint; llrintf; llrintl;
114 round; roundf; roundl;
115 lround; lroundf; lroundl;
116 llround; llroundf; llroundl;
117 scalbln; scalblnf; scalblnl;
118 sincos; sincosf; sincosl;
119 trunc; truncf; truncl;
120 tgamma; tgammaf; tgammal;
121
122 # complex functions
123 cabs; cabsf; cabsl;
124 cacos; cacosf; cacosl;
125 cacosh; cacoshf; cacoshl;
126 carg; cargf; cargl;
127 casin; casinf; casinl;
128 casinh; casinhf; casinhl;
129 catan; catanf; catanl;
130 catanh; catanhf; catanhl;
131 ccos; ccosf; ccosl;
132 ccosh; ccoshf; ccoshl;
133 cexp; cexpf; cexpl;
134 cimag; cimagf; cimagl;
135 clog; clogf; clogl;
136 clog10; clog10f; clog10l;
137 __clog10; __clog10f; __clog10l;
138 conj; conjf; conjl;
139 cpow; cpowf; cpowl;
140 cproj; cprojf; cprojl;
141 creal; crealf; creall;
142 csin; csinf; csinl;
143 csinh; csinhf; csinhl;
144 csqrt; csqrtf; csqrtl;
145 ctan; ctanf; ctanl;
146 ctanh; ctanhf; ctanhl;
147
148 # fp environment functions
149 feclearexcept; fegetenv; fegetexceptflag;
150 fegetround; feholdexcept; feraiseexcept;
151 fesetenv; fesetexceptflag; fesetround;
152 fetestexcept; feupdateenv;
153
154 # functions used in inline functions or macros
155 __finite; __finitef; __finitel;
156 __fpclassify; __fpclassifyf; __fpclassifyl;
157 __signbit; __signbitf; __signbitl;
158 }
159 GLIBC_2.2 {
160 # fp environment functions changes from ISO C99 TR1
161 feclearexcept; fegetenv; fegetexceptflag; feraiseexcept;
162 fesetenv; fesetexceptflag; feupdateenv;
163
164 # fp environment function
165 feenableexcept; fedisableexcept; fegetexcept;
166 }
167 GLIBC_2.4 {
168 # A bug in sysdeps/generic/w_exp2.c kept this from appearing
169 # in GLIBC_2.1 as it should have on platforms using that
170 # implementation file. On others, sysdeps/CPU/Versions now
171 # puts exp2l in GLIBC_2.1, which will override this entry.
172 exp2l;
173 }
174 GLIBC_2.15 {
175 # Optimized -ffinite-math-only entry points
176 __acos_finite; __acosf_finite; __acosl_finite;
177 __acosh_finite; __acoshf_finite; __acoshl_finite;
178 __asin_finite; __asinf_finite; __asinl_finite;
179 __atan2_finite; __atan2f_finite; __atan2l_finite;
180 __atanh_finite; __atanhf_finite; __atanhl_finite;
181 __cosh_finite; __coshf_finite; __coshl_finite;
182 __exp10_finite; __exp10f_finite; __exp10l_finite;
183 __exp2_finite; __exp2f_finite; __exp2l_finite;
184 __fmod_finite; __fmodf_finite; __fmodl_finite;
185 __hypot_finite; __hypotf_finite; __hypotl_finite;
186 __j0_finite; __j0f_finite; __j0l_finite;
187 __y0_finite; __y0f_finite; __y0l_finite;
188 __j1_finite; __j1f_finite; __j1l_finite;
189 __y1_finite; __y1f_finite; __y1l_finite;
190 __jn_finite; __jnf_finite; __jnl_finite;
191 __yn_finite; __ynf_finite; __ynl_finite;
192 __lgamma_r_finite; __lgammaf_r_finite; __lgammal_r_finite;
193 __log_finite; __logf_finite; __logl_finite;
194 __log10_finite; __log10f_finite; __log10l_finite;
195 __log2_finite; __log2f_finite; __log2l_finite;
196 __pow_finite; __powf_finite; __powl_finite;
197 __remainder_finite; __remainderf_finite; __remainderl_finite;
198 __scalb_finite; __scalbf_finite; __scalbl_finite;
199 __sinh_finite; __sinhf_finite; __sinhl_finite;
200 __sqrt_finite; __sqrtf_finite; __sqrtl_finite;
201 __gamma_r_finite; __gammaf_r_finite; __gammal_r_finite;
202 __exp_finite; __expf_finite; __expl_finite;
203 }
204 GLIBC_2.18 {
205 __issignaling; __issignalingf; __issignalingl;
206 }
207 GLIBC_2.23 {
208 # The __signgam name must be exported for the signgam weak alias
209 # to work. New symbol versions of lgamma* that set __signgam are
210 # needed to preserve compatibility with old binaries that have a
211 # dynamic symbol for signgam but not __signgam.
212 lgamma; lgammaf; lgammal; __signgam;
213 }
214 GLIBC_2.24 {
215 nextup; nextupf; nextupl;
216 nextdown; nextdownf; nextdownl;
217 }
218 GLIBC_2.25 {
219 fesetexcept; fetestexceptflag; fegetmode; fesetmode;
220 __iscanonicall; __iseqsigf; __iseqsig; __iseqsigl;
221 totalorder; totalorderf; totalorderl;
222 totalordermag; totalordermagf; totalordermagl;
223 getpayload; getpayloadf; getpayloadl;
224 canonicalize; canonicalizef; canonicalizel;
225 setpayload; setpayloadf; setpayloadl;
226 setpayloadsig; setpayloadsigf; setpayloadsigl;
227 llogb; llogbf; llogbl;
228 fmaxmag; fmaxmagf; fmaxmagl; fminmag; fminmagf; fminmagl;
229 roundeven; roundevenf; roundevenl;
230 fromfp; fromfpf; fromfpl; ufromfp; ufromfpf; ufromfpl;
231 fromfpx; fromfpxf; fromfpxl; ufromfpx; ufromfpxf; ufromfpxl;
232 }
233 %ifdef FLOAT128_VERSION
234 FLOAT128_VERSION {
235 acosf128;
236 acoshf128;
237 asinf128;
238 asinhf128;
239 atan2f128;
240 atanf128;
241 atanhf128;
242 cabsf128;
243 cacosf128;
244 cacoshf128;
245 canonicalizef128;
246 cargf128;
247 casinf128;
248 casinhf128;
249 catanf128;
250 catanhf128;
251 cbrtf128;
252 ccosf128;
253 ccoshf128;
254 ceilf128;
255 cexpf128;
256 cimagf128;
257 clog10f128;
258 clogf128;
259 conjf128;
260 copysignf128;
261 cosf128;
262 coshf128;
263 cpowf128;
264 cprojf128;
265 crealf128;
266 csinf128;
267 csinhf128;
268 csqrtf128;
269 ctanf128;
270 ctanhf128;
271 erfcf128;
272 erff128;
273 exp10f128;
274 exp2f128;
275 expf128;
276 expm1f128;
277 fabsf128;
278 fdimf128;
279 floorf128;
280 fmaf128;
281 fmaxf128;
282 fmaxmagf128;
283 fminf128;
284 fminmagf128;
285 fmodf128;
286 frexpf128;
287 fromfpf128;
288 fromfpxf128;
289 getpayloadf128;
290 hypotf128;
291 ilogbf128;
292 j0f128;
293 j1f128;
294 jnf128;
295 ldexpf128;
296 lgammaf128;
297 lgammaf128_r;
298 llogbf128;
299 llrintf128;
300 llroundf128;
301 log10f128;
302 log1pf128;
303 log2f128;
304 logbf128;
305 logf128;
306 lrintf128;
307 lroundf128;
308 modff128;
309 nanf128;
310 nearbyintf128;
311 nextafterf128;
312 nextdownf128;
313 nextupf128;
314 powf128;
315 remainderf128;
316 remquof128;
317 rintf128;
318 roundevenf128;
319 roundf128;
320 scalblnf128;
321 scalbnf128;
322 setpayloadf128;
323 setpayloadsigf128;
324 sincosf128;
325 sinf128;
326 sinhf128;
327 sqrtf128;
328 tanf128;
329 tanhf128;
330 tgammaf128;
331 totalorderf128;
332 totalordermagf128;
333 truncf128;
334 ufromfpf128;
335 ufromfpxf128;
336 y0f128;
337 y1f128;
338 ynf128;
339 }
340 %endif
341 GLIBC_2.27 {
342 expf; exp2f; logf; log2f; powf;
343 # _Float64x functions, only present for some configurations.
344 acosf64x;
345 acoshf64x;
346 asinf64x;
347 asinhf64x;
348 atan2f64x;
349 atanf64x;
350 atanhf64x;
351 cabsf64x;
352 cacosf64x;
353 cacoshf64x;
354 canonicalizef64x;
355 cargf64x;
356 casinf64x;
357 casinhf64x;
358 catanf64x;
359 catanhf64x;
360 cbrtf64x;
361 ccosf64x;
362 ccoshf64x;
363 ceilf64x;
364 cexpf64x;
365 cimagf64x;
366 clog10f64x;
367 clogf64x;
368 conjf64x;
369 copysignf64x;
370 cosf64x;
371 coshf64x;
372 cpowf64x;
373 cprojf64x;
374 crealf64x;
375 csinf64x;
376 csinhf64x;
377 csqrtf64x;
378 ctanf64x;
379 ctanhf64x;
380 erfcf64x;
381 erff64x;
382 exp10f64x;
383 exp2f64x;
384 expf64x;
385 expm1f64x;
386 fabsf64x;
387 fdimf64x;
388 floorf64x;
389 fmaf64x;
390 fmaxf64x;
391 fmaxmagf64x;
392 fminf64x;
393 fminmagf64x;
394 fmodf64x;
395 frexpf64x;
396 fromfpf64x;
397 fromfpxf64x;
398 getpayloadf64x;
399 hypotf64x;
400 ilogbf64x;
401 j0f64x;
402 j1f64x;
403 jnf64x;
404 ldexpf64x;
405 lgammaf64x;
406 lgammaf64x_r;
407 llogbf64x;
408 llrintf64x;
409 llroundf64x;
410 log10f64x;
411 log1pf64x;
412 log2f64x;
413 logbf64x;
414 logf64x;
415 lrintf64x;
416 lroundf64x;
417 modff64x;
418 nanf64x;
419 nearbyintf64x;
420 nextafterf64x;
421 nextdownf64x;
422 nextupf64x;
423 powf64x;
424 remainderf64x;
425 remquof64x;
426 rintf64x;
427 roundevenf64x;
428 roundf64x;
429 scalblnf64x;
430 scalbnf64x;
431 setpayloadf64x;
432 setpayloadsigf64x;
433 sincosf64x;
434 sinf64x;
435 sinhf64x;
436 sqrtf64x;
437 tanf64x;
438 tanhf64x;
439 tgammaf64x;
440 totalorderf64x;
441 totalordermagf64x;
442 truncf64x;
443 ufromfpf64x;
444 ufromfpxf64x;
445 y0f64x;
446 y1f64x;
447 ynf64x;
448 # _Float32, _Float64 and _Float32x functions, for all configurations.
449 acosf32; acosf64; acosf32x;
450 acoshf32; acoshf64; acoshf32x;
451 asinf32; asinf64; asinf32x;
452 asinhf32; asinhf64; asinhf32x;
453 atan2f32; atan2f64; atan2f32x;
454 atanf32; atanf64; atanf32x;
455 atanhf32; atanhf64; atanhf32x;
456 cabsf32; cabsf64; cabsf32x;
457 cacosf32; cacosf64; cacosf32x;
458 cacoshf32; cacoshf64; cacoshf32x;
459 canonicalizef32; canonicalizef64; canonicalizef32x;
460 cargf32; cargf64; cargf32x;
461 casinf32; casinf64; casinf32x;
462 casinhf32; casinhf64; casinhf32x;
463 catanf32; catanf64; catanf32x;
464 catanhf32; catanhf64; catanhf32x;
465 cbrtf32; cbrtf64; cbrtf32x;
466 ccosf32; ccosf64; ccosf32x;
467 ccoshf32; ccoshf64; ccoshf32x;
468 ceilf32; ceilf64; ceilf32x;
469 cexpf32; cexpf64; cexpf32x;
470 cimagf32; cimagf64; cimagf32x;
471 clog10f32; clog10f64; clog10f32x;
472 clogf32; clogf64; clogf32x;
473 conjf32; conjf64; conjf32x;
474 copysignf32; copysignf64; copysignf32x;
475 cosf32; cosf64; cosf32x;
476 coshf32; coshf64; coshf32x;
477 cpowf32; cpowf64; cpowf32x;
478 cprojf32; cprojf64; cprojf32x;
479 crealf32; crealf64; crealf32x;
480 csinf32; csinf64; csinf32x;
481 csinhf32; csinhf64; csinhf32x;
482 csqrtf32; csqrtf64; csqrtf32x;
483 ctanf32; ctanf64; ctanf32x;
484 ctanhf32; ctanhf64; ctanhf32x;
485 erfcf32; erfcf64; erfcf32x;
486 erff32; erff64; erff32x;
487 exp10f32; exp10f64; exp10f32x;
488 exp2f32; exp2f64; exp2f32x;
489 expf32; expf64; expf32x;
490 expm1f32; expm1f64; expm1f32x;
491 fabsf32; fabsf64; fabsf32x;
492 fdimf32; fdimf64; fdimf32x;
493 floorf32; floorf64; floorf32x;
494 fmaf32; fmaf64; fmaf32x;
495 fmaxf32; fmaxf64; fmaxf32x;
496 fmaxmagf32; fmaxmagf64; fmaxmagf32x;
497 fminf32; fminf64; fminf32x;
498 fminmagf32; fminmagf64; fminmagf32x;
499 fmodf32; fmodf64; fmodf32x;
500 frexpf32; frexpf64; frexpf32x;
501 fromfpf32; fromfpf64; fromfpf32x;
502 fromfpxf32; fromfpxf64; fromfpxf32x;
503 getpayloadf32; getpayloadf64; getpayloadf32x;
504 hypotf32; hypotf64; hypotf32x;
505 ilogbf32; ilogbf64; ilogbf32x;
506 j0f32; j0f64; j0f32x;
507 j1f32; j1f64; j1f32x;
508 jnf32; jnf64; jnf32x;
509 ldexpf32; ldexpf64; ldexpf32x;
510 lgammaf32; lgammaf64; lgammaf32x;
511 lgammaf32_r; lgammaf64_r; lgammaf32x_r;
512 llogbf32; llogbf64; llogbf32x;
513 llrintf32; llrintf64; llrintf32x;
514 llroundf32; llroundf64; llroundf32x;
515 log10f32; log10f64; log10f32x;
516 log1pf32; log1pf64; log1pf32x;
517 log2f32; log2f64; log2f32x;
518 logbf32; logbf64; logbf32x;
519 logf32; logf64; logf32x;
520 lrintf32; lrintf64; lrintf32x;
521 lroundf32; lroundf64; lroundf32x;
522 modff32; modff64; modff32x;
523 nanf32; nanf64; nanf32x;
524 nearbyintf32; nearbyintf64; nearbyintf32x;
525 nextafterf32; nextafterf64; nextafterf32x;
526 nextdownf32; nextdownf64; nextdownf32x;
527 nextupf32; nextupf64; nextupf32x;
528 powf32; powf64; powf32x;
529 remainderf32; remainderf64; remainderf32x;
530 remquof32; remquof64; remquof32x;
531 rintf32; rintf64; rintf32x;
532 roundevenf32; roundevenf64; roundevenf32x;
533 roundf32; roundf64; roundf32x;
534 scalblnf32; scalblnf64; scalblnf32x;
535 scalbnf32; scalbnf64; scalbnf32x;
536 setpayloadf32; setpayloadf64; setpayloadf32x;
537 setpayloadsigf32; setpayloadsigf64; setpayloadsigf32x;
538 sincosf32; sincosf64; sincosf32x;
539 sinf32; sinf64; sinf32x;
540 sinhf32; sinhf64; sinhf32x;
541 sqrtf32; sqrtf64; sqrtf32x;
542 tanf32; tanf64; tanf32x;
543 tanhf32; tanhf64; tanhf32x;
544 tgammaf32; tgammaf64; tgammaf32x;
545 totalorderf32; totalorderf64; totalorderf32x;
546 totalordermagf32; totalordermagf64; totalordermagf32x;
547 truncf32; truncf64; truncf32x;
548 ufromfpf32; ufromfpf64; ufromfpf32x;
549 ufromfpxf32; ufromfpxf64; ufromfpxf32x;
550 y0f32; y0f64; y0f32x;
551 y1f32; y1f64; y1f32x;
552 ynf32; ynf64; ynf32x;
553 }
554 GLIBC_2.28 {
555 # Functions not involving _Float64x or _Float128, for all configurations.
556 fadd; faddl; daddl;
557 f32addf32x; f32addf64; f32xaddf64;
558 fdiv; fdivl; ddivl;
559 f32divf32x; f32divf64; f32xdivf64;
560 fmul; fmull; dmull;
561 f32mulf32x; f32mulf64; f32xmulf64;
562 fsub; fsubl; dsubl;
563 f32subf32x; f32subf64; f32xsubf64;
564 # Functions involving _Float64x or _Float128, for some configurations.
565 f32addf64x; f32addf128;
566 f32xaddf64x; f32xaddf128; f64addf64x; f64addf128;
567 f64xaddf128;
568 f32divf64x; f32divf128;
569 f32xdivf64x; f32xdivf128; f64divf64x; f64divf128;
570 f64xdivf128;
571 f32mulf64x; f32mulf128;
572 f32xmulf64x; f32xmulf128; f64mulf64x; f64mulf128;
573 f64xmulf128;
574 f32subf64x; f32subf128;
575 f32xsubf64x; f32xsubf128; f64subf64x; f64subf128;
576 f64xsubf128;
577 }
578 GLIBC_2.29 {
579 # No SVID compatible error handling.
580 exp; exp2; log; log2; pow;
581 }
582 GLIBC_2.31 {
583 # totalorder changed to take pointer arguments.
584 totalorder; totalorderf; totalorderl;
585 totalordermag; totalordermagf; totalordermagl;
586 totalorderf32; totalorderf64; totalorderf32x;
587 totalordermagf32; totalordermagf64; totalordermagf32x;
588 totalorderf64x;
589 totalordermagf64x;
590 totalorderf128;
591 totalordermagf128;
592 }
593 }