about summary refs log tree commit diff
path: root/ports/sysdeps/arm
Commit message (Collapse)AuthorAgeFilesLines
* ARM: Don't apply pointer encryption to the frame pointerWill Newton2014-01-143-9/+4
| | | | | | | | | | | | | | | | | | | | | 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.
* ARM: Disable compat mcount code when unneeded.Roland McGrath2014-01-102-5/+65
|
* Regenerate ARM ulps.Joseph Myers2014-01-011-629/+3691
|
* Update copyright notices with scripts/update-copyrightsAllan McRae2014-01-0194-94/+94
|
* Fix dbl-64 e_sqrt.c for non-default rounding modes (bug 16271).Joseph Myers2013-11-281-0/+1
|
* ARM: Fix memcpy computed-jump calculations for ARM_ALWAYS_BX case.Roland McGrath2013-11-222-18/+11
|
* rename configure.in to configure.acMike Frysinger2013-10-306-5/+5
| | | | | | | Autoconf has been deprecating configure.in for quite a long time. Rename all our configure.in and preconfigure.in files to .ac. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* ARM: Allow building __sigsetjmp as Thumb.Will Newton2013-10-041-3/+2
| | | | | | | | | | | Convert __sigsetjmp code to allow building as Thumb. ports/ChangeLog.arm: 2013-10-04 Will Newton <will.newton@linaro.org> * sysdeps/arm/setjmp.S (NO_THUMB): Remove define. (__sigsetjmp): Use Thumb supported instructions.
* ARM: Allow building __longjmp as Thumb.Will Newton2013-10-041-3/+3
| | | | | | | | | | | | | Convert __longjmp code to allow building as Thumb. ports/ChangeLog.arm: 2013-10-04 Will Newton <will.newton@linaro.org> * sysdeps/arm/__longjmp.S (NO_THUMB): Remove define. (__longjmp): Use Thumb supported instructions. * sysdeps/unix/sysv/linux/arm/____longjmp_chk.S (NO_THUMB): Remove define.
* ARM: Add pointer encryption support.Will Newton2013-10-035-3/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for pointer encryption in glibc internal structures in C and assembler code. Pointer encryption is a glibc security feature described here: https://sourceware.org/glibc/wiki/PointerEncryption The ARM implementation uses global variables instead of thread pointer relative accesses to get the value of the pointer encryption guard because accessing the thread pointer can be very expensive on older ARM cores. ports/ChangeLog.arm: 2013-10-03 Will Newton <will.newton@linaro.org> * sysdeps/arm/__longjmp.S (__longjmp): Demangle fp, sp and lr when restoring register values. * sysdeps/arm/include/bits/setjmp.h (JMP_BUF_REGLIST): Remove sp and lr from list and replace fp with a4. * sysdeps/arm/jmpbuf-unwind.h (_jmpbuf_sp): New function. (_JMPBUF_UNWINDS_ADJ): Call _jmpbuf_sp. * sysdeps/arm/setjmp.S (__sigsetjmp): Mangle fp, sp and lr before storing register values. * sysdeps/arm/sysdep.h (LDST_GLOBAL): New macro. * sysdeps/unix/sysv/linux/arm/sysdep.h (PTR_MANGLE): New macro. (PTR_DEMANGLE): Likewise. (PTR_MANGLE2): Likewise. (PTR_DEMANGLE2): Likewise.
* ports/sysdeps/arm/nptl/tls.h: Remove TLS_INIT_TP_EXPENSIVE.Will Newton2013-09-241-4/+0
| | | | | | | | | | | This define was removed from the rest of the tree eight years ago. ports/ChangeLog.arm: 2013-09-24 Will Newton <will.newton@linaro.org> * ports/sysdeps/arm/nptl/tls.h (TLS_INIT_TP_EXPENSIVE): Remove macro.
* Make __ffs hiddenAndreas Schwab2013-09-201-0/+1
|
* Improve atomic locking for ARM.Maxim Kuvyrkov2013-09-191-8/+86
| | | | | | | | | | [BZ #15640] * sysdeps/arm/bits/atomic.h (atomic_exchange_acq, atomic_exchange_rel) (atomic_compare_and_exchange_bool_acq) (atomic_compare_and_exchange_val_acq) (atomic_compare_and_exchange_bool_rel) (atomic_compare_and_exchange_val_rel): Use __atomic_exchange_n and __atomic_compare_exchange_n builtins when GCC supports them.
* ARM: Improve armv7 memcpy performance.Will Newton2013-09-161-6/+5
| | | | | | | | | | | | | | Only enter the aligned copy loop with buffers that can be 8-byte aligned. This improves performance slightly on Cortex-A9 and Cortex-A15 cores for large copies with buffers that are 4-byte aligned but not 8-byte aligned. ports/ChangeLog.arm: 2013-09-16 Will Newton <will.newton@linaro.org> * sysdeps/arm/armv7/multiarch/memcpy_impl.S: Tighten check on entry to aligned copy loop to improve performance.
* Use sfi_* macros in armv6t2 strlen.Roland McGrath2013-08-301-9/+14
|
* Make armv6t2 strlen work in ARM mode too.Roland McGrath2013-08-301-2/+25
|
* sysdeps/arm/armv6t2/strlen.S: strlen implementation for armv6t2.Will Newton2013-08-301-0/+141
| | | | | | | | | | | This implementation of strlen is faster than the armv6 version for all string lengths greater than 1 on a Cortex-A15. ports/ChangeLog.arm: 2013-08-09 Will Newton <will.newton@linaro.org> * sysdeps/arm/armv6t2/strlen.S: New file.
* ARM: Pass dl_hwcap to IFUNC resolver.Carlos O'Donell2013-08-291-1/+1
| | | | | For REL relocs pass dl_hwcap to the IFUNC resolver as is required by the IFUNC API (bug 15905).
* Condition sysdeps/arm/include/bits/setjmp.h contents on _ISOMAC.Joseph Myers2013-07-031-2/+4
|
* Regenerate ARM ulps.Joseph Myers2013-07-021-103/+2804
|
* Make soft-float ARM use soft-fp fma/fmaf.Joseph Myers2013-07-024-0/+60
|
* ARM: Pass dl_hwcap to IFUNC resolver functions.Will Newton2013-07-021-1/+1
|
* sysdeps/arm/arm-mcount.S: Comment typo fix.Roland McGrath2013-06-181-1/+1
|
* ARM: Make armv7 memcpy implementations SFI-friendlyRoland McGrath2013-06-182-281/+564
|
* ARM: Clean up __libc_ifunc_impl_listRoland McGrath2013-06-181-10/+15
|
* Fix warnings from ARM soft-float fpu_control.h.Joseph Myers2013-06-181-2/+2
|
* Wrap test-fpucw.c for ARM.Joseph Myers2013-06-182-1/+6
|
* Make ARM feenableexcept detect failure (bug 14907).Joseph Myers2013-06-171-0/+12
|
* Update ARM _FPU_RESERVED value.Joseph Myers2013-06-141-1/+1
|
* Add exception information to math-tests.h and use it in libm-test.inc.Joseph Myers2013-06-111-1/+5
|
* Add rounding mode information to math-tests.h and use it in libm-test.inc.Joseph Myers2013-06-101-0/+28
|
* BZ #15583: r7 uninitialized in strcpy.S when ARM_HAS_T2 undefinedRichard Henderson2013-06-051-1/+1
|
* Remove trailing whitespace in ports.Joseph Myers2013-06-051-1/+1
|
* Link extra-libs consistently with libc and ld.so.Joseph Myers2013-05-311-9/+0
|
* Avoid crashing in LD_DEBUG when program name is unavailableSiddhesh Poyarekar2013-05-291-4/+2
| | | | | | | | | Resolves: #15465 The program name may be unavailable if the user application tampers with argc and argv[]. Some parts of the dynamic linker caters for this while others don't, so this patch consolidates the check and fallback into a single macro and updates all users.
* Don't include expected results in libm-test test names.Joseph Myers2013-05-221-466/+466
|
* Handle sincos with generic libm-test logic.Joseph Myers2013-05-191-7/+7
|
* Stop ARM setjmp/longjmp saving/restoring fpscr (bug 14908).Joseph Myers2013-05-143-13/+3
|
* ARM: Make multiarch memcpy always use NEON when compiler doesRoland McGrath2013-05-134-11/+31
|
* ARM: Add Cortex-A15 optimized NEON and VFP memcpy routines, with IFUNC.Will Newton2013-05-089-0/+854
|
* ARM: Rewrite elf_machine_dynamic in pure C.Roland McGrath2013-05-071-21/+4
|
* ARM: Add missing sfi_breg prefix in _dl_tlsdesc_dynamic code.Roland McGrath2013-05-061-0/+1
|
* ARM: Macroize assembly use of EABI unwind directives.Roland McGrath2013-04-192-15/+24
|
* ARM: fix preconfigure.Mans Rullgard2013-03-262-2/+2
|
* Use LIBC_CONFIG_VAR for ARM default-abi setting.Joseph Myers2013-03-202-4/+6
|
* ARM: Make dl-tlsdesc.S use sfi_breg, respect ARM_ALWAYS_BX and ↵Roland McGrath2013-03-182-9/+28
| | | | ARM_NO_INDEX_REGISTER.
* ARM: sfi_sp assembler macroRoland McGrath2013-03-152-1/+6
|
* ARM: sfi_breg assembler macroRoland McGrath2013-03-1517-189/+381
|
* ARM_BX_ALIGN_LOG2Roland McGrath2013-03-133-12/+59
|
* ARM: Handle ARM_ALWAYS_BX in {add,sub}_n.S code.Roland McGrath2013-03-131-0/+6
|