about summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* Fix ldbl-128ibm expm1l on large arguments (bug 16408).Joseph Myers2014-01-083-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes bug 16408, ldbl-128ibm expm1l returning NaN for some large arguments. The basic problem is that the approach of converting the exponent to the form n * log(2) + y, where -0.5 <= y <= 0.5, then computing 2^n * expm1(y) + (2^n - 1) falls over when 2^n overflows (starting slightly before the point where expm1 overflows, when y is negative and n is the least integer for which 2^n overflows). The ldbl-128 code, and the x86/x86_64 code, make expm1l fall back to expl for large positive arguments to avoid this issue. This patch makes the ldbl-128ibm code do the same. (The problem appears for the particular argument in the testsuite because the ldbl-128ibm code also uses an overflow threshold that's for ldbl-128 and is too big for ldbl-128ibm, but the problem described applies for large non-overflowing cases as well, although during the freeze is not a suitable time for making the expm1 tests cover cases close to overflow more thoroughly.) This leaves some code for large positive arguments in expm1l that is now dead. To keep the code for ldbl-128 and ldbl-128ibm similar, and to avoid unnecessary changes during the freeze, the patch doesn't remove it; instead I propose to file a bug in Bugzilla as a reminder that this code (for overflow, including errno setting, and for arguments of +Inf) is no longer needed and should be removed from both those expm1l implementations. Tested powerpc32. * sysdeps/ieee754/ldbl-128ibm/s_expm1l.c (__expm1l): Use __expl for large positive arguments.
* Use separate libc.abilist for MIPS o32 soft float.Joseph Myers2014-01-073-0/+2268
| | | | | | | | | | | | | | | | | | | | Examining MIPS test results showed an ABI test failure that I must have missed in 2.18 testing: hard-float and soft-float o32 no longer have the same set of symbols (because of the __mips_fpu_getcw and __mips_fpu_setcw functions, present for hard-float only, used by fpu_control.h for hard-float MIPS16) and so need separate ABI test baselines (they always were ABI-incompatible - the function-calling interface is different - but previously had the same set of symbols and versions so didn't need separate baselines). Tested for hard-float and soft-float o32. * sysdeps/unix/sysv/linux/mips/mips32/nptl/libc.abilist: Move to .... * sysdeps/unix/sysv/linux/mips/mips32/fpu/nptl/libc.abilist: ... here. * sysdeps/unix/sysv/linux/mips/mips32/nofpu/nptl/libc.abilist: New file.
* Regenerate powerpc-nofpu ulps (again).Joseph Myers2014-01-072-52/+66
|
* Mark more libm tests with xfail-rounding:ldbl-128ibm.Joseph Myers2014-01-073-433/+443
| | | | | | | | | | | | | | | | | | | | | | | This patch marks more libm tests as expected to fail for ldbl-128ibm in non-default rounding modes. Given this, my expm1l fix <https://sourceware.org/ml/libc-alpha/2014-01/msg00135.html> and my libgcc fix <http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00157.html> for spurious overflows, the remaining failures in test-ldouble.out (for powerpc32 hard float) are small ulps, spurious underflow and inexact exceptions (the former probably arising from libgcc bugs though I haven't checked each case; the latter are barely meaningful for this format anyway when basic arithmetic isn't correctly rounding, though most of them are probably GCC bug 59412 which doesn't actually involve long double), missing underflow exceptions from clog, ctan and ctanh (probably one of the known bugs for another function), and logb in round-downward mode (bug 887, though it's really a GCC bug that we're not currently working around). Tested for powerpc32 hard float. * math/auto-libm-test-in: Mark various tests with xfail-rounding:ldbl-128ibm. * math/auto-libm-test-out: Regenerated.
* Fix ldbl-128ibm coshl spurious overflows (bug 16407).Joseph Myers2014-01-073-2/+8
| | | | | | | | | | | | | | | | | | | | | This patch fixes bug 16407, spurious overflows from ldbl-128ibm coshl. The implementation assumed that a high part (reinterpreted as an integer) of the absolute value of the argument of 0x408633ce8fb9f87dLL or more meant overflow, but the actual threshold has high part 0x408633ce8fb9f87eLL (and a negative low part). The patch adjusts the threshold accordingly. sinhl probably has the same issue, but I didn't get that far in adding tests of special cases (such as just below and above overflow) before the freeze and during the freeze is not a suitable time to add them (as they'd require ulps to be regenerated again), so I'm not changing that function for now; when I add more tests of special cases, we'll discover whether sinhl indeed has this problem. Tested powerpc32. * sysdeps/ieee754/ldbl-128ibm/e_coshl.c (__ieee754_coshl): Increase overflow threshold.
* [AArch64] Fix FP_ROUNDMODE.Marcus Shawcroft2014-01-074-2/+12
| | | | [BZ #16387] Fix FP_ROUNDMODE to extract the correct bits from FPCR.
* [AArch64] Remove sqrt from libm-test-ulpsMarcus Shawcroft2014-01-072-438/+4
|
* Fix integer overflow in vfwprintf. Fixes bug 14286.Ondřej Bílka2014-01-073-15/+26
|
* [AArch64] Fix CFA adjustment on dynamic linker entry.Marcus Shawcroft2014-01-072-1/+6
|
* S/390: Remove __tls_get_addr argument cast.Andreas Krebbel2014-01-072-1/+6
|
* S/390: Get rid of unused variable warning in dl-machine.hAndreas Krebbel2014-01-072-1/+7
|
* S/390: Make ucontext_t extendible.Andreas Krebbel2014-01-0717-17/+328
|
* S/390: Make jmp_buf extendible.Andreas Krebbel2014-01-0730-24/+762
|
* ia64: regen libm-test-ulps from scratchMike Frysinger2014-01-062-736/+30
| | | | | | | Truncate the file first so as to delete old entries and to lower ULPs for tests that have improved. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* ia64: drop large results from libm-test-ulps [BZ #16401]Mike Frysinger2014-01-062-24/+5
| | | | | | We don't want to record these test results as a good thing. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Fix ldbl-128 / ldbl-128ibm lgammal spurious underflow (bug 16400).Joseph Myers2014-01-063-2/+11
| | | | | | | | | | | | | | This patch fixes bug 16400, spurious underflow exceptions for ldbl-128 / ldbl-128ibm lgammal with small positive arguments, by just using -__logl (x) as the result in the problem cases (similar to the previous fix for problems with small negative arguments). Tested powerpc32, and also tested on mips64 that this does not require ulps regeneration for the ldbl-128 case. * sysdeps/ieee754/ldbl-128/e_lgammal_r.c (__ieee754_lgammal_r): Return -__logl (x) for small positive arguments without evaluating a polynomial.
* ia64: regenerate libm-test-ulpsMike Frysinger2014-01-062-28/+8432
| | | | Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* ia64: add __ prefix to pt_all_user_regs/ia64_fpreg [BZ #762]Mike Frysinger2014-01-065-21/+34
| | | | | | | | | | | | This addresses a long standing collision between userspace headers and kernel headers only on ia64 systems. All other types have a __ prefix in the ptrace headers except these two. Let's finally namespace these. Verified that at least strace still builds after this change, as well as after deleting all the struct hacks it has specifically for ia64. URL: https://sourceware.org/bugzilla/show_bug.cgi?id=762 Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* ptrace.h: add __ prefix to ptrace_peeksiginfo_argsMike Frysinger2014-01-0611-7/+34
| | | | | | | | | | | | | | | | | | | | | | | | All the other ptrace structures in this file have a __ prefix except this new one. This in turn causes build problems for most packages that try to use ptrace such as strace: gcc -DHAVE_CONFIG_H -I. -I../.. -I../../linux/x86_64 -I../../linux \ -I./linux -Wall -Wwrite-strings -g -O2 -MT process.o -MD -MP \ -MF .deps/process.Tpo -c -o process.o ../../process.c In file included from ../../process.c:63:0: /usr/include/linux/ptrace.h:58:8: error: redefinition of 'struct ptrace_peeksiginfo_args' struct ptrace_peeksiginfo_args { ^ In file included from ../../defs.h:159:0, from ../../process.c:37: /usr/include/sys/ptrace.h:191:8: note: originally defined here struct ptrace_peeksiginfo_args ^ Since this struct was introduced in glibc-2.18, there shouldn't be any real regressions with adding the __ prefix. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Fix typo in inet/netinet/in.h commentAllan McRae2014-01-062-1/+5
|
* Update ULPs for i386Andreas Jaeger2014-01-052-0/+88
| | | | Update based on testing with GCC 4.8.1 on Intel i7
* Regenerate libc.poAllan McRae2014-01-052-456/+494
|
* Fix gettext call formattingAllan McRae2014-01-052-1/+5
|
* ia64: fix build failure after async tls updatesMike Frysinger2014-01-042-4/+11
| | | | | | | | | | The recent commit 7f507ee17aee720fa423fa38502bc3caa0dd03d7 added a new local variable "offset" to tls_get_addr_tail. This conflicts with the ia64 code which also declares an offset code inline in this func. So have the ia64 code rename its local vars with a prefix that shouldn't collide with anything else in the future. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* nscd: list all tables in usage()Sami Kerola2014-01-042-3/+26
| | | | | | Usage output for option --invalidate=TABLE is not helpful without list of tables. The list is also missing from nscd(8) manual which made it pretty difficult to know what are the tables.
* tst-fanotify: switch to AC_DEFINEMike Frysinger2014-01-045-2/+14
| | | | | Reported-by: Joseph S. Myers <joseph@codesourcery.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* Fix soft-float ldbl-128ibm atan2l signs of zero results (bug 16390).Joseph Myers2014-01-033-1/+8
| | | | | | | | | | | This patch fixes bug 16390, incorrect signs of zero results from ldbl-128ibm atan2l, soft-float only. The problem is a longstanding GCC bug with fabsl not being correct for signed zero for soft float, and the fix is using -fno-builtin-fabsl as a workaround, as already done for various other source files. Tested powerpc-nofpu. * sysdeps/powerpc/nofpu/Makefile [$(subdir) = math] (CFLAGS-e_atan2l.c): Use -fno-builtin-fabsl.
* Fix ChangeLog entry.Paul Pluzhnikov2014-01-031-1/+1
|
* PowerPC: Fix compiler warningsAdhemerval Zanella2014-01-035-4/+12
| | | | | This patch fixes some compile warnings related to extra tokens at end of #undef directive from multilib patchset.
* Merge branch 'master' of ssh://sourceware.org/git/glibcPaul Pluzhnikov2014-01-032-963/+7501
|\
| * Regenerate powerpc-nofpu ulps.Joseph Myers2014-01-032-963/+7501
| |
* | Async-signal safe TLS.Andrew Hunter2014-01-039-46/+313
|/ | | | | | | | | | | | | | | | | | | | | | ChangeLog: 2014-01-03 Andrew Hunter <ahh@google.com> * elf/dl-open.c (): New comment. * elf/dl-reloc.c (_dl_try_allocate_static_tls): Use atomic_compare_and_exchange_bool_acq (_dl_allocate_static_tls): Block signals. * elf/dl-tls.c (allocate_and_init): Return void. (_dl_update_slotinfo): Block signals, use atomic update. nptl/ChangeLog: 2014-01-03 Andrew Hunter <ahh@google.com> * nptl/Makefile (tst-tls7): New test. * nptl/tst-tls7.c: New file. * nptl/tst-tls7mod.c: New file. * nptl/allocatestack.c (init_one_static_tls): Use atomic barrier.
* Mark various libm tests with xfail-rounding:ldbl-128ibm.Joseph Myers2014-01-033-1744/+1759
| | | | | | | | | | | | | | | | | | | | This patch marks various libm tests with xfail-rounding:ldbl-128ibm, where the failures appear to relate to GCC bug 59666 (bad libgcc handling of directed rounding), so as to allow clean libm-test-ulps regeneration without needing to edit out large ulps for various functions manually. Note that this only deals with the cases problematic for ulps regeneration. There are plenty of test failures left that do not affect ulps regeneration - results that are infinities or NaNs but should be finite, or vice versa, and missing and spurious exceptions - which should also be resolved during the release testing period. Tested for powerpc32 (hard float). * math/auto-libm-test-in: Mark various tests with xfail-rounding:ldbl-128ibm. * math/auto-libm-test-out: Regenerated.
* Fix ldbl-128ibm logl inaccuracy (bug 16386).Joseph Myers2014-01-023-1/+14
| | | | | | | | | | | | This patch fixes bug 16386, ldbl-128ibm logl inaccuracy (with consequent inaccuracy for lgammal) for arguments where the high double is subnormal, which showed up while attempting to regenerate ulps for powerpc-nofpu for 2.19. The problem here is logic failing to allow for subnormals when calculating the exponent of the argument. Tested for powerpc-nofpu. * sysdeps/ieee754/ldbl-128ibm/e_logl.c (__ieee754_logl): Adjust numbers with subnormal high part when calculating exponent.
* Fix ldbl-128ibm asinhl inaccuracy (bug 16385).Joseph Myers2014-01-023-2/+6
| | | | | | | | | | | This patch fixes bug 16385, ldbl-128ibm asinhl inaccuracy, which showed up while attempting to regenerate ulps for powerpc-nofpu for 2.19. The problem here was use of fabs instead of fabsl meaning large arguments were reduced to the precision of double. Tested for powerpc-nofpu. * sysdeps/ieee754/ldbl-128ibm/s_asinhl.c (__asinhl): Use fabsl not fabs.
* Fix ldbl-128ibm acoshl inaccuracy (bug 16384).Joseph Myers2014-01-023-3/+10
| | | | | | | | | | | | | | | This patch fixes bug 16384, ldbl-128ibm acoshl inaccuracy, which showed up while attempting to regenerate ulps for powerpc-nofpu for 2.19. There were two separate problems, use of __log1p instead of __log1pl and an insufficiently accurate constant value for log 2 (which this patch replaces by use of M_LN2l), each of which could cause substantial inaccuracy in affected cases. Tested for powerpc-nofpu. * sysdeps/ieee754/ldbl-128ibm/e_acoshl.c (ln2): Initialize with M_LN2l. (__ieee754_acoshl): Use __log1pl not __log1p.
* Reformat malloc to gnu style.Ondřej Bílka2014-01-0218-3754/+4038
|
* Fix return code from getent netgroup when the netgroup is not found (bz #16366)Siddhesh Poyarekar2014-01-023-30/+67
| | | | | | | nscd incorrectly returns a success even when the netgroup in question is not found and adds a positive result in the cache. this patch fixes this behaviour by adding a negative lookup entry to cache and returning an error when the netgroup is not found.
* Fix infinite loop in nscd when netgroup is empty (bz #16365)Siddhesh Poyarekar2014-01-023-4/+11
| | | | | | | | | Currently, when a user looks up a netgroup that does not have any members, nscd goes into an infinite loop trying to find members in the group. This is because it does not handle cases when getnetgrent returns an NSS_STATUS_NOTFOUND (which is what it does on empty group). Fixed to handle this in the same way as NSS_STATUS_RETURN, similar to what getgrent does by itself.
* [AArch64] Regenerate libm-test-ulps.Marcus Shawcroft2014-01-012-498/+7248
|
* [AArch64] Define ABORT_INSTRUCTION.Marcus Shawcroft2014-01-012-0/+5
|
* [AArch64] Pointer mangling support for AArch64.Venkataramanan Kumar2014-01-017-17/+106
|
* Regenerate ARM ulps.Joseph Myers2014-01-012-629/+3695
|
* Regenerate MIPS ulps.Joseph Myers2014-01-013-1692/+11649
|
* Regenerate x86 / x86_64 ulps.Joseph Myers2014-01-013-5812/+38
|
* scripts/update-copyrights: adjust configure input file suffixAllan McRae2014-01-012-1/+3
|
* Update remaining copyright datesAllan McRae2014-01-0126-25/+51
| | | | Update copyright years that are not handled by scripts/update-copyright.
* Update copyright notices with scripts/update-copyrightsAllan McRae2014-01-018406-8405/+8413
|
* NEWS: mention 16379 as fixedMike Frysinger2013-12-311-1/+1
| | | | | Reported-by: Joseph S. Myers <joseph@codesourcery.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* tst-fanotify: check for linux/fanotify.h existenceMike Frysinger2013-12-314-0/+69
| | | | | | | | We support older kernels that lack this header, so check for it before we try to use it. Reported-by: Adhemerval Zanella <azanella@linux.vnet.ibm.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>