summaryrefslogtreecommitdiff
path: root/sysdeps
AgeCommit message (Collapse)Author
2014-02-12Relocate alpha from ports to libcRichard Henderson
Also fixed the following whitespace nits to satisfy the push: sysdeps/alpha/alphaev6/memset.S:142: space before tab in indent. sysdeps/alpha/configure:1: new blank line at EOF. sysdeps/alpha/fpu/e_sqrt.c:126: space before tab in indent. sysdeps/alpha/preconfigure:1: new blank line at EOF. sysdeps/unix/sysv/linux/alpha/syscalls.list:1: new blank line at EOF.
2014-02-11Regenerate x86_64 ulps.Joseph Myers
2014-02-11Merge MIPS dl-lookup.c into generic file.Joseph Myers
MIPS has its own version of dl-lookup.c to deal with differences between undefined symbol semantics in the PIC and non-PIC ABIs. This is often liable to get out of date with respect to the generic file (for example, the recent __builtin_expect changes didn't cover ports, and it's not obvious to anyone changing dl-lookup.c that there would be architecture-specific versions). This patch adds a macro that dl-machine.h can define that is used in the appropriate place in dl-lookup.c, so that MIPS no longer needs its own version of that file. Tested for mips64 that the only changes to disassembly of installed shared libraries appear to be ld.so changes attributable to different line numbers and paths in assertions. * elf/dl-lookup.c (ELF_MACHINE_SYM_NO_MATCH): Define if not already defined. (do_lookup_x): Use ELF_MACHINE_SYM_NO_MATCH. * sysdeps/mips/dl-lookup.c: Remove. * sysdeps/mips/dl-machine.h (ELF_MACHINE_SYM_NO_MATCH): New macro.
2014-02-11BZ #16447: Fix ldbl-128 expl implementation.Andreas Krebbel
Extend the range of numbers handled via unsafe mode. Add expl testcase and regenerate ULPs for s390.
2014-02-11Relocate AArch64 from ports to libc.Marcus Shawcroft
This patch moves the AArch64 port to the main sysdeps hierarchy. The move is essentially: git mv ports/sysdeps/aarch64 sysdeps/aarch64 git mv ports/sysdeps/unix/sysv/linux/aarch64 sysdeps/unix/sysv/linux/aarch64 The README is updated and I've updated ChangeLog.aarch64 along the lines of the ARM move. The AArch64 build has been tested to confirm that there were no changes in objdump -dr output or the shared objects.
2014-02-10Fix whitespace in MIPS files to allow move.Joseph Myers
2014-02-10Move mips from ports to libc.Joseph Myers
I've moved the MIPS port from ports to the main sysdeps hierarchy. Beyond the README update, the move of the files was simply git mv ports/sysdeps/mips sysdeps/mips git mv ports/sysdeps/unix/mips sysdeps/unix/mips git mv ports/sysdeps/unix/sysv/linux/mips sysdeps/unix/sysv/linux/mips and in addition to the ChangeLog entries here, I put a note at the top of ports/ChangeLog.mips similar to those in other files. Tested that disassembly of installed shared libraries for mips is the same before and after this patch (except for ld.so where paths in assertions are involved, as for arm). * sysdeps/mips: Move directory from ports/sysdeps/mips. * sysdeps/unix/mips: Move directory from ports/sysdeps/unix/mips. * sysdeps/unix/sysv/linux/mips: Move directory from ports/sysdeps/unix/sysv/linux/mips. * README: Update listing for mips-*-linux-gnu and mips64-*-linux-gnu. * sysdeps/mips: Move directory to ../sysdeps/mips. * sysdeps/unix/mips: Move directory to ../sysdeps/unix/mips. * sysdeps/unix/sysv/linux/mips: Move directory to ../sysdeps/unix/sysv/linux/mips.
2014-02-10Whitespace fixesAndreas Schwab
2014-02-10Move m68k from ports to libcAndreas Schwab
2014-02-10Move tilegx, tilepro, and linux-generic from ports to libc.Chris Metcalf
I've moved the TILE-Gx and TILEPro ports to the main sysdeps hierarchy, along with the linux-generic ports infrastructure. Beyond the README update, the move was just git mv ports/sysdeps/tile sysdeps/tile git mv ports/sysdeps/unix/sysv/linux/tile \ sysdeps/unix/sysv/linux/tile git mv ports/sysdeps/unix/sysv/linux/generic \ sysdeps/unix/sysv/linux/generic I updated the relevant ChangeLogs along the lines of the ARM move in commit c6bfe5c4d75 and tested the 64-bit tilegx build to confirm that there were no changes in "objdump -dr" output in the shared objects.
2014-02-10Use glibc_likely instead __builtin_expect.Ondřej Bílka
2014-02-08shm_open: sync with logic in sem_openMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-02-08linux: bits/in.h: sync with latest kernel headersMike Frysinger
This pulls in the latest defines for {g,s}etsockopt. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-02-08linux_fsinfo.h: sync with current linux/magic.hMike Frysinger
Import the current list of defines available in the kernel headers. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-02-08Fix whitespace in ARM files to allow move.Joseph Myers
2014-02-08Move arm from ports to libc.Joseph Myers
I've moved the ARM port from ports to the main sysdeps hierarchy. Beyond the README update, the move of the files was simply git mv ports/sysdeps/arm sysdeps/arm git mv ports/sysdeps/unix/arm sysdeps/unix/arm git mv ports/sysdeps/unix/sysv/linux/arm sysdeps/unix/sysv/linux/arm and in addition to the ChangeLog entries here, I put a note at the top of ports/ChangeLog.arm similar to that at the top of ChangeLog.powerpc. There is deliberately no NEWS change, as I think it makes the most sense to put in a general note above all ports having moved if we can achieve that for 2.20. Tested that disassembly of installed shared libraries for arm is the same before and after this patch, except for data (not instructions) in ld.so (there are assertions in sysdeps/arm/dl-machine.h, and the path by which that file is found, and so by which it appears in the assertion message, changes as a result of the move). * sysdeps/arm: Move directory from ports/sysdeps/arm. * sysdeps/unix/arm: Move directory from ports/sysdeps/unix/arm. * sysdeps/unix/sysv/linux/arm: Move directory from ports/sysdeps/unix/sysv/linux/arm. * README: Update listing for arm-*-linux-gnueabi. ports/ChangeLog.arm: * sysdeps/arm: Move directory to ../sysdeps/arm. * sysdeps/unix/arm: Move directory to ../sysdeps.arm. * sysdeps/unix/sysv/linux/arm: Move directory to ../sysdeps/unix/sysv/linux/arm.
2014-02-07Avoid comma operator warnings.Roland McGrath
2014-02-06Revert "Patch [1/4] async-signal safe TLS."Allan McRae
This reverts commit 69a17d9d245dc3551792e95e1823cc2d877592f3.
2014-02-06Revert "Patch 3/4 of the effort to make TLS access async-signal-safe."Allan McRae
This reverts commit 35e8f7ab94c910659de9d507aa0f3e1f8973d914.
2014-02-06Revert "Patch 2/4 of the effort to make TLS access async-signal-safe."Allan McRae
This reverts commit 1f33d36a8a9e78c81bed59b47f260723f56bb7e6. Conflicts: elf/dl-misc.c Also reverts the follow commits that were bug fixes to new code introduced in the above commit: 063b2acbce83549df82ab30f5af573f1b9c4bd19 b627fdd58554bc36bd344dc40a8787c4b7a9cc46 e81c64bba13d2d8b2a4e53254a82cc80f27c8497
2014-02-05Fix comment in kernel-features.h.Carlos O'Donell
Use "was" not "were."
2014-02-05Fix tst-setgetname for Linux kernels < 2.6.33.Carlos O'Donell
Support for /proc/self/task/$tid/comm as added in Linux 2.6.33, therefore since the test tst-setgetname relies on this functionality to operate we must skip the test in kernels < 2.6.33. We wrap the checks with __ASSUME_PROC_PID_TASK_COMM such that in the future when we move arch_minimum_kernel to 2.6.33 we can remove this code.
2014-02-04Adjust sparc ULPs.David S. Miller
* sysdeps/sparc/fpu/libm-test-ulps: Update for some 64-bit differences from 32-bit.
2014-02-04PowerPC: powerpc64le abilist for 2.17Adhemerval Zanella
This patch is the abifiles for powerpc64le based on GLIBC 2.17.
2014-02-04abilist-pattern configurabilityAdhemerval Zanella
This patch creates implicit rules to match the abifiles if abilist-pattern is defined in the architecture Makefile. This allows machine specific Makefiles to define different abifiles names (for instance *-le.abilist for powerpc64le).
2014-02-04Update x86_64 ULPs (AMD family 21, model 2)Eric Wong
Tested on an AMD FX-8320 CPU
2014-02-04Update x86_64 ULPs (AMD Family 10h)Eric Wong
2014-01-29Disable x87 inline functions for SSE2 mathH.J. Lu
When i386 and x86-64 mathinline.h was merged into a single mathinline.h, "gcc -m32" enables x87 inline functions on x86-64 even when -mfpmath=sse and SSE2 is enabled. It is a regression on x86-64. We should check __SSE2_MATH__ instead of __x86_64__ when disabling x87 inline functions.
2014-01-28Add -mieee to SH sysdep-CFLAGS for older SH compilers.Kaz Kojima
2014-01-27Regenerate SH libm-test-ulps with proper compiler options.Kaz Kojima
2014-01-24Rebuild sparc ULPs.David S. Miller
* sysdeps/sparc/fpu/libm-test-ulps: Regenerate.
2014-01-25Move SH libm-test-ulps to sysdeps/sh and regenerate it.Kaz Kojima
2014-01-24Restore ucontext ABI for soft-float sh4.Kaz Kojima
2014-01-23Adjust SH specific fpu_control.h and ucontext.h files.Kaz Kojima
2014-01-22S/390: Merge 32 and 64 bit ucontext.h.Andreas Krebbel
2014-01-20Include generic symbol-hacks.h for x32H.J. Lu
In BZ #15605 fix with addding memset/memmove alias in symbol-hacks.h, x32 symbol-hacks.h change was missing. Fixed by including <sysdeps/generic/symbol-hacks.h> in x32 symbol-hacks.h.
2014-01-20PowerPC: Fix gettimeofday ifunc selectionAdhemerval Zanella
The IFUNC selector for gettimeofday runs before _libc_vdso_platform_setup where __vdso_gettimeofday is set. The selector then sets __gettimeofday (the internal version used within GLIBC) to use the system call version instead of the vDSO one. This patch changes the check if vDSO is available to get its value directly instead of rely on __vdso_gettimeofday. This patch changes it by getting the vDSO value directly. It fixes BZ#16431.
2014-01-16s390: implement sotruss supportMike Frysinger
See commit 41b1792698a335d3a85381921a84a16e9635f36a for testcase. Note: while this works on s390x, the s390 code hangs when using -e. But it hangs regardless of this code (the hang seems to occur before the exit func is even called). I didn't look too closely at it as it seems to be an issue external to this file, so this code shouldn't make the situation any worse. Reviewed-by: Carlos O'Donell <carlos@redhat.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-01-16PowerPC: Fix ftime gettimeofday internal call returning bogus dataAdhemerval Zanella
This patches fixes BZ#16430 by setting a different symbol for internal GLIBC calls that points to ifunc resolvers. For PPC32, if the symbol is defined as hidden (which is the case for gettimeofday and time) the compiler will create local branches (symbol@local) and linker will not create PLT calls (required for IFUNC). This will leads to internal symbol calling the IFUNC resolver instead of the resolved symbol. For PPC64 this behavior does not occur because a call to a function in another translation unit might use a different toc pointer thus requiring a PLT call.
2014-01-15PowerPC: sotruss-lib implementationAdhemerval Zanella
This patch add the missing sotruss-lib interfaces for PowerPC.
2014-01-15Do not enable asynchronous cancellation in system. Fixes bug 14782.Ondřej Bílka
We needlessly enabled thread cancellation before it was necessary. As only call that needs to be guarded is waitpid which is cancellation point we could remove cancellation altogether.
2014-01-15[BZ #16427] Fix ldbl-128 exp overflows.Andreas Krebbel
Invoke the non-IEEE handling only for numbers special also in the IEEE case. This aligns the exp handling with the other ldbl variants.
2014-01-15S/390: Regenerate ULPs.Andreas Krebbel
2014-01-10ARM: Disable compat mcount code when unneeded.Roland McGrath
2014-01-09Fix a thinko/typo in i686's memmove (aka __memmove_ia32).Yuriy Kaminskiy
* sysdeps/i386/i686/memmove.S (memmove): Compare distance between SRC and DEST against LEN.
2014-01-08PowerPC: remove wrong truncl implementation for PowerPC64Adhemerval Zanella
The truncl assembly implementation (sysdeps/powerpc/powerpc64/fpu/s_truncl.S) returns wrong results for some inputs where first double is a exact integer and the precision is determined by second long double. Checking on implementation comments and history, I am very confident the assembly implementation was based on a version before commit 5c68d401698a58cf7da150d9cce769fa6679ba5f that fixes BZ#2423 (Errors in long double (ldbl-128ibm) rounding functions in glibc-2.4). By just removing the implementation and make the build select sysdeps/ieee754/ldbl-128ibm/s_truncl.c instead it fixes tgammal issues regarding wrong result sign.
2014-01-08Update powerpc-fpu ULPs.Adhemerval Zanella
2014-01-08Fix ldbl-128ibm expm1l on large arguments (bug 16408).Joseph Myers
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.
2014-01-07Regenerate powerpc-nofpu ulps (again).Joseph Myers
2014-01-07Fix ldbl-128ibm coshl spurious overflows (bug 16407).Joseph Myers
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.