glibc/bits
Joseph Myers 015c6dc288 Support bits/floatn.h inclusion from .S files.
Further _FloatN / _FloatNx type alias support will involve making
architecture-specific .S files use the common macros for libm function
aliases.  Making them use those macros will also serve to simplify
existing code for aliases / symbol versions in various cases, similar
to such simplifications for ldbl-opt code.

The libm-alias-*.h files sometimes need to include <bits/floatn.h> to
determine which aliases they should define.  At present, this does not
work for inclusion from .S files because <bits/floatn.h> can define
typedefs for old compilers.  This patch changes all the
<bits/floatn.h> and <bits/floatn-common.h> headers to include
__ASSEMBLER__ conditionals.  Those conditionals disable everything
related to C syntax in the __ASSEMBLER__ case, not just the problem
typedefs, as that seemed cleanest.  The __HAVE_* definitions remain in
the __ASSEMBLER__ case, as those provide information that is required
to define the correct set of aliases.

Tested with build-many-glibcs.py for a representative set of
configurations (x86_64-linux-gnu i686-linux-gnu ia64-linux-gnu
powerpc64le-linux-gnu mips64-linux-gnu-n64 sparc64-linux-gnu) with GCC
6.  Also tested with GCC 6 for i686-linux-gnu in conjunction with
changes to use alias macros in .S files.

	* bits/floatn-common.h [!__ASSEMBLER]: Disable everything related
	to C syntax instead of availability and properties of types.
	* bits/floatn.h [!__ASSEMBLER]: Likewise.
	* sysdeps/ia64/bits/floatn.h [!__ASSEMBLER]: Likewise.
	* sysdeps/ieee754/ldbl-128/bits/floatn.h [!__ASSEMBLER]: Likewise.
	* sysdeps/mips/ieee754/bits/floatn.h [!__ASSEMBLER]: Likewise.
	* sysdeps/powerpc/bits/floatn.h [!__ASSEMBLER]: Likewise.
	* sysdeps/x86/bits/floatn.h [!__ASSEMBLER]: Likewise.
2017-11-17 22:01:43 +00:00
..
types Fix sigval namespace (bug 21944). 2017-08-16 20:33:59 +00:00
byteswap-16.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
byteswap.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
confname.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
dirent.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
dlfcn.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
elfclass.h Update. 1999-07-27 05:53:25 +00:00
endian.h Update. 1997-11-26 04:23:08 +00:00
environments.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
errno.h Remove __need macros from errno.h (__need_Emath, __need_error_t). 2017-06-14 08:14:34 -04:00
fcntl.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
fenv.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
fenvinline.h Update. 1999-11-11 01:05:26 +00:00
floatn-common.h Support bits/floatn.h inclusion from .S files. 2017-11-17 22:01:43 +00:00
floatn.h Support bits/floatn.h inclusion from .S files. 2017-11-17 22:01:43 +00:00
flt-eval-method.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
fp-fast.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
fp-logb.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
hwcap.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
in.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
ioctl-types.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
ioctls.h Update. 1997-11-26 04:23:08 +00:00
ipc.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
ipctypes.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
iscanonical.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
libc-header-start.h Add support for testing __STDC_WANT_IEC_60559_TYPES_EXT__ 2017-05-09 11:40:28 -03:00
libm-simd-decl-stubs.h float128: Add public _Float128 declarations to libm. 2017-05-15 10:08:56 -03:00
link.h * csu/elf-init.c (__libc_csu_fini): Don't do anything here. 2005-01-06 22:40:27 +00:00
local_lim.h Update. 1997-10-15 05:34:02 +00:00
long-double.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
math-vector.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
mathdef.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
mathinline.h * configure.in (libc_cv_gnu89_inline): Test for -fgnu89-inline. 2007-03-17 17:04:28 +00:00
mman.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
mqueue.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
msq.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
netdb.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
param.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
poll.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
posix_opt.h Update. 1997-10-15 05:34:02 +00:00
pthreadtypes.h 2002-11-10 Roland McGrath <roland@redhat.com> 2002-11-10 23:22:35 +00:00
resource.h Define struct rusage in sys/wait.h when required (bug 21575). 2017-06-19 11:59:19 +00:00
sched.h Remove __need_schedparam and __cpu_set_t_defined. 2017-06-12 17:11:36 -04:00
select.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sem.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
setjmp.h Update. 1997-11-26 04:23:08 +00:00
shm.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigaction.h Fix XPG4.2 bits/sigaction.h namespace (bug 21899). 2017-08-07 23:41:32 +00:00
sigcontext.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigevent-consts.h Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
siginfo-consts.h Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
signum-generic.h Factor out shared definitions from bits/signum.h. 2017-06-20 20:32:50 -04:00
signum.h Factor out shared definitions from bits/signum.h. 2017-06-20 20:32:50 -04:00
sigstack.h Split up bits/sigstack.h. 2017-05-19 20:35:07 +00:00
sigthread.h Refer to <signal.h> instead of <pthread.h> in <bits/sigthread.h> 2017-02-28 10:34:15 +01:00
sockaddr.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
socket.h hurd: Fix bits/socket.h conformity 2017-09-24 22:21:41 +02:00
ss_flags.h Split up bits/sigstack.h. 2017-05-19 20:35:07 +00:00
stat.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
statfs.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
statvfs.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
stdint-intn.h Fix network headers stdint.h namespace (bug 21455). 2017-05-04 20:36:42 +00:00
stdint-uintn.h Fix network headers stdint.h namespace (bug 21455). 2017-05-04 20:36:42 +00:00
stdlib-bsearch.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
stropts.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sys_errlist.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
syslog-path.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sysmacros.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
termios.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
time.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
typesizes.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
uintn-identity.h Make endian-conversion macros always return correct types (bug 16458). 2017-01-11 15:28:08 +00:00
uio-ext.h posix: Add p{readv,writev}2 flags to generic uio-ext.h 2017-10-17 17:52:04 -02:00
uio_lim.h Remove __need_IOV_MAX and __need_FOPEN_MAX. 2017-06-14 07:51:30 -04:00
ustat.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
utmp.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
utsname.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
waitflags.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
waitstatus.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
wchar.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
wordsize.h Define wordsize.h macros everywhere 2016-11-04 09:37:44 -07:00
xtitypes.h Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00