about summary refs log tree commit diff
path: root/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
* Add test for bug 18104.Joseph Myers2015-03-101-0/+6
| | | | | | [BZ #18104] * math/auto-libm-test-in: Add another test of pow. * math/auto-libm-test-out: Regenerated.
* powerpc: Fix incorrect results for pow when using FMAAdhemerval Zanella2015-03-101-0/+5
| | | | | This patch adds no FMA generation for e_pow to avoid precision issues for powerpc. This fixes BZ#18104.
* soft-fp: Use multiple-include guards.Joseph Myers2015-03-101-0/+14
| | | | | | | | | | | | | | | | | | | | | | | This patch makes soft-fp headers consistently use multiple-include guards, something previously done mainly only in the Linux kernel version. The guard macros aren't the same as those used in the Linux kernel, but there seems to be enough variation in such guards in Linux kernel code that hopefully this version will be acceptable there. Tested for powerpc-nofpu that installed stripped shared libraries are unchanged by this patch. * soft-fp/double.h [SOFT_FP_DOUBLE_H]: New multiple-include guard. * soft-fp/extended.h [SOFT_FP_EXTENDED_H]: Likewise. * soft-fp/op-1.h [SOFT_FP_OP_1_H]: Likewise. * soft-fp/op-2.h [SOFT_FP_OP_2_H]: Likewise. * soft-fp/op-4.h [SOFT_FP_OP_4_H]: Likewise. * soft-fp/op-8.h [SOFT_FP_OP_8_H]: Likewise. * soft-fp/op-common.h [SOFT_FP_OP_COMMON_H]: Likewise. * soft-fp/quad.h [SOFT_FP_QUAD_H]: Likewise. * soft-fp/single.h [SOFT_FP_SINGLE_H]: Likewise. * soft-fp/soft-fp.h (SOFT_FP_H): Define to 1 rather than empty. Add comment on closing #endif.
* Minor refactoring:Paul Pluzhnikov2015-03-091-0/+5
| | | | | * posix/wordexp.c (CHAR_IN_SET): New macro. (parse_param): Use it.
* Update powerpc-fpu ULPs.Adhemerval Zanella2015-03-091-0/+4
|
* Fix BZ #18043 (c4): buffer-overflow (read past the end) in ↵Paul Pluzhnikov2015-03-091-0/+6
| | | | wordexp/parse_dollars/parse_param
* Fix off-by-one which caused BZ #18042 and add a test for it.Paul Pluzhnikov2015-03-081-0/+6
|
* Refactor wordexp-test.c such that words always ends at the edge ofPaul Pluzhnikov2015-03-081-0/+8
| | | | | | unreadable page. This makes it easy to catch overflows, such as BZ #18043 (and BZ #18042).
* Cleanup: in preparation for fixing BZ #16734, fix memory leaks exposed byPaul Pluzhnikov2015-03-081-0/+7
| | | | switching fopen()ed streams from mmap to malloc.
* hurd: Make libc able to call pthread stubsSamuel Thibault2015-03-081-0/+5
| | | | | * sysdeps/mach/hurd/bits/libc-lock.h [_LIBC]: Include <bits/libc-lockP.h>
* soft-fp: Support conditional zero-initialization in declarations.Joseph Myers2015-03-071-0/+8
| | | | | | | | | | | | | | | | | | | | | | | In the Linux kernel, some architectures have a single function that uses different kinds of unpacking and packing depending on the instruction being emulated, meaning it is not readily visible to the compiler that variables from _FP_DECL and _FP_FRAC_DECL_* macros are only used in cases where they were initialized. The existing copy of soft-fp in the Linux kernel uses zero-initialization to avoid warnings in this case, so while frowned upon as a warning suppression mechanism in code built for glibc it seems appropriate to have such zero-initialization conditional on __KERNEL__. This patch duly adds it, via a macro _FP_ZERO_INIT that expands to empty for non-kernel compilations. Tested for powerpc-nofpu that installed stripped shared libraries are unchanged by this patch. * soft-fp/soft-fp.h (_FP_ZERO_INIT): New macro. Define depending on [__KERNEL__]. * soft-fp/op-1.h (_FP_FRAC_DECL_1): Use _FP_ZERO_INIT. * soft-fp/op-2.h (_FP_FRAC_DECL_2): Likewise. * soft-fp/op-common.h (_FP_DECL): Likewise.
* Replace __attribute__((visibility("protected")))H.J. Lu2015-03-061-0/+8
| | | | | | | | | | | | | | | | | With copy relocation, address of protected data defined in the shared library may be external. Compiler shouldn't asssume protected data will be local. But due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248 __attribute__((visibility("protected"))) doesn't work correctly, we need to use asm (".protected xxx") instead. * elf/ifuncdep2.c (global): Replace __attribute__((visibility("protected"))) with asm (".protected global"). * elf/ifuncmod1.c (global): Likewise. * elf/ifuncmod5.c (global): Likewise.
* soft-fp: Condition sfp-machine.h include path on __KERNEL__.Joseph Myers2015-03-071-0/+5
| | | | | | | | | | | | | | | | | My Linux kernel patch to update the kernel to current glibc soft-fp <https://sourceware.org/ml/libc-alpha/2015-02/msg00107.html> still leaves a few small differences between the two copies of soft-fp. I think it's desirable to avoid such differences completely if possible by having one set of sources suitable for use in both places. To that end, this patch introduces a conditional on __KERNEL__ for the path by which sfp-machine.h is included. Tested for powerpc-nofpu that installed stripped shared libraries are unchanged by this patch. * soft-fp/soft-fp.h [!_LIBC && __KERNEL__]: Include <asm/sfp-machine.h> instead of <sfp-machine.h>.
* Document test-wrapper-env-only in INSTALL.Roland McGrath2015-03-061-0/+6
|
* ChangeLog formatRoland McGrath2015-03-061-1/+0
|
* Fix BZ #18043: buffer-overflow (read past the end) in ↵Paul Pluzhnikov2015-03-061-0/+6
| | | | wordexp/parse_dollars/parse_param
* time: ensure failing strptime() tests are reported correctlyVincent Bernat2015-03-061-0/+6
|
* Fix aio_error thread-safety.Samuel Thibault2015-03-061-0/+8
| | | | | | * sysdeps/pthread/aio_error.c: New file * sysdeps/pthread/aio_misc.c: Remove optimistic comment about synchronization.
* vfprintf: Define WORK_BUFFER_SIZEFlorian Weimer2015-03-061-2/+4
| | | | | This constant will allow us to refer to the number of elements in work_buffer across a function call boundary.
* vfprintf: Introduce JUMP_TABLE_BASE_LABELFlorian Weimer2015-03-061-0/+2
| | | | | This makes the offset handling more explicit and avoids cross-references between the jump tables.
* vfprintf: Introduce THOUSANDS_SEP_TFlorian Weimer2015-03-061-0/+5
| | | | This avoids preprocessor conditionals in function declarations.
* manual: complete example in error message documentationRical Jasan2015-03-061-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | The manual gives "an example showing how to handle failure to open a file correctly." The example function, open_sesame, uses the newly-introduced strerror function and errno and program_invocation_short_name variables. It fails to specify GNU extensions, however, so attempts to use it in the following way: int main (void) {open_sesame ("badname");} fail during compilation with "error: ‘program_invocation_short_name’ undeclared", indicating the example is incomplete. The presence of "#include"s suggest everything neccesary for the function to work should be present. For completeness, the example is lacking the following line: #define _GNU_SOURCE as the declarations of program_invocation_*name in errno.h are wrapped in an "#ifdef __USE_GNU" conditional. The documentation of the variables is also expanded, adding that their definition lies in errno.h and noting specifically they are GNU extensions.
* manual: drop strerror C89 compatibility noteMike Frysinger2015-03-061-0/+5
| | | | | Mentioning systems that are old and don't support C89 is probably a waste of time nowadays. Drop the note.
* Avoid re-exec-self in bug-setlocale1.Roland McGrath2015-03-051-0/+7
|
* Replace ELF_RTYPE_CLASS_NOCOPY with ELF_RTYPE_CLASS_COPYH.J. Lu2015-03-051-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ELF_RTYPE_CLASS_NOCOPY in comments is a typo. It should be ELF_RTYPE_CLASS_COPY. [BZ #18082] * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Replace ELF_RTYPE_CLASS_NOCOPY with ELF_RTYPE_CLASS_COPY in comments. * sysdeps/arm/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/hppa/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/i386/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/ia64/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/m68k/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/microblaze/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/nios2/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/sh/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/tile/dl-machine.h (elf_machine_type_class): Likewise. * sysdeps/x86_64/dl-machine.h (elf_machine_type_class): Likewise.
* Define ETH_ALEN in generic <netinet/if_ether.h>.Roland McGrath2015-03-041-0/+4
|
* Split rpcent tests out of tst-netdb.Roland McGrath2015-03-041-2/+7
|
* Conditionalize some test code for SIGRTMIN, SA_SIGINFO.Roland McGrath2015-03-041-0/+9
|
* Avoid more C++ tests.Roland McGrath2015-03-041-0/+2
|
* Avoid C++ tests when the C++ cannot be linked.Roland McGrath2015-03-041-0/+12
|
* Don't define __CORRECT_ISO_CPP_STRING_H_PROTO for non-GCC compilers (bug 17631)Andreas Schwab2015-03-041-0/+8
| | | | | The implementation of __CORRECT_ISO_CPP_STRING_H_PROTO requires support for asm aliases.
* powerpc: Fix inline feraiseexcept, feclearexcept macrosAdhemerval Zanella2015-03-031-0/+9
| | | | | | | This patch fixes the inline feraiseexcept and feclearexcept macros for powerpc by casting the input argument to integer before operation on it. It fixes BZ#17776.
* Fix localplt test breakage with new readelfAlan Modra2015-03-031-0/+6
| | | | | | | | | Since 2014-11-24 binutils git commit bb4d2ac2, readelf has appended the symbol version to symbols shown in reloc dumps. [BZ #16512] * scripts/localplt.awk: Strip off symbol version. * NEWS: Mention bug fix.
* Deglobalize internal variables in timer_routines.c.Roland McGrath2015-03-021-0/+5
|
* Correct __ASSUME_PRLIMIT64 for hppa/microblaze/sh (bug 17779).Joseph Myers2015-03-021-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | __ASSUME_PRLIMIT64 is defined in kernel-features.h for kernels 2.6.36 and later, but hppa, microblaze and sh did not add the prlimit64 syscall until 2.6.37. This patch adds corresponding undefines of __ASSUME_PRLIMIT64 to those architectures' kernel-features.h files. (This concludes the kernel-features.h fixes arising out of the review - limited to macros defined in the architecture-independent kernel-features.h file - I did in connection with the move to 2.6.32 minimum kernel version. For that subset of macros - I didn't check any purely architecture-specific macros - I think they are now defined for the correct kernel versions on each architecture after this patch.) [BZ #17779] * sysdeps/unix/sysv/linux/hppa/kernel-features.h [__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64): Undefine. * sysdeps/unix/sysv/linux/microblaze/kernel-features.h [__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64): Likewise. * sysdeps/unix/sysv/linux/sh/kernel-features.h [__LINUX_KERNEL_VERSION < 0x020625] (__ASSUME_PRLIMIT64): Likewise.
* Fix BZ 18036 buffer overflow (read past end of buffer) in internal_fnmatchPaul Pluzhnikov2015-03-021-0/+6
|
* Fix parallel build errorAndreas Schwab2015-03-021-0/+5
|
* _nss_nis_initgroups_dyn: Return status instead of NSS_STATUS_SUCCESSFlorian Weimer2015-03-021-0/+5
|
* Avoid unsafe loc_name type casts with additional variableAlexandre Oliva2015-02-271-0/+6
| | | | | | | | for ChangeLog [BZ #15969] * locale/findlocale.c (_nl_find_locale): Introduce const version of loc_name and drop unsafe type casts.
* Convert dlfcn/tststatic2 to use test-skeleton.Roland McGrath2015-02-271-0/+7
|
* Compile vismain with -fPIE and link with -pieH.J. Lu2015-02-271-0/+8
| | | | | | | | | | | | Protocted symbol in shared library can only be accessed from PIE or shared library. Linker in binutils 2.26 enforces it. We must compile vismain with -fPIE and link it with -pie. [BZ #17711] * elf/Makefile (tests): Add vismain only if PIE is enabled. (tests-pie): Add vismain. (CFLAGS-vismain.c): New. * elf/vismain.c: Add comments for PIE requirement.
* Fix ldbl-96, ldbl-128ibm atanhl inaccuracy (bug 18046, bug 18047).Joseph Myers2015-02-271-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | The threshold in ldbl-96 atanhl for when to return the argument, 0x1p-28, is a bit too big, and that in ldbl-128ibm atanhl is much too big (the relevant condition being x^3/3 being < 0.5ulp of x), resulting in errors a bit above the limits of those considered acceptable in glibc in the ldbl-96 case, and in large errors in the ldbl-128ibm case. This patch changes those implementations to use more appropriate thresholds and adds tests around the thresholds for various formats. Tested for x86_64, x86 and powerpc. x86_64 and x86 ulps updated accordingly. [BZ #18046] [BZ #18047] * sysdeps/ieee754/ldbl-128ibm/e_atanhl.c (__ieee754_atanhl): Use 0x1p-56L as threshold for just returning the argument. * sysdeps/ieee754/ldbl-96/e_atanhl.c (__ieee754_atanhl): Use 0x1p-32L as threshold for just returning the argument. * math/auto-libm-test-in: Add more tests of atanh. * math/auto-libm-test-out: Regenerated. * sysdeps/i386/fpu/libm-test-ulps: Update. * sysdeps/x86_64/fpu/libm-test-ulp: Likewise.
* Rather than using a C implementation of memmove, directly call memmove, whichWilco Dijkstra2015-02-271-0/+4
| | | | typically has a much faster optimized implementation.
* Rather than using a C implementation of memset, directly call memset, whichWilco Dijkstra2015-02-271-0/+4
| | | | typically has a much faster optimized implementation.
* hppa: fix __O_SYNC to match the kernelJohn David Anglin2015-02-271-0/+5
|
* Add comment to CSTR macro in k_standard.c.Joseph Myers2015-02-271-0/+4
| | | | * sysdeps/ieee754/k_standard.c (CSTR): Add comment.
* Avoid -Wno-write-strings for k_standard.c.Joseph Myers2015-02-261-0/+5
| | | | | | | | | | | | | | | | | | | We want to avoid -Wno- options in makefiles as far as possible, by cleaning up the underlying issues if possible or failing that by using diagnostic pragmas. This patch eliminates the use of -Wno-write-strings for sysdeps/ieee754/k_standard.c by using casts in the source file to cast away const; those casts are encapsulated in a macro that also deals with the choice of strings for float / double / long double functions (for which the logic was previously replicated many times). Tested for x86_64; the only change to disassembly of installed stripped shared libraries was a line number in an assertion. * sysdeps/ieee754/k_standard.c (CSTR): New macro. (__kernel_standard): Use CSTR macro when setting exc.name. * sysdeps/ieee754/Makefile [$(subdir) = math] (CFLAGS-k_standard.c): Remove variable.
* Avoid uninitialized warnings in Bessel functions.Joseph Myers2015-02-261-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | math/Makefile currently has: # The fdlibm code generates a lot of these warnings but is otherwise clean. override CFLAGS += -Wno-uninitialized This is of course undesirable; warnings should be disabled as narrowly as possible. To remove this override, we need to fix files that generate such warnings, or put warning-disabling pragmas in them. This patch does so for Bessel function implementations, one of the cases that have the warnings if the override is removed. The warnings arise because functions set pointer variables p and q only for certain values of the function argument, then use them unconditionally. As the static functions in question only get called for arguments that satisfy the last condition in the if/else chain, the natural fix is to change the last "else if" to just "else", which this patch does. (The ldbl-128 / ldbl-128ibm implementation of these functions is substantially different and looks like it already does use "else" in the last case in the nearest corresponding code.) Tested for x86_64 and x86. * sysdeps/ieee754/dbl-64/e_j0.c (pzero): Change last case for setting p and q from "else if" to "else". (qzero): Likewise. * sysdeps/ieee754/dbl-64/e_j1.c (pone): Likewise. (qone): Likewise. * sysdeps/ieee754/flt-32/e_j0f.c (pzerof): Likewise. (qzerof): Likewise. * sysdeps/ieee754/flt-32/e_j1f.c (ponef): Likewise. (qonef): Likewise. * sysdeps/ieee754/ldbl-96/e_j0l.c (pzero): Likewise. (qzero): Likewise. * sysdeps/ieee754/ldbl-96/e_j1l.c (pone): Likewise. (qone): Likewise.
* Fix ldbl-128/ldbl-128ibm acosl inaccuracy (bug 18038, bug 18039).Joseph Myers2015-02-261-0/+9
| | | | | | | | | | | | | | | | | | | | | The ldbl-128 and ldbl-128ibm implementations of acosl have similar bugs, using a threshold of 0x1p-57L to determine when they just return pi/2. Since the result pi/2 - asinl (x) is roughly pi/2 - x for small x, the relevant cut-off is actually x being < 0.5ulp of 1. This patch fixes the implementations to use that cut-off and adds tests of small acos arguments. Tested for powerpc and mips64. Also tested for x86_64 and x86; no ulps updates needed. [BZ #18038] [BZ #18039] * sysdeps/ieee754/ldbl-128/e_acosl.c (__ieee754_acosl): Only return pi/2 for arguments below 0x1p-113L. * sysdeps/ieee754/ldbl-128ibm/e_acosl.c (__ieee754_acosl): Only return pi/2 for arguments below 0x1p-106L. * math/auto-libm-test-in: Add more tests of acos. * math/auto-libm-test-out: Regenerated.
* Fix asin missing underflows (bug 16351).Joseph Myers2015-02-261-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Similar to various other bugs in this area, some asin implementations do not raise the underflow exception for subnormal arguments, when the result is tiny and inexact. This patch forces the exception in a similar way to previous fixes. Tested for x86_64, x86, powerpc and mips64. [BZ #16351] * sysdeps/i386/fpu/e_asin.S (dbl_min): New object. (MO): New macro. (__ieee754_asin): Force underflow exception for results with small absolute value. * sysdeps/i386/fpu/e_asinf.S (flt_min): New object. (MO): New macro. (__ieee754_asinf): Force underflow exception for results with small absolute value. * sysdeps/ieee754/dbl-64/e_asin.c: Include <float.h> and <math.h>. (__ieee754_asin): Force underflow exception for results with small absolute value. * sysdeps/ieee754/flt-32/e_asinf.c: Include <float.h>. (__ieee754_asinf): Force underflow exception for results with small absolute value. * sysdeps/ieee754/ldbl-128/e_asinl.c: Include <float.h>. (__ieee754_asinl): Force underflow exception for results with small absolute value. * sysdeps/ieee754/ldbl-128ibm/e_asinl.c: Include <float.h>. (__ieee754_asinl): Force underflow exception for results with small absolute value. * sysdeps/ieee754/ldbl-96/e_asinl.c: Include <float.h>. (__ieee754_asinl): Force underflow exception for results with small absolute value. * sysdeps/x86_64/fpu/multiarch/e_asin.c [HAVE_FMA4_SUPPORT]: Include <math.h>. * math/auto-libm-test-in: Do not mark underflow exceptions as possibly missing for bug 16351. * math/auto-libm-test-out: Regenerated.