+%include <float128-abi.h>
libc {
GLIBC_2.0 {
# functions used in inline functions or macros
}
GLIBC_2.25 {
fesetexcept; fetestexceptflag; fegetmode; fesetmode;
- __iscanonicall;
+ __iscanonicall; __iseqsigf; __iseqsig; __iseqsigl;
+ totalorder; totalorderf; totalorderl;
+ totalordermag; totalordermagf; totalordermagl;
+ getpayload; getpayloadf; getpayloadl;
+ canonicalize; canonicalizef; canonicalizel;
+ setpayload; setpayloadf; setpayloadl;
+ setpayloadsig; setpayloadsigf; setpayloadsigl;
+ llogb; llogbf; llogbl;
+ fmaxmag; fmaxmagf; fmaxmagl; fminmag; fminmagf; fminmagl;
+ roundeven; roundevenf; roundevenl;
+ fromfp; fromfpf; fromfpl; ufromfp; ufromfpf; ufromfpl;
+ fromfpx; fromfpxf; fromfpxl; ufromfpx; ufromfpxf; ufromfpxl;
+ }
+%ifdef FLOAT128_VERSION
+ FLOAT128_VERSION {
+ acosf128;
+ acoshf128;
+ asinf128;
+ asinhf128;
+ atan2f128;
+ atanf128;
+ atanhf128;
+ cabsf128;
+ cacosf128;
+ cacoshf128;
+ canonicalizef128;
+ cargf128;
+ casinf128;
+ casinhf128;
+ catanf128;
+ catanhf128;
+ cbrtf128;
+ ccosf128;
+ ccoshf128;
+ ceilf128;
+ cexpf128;
+ cimagf128;
+ clog10f128;
+ clogf128;
+ conjf128;
+ copysignf128;
+ cosf128;
+ coshf128;
+ cpowf128;
+ cprojf128;
+ crealf128;
+ csinf128;
+ csinhf128;
+ csqrtf128;
+ ctanf128;
+ ctanhf128;
+ erfcf128;
+ erff128;
+ exp10f128;
+ exp2f128;
+ expf128;
+ expm1f128;
+ fabsf128;
+ fdimf128;
+ floorf128;
+ fmaf128;
+ fmaxf128;
+ fmaxmagf128;
+ fminf128;
+ fminmagf128;
+ fmodf128;
+ frexpf128;
+ fromfpf128;
+ fromfpxf128;
+ getpayloadf128;
+ hypotf128;
+ ilogbf128;
+ j0f128;
+ j1f128;
+ jnf128;
+ ldexpf128;
+ lgammaf128;
+ lgammaf128_r;
+ llogbf128;
+ llrintf128;
+ llroundf128;
+ log10f128;
+ log1pf128;
+ log2f128;
+ logbf128;
+ logf128;
+ lrintf128;
+ lroundf128;
+ modff128;
+ nanf128;
+ nearbyintf128;
+ nextafterf128;
+ nextdownf128;
+ nextupf128;
+ powf128;
+ remainderf128;
+ remquof128;
+ rintf128;
+ roundevenf128;
+ roundf128;
+ scalblnf128;
+ scalbnf128;
+ setpayloadf128;
+ setpayloadsigf128;
+ sincosf128;
+ sinf128;
+ sinhf128;
+ sqrtf128;
+ tanf128;
+ tanhf128;
+ tgammaf128;
+ totalorderf128;
+ totalordermagf128;
+ truncf128;
+ ufromfpf128;
+ ufromfpxf128;
+ y0f128;
+ y1f128;
+ ynf128;
+ }
+%endif
+ GLIBC_2.27 {
+ expf; exp2f; logf; log2f; powf;
+ # _Float64x functions, only present for some configurations.
+ acosf64x;
+ acoshf64x;
+ asinf64x;
+ asinhf64x;
+ atan2f64x;
+ atanf64x;
+ atanhf64x;
+ cabsf64x;
+ cacosf64x;
+ cacoshf64x;
+ canonicalizef64x;
+ cargf64x;
+ casinf64x;
+ casinhf64x;
+ catanf64x;
+ catanhf64x;
+ cbrtf64x;
+ ccosf64x;
+ ccoshf64x;
+ ceilf64x;
+ cexpf64x;
+ cimagf64x;
+ clog10f64x;
+ clogf64x;
+ conjf64x;
+ copysignf64x;
+ cosf64x;
+ coshf64x;
+ cpowf64x;
+ cprojf64x;
+ crealf64x;
+ csinf64x;
+ csinhf64x;
+ csqrtf64x;
+ ctanf64x;
+ ctanhf64x;
+ erfcf64x;
+ erff64x;
+ exp10f64x;
+ exp2f64x;
+ expf64x;
+ expm1f64x;
+ fabsf64x;
+ fdimf64x;
+ floorf64x;
+ fmaf64x;
+ fmaxf64x;
+ fmaxmagf64x;
+ fminf64x;
+ fminmagf64x;
+ fmodf64x;
+ frexpf64x;
+ fromfpf64x;
+ fromfpxf64x;
+ getpayloadf64x;
+ hypotf64x;
+ ilogbf64x;
+ j0f64x;
+ j1f64x;
+ jnf64x;
+ ldexpf64x;
+ lgammaf64x;
+ lgammaf64x_r;
+ llogbf64x;
+ llrintf64x;
+ llroundf64x;
+ log10f64x;
+ log1pf64x;
+ log2f64x;
+ logbf64x;
+ logf64x;
+ lrintf64x;
+ lroundf64x;
+ modff64x;
+ nanf64x;
+ nearbyintf64x;
+ nextafterf64x;
+ nextdownf64x;
+ nextupf64x;
+ powf64x;
+ remainderf64x;
+ remquof64x;
+ rintf64x;
+ roundevenf64x;
+ roundf64x;
+ scalblnf64x;
+ scalbnf64x;
+ setpayloadf64x;
+ setpayloadsigf64x;
+ sincosf64x;
+ sinf64x;
+ sinhf64x;
+ sqrtf64x;
+ tanf64x;
+ tanhf64x;
+ tgammaf64x;
+ totalorderf64x;
+ totalordermagf64x;
+ truncf64x;
+ ufromfpf64x;
+ ufromfpxf64x;
+ y0f64x;
+ y1f64x;
+ ynf64x;
+ # _Float32, _Float64 and _Float32x functions, for all configurations.
+ acosf32; acosf64; acosf32x;
+ acoshf32; acoshf64; acoshf32x;
+ asinf32; asinf64; asinf32x;
+ asinhf32; asinhf64; asinhf32x;
+ atan2f32; atan2f64; atan2f32x;
+ atanf32; atanf64; atanf32x;
+ atanhf32; atanhf64; atanhf32x;
+ cabsf32; cabsf64; cabsf32x;
+ cacosf32; cacosf64; cacosf32x;
+ cacoshf32; cacoshf64; cacoshf32x;
+ canonicalizef32; canonicalizef64; canonicalizef32x;
+ cargf32; cargf64; cargf32x;
+ casinf32; casinf64; casinf32x;
+ casinhf32; casinhf64; casinhf32x;
+ catanf32; catanf64; catanf32x;
+ catanhf32; catanhf64; catanhf32x;
+ cbrtf32; cbrtf64; cbrtf32x;
+ ccosf32; ccosf64; ccosf32x;
+ ccoshf32; ccoshf64; ccoshf32x;
+ ceilf32; ceilf64; ceilf32x;
+ cexpf32; cexpf64; cexpf32x;
+ cimagf32; cimagf64; cimagf32x;
+ clog10f32; clog10f64; clog10f32x;
+ clogf32; clogf64; clogf32x;
+ conjf32; conjf64; conjf32x;
+ copysignf32; copysignf64; copysignf32x;
+ cosf32; cosf64; cosf32x;
+ coshf32; coshf64; coshf32x;
+ cpowf32; cpowf64; cpowf32x;
+ cprojf32; cprojf64; cprojf32x;
+ crealf32; crealf64; crealf32x;
+ csinf32; csinf64; csinf32x;
+ csinhf32; csinhf64; csinhf32x;
+ csqrtf32; csqrtf64; csqrtf32x;
+ ctanf32; ctanf64; ctanf32x;
+ ctanhf32; ctanhf64; ctanhf32x;
+ erfcf32; erfcf64; erfcf32x;
+ erff32; erff64; erff32x;
+ exp10f32; exp10f64; exp10f32x;
+ exp2f32; exp2f64; exp2f32x;
+ expf32; expf64; expf32x;
+ expm1f32; expm1f64; expm1f32x;
+ fabsf32; fabsf64; fabsf32x;
+ fdimf32; fdimf64; fdimf32x;
+ floorf32; floorf64; floorf32x;
+ fmaf32; fmaf64; fmaf32x;
+ fmaxf32; fmaxf64; fmaxf32x;
+ fmaxmagf32; fmaxmagf64; fmaxmagf32x;
+ fminf32; fminf64; fminf32x;
+ fminmagf32; fminmagf64; fminmagf32x;
+ fmodf32; fmodf64; fmodf32x;
+ frexpf32; frexpf64; frexpf32x;
+ fromfpf32; fromfpf64; fromfpf32x;
+ fromfpxf32; fromfpxf64; fromfpxf32x;
+ getpayloadf32; getpayloadf64; getpayloadf32x;
+ hypotf32; hypotf64; hypotf32x;
+ ilogbf32; ilogbf64; ilogbf32x;
+ j0f32; j0f64; j0f32x;
+ j1f32; j1f64; j1f32x;
+ jnf32; jnf64; jnf32x;
+ ldexpf32; ldexpf64; ldexpf32x;
+ lgammaf32; lgammaf64; lgammaf32x;
+ lgammaf32_r; lgammaf64_r; lgammaf32x_r;
+ llogbf32; llogbf64; llogbf32x;
+ llrintf32; llrintf64; llrintf32x;
+ llroundf32; llroundf64; llroundf32x;
+ log10f32; log10f64; log10f32x;
+ log1pf32; log1pf64; log1pf32x;
+ log2f32; log2f64; log2f32x;
+ logbf32; logbf64; logbf32x;
+ logf32; logf64; logf32x;
+ lrintf32; lrintf64; lrintf32x;
+ lroundf32; lroundf64; lroundf32x;
+ modff32; modff64; modff32x;
+ nanf32; nanf64; nanf32x;
+ nearbyintf32; nearbyintf64; nearbyintf32x;
+ nextafterf32; nextafterf64; nextafterf32x;
+ nextdownf32; nextdownf64; nextdownf32x;
+ nextupf32; nextupf64; nextupf32x;
+ powf32; powf64; powf32x;
+ remainderf32; remainderf64; remainderf32x;
+ remquof32; remquof64; remquof32x;
+ rintf32; rintf64; rintf32x;
+ roundevenf32; roundevenf64; roundevenf32x;
+ roundf32; roundf64; roundf32x;
+ scalblnf32; scalblnf64; scalblnf32x;
+ scalbnf32; scalbnf64; scalbnf32x;
+ setpayloadf32; setpayloadf64; setpayloadf32x;
+ setpayloadsigf32; setpayloadsigf64; setpayloadsigf32x;
+ sincosf32; sincosf64; sincosf32x;
+ sinf32; sinf64; sinf32x;
+ sinhf32; sinhf64; sinhf32x;
+ sqrtf32; sqrtf64; sqrtf32x;
+ tanf32; tanf64; tanf32x;
+ tanhf32; tanhf64; tanhf32x;
+ tgammaf32; tgammaf64; tgammaf32x;
+ totalorderf32; totalorderf64; totalorderf32x;
+ totalordermagf32; totalordermagf64; totalordermagf32x;
+ truncf32; truncf64; truncf32x;
+ ufromfpf32; ufromfpf64; ufromfpf32x;
+ ufromfpxf32; ufromfpxf64; ufromfpxf32x;
+ y0f32; y0f64; y0f32x;
+ y1f32; y1f64; y1f32x;
+ ynf32; ynf64; ynf32x;
+ }
+ GLIBC_2.28 {
+ # Functions not involving _Float64x or _Float128, for all configurations.
+ fadd; faddl; daddl;
+ f32addf32x; f32addf64; f32xaddf64;
+ fdiv; fdivl; ddivl;
+ f32divf32x; f32divf64; f32xdivf64;
+ fmul; fmull; dmull;
+ f32mulf32x; f32mulf64; f32xmulf64;
+ fsub; fsubl; dsubl;
+ f32subf32x; f32subf64; f32xsubf64;
+ # Functions involving _Float64x or _Float128, for some configurations.
+ f32addf64x; f32addf128;
+ f32xaddf64x; f32xaddf128; f64addf64x; f64addf128;
+ f64xaddf128;
+ f32divf64x; f32divf128;
+ f32xdivf64x; f32xdivf128; f64divf64x; f64divf128;
+ f64xdivf128;
+ f32mulf64x; f32mulf128;
+ f32xmulf64x; f32xmulf128; f64mulf64x; f64mulf128;
+ f64xmulf128;
+ f32subf64x; f32subf128;
+ f32xsubf64x; f32xsubf128; f64subf64x; f64subf128;
+ f64xsubf128;
+ }
+ GLIBC_2.29 {
+ # No SVID compatible error handling.
+ exp; exp2; log; log2; pow;
+ }
+ GLIBC_2.31 {
+ # totalorder changed to take pointer arguments.
+ totalorder; totalorderf; totalorderl;
+ totalordermag; totalordermagf; totalordermagl;
+ totalorderf32; totalorderf64; totalorderf32x;
+ totalordermagf32; totalordermagf64; totalordermagf32x;
+ totalorderf64x;
+ totalordermagf64x;
+ totalorderf128;
+ totalordermagf128;
+ }
+ GLIBC_2.32 {
+ exp10f;
+ }
+ GLIBC_2.35 {
+ # Functions not involving _Float64x or _Float128, for all configurations.
+ ffma; ffmal; dfmal;
+ f32fmaf32x; f32fmaf64; f32xfmaf64;
+ fsqrt; fsqrtl; dsqrtl;
+ f32sqrtf32x; f32sqrtf64; f32xsqrtf64;
+ fmaximum; fmaximumf; fmaximuml; fmaximumf32; fmaximumf64; fmaximumf32x;
+ fmaximum_num; fmaximum_numf; fmaximum_numl;
+ fmaximum_numf32; fmaximum_numf64; fmaximum_numf32x;
+ fmaximum_mag; fmaximum_magf; fmaximum_magl;
+ fmaximum_magf32; fmaximum_magf64; fmaximum_magf32x;
+ fmaximum_mag_num; fmaximum_mag_numf; fmaximum_mag_numl;
+ fmaximum_mag_numf32; fmaximum_mag_numf64; fmaximum_mag_numf32x;
+ fminimum; fminimumf; fminimuml; fminimumf32; fminimumf64; fminimumf32x;
+ fminimum_num; fminimum_numf; fminimum_numl;
+ fminimum_numf32; fminimum_numf64; fminimum_numf32x;
+ fminimum_mag; fminimum_magf; fminimum_magl;
+ fminimum_magf32; fminimum_magf64; fminimum_magf32x;
+ fminimum_mag_num; fminimum_mag_numf; fminimum_mag_numl;
+ fminimum_mag_numf32; fminimum_mag_numf64; fminimum_mag_numf32x;
+ # Functions involving _Float64x or _Float128, for some configurations.
+ f32fmaf64x; f32fmaf128;
+ f32xfmaf64x; f32xfmaf128; f64fmaf64x; f64fmaf128;
+ f64xfmaf128;
+ f32sqrtf64x; f32sqrtf128;
+ f32xsqrtf64x; f32xsqrtf128; f64sqrtf64x; f64sqrtf128;
+ f64xsqrtf128;
+ fmaximumf64x; fmaximumf128;
+ fmaximum_numf64x; fmaximum_numf128;
+ fmaximum_magf64x; fmaximum_magf128;
+ fmaximum_mag_numf64x; fmaximum_mag_numf128;
+ fminimumf64x; fminimumf128;
+ fminimum_numf64x; fminimum_numf128;
+ fminimum_magf64x; fminimum_magf128;
+ fminimum_mag_numf64x; fminimum_mag_numf128;
+ # No SVID compatible error handling.
+ hypotf; hypot;
}
}