summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog57
-rw-r--r--NEWS6
-rw-r--r--bits/floatn-common.h7
-rw-r--r--bits/floatn.h11
-rw-r--r--manual/math.texi6
-rw-r--r--math/Versions104
-rw-r--r--stdlib/Versions5
-rw-r--r--sysdeps/i386/fpu/libm-test-ulps8
-rw-r--r--sysdeps/i386/i686/fpu/multiarch/libm-test-ulps8
-rw-r--r--sysdeps/ia64/Makeconfig2
-rw-r--r--sysdeps/ia64/bits/floatn.h11
-rw-r--r--sysdeps/ieee754/float128/Makeconfig1
-rw-r--r--sysdeps/ieee754/ldbl-128/Makeconfig1
-rw-r--r--sysdeps/ieee754/ldbl-128/bits/floatn.h11
-rw-r--r--sysdeps/mips/ieee754/bits/floatn.h11
-rw-r--r--sysdeps/powerpc/bits/floatn.h11
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/aarch64/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/alpha/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/i386/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/i386/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/ia64/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/ia64/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/64/libm.abilist104
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist5
-rw-r--r--sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist104
-rw-r--r--sysdeps/x86/Makeconfig1
-rw-r--r--sysdeps/x86/bits/floatn.h11
-rw-r--r--wcsmbs/Versions4
44 files changed, 1571 insertions, 18 deletions
diff --git a/ChangeLog b/ChangeLog
index 1131526f8b..389e39ea39 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,60 @@
+2017-11-27  Joseph Myers  <joseph@codesourcery.com>
+
+	* sysdeps/ia64/Makeconfig (float64x-alias-fcts): New variable.
+	* sysdeps/ieee754/float128/Makeconfig (float64x-alias-fcts):
+	Likewise.
+	* sysdeps/ieee754/ldbl-128/Makeconfig (float64x-alias-fcts):
+	Likewise.
+	* sysdeps/x86/Makeconfig: New file.
+	* bits/floatn-common.h (__HAVE_FLOAT64X): Remove macro.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* bits/floatn.h (__HAVE_FLOAT64X): New macro.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* sysdeps/ia64/bits/floatn.h (__HAVE_FLOAT64X): Likewise.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* sysdeps/ieee754/ldbl-128/bits/floatn.h (__HAVE_FLOAT64X):
+	Likewise.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* sysdeps/mips/ieee754/bits/floatn.h (__HAVE_FLOAT64X): Likewise.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* sysdeps/powerpc/bits/floatn.h (__HAVE_FLOAT64X): Likewise.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* sysdeps/x86/bits/floatn.h (__HAVE_FLOAT64X): Likewise.
+	(__HAVE_FLOAT64X_LONG_DOUBLE): Likewise.
+	* manual/math.texi (Mathematics): Document support for _Float64x.
+	* math/Versions (GLIBC_2.27): Add _Float64x 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/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/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/powerpc/powerpc64/libc-le.abilist:
+	Likewise.
+	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.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/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/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.
+
 2017-11-27  Andreas Schwab  <schwab@suse.de>
 
 	* elf/Makefile (dl-routines): Add dl-sort-maps.
diff --git a/NEWS b/NEWS
index ab14d1eb1b..33c62abf2f 100644
--- a/NEWS
+++ b/NEWS
@@ -35,6 +35,12 @@ Major new features:
   are the same interfaces added in version 2.26 for some platforms where
   this format is supported but is not the format of long double.
 
+* On platforms with support for _Float64x (aarch64, alpha, i386, ia64,
+  mips64, powerpc64le, s390, sparc and x86_64), the math library now
+  implements interfaces for that type, as defined by ISO/IEC TS
+  18661-3:2015.  These are corresponding interfaces to those supported for
+  _Float128.
+
 * glibc now implements the memfd_create function on Linux.
 
 Deprecated and removed features, and other changes affecting compatibility:
diff --git a/bits/floatn-common.h b/bits/floatn-common.h
index 2182c9d56a..4d38a910fc 100644
--- a/bits/floatn-common.h
+++ b/bits/floatn-common.h
@@ -34,7 +34,6 @@
 #define __HAVE_FLOAT32 0
 #define __HAVE_FLOAT64 0
 #define __HAVE_FLOAT32X 0
-#define __HAVE_FLOAT64X 0
 #define __HAVE_FLOAT128X 0
 
 /* Defined to 1 if the corresponding __HAVE_<type> macro is 1 and the
@@ -56,12 +55,6 @@
 #define __HAVE_DISTINCT_FLOAT64X 0
 #define __HAVE_DISTINCT_FLOAT128X __HAVE_FLOAT128X
 
-/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
-   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
-   the format of _Float128, which must be different from that of long
-   double.  */
-#define __HAVE_FLOAT64X_LONG_DOUBLE 0
-
 /* Defined to 1 if any _FloatN or _FloatNx types that are not
    ABI-distinct are however distinct types at the C language level (so
    for the purposes of __builtin_types_compatible_p and _Generic).  */
diff --git a/bits/floatn.h b/bits/floatn.h
index dc0cf93cbf..89114b5a70 100644
--- a/bits/floatn.h
+++ b/bits/floatn.h
@@ -25,6 +25,17 @@
    from the default float, double and long double types in this glibc.  */
 #define __HAVE_DISTINCT_FLOAT128 0
 
+/* Defined to 1 if the current compiler invocation provides a
+   floating-point type with the right format for _Float64x, and this
+   glibc includes corresponding *f64x interfaces for it.  */
+#define __HAVE_FLOAT64X 0
+
+/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
+   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
+   the format of _Float128, which must be different from that of long
+   double.  */
+#define __HAVE_FLOAT64X_LONG_DOUBLE 0
+
 #ifndef __ASSEMBLER__
 
 /* Defined to concatenate the literal suffix to be used with _Float128
diff --git a/manual/math.texi b/manual/math.texi
index e6aa342076..08e5dae471 100644
--- a/manual/math.texi
+++ b/manual/math.texi
@@ -66,9 +66,9 @@ these functions are described along with the @code{double},
 @w{ISO/IEC TS 18661-3}, unless explicitly stated otherwise.
 
 Currently, support for @code{_Float@var{N}} or @code{_Float@var{N}x}
-types is only provided for @code{_Float128} on powerpc64le (PowerPC
-64-bits little-endian), x86_64, x86, ia64, aarch64, alpha, mips64,
-s390 and sparc.
+types is only provided for @code{_Float128} and @code{_Float64x} on
+powerpc64le (PowerPC 64-bits little-endian), x86_64, x86, ia64,
+aarch64, alpha, mips64, s390 and sparc.
 
 @menu
 * Mathematical Constants::      Precise numeric values for often-used
diff --git a/math/Versions b/math/Versions
index c10e32662d..d4018f6964 100644
--- a/math/Versions
+++ b/math/Versions
@@ -340,5 +340,109 @@ libm {
 %endif
   GLIBC_2.27 {
     expf; exp2f; logf; log2f; powf;
+    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;
   }
 }
diff --git a/stdlib/Versions b/stdlib/Versions
index bf2172f926..66f6b35be9 100644
--- a/stdlib/Versions
+++ b/stdlib/Versions
@@ -129,6 +129,11 @@ libc {
     strtof128_l;
   }
 %endif
+  GLIBC_2.27 {
+    strfromf64x;
+    strtof64x;
+    strtof64x_l;
+  }
   GLIBC_PRIVATE {
     # functions which have an additional interface since they are
     # are cancelable.
diff --git a/sysdeps/i386/fpu/libm-test-ulps b/sysdeps/i386/fpu/libm-test-ulps
index be6aadf1c6..c0ed6a9497 100644
--- a/sysdeps/i386/fpu/libm-test-ulps
+++ b/sysdeps/i386/fpu/libm-test-ulps
@@ -222,7 +222,7 @@ float128: 4
 idouble: 1
 ifloat: 1
 ifloat128: 4
-ildouble: 3
+ildouble: 4
 ldouble: 4
 
 Function: "atanh_towardzero":
@@ -2488,7 +2488,7 @@ float128: 3
 idouble: 1
 ifloat: 1
 ifloat128: 3
-ildouble: 4
+ildouble: 5
 ldouble: 5
 
 Function: "sinh_towardzero":
@@ -2498,7 +2498,7 @@ float128: 3
 idouble: 1
 ifloat: 1
 ifloat128: 3
-ildouble: 3
+ildouble: 4
 ldouble: 4
 
 Function: "sinh_upward":
@@ -2508,7 +2508,7 @@ float128: 4
 idouble: 1
 ifloat: 1
 ifloat128: 4
-ildouble: 4
+ildouble: 5
 ldouble: 5
 
 Function: "tan":
diff --git a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps
index 26d90ec636..e67837c5df 100644
--- a/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps
+++ b/sysdeps/i386/i686/fpu/multiarch/libm-test-ulps
@@ -222,7 +222,7 @@ float128: 4
 idouble: 1
 ifloat: 1
 ifloat128: 4
-ildouble: 3
+ildouble: 4
 ldouble: 4
 
 Function: "atanh_towardzero":
@@ -2472,7 +2472,7 @@ float128: 3
 idouble: 1
 ifloat: 1
 ifloat128: 3
-ildouble: 4
+ildouble: 5
 ldouble: 5
 
 Function: "sinh_towardzero":
@@ -2482,7 +2482,7 @@ float128: 3
 idouble: 1
 ifloat: 1
 ifloat128: 3
-ildouble: 3
+ildouble: 4
 ldouble: 4
 
 Function: "sinh_upward":
@@ -2492,7 +2492,7 @@ float128: 4
 idouble: 1
 ifloat: 1
 ifloat128: 4
-ildouble: 4
+ildouble: 5
 ldouble: 5
 
 Function: "tan":
diff --git a/sysdeps/ia64/Makeconfig b/sysdeps/ia64/Makeconfig
index d1d3f6c95c..2f1abe868c 100644
--- a/sysdeps/ia64/Makeconfig
+++ b/sysdeps/ia64/Makeconfig
@@ -1,2 +1,4 @@
 # ia64 does not provide crtbeginT.o, so use crtbegin.o.
 +prectorT = $(+prector)
+
+float64x-alias-fcts = yes
diff --git a/sysdeps/ia64/bits/floatn.h b/sysdeps/ia64/bits/floatn.h
index d0aeb3f99e..938a5ddac5 100644
--- a/sysdeps/ia64/bits/floatn.h
+++ b/sysdeps/ia64/bits/floatn.h
@@ -40,6 +40,17 @@
 # define __HAVE_DISTINCT_FLOAT128 0
 #endif
 
+/* Defined to 1 if the current compiler invocation provides a
+   floating-point type with the right format for _Float64x, and this
+   glibc includes corresponding *f64x interfaces for it.  */
+#define __HAVE_FLOAT64X 1
+
+/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
+   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
+   the format of _Float128, which must be different from that of long
+   double.  */
+#define __HAVE_FLOAT64X_LONG_DOUBLE 1
+
 #ifndef __ASSEMBLER__
 
 /* Defined to concatenate the literal suffix to be used with _Float128
diff --git a/sysdeps/ieee754/float128/Makeconfig b/sysdeps/ieee754/float128/Makeconfig
index 6c385d2df2..a493ff1d41 100644
--- a/sysdeps/ieee754/float128/Makeconfig
+++ b/sysdeps/ieee754/float128/Makeconfig
@@ -1,3 +1,4 @@
 # Include this earlier so it can be used earlier in Makefiles,
 # and sysdep/ makefiles.
 float128-fcts = yes
+float64x-alias-fcts = yes
diff --git a/sysdeps/ieee754/ldbl-128/Makeconfig b/sysdeps/ieee754/ldbl-128/Makeconfig
index 1f8e2562f0..ca17c1b12a 100644
--- a/sysdeps/ieee754/ldbl-128/Makeconfig
+++ b/sysdeps/ieee754/ldbl-128/Makeconfig
@@ -1,3 +1,4 @@
 # Include this earlier so it can be used earlier in Makefiles,
 # and sysdep/ makefiles.
 float128-alias-fcts = yes
+float64x-alias-fcts = yes
diff --git a/sysdeps/ieee754/ldbl-128/bits/floatn.h b/sysdeps/ieee754/ldbl-128/bits/floatn.h
index 01009f0deb..7489bcf204 100644
--- a/sysdeps/ieee754/ldbl-128/bits/floatn.h
+++ b/sysdeps/ieee754/ldbl-128/bits/floatn.h
@@ -39,6 +39,17 @@
    from the default float, double and long double types in this glibc.  */
 #define __HAVE_DISTINCT_FLOAT128 0
 
+/* Defined to 1 if the current compiler invocation provides a
+   floating-point type with the right format for _Float64x, and this
+   glibc includes corresponding *f64x interfaces for it.  */
+#define __HAVE_FLOAT64X __HAVE_FLOAT128
+
+/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
+   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
+   the format of _Float128, which must be different from that of long
+   double.  */
+#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
+
 #ifndef __ASSEMBLER__
 
 /* Defined to concatenate the literal suffix to be used with _Float128
diff --git a/sysdeps/mips/ieee754/bits/floatn.h b/sysdeps/mips/ieee754/bits/floatn.h
index 4131991ded..ab74ccfc70 100644
--- a/sysdeps/mips/ieee754/bits/floatn.h
+++ b/sysdeps/mips/ieee754/bits/floatn.h
@@ -39,6 +39,17 @@
    from the default float, double and long double types in this glibc.  */
 #define __HAVE_DISTINCT_FLOAT128 0
 
+/* Defined to 1 if the current compiler invocation provides a
+   floating-point type with the right format for _Float64x, and this
+   glibc includes corresponding *f64x interfaces for it.  */
+#define __HAVE_FLOAT64X __HAVE_FLOAT128
+
+/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
+   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
+   the format of _Float128, which must be different from that of long
+   double.  */
+#define __HAVE_FLOAT64X_LONG_DOUBLE __HAVE_FLOAT128
+
 #ifndef __ASSEMBLER__
 
 /* Defined to concatenate the literal suffix to be used with _Float128
diff --git a/sysdeps/powerpc/bits/floatn.h b/sysdeps/powerpc/bits/floatn.h
index 09a1c30f5e..e2595e70be 100644
--- a/sysdeps/powerpc/bits/floatn.h
+++ b/sysdeps/powerpc/bits/floatn.h
@@ -40,6 +40,17 @@
 # define __HAVE_DISTINCT_FLOAT128 0
 #endif
 
+/* Defined to 1 if the current compiler invocation provides a
+   floating-point type with the right format for _Float64x, and this
+   glibc includes corresponding *f64x interfaces for it.  */
+#define __HAVE_FLOAT64X __HAVE_FLOAT128
+
+/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
+   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
+   the format of _Float128, which must be different from that of long
+   double.  */
+#define __HAVE_FLOAT64X_LONG_DOUBLE 0
+
 #ifndef __ASSEMBLER__
 
 /* Defined to concatenate the literal suffix to be used with _Float128
diff --git a/sysdeps/unix/sysv/linux/aarch64/libc.abilist b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
index 140ca28abc..af60b4f577 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libc.abilist
@@ -2108,7 +2108,12 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
diff --git a/sysdeps/unix/sysv/linux/aarch64/libm.abilist b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
index b21d136e9d..4174e64e6e 100644
--- a/sysdeps/unix/sysv/linux/aarch64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/aarch64/libm.abilist
@@ -462,111 +462,215 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
diff --git a/sysdeps/unix/sysv/linux/alpha/libc.abilist b/sysdeps/unix/sysv/linux/alpha/libc.abilist
index f698e1b2f4..98c6a17ae1 100644
--- a/sysdeps/unix/sysv/linux/alpha/libc.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libc.abilist
@@ -2019,10 +2019,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/alpha/libm.abilist b/sysdeps/unix/sysv/linux/alpha/libm.abilist
index 3ba02a1966..75bd55cbb9 100644
--- a/sysdeps/unix/sysv/linux/alpha/libm.abilist
+++ b/sysdeps/unix/sysv/linux/alpha/libm.abilist
@@ -472,114 +472,218 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
 GLIBC_2.3.4 GLIBC_2.3.4 A
 GLIBC_2.3.4 __c1_cabsf F
 GLIBC_2.3.4 __c1_cacosf F
diff --git a/sysdeps/unix/sysv/linux/i386/libc.abilist b/sysdeps/unix/sysv/linux/i386/libc.abilist
index 51ead9e867..1526778ec2 100644
--- a/sysdeps/unix/sysv/linux/i386/libc.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libc.abilist
@@ -2037,6 +2037,11 @@ GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
+GLIBC_2.27 strfromf64x F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/i386/libm.abilist b/sysdeps/unix/sysv/linux/i386/libm.abilist
index 1a7e6bf449..274ca86606 100644
--- a/sysdeps/unix/sysv/linux/i386/libm.abilist
+++ b/sysdeps/unix/sysv/linux/i386/libm.abilist
@@ -612,9 +612,113 @@ GLIBC_2.26 y0f128 F
 GLIBC_2.26 y1f128 F
 GLIBC_2.26 ynf128 F
 GLIBC_2.27 GLIBC_2.27 A
+GLIBC_2.27 acosf64x F
+GLIBC_2.27 acoshf64x F
+GLIBC_2.27 asinf64x F
+GLIBC_2.27 asinhf64x F
+GLIBC_2.27 atan2f64x F
+GLIBC_2.27 atanf64x F
+GLIBC_2.27 atanhf64x F
+GLIBC_2.27 cabsf64x F
+GLIBC_2.27 cacosf64x F
+GLIBC_2.27 cacoshf64x F
+GLIBC_2.27 canonicalizef64x F
+GLIBC_2.27 cargf64x F
+GLIBC_2.27 casinf64x F
+GLIBC_2.27 casinhf64x F
+GLIBC_2.27 catanf64x F
+GLIBC_2.27 catanhf64x F
+GLIBC_2.27 cbrtf64x F
+GLIBC_2.27 ccosf64x F
+GLIBC_2.27 ccoshf64x F
+GLIBC_2.27 ceilf64x F
+GLIBC_2.27 cexpf64x F
+GLIBC_2.27 cimagf64x F
+GLIBC_2.27 clog10f64x F
+GLIBC_2.27 clogf64x F
+GLIBC_2.27 conjf64x F
+GLIBC_2.27 copysignf64x F
+GLIBC_2.27 cosf64x F
+GLIBC_2.27 coshf64x F
+GLIBC_2.27 cpowf64x F
+GLIBC_2.27 cprojf64x F
+GLIBC_2.27 crealf64x F
+GLIBC_2.27 csinf64x F
+GLIBC_2.27 csinhf64x F
+GLIBC_2.27 csqrtf64x F
+GLIBC_2.27 ctanf64x F
+GLIBC_2.27 ctanhf64x F
+GLIBC_2.27 erfcf64x F
+GLIBC_2.27 erff64x F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
+GLIBC_2.27 expf64x F
+GLIBC_2.27 expm1f64x F
+GLIBC_2.27 fabsf64x F
+GLIBC_2.27 fdimf64x F
+GLIBC_2.27 floorf64x F
+GLIBC_2.27 fmaf64x F
+GLIBC_2.27 fmaxf64x F
+GLIBC_2.27 fmaxmagf64x F
+GLIBC_2.27 fminf64x F
+GLIBC_2.27 fminmagf64x F
+GLIBC_2.27 fmodf64x F
+GLIBC_2.27 frexpf64x F
+GLIBC_2.27 fromfpf64x F
+GLIBC_2.27 fromfpxf64x F
+GLIBC_2.27 getpayloadf64x F
+GLIBC_2.27 hypotf64x F
+GLIBC_2.27 ilogbf64x F
+GLIBC_2.27 j0f64x F
+GLIBC_2.27 j1f64x F
+GLIBC_2.27 jnf64x F
+GLIBC_2.27 ldexpf64x F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
+GLIBC_2.27 llogbf64x F
+GLIBC_2.27 llrintf64x F
+GLIBC_2.27 llroundf64x F
+GLIBC_2.27 log10f64x F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
+GLIBC_2.27 log2f64x F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
+GLIBC_2.27 logf64x F
+GLIBC_2.27 lrintf64x F
+GLIBC_2.27 lroundf64x F
+GLIBC_2.27 modff64x F
+GLIBC_2.27 nanf64x F
+GLIBC_2.27 nearbyintf64x F
+GLIBC_2.27 nextafterf64x F
+GLIBC_2.27 nextdownf64x F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
+GLIBC_2.27 powf64x F
+GLIBC_2.27 remainderf64x F
+GLIBC_2.27 remquof64x F
+GLIBC_2.27 rintf64x F
+GLIBC_2.27 roundevenf64x F
+GLIBC_2.27 roundf64x F
+GLIBC_2.27 scalblnf64x F
+GLIBC_2.27 scalbnf64x F
+GLIBC_2.27 setpayloadf64x F
+GLIBC_2.27 setpayloadsigf64x F
+GLIBC_2.27 sincosf64x F
+GLIBC_2.27 sinf64x F
+GLIBC_2.27 sinhf64x F
+GLIBC_2.27 sqrtf64x F
+GLIBC_2.27 tanf64x F
+GLIBC_2.27 tanhf64x F
+GLIBC_2.27 tgammaf64x F
+GLIBC_2.27 totalorderf64x F
+GLIBC_2.27 totalordermagf64x F
+GLIBC_2.27 truncf64x F
+GLIBC_2.27 ufromfpf64x F
+GLIBC_2.27 ufromfpxf64x F
+GLIBC_2.27 y0f64x F
+GLIBC_2.27 y1f64x F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
diff --git a/sysdeps/unix/sysv/linux/ia64/libc.abilist b/sysdeps/unix/sysv/linux/ia64/libc.abilist
index 78b4ee8d40..132200f2bd 100644
--- a/sysdeps/unix/sysv/linux/ia64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libc.abilist
@@ -1901,6 +1901,11 @@ GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
+GLIBC_2.27 strfromf64x F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/ia64/libm.abilist b/sysdeps/unix/sysv/linux/ia64/libm.abilist
index 7e15735eae..28a38c6006 100644
--- a/sysdeps/unix/sysv/linux/ia64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/ia64/libm.abilist
@@ -541,9 +541,113 @@ GLIBC_2.26 y0f128 F
 GLIBC_2.26 y1f128 F
 GLIBC_2.26 ynf128 F
 GLIBC_2.27 GLIBC_2.27 A
+GLIBC_2.27 acosf64x F
+GLIBC_2.27 acoshf64x F
+GLIBC_2.27 asinf64x F
+GLIBC_2.27 asinhf64x F
+GLIBC_2.27 atan2f64x F
+GLIBC_2.27 atanf64x F
+GLIBC_2.27 atanhf64x F
+GLIBC_2.27 cabsf64x F
+GLIBC_2.27 cacosf64x F
+GLIBC_2.27 cacoshf64x F
+GLIBC_2.27 canonicalizef64x F
+GLIBC_2.27 cargf64x F
+GLIBC_2.27 casinf64x F
+GLIBC_2.27 casinhf64x F
+GLIBC_2.27 catanf64x F
+GLIBC_2.27 catanhf64x F
+GLIBC_2.27 cbrtf64x F
+GLIBC_2.27 ccosf64x F
+GLIBC_2.27 ccoshf64x F
+GLIBC_2.27 ceilf64x F
+GLIBC_2.27 cexpf64x F
+GLIBC_2.27 cimagf64x F
+GLIBC_2.27 clog10f64x F
+GLIBC_2.27 clogf64x F
+GLIBC_2.27 conjf64x F
+GLIBC_2.27 copysignf64x F
+GLIBC_2.27 cosf64x F
+GLIBC_2.27 coshf64x F
+GLIBC_2.27 cpowf64x F
+GLIBC_2.27 cprojf64x F
+GLIBC_2.27 crealf64x F
+GLIBC_2.27 csinf64x F
+GLIBC_2.27 csinhf64x F
+GLIBC_2.27 csqrtf64x F
+GLIBC_2.27 ctanf64x F
+GLIBC_2.27 ctanhf64x F
+GLIBC_2.27 erfcf64x F
+GLIBC_2.27 erff64x F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
+GLIBC_2.27 expf64x F
+GLIBC_2.27 expm1f64x F
+GLIBC_2.27 fabsf64x F
+GLIBC_2.27 fdimf64x F
+GLIBC_2.27 floorf64x F
+GLIBC_2.27 fmaf64x F
+GLIBC_2.27 fmaxf64x F
+GLIBC_2.27 fmaxmagf64x F
+GLIBC_2.27 fminf64x F
+GLIBC_2.27 fminmagf64x F
+GLIBC_2.27 fmodf64x F
+GLIBC_2.27 frexpf64x F
+GLIBC_2.27 fromfpf64x F
+GLIBC_2.27 fromfpxf64x F
+GLIBC_2.27 getpayloadf64x F
+GLIBC_2.27 hypotf64x F
+GLIBC_2.27 ilogbf64x F
+GLIBC_2.27 j0f64x F
+GLIBC_2.27 j1f64x F
+GLIBC_2.27 jnf64x F
+GLIBC_2.27 ldexpf64x F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
+GLIBC_2.27 llogbf64x F
+GLIBC_2.27 llrintf64x F
+GLIBC_2.27 llroundf64x F
+GLIBC_2.27 log10f64x F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
+GLIBC_2.27 log2f64x F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
+GLIBC_2.27 logf64x F
+GLIBC_2.27 lrintf64x F
+GLIBC_2.27 lroundf64x F
+GLIBC_2.27 modff64x F
+GLIBC_2.27 nanf64x F
+GLIBC_2.27 nearbyintf64x F
+GLIBC_2.27 nextafterf64x F
+GLIBC_2.27 nextdownf64x F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
+GLIBC_2.27 powf64x F
+GLIBC_2.27 remainderf64x F
+GLIBC_2.27 remquof64x F
+GLIBC_2.27 rintf64x F
+GLIBC_2.27 roundevenf64x F
+GLIBC_2.27 roundf64x F
+GLIBC_2.27 scalblnf64x F
+GLIBC_2.27 scalbnf64x F
+GLIBC_2.27 setpayloadf64x F
+GLIBC_2.27 setpayloadsigf64x F
+GLIBC_2.27 sincosf64x F
+GLIBC_2.27 sinf64x F
+GLIBC_2.27 sinhf64x F
+GLIBC_2.27 sqrtf64x F
+GLIBC_2.27 tanf64x F
+GLIBC_2.27 tanhf64x F
+GLIBC_2.27 tgammaf64x F
+GLIBC_2.27 totalorderf64x F
+GLIBC_2.27 totalordermagf64x F
+GLIBC_2.27 truncf64x F
+GLIBC_2.27 ufromfpf64x F
+GLIBC_2.27 ufromfpxf64x F
+GLIBC_2.27 y0f64x F
+GLIBC_2.27 y1f64x F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
index 92a46b6b30..9acc4cb41c 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/libm.abilist
@@ -464,112 +464,216 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
index ce7bc9b175..6ec940ee99 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n32/libc.abilist
@@ -1958,10 +1958,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
index 3fdd85eace..71062b0eed 100644
--- a/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/mips/mips64/n64/libc.abilist
@@ -1953,10 +1953,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist
index fa026a332c..a00f9042f8 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libc-le.abilist
@@ -2202,3 +2202,8 @@ GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
+GLIBC_2.27 strfromf64x F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist
index 723be46c20..1d86c798b9 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist
@@ -606,8 +606,112 @@ GLIBC_2.26 y0f128 F
 GLIBC_2.26 y1f128 F
 GLIBC_2.26 ynf128 F
 GLIBC_2.27 GLIBC_2.27 A
+GLIBC_2.27 acosf64x F
+GLIBC_2.27 acoshf64x F
+GLIBC_2.27 asinf64x F
+GLIBC_2.27 asinhf64x F
+GLIBC_2.27 atan2f64x F
+GLIBC_2.27 atanf64x F
+GLIBC_2.27 atanhf64x F
+GLIBC_2.27 cabsf64x F
+GLIBC_2.27 cacosf64x F
+GLIBC_2.27 cacoshf64x F
+GLIBC_2.27 canonicalizef64x F
+GLIBC_2.27 cargf64x F
+GLIBC_2.27 casinf64x F
+GLIBC_2.27 casinhf64x F
+GLIBC_2.27 catanf64x F
+GLIBC_2.27 catanhf64x F
+GLIBC_2.27 cbrtf64x F
+GLIBC_2.27 ccosf64x F
+GLIBC_2.27 ccoshf64x F
+GLIBC_2.27 ceilf64x F
+GLIBC_2.27 cexpf64x F
+GLIBC_2.27 cimagf64x F
+GLIBC_2.27 clog10f64x F
+GLIBC_2.27 clogf64x F
+GLIBC_2.27 conjf64x F
+GLIBC_2.27 copysignf64x F
+GLIBC_2.27 cosf64x F
+GLIBC_2.27 coshf64x F
+GLIBC_2.27 cpowf64x F
+GLIBC_2.27 cprojf64x F
+GLIBC_2.27 crealf64x F
+GLIBC_2.27 csinf64x F
+GLIBC_2.27 csinhf64x F
+GLIBC_2.27 csqrtf64x F
+GLIBC_2.27 ctanf64x F
+GLIBC_2.27 ctanhf64x F
+GLIBC_2.27 erfcf64x F
+GLIBC_2.27 erff64x F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
+GLIBC_2.27 expf64x F
+GLIBC_2.27 expm1f64x F
+GLIBC_2.27 fabsf64x F
+GLIBC_2.27 fdimf64x F
+GLIBC_2.27 floorf64x F
+GLIBC_2.27 fmaf64x F
+GLIBC_2.27 fmaxf64x F
+GLIBC_2.27 fmaxmagf64x F
+GLIBC_2.27 fminf64x F
+GLIBC_2.27 fminmagf64x F
+GLIBC_2.27 fmodf64x F
+GLIBC_2.27 frexpf64x F
+GLIBC_2.27 fromfpf64x F
+GLIBC_2.27 fromfpxf64x F
+GLIBC_2.27 getpayloadf64x F
+GLIBC_2.27 hypotf64x F
+GLIBC_2.27 ilogbf64x F
+GLIBC_2.27 j0f64x F
+GLIBC_2.27 j1f64x F
+GLIBC_2.27 jnf64x F
+GLIBC_2.27 ldexpf64x F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
+GLIBC_2.27 llogbf64x F
+GLIBC_2.27 llrintf64x F
+GLIBC_2.27 llroundf64x F
+GLIBC_2.27 log10f64x F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
+GLIBC_2.27 log2f64x F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
+GLIBC_2.27 logf64x F
+GLIBC_2.27 lrintf64x F
+GLIBC_2.27 lroundf64x F
+GLIBC_2.27 modff64x F
+GLIBC_2.27 nanf64x F
+GLIBC_2.27 nearbyintf64x F
+GLIBC_2.27 nextafterf64x F
+GLIBC_2.27 nextdownf64x F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
+GLIBC_2.27 powf64x F
+GLIBC_2.27 remainderf64x F
+GLIBC_2.27 remquof64x F
+GLIBC_2.27 rintf64x F
+GLIBC_2.27 roundevenf64x F
+GLIBC_2.27 roundf64x F
+GLIBC_2.27 scalblnf64x F
+GLIBC_2.27 scalbnf64x F
+GLIBC_2.27 setpayloadf64x F
+GLIBC_2.27 setpayloadsigf64x F
+GLIBC_2.27 sincosf64x F
+GLIBC_2.27 sinf64x F
+GLIBC_2.27 sinhf64x F
+GLIBC_2.27 sqrtf64x F
+GLIBC_2.27 tanf64x F
+GLIBC_2.27 tanhf64x F
+GLIBC_2.27 tgammaf64x F
+GLIBC_2.27 totalorderf64x F
+GLIBC_2.27 totalordermagf64x F
+GLIBC_2.27 truncf64x F
+GLIBC_2.27 ufromfpf64x F
+GLIBC_2.27 ufromfpxf64x F
+GLIBC_2.27 y0f64x F
+GLIBC_2.27 y1f64x F
+GLIBC_2.27 ynf64x F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
index 41b79c496a..b7dbfaa23e 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libc.abilist
@@ -1991,10 +1991,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
index f3c4f77264..05f32b9f48 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist
@@ -462,114 +462,218 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
 GLIBC_2.4 __clog10l F
 GLIBC_2.4 __finitel F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
index 68251a0e69..1175cd7d13 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libc.abilist
@@ -1892,10 +1892,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
index eb113fd37c..1912fe6df5 100644
--- a/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist
@@ -460,114 +460,218 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
 GLIBC_2.4 __clog10l F
 GLIBC_2.4 __finitel F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
index 93e6d092ac..899d5ff604 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libc.abilist
@@ -1984,10 +1984,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
index 152a83a869..5b08525e9b 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
@@ -469,114 +469,218 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
 GLIBC_2.4 __clog10l F
 GLIBC_2.4 __finitel F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
index b11d6764d4..fbe0e51f62 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libc.abilist
@@ -1921,10 +1921,15 @@ GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
 GLIBC_2.27 strfromf128 F
+GLIBC_2.27 strfromf64x F
 GLIBC_2.27 strtof128 F
 GLIBC_2.27 strtof128_l F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
 GLIBC_2.27 wcstof128 F
 GLIBC_2.27 wcstof128_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
index ff6962d7e7..7065b81c42 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist
@@ -463,112 +463,216 @@ GLIBC_2.25 ufromfpxf F
 GLIBC_2.25 ufromfpxl F
 GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 acosf128 F
+GLIBC_2.27 acosf64x F
 GLIBC_2.27 acoshf128 F
+GLIBC_2.27 acoshf64x F
 GLIBC_2.27 asinf128 F
+GLIBC_2.27 asinf64x F
 GLIBC_2.27 asinhf128 F
+GLIBC_2.27 asinhf64x F
 GLIBC_2.27 atan2f128 F
+GLIBC_2.27 atan2f64x F
 GLIBC_2.27 atanf128 F
+GLIBC_2.27 atanf64x F
 GLIBC_2.27 atanhf128 F
+GLIBC_2.27 atanhf64x F
 GLIBC_2.27 cabsf128 F
+GLIBC_2.27 cabsf64x F
 GLIBC_2.27 cacosf128 F
+GLIBC_2.27 cacosf64x F
 GLIBC_2.27 cacoshf128 F
+GLIBC_2.27 cacoshf64x F
 GLIBC_2.27 canonicalizef128 F
+GLIBC_2.27 canonicalizef64x F
 GLIBC_2.27 cargf128 F
+GLIBC_2.27 cargf64x F
 GLIBC_2.27 casinf128 F
+GLIBC_2.27 casinf64x F
 GLIBC_2.27 casinhf128 F
+GLIBC_2.27 casinhf64x F
 GLIBC_2.27 catanf128 F
+GLIBC_2.27 catanf64x F
 GLIBC_2.27 catanhf128 F
+GLIBC_2.27 catanhf64x F
 GLIBC_2.27 cbrtf128 F
+GLIBC_2.27 cbrtf64x F
 GLIBC_2.27 ccosf128 F
+GLIBC_2.27 ccosf64x F
 GLIBC_2.27 ccoshf128 F
+GLIBC_2.27 ccoshf64x F
 GLIBC_2.27 ceilf128 F
+GLIBC_2.27 ceilf64x F
 GLIBC_2.27 cexpf128 F
+GLIBC_2.27 cexpf64x F
 GLIBC_2.27 cimagf128 F
+GLIBC_2.27 cimagf64x F
 GLIBC_2.27 clog10f128 F
+GLIBC_2.27 clog10f64x F
 GLIBC_2.27 clogf128 F
+GLIBC_2.27 clogf64x F
 GLIBC_2.27 conjf128 F
+GLIBC_2.27 conjf64x F
 GLIBC_2.27 copysignf128 F
+GLIBC_2.27 copysignf64x F
 GLIBC_2.27 cosf128 F
+GLIBC_2.27 cosf64x F
 GLIBC_2.27 coshf128 F
+GLIBC_2.27 coshf64x F
 GLIBC_2.27 cpowf128 F
+GLIBC_2.27 cpowf64x F
 GLIBC_2.27 cprojf128 F
+GLIBC_2.27 cprojf64x F
 GLIBC_2.27 crealf128 F
+GLIBC_2.27 crealf64x F
 GLIBC_2.27 csinf128 F
+GLIBC_2.27 csinf64x F
 GLIBC_2.27 csinhf128 F
+GLIBC_2.27 csinhf64x F
 GLIBC_2.27 csqrtf128 F
+GLIBC_2.27 csqrtf64x F
 GLIBC_2.27 ctanf128 F
+GLIBC_2.27 ctanf64x F
 GLIBC_2.27 ctanhf128 F
+GLIBC_2.27 ctanhf64x F
 GLIBC_2.27 erfcf128 F
+GLIBC_2.27 erfcf64x F
 GLIBC_2.27 erff128 F
+GLIBC_2.27 erff64x F
 GLIBC_2.27 exp10f128 F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
 GLIBC_2.27 exp2f128 F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
 GLIBC_2.27 expf128 F
+GLIBC_2.27 expf64x F
 GLIBC_2.27 expm1f128 F
+GLIBC_2.27 expm1f64x F
 GLIBC_2.27 fabsf128 F
+GLIBC_2.27 fabsf64x F
 GLIBC_2.27 fdimf128 F
+GLIBC_2.27 fdimf64x F
 GLIBC_2.27 floorf128 F
+GLIBC_2.27 floorf64x F
 GLIBC_2.27 fmaf128 F
+GLIBC_2.27 fmaf64x F
 GLIBC_2.27 fmaxf128 F
+GLIBC_2.27 fmaxf64x F
 GLIBC_2.27 fmaxmagf128 F
+GLIBC_2.27 fmaxmagf64x F
 GLIBC_2.27 fminf128 F
+GLIBC_2.27 fminf64x F
 GLIBC_2.27 fminmagf128 F
+GLIBC_2.27 fminmagf64x F
 GLIBC_2.27 fmodf128 F
+GLIBC_2.27 fmodf64x F
 GLIBC_2.27 frexpf128 F
+GLIBC_2.27 frexpf64x F
 GLIBC_2.27 fromfpf128 F
+GLIBC_2.27 fromfpf64x F
 GLIBC_2.27 fromfpxf128 F
+GLIBC_2.27 fromfpxf64x F
 GLIBC_2.27 getpayloadf128 F
+GLIBC_2.27 getpayloadf64x F
 GLIBC_2.27 hypotf128 F
+GLIBC_2.27 hypotf64x F
 GLIBC_2.27 ilogbf128 F
+GLIBC_2.27 ilogbf64x F
 GLIBC_2.27 j0f128 F
+GLIBC_2.27 j0f64x F
 GLIBC_2.27 j1f128 F
+GLIBC_2.27 j1f64x F
 GLIBC_2.27 jnf128 F
+GLIBC_2.27 jnf64x F
 GLIBC_2.27 ldexpf128 F
+GLIBC_2.27 ldexpf64x F
 GLIBC_2.27 lgammaf128 F
 GLIBC_2.27 lgammaf128_r F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
 GLIBC_2.27 llogbf128 F
+GLIBC_2.27 llogbf64x F
 GLIBC_2.27 llrintf128 F
+GLIBC_2.27 llrintf64x F
 GLIBC_2.27 llroundf128 F
+GLIBC_2.27 llroundf64x F
 GLIBC_2.27 log10f128 F
+GLIBC_2.27 log10f64x F
 GLIBC_2.27 log1pf128 F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
 GLIBC_2.27 log2f128 F
+GLIBC_2.27 log2f64x F
 GLIBC_2.27 logbf128 F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
 GLIBC_2.27 logf128 F
+GLIBC_2.27 logf64x F
 GLIBC_2.27 lrintf128 F
+GLIBC_2.27 lrintf64x F
 GLIBC_2.27 lroundf128 F
+GLIBC_2.27 lroundf64x F
 GLIBC_2.27 modff128 F
+GLIBC_2.27 modff64x F
 GLIBC_2.27 nanf128 F
+GLIBC_2.27 nanf64x F
 GLIBC_2.27 nearbyintf128 F
+GLIBC_2.27 nearbyintf64x F
 GLIBC_2.27 nextafterf128 F
+GLIBC_2.27 nextafterf64x F
 GLIBC_2.27 nextdownf128 F
+GLIBC_2.27 nextdownf64x F
 GLIBC_2.27 nextupf128 F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
 GLIBC_2.27 powf128 F
+GLIBC_2.27 powf64x F
 GLIBC_2.27 remainderf128 F
+GLIBC_2.27 remainderf64x F
 GLIBC_2.27 remquof128 F
+GLIBC_2.27 remquof64x F
 GLIBC_2.27 rintf128 F
+GLIBC_2.27 rintf64x F
 GLIBC_2.27 roundevenf128 F
+GLIBC_2.27 roundevenf64x F
 GLIBC_2.27 roundf128 F
+GLIBC_2.27 roundf64x F
 GLIBC_2.27 scalblnf128 F
+GLIBC_2.27 scalblnf64x F
 GLIBC_2.27 scalbnf128 F
+GLIBC_2.27 scalbnf64x F
 GLIBC_2.27 setpayloadf128 F
+GLIBC_2.27 setpayloadf64x F
 GLIBC_2.27 setpayloadsigf128 F
+GLIBC_2.27 setpayloadsigf64x F
 GLIBC_2.27 sincosf128 F
+GLIBC_2.27 sincosf64x F
 GLIBC_2.27 sinf128 F
+GLIBC_2.27 sinf64x F
 GLIBC_2.27 sinhf128 F
+GLIBC_2.27 sinhf64x F
 GLIBC_2.27 sqrtf128 F
+GLIBC_2.27 sqrtf64x F
 GLIBC_2.27 tanf128 F
+GLIBC_2.27 tanf64x F
 GLIBC_2.27 tanhf128 F
+GLIBC_2.27 tanhf64x F
 GLIBC_2.27 tgammaf128 F
+GLIBC_2.27 tgammaf64x F
 GLIBC_2.27 totalorderf128 F
+GLIBC_2.27 totalorderf64x F
 GLIBC_2.27 totalordermagf128 F
+GLIBC_2.27 totalordermagf64x F
 GLIBC_2.27 truncf128 F
+GLIBC_2.27 truncf64x F
 GLIBC_2.27 ufromfpf128 F
+GLIBC_2.27 ufromfpf64x F
 GLIBC_2.27 ufromfpxf128 F
+GLIBC_2.27 ufromfpxf64x F
 GLIBC_2.27 y0f128 F
+GLIBC_2.27 y0f64x F
 GLIBC_2.27 y1f128 F
+GLIBC_2.27 y1f64x F
 GLIBC_2.27 ynf128 F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
index 0a4f7797ac..9c4b53b416 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libc.abilist
@@ -1878,6 +1878,11 @@ GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
+GLIBC_2.27 strfromf64x F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
 GLIBC_2.3 GLIBC_2.3 A
 GLIBC_2.3 __ctype_b_loc F
 GLIBC_2.3 __ctype_tolower_loc F
diff --git a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
index 201c2ab1b1..8a35d3c494 100644
--- a/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/64/libm.abilist
@@ -601,9 +601,113 @@ GLIBC_2.26 y0f128 F
 GLIBC_2.26 y1f128 F
 GLIBC_2.26 ynf128 F
 GLIBC_2.27 GLIBC_2.27 A
+GLIBC_2.27 acosf64x F
+GLIBC_2.27 acoshf64x F
+GLIBC_2.27 asinf64x F
+GLIBC_2.27 asinhf64x F
+GLIBC_2.27 atan2f64x F
+GLIBC_2.27 atanf64x F
+GLIBC_2.27 atanhf64x F
+GLIBC_2.27 cabsf64x F
+GLIBC_2.27 cacosf64x F
+GLIBC_2.27 cacoshf64x F
+GLIBC_2.27 canonicalizef64x F
+GLIBC_2.27 cargf64x F
+GLIBC_2.27 casinf64x F
+GLIBC_2.27 casinhf64x F
+GLIBC_2.27 catanf64x F
+GLIBC_2.27 catanhf64x F
+GLIBC_2.27 cbrtf64x F
+GLIBC_2.27 ccosf64x F
+GLIBC_2.27 ccoshf64x F
+GLIBC_2.27 ceilf64x F
+GLIBC_2.27 cexpf64x F
+GLIBC_2.27 cimagf64x F
+GLIBC_2.27 clog10f64x F
+GLIBC_2.27 clogf64x F
+GLIBC_2.27 conjf64x F
+GLIBC_2.27 copysignf64x F
+GLIBC_2.27 cosf64x F
+GLIBC_2.27 coshf64x F
+GLIBC_2.27 cpowf64x F
+GLIBC_2.27 cprojf64x F
+GLIBC_2.27 crealf64x F
+GLIBC_2.27 csinf64x F
+GLIBC_2.27 csinhf64x F
+GLIBC_2.27 csqrtf64x F
+GLIBC_2.27 ctanf64x F
+GLIBC_2.27 ctanhf64x F
+GLIBC_2.27 erfcf64x F
+GLIBC_2.27 erff64x F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
+GLIBC_2.27 expf64x F
+GLIBC_2.27 expm1f64x F
+GLIBC_2.27 fabsf64x F
+GLIBC_2.27 fdimf64x F
+GLIBC_2.27 floorf64x F
+GLIBC_2.27 fmaf64x F
+GLIBC_2.27 fmaxf64x F
+GLIBC_2.27 fmaxmagf64x F
+GLIBC_2.27 fminf64x F
+GLIBC_2.27 fminmagf64x F
+GLIBC_2.27 fmodf64x F
+GLIBC_2.27 frexpf64x F
+GLIBC_2.27 fromfpf64x F
+GLIBC_2.27 fromfpxf64x F
+GLIBC_2.27 getpayloadf64x F
+GLIBC_2.27 hypotf64x F
+GLIBC_2.27 ilogbf64x F
+GLIBC_2.27 j0f64x F
+GLIBC_2.27 j1f64x F
+GLIBC_2.27 jnf64x F
+GLIBC_2.27 ldexpf64x F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
+GLIBC_2.27 llogbf64x F
+GLIBC_2.27 llrintf64x F
+GLIBC_2.27 llroundf64x F
+GLIBC_2.27 log10f64x F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
+GLIBC_2.27 log2f64x F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
+GLIBC_2.27 logf64x F
+GLIBC_2.27 lrintf64x F
+GLIBC_2.27 lroundf64x F
+GLIBC_2.27 modff64x F
+GLIBC_2.27 nanf64x F
+GLIBC_2.27 nearbyintf64x F
+GLIBC_2.27 nextafterf64x F
+GLIBC_2.27 nextdownf64x F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
+GLIBC_2.27 powf64x F
+GLIBC_2.27 remainderf64x F
+GLIBC_2.27 remquof64x F
+GLIBC_2.27 rintf64x F
+GLIBC_2.27 roundevenf64x F
+GLIBC_2.27 roundf64x F
+GLIBC_2.27 scalblnf64x F
+GLIBC_2.27 scalbnf64x F
+GLIBC_2.27 setpayloadf64x F
+GLIBC_2.27 setpayloadsigf64x F
+GLIBC_2.27 sincosf64x F
+GLIBC_2.27 sinf64x F
+GLIBC_2.27 sinhf64x F
+GLIBC_2.27 sqrtf64x F
+GLIBC_2.27 tanf64x F
+GLIBC_2.27 tanhf64x F
+GLIBC_2.27 tgammaf64x F
+GLIBC_2.27 totalorderf64x F
+GLIBC_2.27 totalordermagf64x F
+GLIBC_2.27 truncf64x F
+GLIBC_2.27 ufromfpf64x F
+GLIBC_2.27 ufromfpxf64x F
+GLIBC_2.27 y0f64x F
+GLIBC_2.27 y1f64x F
+GLIBC_2.27 ynf64x F
 GLIBC_2.4 GLIBC_2.4 A
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
index 23f6a91429..7a179a5ff6 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libc.abilist
@@ -2121,3 +2121,8 @@ GLIBC_2.27 GLIBC_2.27 A
 GLIBC_2.27 glob F
 GLIBC_2.27 glob64 F
 GLIBC_2.27 memfd_create F
+GLIBC_2.27 strfromf64x F
+GLIBC_2.27 strtof64x F
+GLIBC_2.27 strtof64x_l F
+GLIBC_2.27 wcstof64x F
+GLIBC_2.27 wcstof64x_l F
diff --git a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
index 10e389a96a..f18420484c 100644
--- a/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist
@@ -600,8 +600,112 @@ GLIBC_2.26 y0f128 F
 GLIBC_2.26 y1f128 F
 GLIBC_2.26 ynf128 F
 GLIBC_2.27 GLIBC_2.27 A
+GLIBC_2.27 acosf64x F
+GLIBC_2.27 acoshf64x F
+GLIBC_2.27 asinf64x F
+GLIBC_2.27 asinhf64x F
+GLIBC_2.27 atan2f64x F
+GLIBC_2.27 atanf64x F
+GLIBC_2.27 atanhf64x F
+GLIBC_2.27 cabsf64x F
+GLIBC_2.27 cacosf64x F
+GLIBC_2.27 cacoshf64x F
+GLIBC_2.27 canonicalizef64x F
+GLIBC_2.27 cargf64x F
+GLIBC_2.27 casinf64x F
+GLIBC_2.27 casinhf64x F
+GLIBC_2.27 catanf64x F
+GLIBC_2.27 catanhf64x F
+GLIBC_2.27 cbrtf64x F
+GLIBC_2.27 ccosf64x F
+GLIBC_2.27 ccoshf64x F
+GLIBC_2.27 ceilf64x F
+GLIBC_2.27 cexpf64x F
+GLIBC_2.27 cimagf64x F
+GLIBC_2.27 clog10f64x F
+GLIBC_2.27 clogf64x F
+GLIBC_2.27 conjf64x F
+GLIBC_2.27 copysignf64x F
+GLIBC_2.27 cosf64x F
+GLIBC_2.27 coshf64x F
+GLIBC_2.27 cpowf64x F
+GLIBC_2.27 cprojf64x F
+GLIBC_2.27 crealf64x F
+GLIBC_2.27 csinf64x F
+GLIBC_2.27 csinhf64x F
+GLIBC_2.27 csqrtf64x F
+GLIBC_2.27 ctanf64x F
+GLIBC_2.27 ctanhf64x F
+GLIBC_2.27 erfcf64x F
+GLIBC_2.27 erff64x F
+GLIBC_2.27 exp10f64x F
 GLIBC_2.27 exp2f F
+GLIBC_2.27 exp2f64x F
 GLIBC_2.27 expf F
+GLIBC_2.27 expf64x F
+GLIBC_2.27 expm1f64x F
+GLIBC_2.27 fabsf64x F
+GLIBC_2.27 fdimf64x F
+GLIBC_2.27 floorf64x F
+GLIBC_2.27 fmaf64x F
+GLIBC_2.27 fmaxf64x F
+GLIBC_2.27 fmaxmagf64x F
+GLIBC_2.27 fminf64x F
+GLIBC_2.27 fminmagf64x F
+GLIBC_2.27 fmodf64x F
+GLIBC_2.27 frexpf64x F
+GLIBC_2.27 fromfpf64x F
+GLIBC_2.27 fromfpxf64x F
+GLIBC_2.27 getpayloadf64x F
+GLIBC_2.27 hypotf64x F
+GLIBC_2.27 ilogbf64x F
+GLIBC_2.27 j0f64x F
+GLIBC_2.27 j1f64x F
+GLIBC_2.27 jnf64x F
+GLIBC_2.27 ldexpf64x F
+GLIBC_2.27 lgammaf64x F
+GLIBC_2.27 lgammaf64x_r F
+GLIBC_2.27 llogbf64x F
+GLIBC_2.27 llrintf64x F
+GLIBC_2.27 llroundf64x F
+GLIBC_2.27 log10f64x F
+GLIBC_2.27 log1pf64x F
 GLIBC_2.27 log2f F
+GLIBC_2.27 log2f64x F
+GLIBC_2.27 logbf64x F
 GLIBC_2.27 logf F
+GLIBC_2.27 logf64x F
+GLIBC_2.27 lrintf64x F
+GLIBC_2.27 lroundf64x F
+GLIBC_2.27 modff64x F
+GLIBC_2.27 nanf64x F
+GLIBC_2.27 nearbyintf64x F
+GLIBC_2.27 nextafterf64x F
+GLIBC_2.27 nextdownf64x F
+GLIBC_2.27 nextupf64x F
 GLIBC_2.27 powf F
+GLIBC_2.27 powf64x F
+GLIBC_2.27 remainderf64x F
+GLIBC_2.27 remquof64x F
+GLIBC_2.27 rintf64x F
+GLIBC_2.27 roundevenf64x F
+GLIBC_2.27 roundf64x F
+GLIBC_2.27 scalblnf64x F
+GLIBC_2.27 scalbnf64x F
+GLIBC_2.27 setpayloadf64x F
+GLIBC_2.27 setpayloadsigf64x F
+GLIBC_2.27 sincosf64x F
+GLIBC_2.27 sinf64x F
+GLIBC_2.27 sinhf64x F
+GLIBC_2.27 sqrtf64x F
+GLIBC_2.27 tanf64x F
+GLIBC_2.27 tanhf64x F
+GLIBC_2.27 tgammaf64x F
+GLIBC_2.27 totalorderf64x F
+GLIBC_2.27 totalordermagf64x F
+GLIBC_2.27 truncf64x F
+GLIBC_2.27 ufromfpf64x F
+GLIBC_2.27 ufromfpxf64x F
+GLIBC_2.27 y0f64x F
+GLIBC_2.27 y1f64x F
+GLIBC_2.27 ynf64x F
diff --git a/sysdeps/x86/Makeconfig b/sysdeps/x86/Makeconfig
new file mode 100644
index 0000000000..d701f8294d
--- /dev/null
+++ b/sysdeps/x86/Makeconfig
@@ -0,0 +1 @@
+float64x-alias-fcts = yes
diff --git a/sysdeps/x86/bits/floatn.h b/sysdeps/x86/bits/floatn.h
index 5ca6bba672..9870bbc6e2 100644
--- a/sysdeps/x86/bits/floatn.h
+++ b/sysdeps/x86/bits/floatn.h
@@ -42,6 +42,17 @@
 # define __HAVE_DISTINCT_FLOAT128 0
 #endif
 
+/* Defined to 1 if the current compiler invocation provides a
+   floating-point type with the right format for _Float64x, and this
+   glibc includes corresponding *f64x interfaces for it.  */
+#define __HAVE_FLOAT64X 1
+
+/* Defined to 1 if __HAVE_FLOAT64X is 1 and _Float64x has the format
+   of long double.  Otherwise, if __HAVE_FLOAT64X is 1, _Float64x has
+   the format of _Float128, which must be different from that of long
+   double.  */
+#define __HAVE_FLOAT64X_LONG_DOUBLE 1
+
 #ifndef __ASSEMBLER__
 
 /* Defined to concatenate the literal suffix to be used with _Float128
diff --git a/wcsmbs/Versions b/wcsmbs/Versions
index df6e7cd1af..e0f7a77b1e 100644
--- a/wcsmbs/Versions
+++ b/wcsmbs/Versions
@@ -41,4 +41,8 @@ libc {
     wcstof128_l;
   }
 %endif
+  GLIBC_2.27 {
+    wcstof64x;
+    wcstof64x_l;
+  }
 }