diff options
author | Joseph Myers <joseph@codesourcery.com> | 2017-08-25 17:02:33 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2017-08-25 17:02:33 +0000 |
commit | a6ccdb0839756c00377e99ac37f9721028f5d719 (patch) | |
tree | 6f28f2d61ae6f549f25c1ef1d2ca926b13f4b590 | |
parent | 23761119feea282d2d209a01902e5d92049ea6b6 (diff) | |
download | glibc-a6ccdb0839756c00377e99ac37f9721028f5d719.tar.gz glibc-a6ccdb0839756c00377e99ac37f9721028f5d719.tar.xz glibc-a6ccdb0839756c00377e99ac37f9721028f5d719.zip |
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].
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | math/tgmath.h | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 101a94351f..f2c420423d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2017-08-25 Joseph Myers <joseph@codesourcery.com> + * math/tgmath.h [__HAVE_FLOAT128]: Change conditional to + [__HAVE_DISTINCT_FLOAT128]. + * math/math.h (_MSUFTO_): Define and undefine for each inclusion of <bits/math-finite.h>. (__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 : |