public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* Support running libm tests for float128 as alias for long double [committed]
@ 2017-10-16 13:29 Joseph Myers
  0 siblings, 0 replies; only message in thread
From: Joseph Myers @ 2017-10-16 13:29 UTC (permalink / raw)
  To: libc-alpha

This patch adds support for running libm tests for float128 in the
case where the float128 functions are aliases of long double
functions.  In this case, the sysdeps Makeconfig file
(i.e. sysdeps/ieee754/ldbl-128/Makeconfig) will need to define
"float128-alias-fcts = yes" to enable the tests.

Tested for x86_64.  Also tested with build-many-glibcs.py; installed
stripped shared libraries are unchanged by the patch.  Also tested
together with changes to enable the float128 aliases.  Committed.

2017-10-16  Joseph Myers  <joseph@codesourcery.com>

	* math/Makefile (test-types): Add
	$(type-float128-$(float128-alias-fcts)).
	* math/test-float128.h (TYPE_STR): Define conditional on
	[FLT128_MANT_DIG == LDBL_MANT_DIG].
	(ULP_IDX): Likewise.
	(ULP_I_IDX): Likewise.

diff --git a/math/Makefile b/math/Makefile
index 4014471..2d47209 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -127,7 +127,8 @@ type-float128-suffix := f128
 type-float128-routines := t_sincosf128 k_sincosf128
 type-float128-yes := float128
 types = $(types-basic) $(type-float128-$(float128-fcts))
-test-types = $(test-types-basic) $(type-float128-$(float128-fcts))
+test-types = $(test-types-basic) $(type-float128-$(float128-fcts)) \
+	     $(type-float128-$(float128-alias-fcts))
 
 # For each of the basic types (float, double, long double), replace the
 # occurrences of 'F' in arg 1 with the appropriate suffix for the type.
diff --git a/math/test-float128.h b/math/test-float128.h
index 3132766..3fd9f54 100644
--- a/math/test-float128.h
+++ b/math/test-float128.h
@@ -28,9 +28,15 @@
 #define CFLOAT __CFLOAT128
 #define BUILD_COMPLEX(real, imag) (CMPLXF128 ((real), (imag)))
 #define PREFIX FLT128
-#define TYPE_STR "float128"
-#define ULP_IDX ULP_FLT128
-#define ULP_I_IDX ULP_I_FLT128
+#if FLT128_MANT_DIG == LDBL_MANT_DIG
+# define TYPE_STR "ldouble"
+# define ULP_IDX ULP_LDBL
+# define ULP_I_IDX ULP_I_LDBL
+#else
+# define TYPE_STR "float128"
+# define ULP_IDX ULP_FLT128
+# define ULP_I_IDX ULP_I_FLT128
+#endif
 #define LIT(x) __f128 (x)
 #define LITM(x) x ## f128
 #define FTOSTR strfromf128

-- 
Joseph S. Myers
joseph@codesourcery.com

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-10-16 13:29 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-16 13:29 Support running libm tests for float128 as alias for long double [committed] Joseph Myers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).