This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH 10/12] ldbl-128ibm-compat: Redirect long double functions to f128/ieee128 functions
On Tue, 19 Jun 2018, Tulio Magno Quites Machado Filho wrote:
> diff --git a/math/math.h b/math/math.h
> index c1765e4c8c..8d0880b262 100644
> --- a/math/math.h
> +++ b/math/math.h
> @@ -283,6 +283,10 @@ enum
> extern type __MATH_PRECNAME(function,suffix) args __THROW
> #define __MATHDECL_1(type, function, suffix, args) \
> __MATHDECL_1_IMPL(type, function, suffix, args)
> +/* Ignore the alias by default. The alias is only useful with
> + redirections. */
> +#define __MATHDECL_ALIAS(type, function, suffix, args, alias) \
> + __MATHDECL_1_IMPL(type, function, suffix, args)
So this is the default definitions of __MATHDECL_1 and __MATHDECL_ALIAS.
> #define __MATHREDIR(type, function, suffix, args, to) \
> extern type __REDIRECT_NTH (__MATH_PRECNAME (function, suffix), args, to)
> @@ -364,6 +368,39 @@ extern long double __REDIRECT_NTH (nexttowardl,
> # undef __MATHDECL_1
> # define __MATHDECL_1(type, function,suffix, args) \
> __MATHREDIR(type, function, suffix, args, __CONCAT(function,suffix))
> +
And this is the __LDBL_COMPAT redefinition, I think. You've moved various
functions to use __MATHDECL_ALIAS, but __MATHDECL_ALIAS isn't being
redefined for __LDBL_COMPAT. Are you sure that's correct? That is, what
do the macro-generated declarations of functions using __MATHDECL_ALIAS
look like in a -mlong-double-64 configuration, before and after this
patch?
> +#define __dremieee128 __remainderieee128
> +#define __gammaieee128 __lgammaieee128
These are missing appropriate preprocessor indendation for their nesting
level inside #if.
--
Joseph S. Myers
joseph@codesourcery.com