This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 12/12] ldbl-128ibm-compat: Provide ieee128 symbols to narrow functions


Add ieee128 aliases for faddl, fdivl, fmull, fsubl, daddl, ddivl, dmull, dsubl.

2018-06-19  Tulio Magno Quites Machado Filho  <tuliom@linux.ibm.com>

	* math/math-narrow.h [__HAVE_DISTINCT_FLOAT128 &&
	!__HAVE_FLOAT128_UNLIKE_LDBL] (libm_alias_float32_float128,
	libm_alias_float64_float128): Provide *ieee128 aliases.
	* sysdeps/ieee754/ldbl-128ibm-compat/Versions: Add
	__f32addieee128, __f32divieee128, __f32mulieee128,
	__f32subieee128, __f64addieee128, __f64divieee128,
	__f64mulieee128 and __f64subieee128.

Signed-off-by: Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>
---
 math/math-narrow.h                          | 10 ++++++++++
 sysdeps/ieee754/ldbl-128ibm-compat/Versions |  8 ++++++++
 2 files changed, 18 insertions(+)

diff --git a/math/math-narrow.h b/math/math-narrow.h
index c4065e88f7..bfc1c8dced 100644
--- a/math/math-narrow.h
+++ b/math/math-narrow.h
@@ -356,6 +356,16 @@
   libm_alias_float32_float128_main (func)
 # define libm_alias_float64_float128(func)	\
   libm_alias_float64_float128_main (func)
+#elif __HAVE_DISTINCT_FLOAT128 && !__HAVE_FLOAT128_UNLIKE_LDBL
+# define libm_alias_float32_float128(func)			\
+  libm_alias_float32_float128_main (func)			\
+  weak_alias (__f32 ## func ## f128, f32 ## func ## f64x)	\
+  weak_alias (__f32 ## func ## f128, __ ## f32 ## func ## ieee128)
+# define libm_alias_float64_float128(func)			\
+  libm_alias_float64_float128_main (func)			\
+  weak_alias (__f64 ## func ## f128, f64 ## func ## f64x)	\
+  weak_alias (__f64 ## func ## f128, f32x ## func ## f64x)	\
+  weak_alias (__f64 ## func ## f128, __ ## f64 ## func ## ieee128)
 #else
 # define libm_alias_float32_float128(func)			\
   libm_alias_float32_float128_main (func)			\
diff --git a/sysdeps/ieee754/ldbl-128ibm-compat/Versions b/sysdeps/ieee754/ldbl-128ibm-compat/Versions
index 01e67aec1a..8fc6fb05f3 100644
--- a/sysdeps/ieee754/ldbl-128ibm-compat/Versions
+++ b/sysdeps/ieee754/ldbl-128ibm-compat/Versions
@@ -47,6 +47,14 @@ libm {
     __exp2ieee128;
     __expieee128;
     __expm1ieee128;
+    __f32addieee128;
+    __f32divieee128;
+    __f32mulieee128;
+    __f32subieee128;
+    __f64addieee128;
+    __f64divieee128;
+    __f64mulieee128;
+    __f64subieee128;
     __fabsieee128;
     __fdimieee128;
     __floorieee128;
-- 
2.14.4


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]