From 1f9055ce04a66a787c400c05f12e88c96f07e686 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 7 Dec 2017 00:48:31 +0000 Subject: Add _Float32 function aliases. This patch concludes filling out TS 18661-3 support for different types by adding *f32 function aliases of float functions to support _Float32. As with _Float64 and _Float32x, this is supported for all glibc configurations. As with the previous such patches there are some x86 ulps updates because of inline functions present for float but not for _Float32. The patch also has the usual bits/floatn-common.h update, symbol versions, ABI baselines updates, test enablement and documentation. Tested for x86_64 and x86, and with build-many-glibcs.py, with both GCC 6 and GCC 7. * bits/floatn-common.h (__HAVE_FLOAT32): Define to 1. * manual/math.texi (Mathematics): Document support for _Float32. * math/Makefile (test-types): Add float32. * math/Versions (GLIBC_2.27): Add _Float32 functions. * stdlib/Versions (GLIBC_2.27): Likewise. * wcsmbs/Versions (GLIBC_2.27): Likewise. * sysdeps/unix/sysv/linux/aarch64/libc.abilist: Update. * sysdeps/unix/sysv/linux/aarch64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/alpha/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/alpha/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/arm/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/hppa/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/i386/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/ia64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/microblaze/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/nios2/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Likewise. * sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sh/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx32/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilegx/tilegx64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist: Likewise. * sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Likewise. * sysdeps/i386/fpu/libm-test-ulps: Likewise. * sysdeps/i386/i686/fpu/multiarch/libm-test-ulps: Likewise. --- sysdeps/unix/sysv/linux/arm/libm.abilist | 104 +++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) (limited to 'sysdeps/unix/sysv/linux/arm/libm.abilist') diff --git a/sysdeps/unix/sysv/linux/arm/libm.abilist b/sysdeps/unix/sysv/linux/arm/libm.abilist index df350c8993..613df712c4 100644 --- a/sysdeps/unix/sysv/linux/arm/libm.abilist +++ b/sysdeps/unix/sysv/linux/arm/libm.abilist @@ -118,217 +118,321 @@ GLIBC_2.25 ufromfpx F GLIBC_2.25 ufromfpxf F GLIBC_2.25 ufromfpxl F GLIBC_2.27 GLIBC_2.27 A +GLIBC_2.27 acosf32 F GLIBC_2.27 acosf32x F GLIBC_2.27 acosf64 F +GLIBC_2.27 acoshf32 F GLIBC_2.27 acoshf32x F GLIBC_2.27 acoshf64 F +GLIBC_2.27 asinf32 F GLIBC_2.27 asinf32x F GLIBC_2.27 asinf64 F +GLIBC_2.27 asinhf32 F GLIBC_2.27 asinhf32x F GLIBC_2.27 asinhf64 F +GLIBC_2.27 atan2f32 F GLIBC_2.27 atan2f32x F GLIBC_2.27 atan2f64 F +GLIBC_2.27 atanf32 F GLIBC_2.27 atanf32x F GLIBC_2.27 atanf64 F +GLIBC_2.27 atanhf32 F GLIBC_2.27 atanhf32x F GLIBC_2.27 atanhf64 F +GLIBC_2.27 cabsf32 F GLIBC_2.27 cabsf32x F GLIBC_2.27 cabsf64 F +GLIBC_2.27 cacosf32 F GLIBC_2.27 cacosf32x F GLIBC_2.27 cacosf64 F +GLIBC_2.27 cacoshf32 F GLIBC_2.27 cacoshf32x F GLIBC_2.27 cacoshf64 F +GLIBC_2.27 canonicalizef32 F GLIBC_2.27 canonicalizef32x F GLIBC_2.27 canonicalizef64 F +GLIBC_2.27 cargf32 F GLIBC_2.27 cargf32x F GLIBC_2.27 cargf64 F +GLIBC_2.27 casinf32 F GLIBC_2.27 casinf32x F GLIBC_2.27 casinf64 F +GLIBC_2.27 casinhf32 F GLIBC_2.27 casinhf32x F GLIBC_2.27 casinhf64 F +GLIBC_2.27 catanf32 F GLIBC_2.27 catanf32x F GLIBC_2.27 catanf64 F +GLIBC_2.27 catanhf32 F GLIBC_2.27 catanhf32x F GLIBC_2.27 catanhf64 F +GLIBC_2.27 cbrtf32 F GLIBC_2.27 cbrtf32x F GLIBC_2.27 cbrtf64 F +GLIBC_2.27 ccosf32 F GLIBC_2.27 ccosf32x F GLIBC_2.27 ccosf64 F +GLIBC_2.27 ccoshf32 F GLIBC_2.27 ccoshf32x F GLIBC_2.27 ccoshf64 F +GLIBC_2.27 ceilf32 F GLIBC_2.27 ceilf32x F GLIBC_2.27 ceilf64 F +GLIBC_2.27 cexpf32 F GLIBC_2.27 cexpf32x F GLIBC_2.27 cexpf64 F +GLIBC_2.27 cimagf32 F GLIBC_2.27 cimagf32x F GLIBC_2.27 cimagf64 F +GLIBC_2.27 clog10f32 F GLIBC_2.27 clog10f32x F GLIBC_2.27 clog10f64 F +GLIBC_2.27 clogf32 F GLIBC_2.27 clogf32x F GLIBC_2.27 clogf64 F +GLIBC_2.27 conjf32 F GLIBC_2.27 conjf32x F GLIBC_2.27 conjf64 F +GLIBC_2.27 copysignf32 F GLIBC_2.27 copysignf32x F GLIBC_2.27 copysignf64 F +GLIBC_2.27 cosf32 F GLIBC_2.27 cosf32x F GLIBC_2.27 cosf64 F +GLIBC_2.27 coshf32 F GLIBC_2.27 coshf32x F GLIBC_2.27 coshf64 F +GLIBC_2.27 cpowf32 F GLIBC_2.27 cpowf32x F GLIBC_2.27 cpowf64 F +GLIBC_2.27 cprojf32 F GLIBC_2.27 cprojf32x F GLIBC_2.27 cprojf64 F +GLIBC_2.27 crealf32 F GLIBC_2.27 crealf32x F GLIBC_2.27 crealf64 F +GLIBC_2.27 csinf32 F GLIBC_2.27 csinf32x F GLIBC_2.27 csinf64 F +GLIBC_2.27 csinhf32 F GLIBC_2.27 csinhf32x F GLIBC_2.27 csinhf64 F +GLIBC_2.27 csqrtf32 F GLIBC_2.27 csqrtf32x F GLIBC_2.27 csqrtf64 F +GLIBC_2.27 ctanf32 F GLIBC_2.27 ctanf32x F GLIBC_2.27 ctanf64 F +GLIBC_2.27 ctanhf32 F GLIBC_2.27 ctanhf32x F GLIBC_2.27 ctanhf64 F +GLIBC_2.27 erfcf32 F GLIBC_2.27 erfcf32x F GLIBC_2.27 erfcf64 F +GLIBC_2.27 erff32 F GLIBC_2.27 erff32x F GLIBC_2.27 erff64 F +GLIBC_2.27 exp10f32 F GLIBC_2.27 exp10f32x F GLIBC_2.27 exp10f64 F GLIBC_2.27 exp2f F +GLIBC_2.27 exp2f32 F GLIBC_2.27 exp2f32x F GLIBC_2.27 exp2f64 F GLIBC_2.27 expf F +GLIBC_2.27 expf32 F GLIBC_2.27 expf32x F GLIBC_2.27 expf64 F +GLIBC_2.27 expm1f32 F GLIBC_2.27 expm1f32x F GLIBC_2.27 expm1f64 F +GLIBC_2.27 fabsf32 F GLIBC_2.27 fabsf32x F GLIBC_2.27 fabsf64 F +GLIBC_2.27 fdimf32 F GLIBC_2.27 fdimf32x F GLIBC_2.27 fdimf64 F +GLIBC_2.27 floorf32 F GLIBC_2.27 floorf32x F GLIBC_2.27 floorf64 F +GLIBC_2.27 fmaf32 F GLIBC_2.27 fmaf32x F GLIBC_2.27 fmaf64 F +GLIBC_2.27 fmaxf32 F GLIBC_2.27 fmaxf32x F GLIBC_2.27 fmaxf64 F +GLIBC_2.27 fmaxmagf32 F GLIBC_2.27 fmaxmagf32x F GLIBC_2.27 fmaxmagf64 F +GLIBC_2.27 fminf32 F GLIBC_2.27 fminf32x F GLIBC_2.27 fminf64 F +GLIBC_2.27 fminmagf32 F GLIBC_2.27 fminmagf32x F GLIBC_2.27 fminmagf64 F +GLIBC_2.27 fmodf32 F GLIBC_2.27 fmodf32x F GLIBC_2.27 fmodf64 F +GLIBC_2.27 frexpf32 F GLIBC_2.27 frexpf32x F GLIBC_2.27 frexpf64 F +GLIBC_2.27 fromfpf32 F GLIBC_2.27 fromfpf32x F GLIBC_2.27 fromfpf64 F +GLIBC_2.27 fromfpxf32 F GLIBC_2.27 fromfpxf32x F GLIBC_2.27 fromfpxf64 F +GLIBC_2.27 getpayloadf32 F GLIBC_2.27 getpayloadf32x F GLIBC_2.27 getpayloadf64 F +GLIBC_2.27 hypotf32 F GLIBC_2.27 hypotf32x F GLIBC_2.27 hypotf64 F +GLIBC_2.27 ilogbf32 F GLIBC_2.27 ilogbf32x F GLIBC_2.27 ilogbf64 F +GLIBC_2.27 j0f32 F GLIBC_2.27 j0f32x F GLIBC_2.27 j0f64 F +GLIBC_2.27 j1f32 F GLIBC_2.27 j1f32x F GLIBC_2.27 j1f64 F +GLIBC_2.27 jnf32 F GLIBC_2.27 jnf32x F GLIBC_2.27 jnf64 F +GLIBC_2.27 ldexpf32 F GLIBC_2.27 ldexpf32x F GLIBC_2.27 ldexpf64 F +GLIBC_2.27 lgammaf32 F +GLIBC_2.27 lgammaf32_r F GLIBC_2.27 lgammaf32x F GLIBC_2.27 lgammaf32x_r F GLIBC_2.27 lgammaf64 F GLIBC_2.27 lgammaf64_r F +GLIBC_2.27 llogbf32 F GLIBC_2.27 llogbf32x F GLIBC_2.27 llogbf64 F +GLIBC_2.27 llrintf32 F GLIBC_2.27 llrintf32x F GLIBC_2.27 llrintf64 F +GLIBC_2.27 llroundf32 F GLIBC_2.27 llroundf32x F GLIBC_2.27 llroundf64 F +GLIBC_2.27 log10f32 F GLIBC_2.27 log10f32x F GLIBC_2.27 log10f64 F +GLIBC_2.27 log1pf32 F GLIBC_2.27 log1pf32x F GLIBC_2.27 log1pf64 F GLIBC_2.27 log2f F +GLIBC_2.27 log2f32 F GLIBC_2.27 log2f32x F GLIBC_2.27 log2f64 F +GLIBC_2.27 logbf32 F GLIBC_2.27 logbf32x F GLIBC_2.27 logbf64 F GLIBC_2.27 logf F +GLIBC_2.27 logf32 F GLIBC_2.27 logf32x F GLIBC_2.27 logf64 F +GLIBC_2.27 lrintf32 F GLIBC_2.27 lrintf32x F GLIBC_2.27 lrintf64 F +GLIBC_2.27 lroundf32 F GLIBC_2.27 lroundf32x F GLIBC_2.27 lroundf64 F +GLIBC_2.27 modff32 F GLIBC_2.27 modff32x F GLIBC_2.27 modff64 F +GLIBC_2.27 nanf32 F GLIBC_2.27 nanf32x F GLIBC_2.27 nanf64 F +GLIBC_2.27 nearbyintf32 F GLIBC_2.27 nearbyintf32x F GLIBC_2.27 nearbyintf64 F +GLIBC_2.27 nextafterf32 F GLIBC_2.27 nextafterf32x F GLIBC_2.27 nextafterf64 F +GLIBC_2.27 nextdownf32 F GLIBC_2.27 nextdownf32x F GLIBC_2.27 nextdownf64 F +GLIBC_2.27 nextupf32 F GLIBC_2.27 nextupf32x F GLIBC_2.27 nextupf64 F GLIBC_2.27 powf F +GLIBC_2.27 powf32 F GLIBC_2.27 powf32x F GLIBC_2.27 powf64 F +GLIBC_2.27 remainderf32 F GLIBC_2.27 remainderf32x F GLIBC_2.27 remainderf64 F +GLIBC_2.27 remquof32 F GLIBC_2.27 remquof32x F GLIBC_2.27 remquof64 F +GLIBC_2.27 rintf32 F GLIBC_2.27 rintf32x F GLIBC_2.27 rintf64 F +GLIBC_2.27 roundevenf32 F GLIBC_2.27 roundevenf32x F GLIBC_2.27 roundevenf64 F +GLIBC_2.27 roundf32 F GLIBC_2.27 roundf32x F GLIBC_2.27 roundf64 F +GLIBC_2.27 scalblnf32 F GLIBC_2.27 scalblnf32x F GLIBC_2.27 scalblnf64 F +GLIBC_2.27 scalbnf32 F GLIBC_2.27 scalbnf32x F GLIBC_2.27 scalbnf64 F +GLIBC_2.27 setpayloadf32 F GLIBC_2.27 setpayloadf32x F GLIBC_2.27 setpayloadf64 F +GLIBC_2.27 setpayloadsigf32 F GLIBC_2.27 setpayloadsigf32x F GLIBC_2.27 setpayloadsigf64 F +GLIBC_2.27 sincosf32 F GLIBC_2.27 sincosf32x F GLIBC_2.27 sincosf64 F +GLIBC_2.27 sinf32 F GLIBC_2.27 sinf32x F GLIBC_2.27 sinf64 F +GLIBC_2.27 sinhf32 F GLIBC_2.27 sinhf32x F GLIBC_2.27 sinhf64 F +GLIBC_2.27 sqrtf32 F GLIBC_2.27 sqrtf32x F GLIBC_2.27 sqrtf64 F +GLIBC_2.27 tanf32 F GLIBC_2.27 tanf32x F GLIBC_2.27 tanf64 F +GLIBC_2.27 tanhf32 F GLIBC_2.27 tanhf32x F GLIBC_2.27 tanhf64 F +GLIBC_2.27 tgammaf32 F GLIBC_2.27 tgammaf32x F GLIBC_2.27 tgammaf64 F +GLIBC_2.27 totalorderf32 F GLIBC_2.27 totalorderf32x F GLIBC_2.27 totalorderf64 F +GLIBC_2.27 totalordermagf32 F GLIBC_2.27 totalordermagf32x F GLIBC_2.27 totalordermagf64 F +GLIBC_2.27 truncf32 F GLIBC_2.27 truncf32x F GLIBC_2.27 truncf64 F +GLIBC_2.27 ufromfpf32 F GLIBC_2.27 ufromfpf32x F GLIBC_2.27 ufromfpf64 F +GLIBC_2.27 ufromfpxf32 F GLIBC_2.27 ufromfpxf32x F GLIBC_2.27 ufromfpxf64 F +GLIBC_2.27 y0f32 F GLIBC_2.27 y0f32x F GLIBC_2.27 y0f64 F +GLIBC_2.27 y1f32 F GLIBC_2.27 y1f32x F GLIBC_2.27 y1f64 F +GLIBC_2.27 ynf32 F GLIBC_2.27 ynf32x F GLIBC_2.27 ynf64 F GLIBC_2.4 GLIBC_2.4 A -- cgit 1.4.1