From a6ccdb0839756c00377e99ac37f9721028f5d719 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Fri, 25 Aug 2017 17:02:33 +0000 Subject: Use __HAVE_DISTINCT_FLOAT128 in tgmath.h. When _Float128 is ABI-equivalent to long double, there is no need for tgmath.h to have any special _Float128 handling: it's always OK to call the long double versions of functions for _Float128 arguments in that case, and the logic to determine return types is generic. Thus, this patch changes the use of __HAVE_FLOAT128 to __HAVE_DISTINCT_FLOAT128, as a minor optimization to reduce the size of the macro expansions in the ABI-equivalent case. Tested for x86_64. * math/tgmath.h [__HAVE_FLOAT128]: Change conditional to [__HAVE_DISTINCT_FLOAT128]. --- ChangeLog | 3 +++ math/tgmath.h | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 101a94351f..f2c420423d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2017-08-25 Joseph Myers + * math/tgmath.h [__HAVE_FLOAT128]: Change conditional to + [__HAVE_DISTINCT_FLOAT128]. + * math/math.h (_MSUFTO_): Define and undefine for each inclusion of . (__MATH_DECLARING_LDOUBLE): Do not define and undefine for each diff --git a/math/tgmath.h b/math/tgmath.h index 68cee645f3..243813cdc0 100644 --- a/math/tgmath.h +++ b/math/tgmath.h @@ -118,7 +118,7 @@ /* Expand to text that checks if ARG_COMB has type _Float128, and if so calls the appropriately suffixed FCT (which may include a cast), or FCT and CFCT for complex functions, with arguments ARG_CALL. */ -# if __HAVE_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) +# if __HAVE_DISTINCT_FLOAT128 && __GLIBC_USE (IEC_60559_TYPES_EXT) # define __TGMATH_F128(arg_comb, fct, arg_call) \ __builtin_types_compatible_p (__typeof (+(arg_comb)), _Float128) \ ? fct ## f128 arg_call : -- cgit 1.4.1