Reuse the code for __mpn_extract_long_double to implement
__mpn_extract_float128.
* include/gmp.h: Include bits/floatn.h
(__mpn_extract_float128): Declare when __HAVE_DISTINCT_FLOAT128 is 1.
* stdlib/gmp-impl.h: Also check if alloca is not defined before
including stack-alloc.h. It could have been defined by other header
which not necessarily defines HAVE_ALLOCA.
* sysdeps/ieee754/float128/Makefile: New file.
* sysdeps/ieee754/float128/float1282mpn.c: New file.
* sysdeps/ieee754/float128/float128_private.h: Include gmp.h before
redefining __mpn_extract_long_double to __mpn_extract_float128, then
redefine __mpn_extract_long_double to __mpn_extract_float128.
* sysdeps/ieee754/ldbl-128/ldbl2mpn.c: Replace long double with
_Float128 to allow float128_private.h overrides.
In stdlib/gmp-impl.h, the macros MAX and MIN are defined exactly the same
as in sys/param.h. This patch removes the redefinition and makes
gmp-impl.h include sys/param.h instead.
Tested for powerpc64le and s390x.
* stdlib/gmp-impl.h: Include sys/param.h instead of redefining the
macros MAX and MIN.
The upstream version of GMP has long removed this conditional
altogether in this commit:
changeset: 5254:88618a4694ac
user: Kevin Ryde <user42@zip.com.au>
date: Sun Jun 17 01:37:27 2001 +0200
So just turn the #if into an #ifdef to silence the warning.
ChangeLog:
2014-05-14 Will Newton <will.newton@linaro.org>
* stdlib/gmp-impl.h: Test USE_STACK_ALLOC #ifdef
rather than #if.
1998-05-30 Philip Blundell <Philip.Blundell@pobox.com>
* stdlib/gmp-impl.h: Support strange mixed-endian double format
used by ARM systems.
* sysdeps/arm/fpu/bits/fenv.h (FE_EXCEPTION_SHIFT): Rename to
FE_EXCEPT_SHIFT.
* sysdeps/arm/bits/fenv.h: Deleted.
* sysdeps/arm/fpu/ieee754.h: New file.
* sysdeps/arm/gmp-mparam.h: New file.
* stdlib/longlong.h (umul_ppmm): Temporarily disable broken ARM
implementation.
Sun Dec 22 00:01:27 1996 Ulrich Drepper <drepper@cygnus.com>
* inet/getnetgrent.c: Reformat copyright.
* inet/getnetgrent_r.c (__internal_endnetgrent): Correct comment.
(__internal_getnetgrent): Rename to __internal_getnetgrent_r as
required in change nis/nss_compat/* at Thu Dec 19 14:24:50 1996.
Reported by Thorsten Kukuk <kukuk@weber.uni-paderborn.de>.
* nss/nss_files/files-netgrp.c: Fix typo.
* login/utmp_db.c: Comment out unused variables.
* misc/tst-dirname.c: Provide prototype for main (for now).
* new-malloc/mcheck-init.c: Include <mcheck.h>.
* new-malloc/obstack.c: Provide real prototypes.
* resolv/base64.c (b64_ntop): Use size_t as type of `i', not int.
(b64_pton): Likewise for `tarindex'.
* resolv/nsap_addr.c (inet_nsap_addr): Add cast to prevent warning.
* stdio-common/Makefile: Add CFLAGS-vfprintf.c to prevent warning.
* stdio-common/printf-parse.h: Remove definition of MIN and MAX.
* stdio-common/printf-prs.c: Include <sys/param.h> to get MIN and MAX.
* stdio-common/vfprintf.c: Likewise.
* stdlib/gmp-impl.h: Only define MIN and MAX if not already done.
* stdlib/tst-strtol.c: Don't use -2147483648 as unsigned long value.
* sysdeps/generic/Makefile ($(subdir)=string): Define
CFLAGS-wordcopy.c to prevent warning.
* sysdeps/generic/mul_n.c (mpn_mul_n): Don't define as inline.
* sysdeps/generic/wordcopy.c: De-ANSI-declfy.
* sysdeps/i386/Makefile ($(subdir)=elf): Define CFLAGS-rtld.c
to prevent warning.
* sysdeps/i386/dl-machine.h: Correct copyright.
* sysdeps/unix/closedir.c: Likewise.
* sysdeps/unix/dirstream.h: Likewise.
* sysdeps/unix/opendir.c: Likewise.
* time/tzset.c: Add prototype for __tzset_internal.
* sysdeps/gnu/utmpbits.h (enum utlogin): Comment out since the
way it is supposed to work is not yet known.
(struct utmp): Remove ut_login and ut_syslen field for now.
Sat Dec 21 16:23:54 1996 Ulrich Drepper <drepper@cygnus.com>
* time/strftime.c: Fix another bug in handling flags made it
impossible to use the `-', `_', or `0' flag.
* sysdeps/unix/sysv/linux/speed.c: Add new speed value 460800.
Thu May 23 23:09:33 1996 Ulrich Drepper <drepper@cygnus.com>
* FAQ: Add answer for 100% source code compatibility to Linux
libc by David Mosberger-Tang.
Update from bind-4.3.4-T3B.
* inet/arpa/inet.h: Add prototypes for inet_pton, inet_ntop,
inet_nsap_addr, and inet_nsap_ntoa.
* resolv/gethnamaddr.c: Correct compatibility problems (sprintf),
remove fourth argument to inet_pton and correct handling of
host_addr passing.
* resolv/inet_ntop.c: Correct compatibility problems (sprintf).
* resolv/inet_pton.c: Remove fourth argument.
* resolv/resolv.h: Remove prototypes for inet_nsap_addr and
inet_nsap_ntoa. Now on <arpa/inet.h>.
* stdlib/gmp-impl.h: Add prototypes for internal functions.
Thu May 23 22:49:15 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
* Rules (subdir_install): Remove dep on sor-$(subdir).
(static-only-routines): Removed variable and associated rules.
* sysdeps/unix/sysv/linux/alpha/Makefile (headers): Add
sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/ffs.S,
sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
sysdeps/unix/sysv/linux/alpha/start.S,
* sysdeps/mach/hurd/getcwd.c: Use __file_name_lookup_under.
* sysdeps/mach/hurd/bind.c: Likewise.
* sysdeps/mach/hurd/access.c: Use new __hurd_file_name_lookup
calling convention.
* hurd/hurdexec.c: Undo last change (10 Oct 95).
* malloc/malloc.c (_malloc_internal): Performance fix. Move
if statement out of loop.
* stdio/_itoa.c, stdio/_itoa.h: Complete rewrite. Much faster
implementation using GMP functions. Contributed by
Torbjorn Granlund and Ulrich Drepper.
* stdio/test_rdwr.c: Include <errno.h>.
* sysdeps/i386/i586/Implies: New file.
New highly optimized string functions for i[345]86.
* sysdeps/i386/memchr.S, sysdeps/i386/memcmp.S: New files.
* sysdeps/i386/stpcpy.S, sysdeps/i386/stpncpy.S: New files.
* sysdeps/i386/strchr.S, sysdeps/i386/strcspn.S: New files.
* sysdeps/i386/strpbrk.S, sysdeps/i386/strrchr.S: New files.
* sysdeps/i386/strspn.S, sysdeps/i386/i486/strcat.S: New files.
* sysdeps/i386/i486/strlen.S, sysdeps/i386/i586/strchr.S: New files.
* sysdeps/i386/i586/strlen.S: New file.
* sysdeps/i386/memchr.c: Removed. There is now an assembler version.
* sysdeps/i386/i586/memcopy.h (WORD_COPY_BWD): Parameters did
not correspond to used values.
* sysdeps/unix/sysv/linux/nfs/nfs.h: New file. Simply a wrapper
around a kernel header file.
* sysdeps/unix/sysv/linux/Dist: Add it.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)=sunrpc] (headers):
Likewise.
* sysdeps/unix/sysv/linux/local_lim.h: Rewrite. Instead of
defining ourself we use a kernel header file.
* sysdeps/unix/sysv/linux/i386/sysdep.h (DO_CALL): Optimize system
call handler for i586.
* sysdeps/unix/sysv/linux/sys/param.h: Add copyright and clean up.
Sat Oct 14 02:52:36 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de>
* malloc/malloc.c (_malloc_internal): Performance fix. Move
if statement out of loop.
* stdio/_itoa.c, stdio/_itoa.h: Complete rewrite. Much faster
implementation using GMP functions. Contributed by
Torbjorn Granlund and Ulrich Drepper.
* stdio/test_rdwr.c: Include <errno.h>.
* sysdeps/i386/i586/Implies: New file.
New highly optimized string functions for i[345]86.
* sysdeps/i386/memchr.S, sysdeps/i386/memcmp.S: New files.
* sysdeps/i386/stpcpy.S, sysdeps/i386/stpncpy.S: New files.
* sysdeps/i386/strchr.S, sysdeps/i386/strcspn.S: New files.
* sysdeps/i386/strpbrk.S, sysdeps/i386/strrchr.S: New files.
* sysdeps/i386/strspn.S, sysdeps/i386/i486/strcat.S: New files.
* sysdeps/i386/i486/strlen.S, sysdeps/i386/i586/strchr.S: New files.
* sysdeps/i386/i586/strlen.S: New file.
* sysdeps/i386/memchr.c: Removed. There is now an assembler version.
* sysdeps/i386/i586/memcopy.h (WORD_COPY_BWD): Parameters did
not correspond to used values.
* sysdeps/unix/sysv/linux/nfs/nfs.h: New file. Simply a wrapper
around a kernel header file.
* sysdeps/unix/sysv/linux/Dist: Add it.
* sysdeps/unix/sysv/linux/Makefile [$(subdir)=sunrpc] (headers):
Likewise.
* sysdeps/unix/sysv/linux/local_lim.h: Rewrite. Instead of
defining ourself we use a kernel header file.
* sysdeps/unix/sysv/linux/i386/sysdep.h (DO_CALL): Optimize system
call handler for i586.
* sysdeps/unix/sysv/linux/sys/param.h: Add copyright and clean up.
* locale/loadlocale.c (_nl_load_locale): If LOCALE/LC_* is a
directory, open LOCALE/LC_*/SYS_LC_* instead.
* stdio/fpioconst.c, stdio/fpioconst.h, stdio/gmp-impl.h,
stdio/gmp.h, stdio/longlong.h, stdio/mp_clz_tab.c,
stdio/gen-mpn-copy: Files moved to stdlib.
* stdio/Makefile: All mpn stuff moved to stdlib/Makefile.
* stdio/printf_fp.c: Use ../stdlib to find fpioconst.h and gmp
headers.
* stdlib/strtod.c: Don't use ../stdio to find fpioconst.h and gmp
headers.