glibc/sysdeps/alpha
Joseph Myers b2491db6c8 Refactor FP_ILOGB* out of bits/mathdef.h.
Continuing the refactoring of bits/mathdef.h, this patch stops it
defining FP_ILOGB0 and FP_ILOGBNAN, moving the required information to
a new header bits/fp-logb.h.

There are only two possible values of each of those macros permitted
by ISO C.  TS 18661-1 adds corresponding macros for llogb, and their
values are required to correspond to those of the ilogb macros in the
obvious way.  Thus two boolean values - for which the same choices are
correct for most architectures - suffice to determine the value of all
these macros, and by defining macros for those boolean values in
bits/fp-logb.h we can then define the public FP_* macros in math.h and
avoid the present duplication of the associated feature test macro
logic.

This patch duly moves to bits/fp-logb.h defining __FP_LOGB0_IS_MIN and
__FP_LOGBNAN_IS_MIN.  Default definitions of those to 0 are correct
for both architectures, while ia64, m68k and x86 get their own
versions of bits/fp-logb.h to reflect their use of values different
from the defaults.

The patch renders many copies of bits/mathdef.h trivial (needed only
to avoid the default __NO_LONG_DOUBLE_MATH).  I'll revise
<https://sourceware.org/ml/libc-alpha/2016-11/msg00865.html>
accordingly so that it removes all bits/mathdef.h headers except the
default one and the alpha one, and arranges for the header to be
included only by complex.h as the only remaining use at that point
will be for the alpha ABI issues there.

Tested for x86_64 and x86.  Also did compile-only testing with
build-many-glibcs.py (using glibc sources from before the commit that
introduced many build failures with undefined __GI___sigsetjmp).

	* bits/fp-logb.h: New file.
	* sysdeps/ia64/bits/fp-logb.h: Likewise.
	* sysdeps/m68k/m680x0/bits/fp-logb.h: Likewise.
	* sysdeps/x86/bits/fp-logb.h: Likewise.
	* math/Makefile (headers): Add bits/fp-logb.h.
	* math/math.h: Include <bits/fp-logb.h>.
	[__USE_ISOC99] (FP_ILOGB0): Define based on __FP_LOGB0_IS_MIN.
	[__USE_ISOC99] (FP_ILOGBNAN): Define based on __FP_LOGBNAN_IS_MIN.
	* bits/mathdef.h (FP_ILOGB0): Remove.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/aarch64/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/alpha/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/ia64/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/m68k/m680x0/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/mips/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/powerpc/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/s390/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/sparc/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
	* sysdeps/x86/bits/mathdef.h (FP_ILOGB0): Likewise.
	(FP_ILOGBNAN): Likewise.
2016-12-01 02:56:55 +00:00
..
alphaev5 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
alphaev6 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
alphaev67 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
bits Refactor FP_ILOGB* out of bits/mathdef.h. 2016-12-01 02:56:55 +00:00
fpu Fix alpha sqrt fegetenv namespace (bug 20768). 2016-11-04 17:19:13 +00:00
nptl Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
soft-fp Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
__longjmp.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
_mcount.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
add_n.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
addmul_1.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
atomic-machine.h Remove atomic_compare_and_exchange_bool_rel. 2016-06-24 23:04:40 +03:00
backtrace.c Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
bb_init_func.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
bsd-_setjmp.S Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
bsd-setjmp.S Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
bzero.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
configure Require autoconf 2.69 2014-09-29 07:53:36 -07:00
configure.ac Require autoconf 2.69 2014-09-29 07:53:36 -07:00
crti.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
crtn.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
div_libc.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
div.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
divl.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
divlu.S Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
divq.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
divqu.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-dtprocnum.h Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
dl-machine.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-procinfo.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-procinfo.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-sysdep.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
dl-tls.h elf: Consolidate machine-agnostic DTV definitions in <dl-dtv.h> 2016-06-20 14:31:40 +02:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ffs.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ffsll.S Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
gccframe.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
hp-timing.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
htonl.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
htons.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Implies Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
jmpbuf-offsets.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ldiv.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
libc-tls.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
lldiv.S Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
lshift.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
machine-gmon.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Makefile Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
memchr.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
memset.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
memusage.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
mul_1.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
nscd-types.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
preconfigure Remove relro configure test. 2014-06-27 16:51:22 +00:00
rawmemchr.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
reml.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
remlu.S Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
remq.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
remqu.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
rshift.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
setjmp.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stackinfo.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
start.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stpcpy.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stpncpy.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strcat.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strchr.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strcmp.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strcpy.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strlen.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strncat.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strncmp.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strncpy.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
strrchr.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stxcpy.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
stxncpy.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
sub_n.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Subdirs Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
submul_1.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
tininess.h Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
tls-macros.h Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00
tst-audit.h Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
udiv_qrnnd.S Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Versions Relocate alpha from ports to libc 2014-02-12 07:00:06 -08:00