aboutsummaryrefslogtreecommitdiff
path: root/ports
AgeCommit message (Collapse)AuthorFilesLines
2014-02-11Relocate AArch64 from ports to libc.Marcus Shawcroft174-31795/+13
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-10Move mips from ports to libc.Joseph Myers364-58944/+12
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-10Move shared umount.c from hppa to mips.Joseph Myers4-31/+43
This patch prepares for moving mips from ports to libc by reversing the #include ordering between mips and hppa. Reversing #include ordering for umount.c is the conservative change in preparation for moving the mips port. In fact, it appears there are several redundant umount.c files all implementing umount in terms of the umount2 syscall; I've filed bug 16552 for eliminating that redundancy properly. Tested that disassembly of shared libraries for mips (o32, n32, n64) is the same before and after this patch. * sysdeps/unix/sysv/linux/hppa/umount.c: Move to sysdeps/unix/sysv/linux/mips/mips64/umount.c and #include that file. * sysdeps/unix/sysv/linux/mips/mips64/umount.c: Move from sysdeps/unix/sysv/linux/hppa/umount.c instead of #include of that file.
2014-02-10Move m68k from ports to libcAndreas Schwab400-29748/+13
2014-02-10Remove mips dependency on alpha.Joseph Myers2-1/+7
This patch removes an unnecessary dependency of the mips port on alpha by including a powerpc file directly where previously the mips file included the alpha one which then included the powerpc one. * sysdeps/unix/sysv/linux/mips/ipc_priv.h: Directly include sysdeps/unix/sysv/linux/powerpc/ipc_priv.h instead of via sysdeps/unix/sysv/linux/alpha/ipc_priv.h.
2014-02-10Move tilegx, tilepro, and linux-generic from ports to libc.Chris Metcalf273-28727/+25
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-08Move arm from ports to libc.Joseph Myers267-26716/+12
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-08Move shared sysdeps files from alpha to arm.Joseph Myers12-127/+160
This patch prepares for moving arm from ports to libc (see overall plan at <https://sourceware.org/ml/libc-alpha/2014-01/msg00373.html> and discussion of ordering starting at <https://sourceware.org/ml/libc-ports/2014-01/msg00071.html>) by reversing the #include order between arm and alpha, so that arm can move early as a test for the general pattern of moving architectures. MicroBlaze files (that used the same alpha files) were made to include the files directly from their new locations rather than indirecting. Tested that disassembly of installed shared libraries for arm is the same before and after this patch. * sysdeps/unix/sysv/linux/alpha/msgctl.c: Move to sysdeps/unix/sysv/linux/arm/msgctl.c and #include that file. * sysdeps/unix/sysv/linux/alpha/semctl.c: Move to sysdeps/unix/sysv/linux/arm/semctl.c and #include that file. * sysdeps/unix/sysv/linux/alpha/shmctl.c: Move to sysdeps/unix/sysv/linux/arm/shmctl.c and #include that file. * sysdeps/unix/sysv/linux/arm/msgctl.c: Move from sysdeps/unix/sysv/linux/alpha/msgctl.c instead of #include of that file. * sysdeps/unix/sysv/linux/arm/semctl.c: Move from sysdeps/unix/sysv/linux/alpha/semctl.c instead of #include of that file. * sysdeps/unix/sysv/linux/arm/shmctl.c: Move from sysdeps/unix/sysv/linux/alpha/shmctl.c instead of #include of that file. * sysdeps/unix/sysv/linux/microblaze/msgctl.c: Include sysdeps/unix/sysv/linux/arm/msgctl.c instead of sysdeps/unix/sysv/linux/alpha/msgctl.c. * sysdeps/unix/sysv/linux/microblaze/semctl.c: Include sysdeps/unix/sysv/linux/arm/semctl.c instead of sysdeps/unix/sysv/linux/alpha/semctl.c. * sysdeps/unix/sysv/linux/microblaze/shmctl.c: Include sysdeps/unix/sysv/linux/arm/shmctl.c instead of sysdeps/unix/sysv/linux/alpha/shmctl.c.
2014-02-08Remove am33 port.Joseph Myers83-3186/+6
This patch removes the am33 port (no other port #includes any files from it), as previously discussed (see <https://sourceware.org/ml/libc-ports/2014-01/msg00046.html>).
2014-02-06Revert "microblaze BZ #15705: Define MMAP2_PAGE_SHIFT"David Holsgrove2-9/+0
This reverts commit 79b846ecc0275ceb02b5e2d3b03a34d7c43e6bf9. Conflicts: NEWS ports/ChangeLog.microblaze Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-02-05microblaze: Update libm-test-ulpsDavid Holsgrove3-3390/+4095
Update libm-test-ulps for microblaze, and remove unneeded copy libm-test-ulps_new. ports/ChangeLog.microblaze 2014-02-04 David Holsgrove <david.holsgrove@xilinx.com> * sysdeps/microblaze/libm-test-ulps: Update. * sysdeps/microblaze/libm-test-ulps_new: Deleted redundant file. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-02-05microblaze BZ #15705: Define MMAP2_PAGE_SHIFTDavid Holsgrove2-0/+9
Define MMAP2_PAGE_SHIFT to -1 for microblaze so the correct shift for the syscall is determined dynamically using getpagesize ports/ChangeLog.microblaze 2014-02-04 David Holsgrove <david.holsgrove@xilinx.com> * sysdeps/unix/sysv/linux/microblaze/mmap64.c: New file. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-02-05microblaze: Use <fenv.h> fallback functionsDavid Holsgrove3-50/+5
Delete redundant fegetround.c and fesetround.c for microblaze and use the fallback functions instead. ports/ChangeLog.microblaze 2014-02-04 David Holsgrove <david.holsgrove@xilinx.com> * sysdeps/microblaze/fegetround.c: Delete redundant file. * sysdeps/microblaze/fesetround.c: Likewise. Signed-off-by: David Holsgrove <david.holsgrove@xilinx.com>
2014-02-03[hppa] Regenerate libm-test-ulps.Carlos O'Donell2-42/+4448
Regenerate libm-test-ulps from scratch.
2014-01-29[AArch64] Regenerate libm-test-ulps.Marcus Shawcroft2-15/+4
Re-generate libm-test-ulps from scratch.
2014-01-29Fix spaces before tabsSiddhesh Poyarekar2-33/+38
2014-01-27m68k: regenerate libm test ULPsAndreas Schwab2-1667/+3904
2014-01-24tile: Regenerate libm-test-ulpsChris Metcalf2-496/+1522
2014-01-24alpha: Update libm-test-ulpsRichard Henderson2-1142/+9873
2014-01-24alpha: Fix tls-macros.hRichard Henderson2-11/+16
Reported to the gcc bugzilla, there was a missing dependency on $gp that let the compiler generated $gp reload be scheduled across the macros here.
2014-01-24ARM: Fix clone build for ARMv4Will Newton2-7/+7
ARMv4 does not have the blx instruction, so use the BLX macro which handles abstracting this for us. Build tested for armv7, armv4t and armv4. ports/ChangeLog.arm: 2014-01-24 Will Newton <will.newton@linaro.org> [BZ #16499] * sysdeps/unix/sysv/linux/arm/clone.S: Use BLX macro instead of blx instruction directly.
2014-01-20[AArch64] Fix type in abi-lp64_be-options.Marcus Shawcroft2-1/+6
2014-01-20[AArch64] BZ #16169 Add CFI directives to clone.STom Tromey2-1/+12
[BZ #16169] Add CFI directives to the AArch64 clone.S implementation and ensure that the FP in the child is zero'd in order to comply with AAPCS.
2014-01-20[AArch64] Define BE loader name.Marcus Shawcroft6-0/+229
2014-01-14ARM: Don't apply pointer encryption to the frame pointerWill Newton5-11/+20
The frame pointer register is rarely used for that purpose on ARM and applications that look at the contents of the jmp_buf may be relying on reading an unencrypted value. For example, Ruby uses the contents of jmp_buf to find the root set for garbage collection so relies on this pointer value being unencrypted. Without this patch the Ruby testsuite fails with a segmentation fault. ports/ChangeLog.arm: 2013-01-14 Will Newton <will.newton@linaro.org> * sysdeps/arm/__longjmp.S: Don't apply pointer encryption to fp register. * sysdeps/arm/setjmp.S: Likewise. * sysdeps/arm/include/bits/setjmp.h (JMP_BUF_REGLIST): Add fp to register list, remove a4. * sysdeps/unix/sysv/linux/arm/sysdep.h (PTR_MANGLE_LOAD): New macro.
2014-01-10ARM: Disable compat mcount code when unneeded.Roland McGrath3-6/+79
2014-01-07Use separate libc.abilist for MIPS o32 soft float.Joseph Myers3-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.
2014-01-07[AArch64] Fix FP_ROUNDMODE.Marcus Shawcroft3-1/+11
[BZ #16387] Fix FP_ROUNDMODE to extract the correct bits from FPCR.
2014-01-07[AArch64] Remove sqrt from libm-test-ulpsMarcus Shawcroft2-438/+4
2014-01-07[AArch64] Fix CFA adjustment on dynamic linker entry.Marcus Shawcroft2-1/+6
2014-01-06ia64: regen libm-test-ulps from scratchMike Frysinger2-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>
2014-01-06ia64: drop large results from libm-test-ulps [BZ #16401]Mike Frysinger2-24/+5
We don't want to record these test results as a good thing. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-01-06ia64: regenerate libm-test-ulpsMike Frysinger2-28/+8432
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-01-06ia64: add __ prefix to pt_all_user_regs/ia64_fpreg [BZ #762]Mike Frysinger4-5/+18
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>
2014-01-06ptrace.h: add __ prefix to ptrace_peeksiginfo_argsMike Frysinger6-3/+21
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>
2014-01-04ia64: fix build failure after async tls updatesMike Frysinger2-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>
2014-01-01[AArch64] Regenerate libm-test-ulps.Marcus Shawcroft2-498/+7248
2014-01-01[AArch64] Define ABORT_INSTRUCTION.Marcus Shawcroft2-0/+5
2014-01-01[AArch64] Pointer mangling support for AArch64.Venkataramanan Kumar7-17/+106
2014-01-01Regenerate ARM ulps.Joseph Myers2-629/+3695
2014-01-01Regenerate MIPS ulps.Joseph Myers3-1692/+11649
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae1464-1464/+1464
2013-12-30ia64: longjmp_chk: support signal stacks [BZ #16372]Mike Frysinger5-12/+82
The sp check has to be moved up to the start of the func since it now makes a system call and that'll clobber a lot of registers. URL: https://sourceware.org/bugzilla/show_bug.cgi?id=16372 Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-30ia64: setjmp/longjmp: stop saving/restoring fpsr [BZ #16379]Mike Frysinger4-12/+21
The new tst-setjmp-fp test has been failing on IA64 because the setjmp and longjmp helpers take care of saving/restoring the fpsr register. Per the C standards, this is incorrect, so disable that logic. URL: https://sourceware.org/bugzilla/show_bug.cgi?id=16379 Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-30ia64: setjmp: use HIDDEN_JUMPTARGETMike Frysinger2-3/+12
Rather than opencode the __GI_xxx logic, use proper hidden helpers. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-29ia64: syscall: add some helpful documentationMike Frysinger2-0/+8
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-25ia64: implement futex requeue pi supportMike Frysinger2-0/+34
Used the s390 code as a guideline until all tests pass. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-25ia64: add lll_futex_timed_wait_bitsetMike Frysinger2-0/+16
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-24ia64: ioperm: clean up long dead codeMike Frysinger2-19/+8
This file has a few #if 0 code paths which cause a build time warning: ports/sysdeps/unix/sysv/linux/ia64/ioperm.c:66:7: warning: variable 'prot' set but not used [-Wunused-but-set-variable] Rather than add more #if 0 around that variable, just delete the code altogether. Not like it's going to ever be implemented. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2013-12-24ia64: implement sotruss supportMike Frysinger2-0/+54
Tested with: $ cat test.c main(){close(0x1024, 2, 3);} $ gcc test.c $ sotruss -e ./a.out a.out -> libc.so.6.1 : __libc_start_main(0x4000000000000950, 0x1, 0x60000fffffb56bc8) a.out -> libc.so.6.1 : close(0x1024, 0x2, 0x3) a.out -> libc.so.6.1 : close - 0xffffffffffffffff Signed-off-by: Mike Frysinger <vapier@gentoo.org>