glibc/sysdeps
Joseph Myers 6e70d156c7 Support _Float64x in libm_alias macros.
This patch adds support for libm_alias_ldouble and libm_alias_float128
to create *f64x function aliases when appropriate.

Making such aliases work for functions defined in assembly sources
requires adding some semicolons after weak_alias calls in alias macro
definitions.  For C, semicolons are already present in the macros
called when required, but a GNU C extension allows excess semicolons
at file scope in a source file (and glibc already uses this), so it is
OK to have extra semicolons present in the macro definitions.  For
assembly sources, making multiple alias macro calls from a single
macro expansion means there are no newlines between the calls, so an
explicit separator is needed.  If hppa were to have .S sources in
libm, a more complicated approach would be needed that used
ASM_LINE_SEP when building assembly sources but not for C, but right
now there are no such sources so just using a semicolon (as already
present unconditionally in some such macro expansions) suffices.

Tested for x86_64, including in conjunction with _Float64x support
patches.

	* sysdeps/generic/libm-alias-float128.h: Include <bits/floatn.h>.
	(libm_alias_float128_other_r): If
	[__HAVE_FLOAT64X && !__HAVE_FLOAT64X_LONG_DOUBLE], define f64x
	alias.
	(libm_alias_float128_r): Add semicolon after weak_alias call.
	* sysdeps/generic/libm-alias-ldouble.h
	(libm_alias_ldouble_other_r_f128): New macro.
	(libm_alias_ldouble_other_r_f64x): Likewise.
	(libm_alias_ldouble_other_r): Use libm_alias_ldouble_other_r_f128
	and libm_alias_ldouble_other_r_f64x.
	(libm_alias_ldouble_r): Add semicolon after weak_alias call.
	* sysdeps/ieee754/ldbl-opt/libm-alias-ldouble.h
	(libm_alias_ldouble_other_r_f128): New macro.
	(libm_alias_ldouble_other_r_f64x): Likewise.
	(libm_alias_ldouble_other_r): Use libm_alias_ldouble_other_r_f128
	and libm_alias_ldouble_other_r_f64x.
2017-11-24 23:33:14 +00:00
..
aarch64 aarch64: Optimized memset for falkor 2017-11-20 18:25:04 +05:30
alpha nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
arm Prefer https for Sourceware links 2017-11-16 11:49:26 +05:30
generic Support _Float64x in libm_alias macros. 2017-11-24 23:33:14 +00:00
gnu The -Wstringop-truncation option new in GCC 8 detects common misuses 2017-11-15 17:39:59 -07:00
hppa Fix clog10_downward ulps on hppa. 2017-11-11 12:12:28 -05:00
i386 Use libm_alias_ldouble in sysdeps/i386/fpu. 2017-11-17 22:54:39 +00:00
ia64 Use libm_alias_ldouble macros in sysdeps/ia64/fpu. 2017-11-23 23:34:54 +00:00
ieee754 Support _Float64x in libm_alias macros. 2017-11-24 23:33:14 +00:00
init_array Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
m68k nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
mach Introduce NO_RTLD_HIDDEN, make hurd use it instead of NO_HIDDEN 2017-10-03 01:33:38 +02:00
microblaze nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
mips Support bits/floatn.h inclusion from .S files. 2017-11-17 22:01:43 +00:00
nios2 nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
nptl nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
posix posix: Fix generic p{read,write}v buffer allocation (BZ#22457) 2017-11-24 12:16:15 -02:00
powerpc powerpc: Update AT_HWCAP2 bits 2017-11-17 21:49:02 -02:00
pthread aio: Remove internal_function function attribute 2017-08-31 15:59:06 +02:00
s390 S390: Add cfi information for start routines in order to stop unwinding. 2017-11-21 08:45:28 +01:00
sh nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
sparc Remove unused sparc64/soft-fp libm function implementations. 2017-11-22 21:11:00 +00:00
tile nptl: Define __PTHREAD_MUTEX_{NUSERS_AFTER_KIND,USE_UNION} 2017-11-07 09:48:41 -02:00
unix Linux: Introduce <bits/mman-shared.h> 2017-11-24 17:55:59 +01:00
wordsize-32 Build divdi3 only for architecture that required it 2017-04-06 15:14:34 -03:00
wordsize-64 posix: Consolidate Linux glob implementation 2017-09-08 16:34:02 +02:00
x86 Support bits/floatn.h inclusion from .S files. 2017-11-17 22:01:43 +00:00
x86_64 Use libm_alias_ldouble in sysdeps/x86_64/fpu. 2017-11-17 23:39:11 +00:00