aboutsummaryrefslogtreecommitdiff
path: root/ports/sysdeps
AgeCommit message (Collapse)Author
2013-03-07arm: Implement armv6 optimized string routinesRichard Henderson
The strcpy and strchr (and related) functions are four times faster than the byte-by-byte default versions. The strlen function is twice as fast for long strings and 50% faster for short strings over the armv4 version.
2013-03-07AARCH64: Use <bits/mman-linux.h>Andreas Jaeger
* sysdeps/unix/sysv/linux/aarch64/bits/mman.h: Remove all defines provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-03-06Use <bits/mman-linux.h> for MIPSAndreas Jaeger
* sysdeps/unix/sysv/linux/bits/mman-linux.h (MAP_ANONYMOUS): Allow definition via __MAP_ANONYMOUS. * sysdeps/unix/sysv/linux/mips/bits/mman.h: Remove all defines provided by bits/mman-linux.h and include <bits/mman-linux.h>. (__MAP_ANONYMOUS): Define.
2013-03-06arm: Add optimized add_n and sub_nRichard Henderson
Written from scratch rather than copied from GMP, due to LGPL 2.1 vs GPL 3, but tested with the GMP testsuite. This is 250% faster than the generic code as measured on Cortex-A15, and the same speed as GMP on the same core, and probably everywhere.
2013-03-06arm: Add optimized submul_1Richard Henderson
Written from scratch rather than copied from GMP, due to LGPL 2.1 vs GPL 3, but tested with the GMP testsuite. This is 50% faster than the generic code as measured on Cortex-A15. It is 25% slower than the current GMP routine on the same core.
2013-03-06arm: Add optimized addmul_1Richard Henderson
Written from scratch rather than copied from GMP, due to LGPL 2.1 vs GPL 3, but tested with the GMP testsuite. This is 25% faster than the generic code as measured on Cortex-A15, and the same speed as GMP on the same core. It's probably slower than GMP on the A8 and A9 cores though.
2013-03-06arm: Add optimized ffs for armv6t2Richard Henderson
2013-03-06arm: Implement hard-tp for GET_TLSRichard Henderson
2013-03-06arm: Tidy architecture selectionRichard Henderson
2013-03-06arm: Unless arm4t, pop return address directly into pcRichard Henderson
2013-03-06arm: Commonize BX conditionalsRichard Henderson
Add BLX macro in addition and use it where appropriate.
2013-03-06arm: Delete LOADREGS macroRichard Henderson
There was only one user. It's "condition" argument was used for "ia" rather than an actual condition. The apcs26 syntax is almost certainly not needed, given current binutils requirements.
2013-03-06arm: Use push/pop mnemonicsRichard Henderson
For arm this makes no difference--the result is bit-for-bit identical; for thumb this results in smaller encodings. Perhaps it ought not and this is in fact an assembler bug, but I also think it's clearer.
2013-03-06arm: Enable thumb2 mode in assembly filesRichard Henderson
The preceeding patches have allowed for the few incompatibilities between arm and thumb2 mode, or have marked the file as not wanting to use thumb2 mode.
2013-03-06arm: Introduce and use GET_TLSRichard Henderson
Factor out the sequence needed to call kuser_get_tls, as we can't play subtract into pc games in thumb mode. Prepare for hard-tp, pulling the save of LR into the macro.
2013-03-06arm: Introduce and use NEGOFF series of macrosRichard Henderson
There are several places in which we access negative offsets from the thread-pointer, but thumb2 only supports positive offsets in memory references. Avoid duplicating the rather large macros in which these references are embedded by abstracting out the operation.
2013-03-06arm: Introduce and use LDST_PCRELRichard Henderson
Macro-ising the few instances where we need to distinguish between arm and thumb pc-relative memory operations.
2013-03-06Sync with Linux 3.8Andreas Jaeger
2013-03-06Use <bits/mman-linux.h> on M68kAndreas Jaeger
2013-03-06Use <bits/mman-linux.h> on ARMAndreas Jaeger
2013-03-05Use bits/mman-linux.h for TILEAndreas Jaeger
* sysdeps/unix/sysv/linux/tile/bits/mman.h: Remove all defines provided by bits/mman-linux.h and include <bits/mman-linux.h>.
2013-02-28tile: Add priority inheritance futex supportChris Metcalf
2013-02-28Remove bounded-pointers relics from am33 code.Joseph Myers
2013-02-28Remove powerpc32 bounded-pointers code.Joseph Myers
2013-02-28arm: Mark assembly files that will not use thumb modeRichard Henderson
Some routines are written with complex LDM/STM insns that cannot be used in thumb mode, or are highly conditional requiring excessive IT insns. When a future patch goes in to enable thumb2 by default, this marker will be used to override that default.
2013-02-28arm: Add IT insns for thumb modeRichard Henderson
These are ignored by the assembler in ARM mode, so by default this has no effect on generated code.
2013-02-28arm: Introduce and use PC_OFSRichard Henderson
Scour the source for raw "-8" adjustments that are related to the offset created by reading the pc.
2013-02-28arm: Tidy whitespace in sysdep.h filesRichard Henderson
2013-02-28arm: Include libc-do-syscall in sysdep-rtld-routinesRichard Henderson
When compiling with -mthumb, ld.so itself also needs __libc_do_syscall.
2013-02-28arm: Handle armv6 in preconfigureRichard Henderson
2013-02-28arm: Update preconfigure fragment for gcc 4.8Richard Henderson
New defines from gcc 4.8: #define __ARM_ARCH_ISA_ARM 1 #define __ARM_ARCH_PROFILE 65 #define __ARM_ARCH_ISA_THUMB 2 #define __ARM_ARCH 7 all of which got in the way of the one we wanted: #define __ARM_ARCH_7A__ 1
2013-02-27ARM: Macroize use of .cfi_sections directive.Roland McGrath
2013-02-27Add support for building as MIPS16 code.Maciej W. Rozycki
2013-02-20Add FUTEX_*_REQUEUE_PI support for Alpha.Richard Henderson
2013-02-20alpha: Include errno.h in sysdep.hRichard Henderson
Recent changes in malloc-sysdep.h exposed this error, the symptom being __set_errno was not defined early enough.
2013-02-20Respect the user's namespace in installed header files.Thomas Schwinge
Fixup for commit c7b275d6b3bceb6b400fa3044d13d1001bc605ca.
2013-02-20Properly sort a libc.abilist file.Thomas Schwinge
Inconsistency introduced in commit 84b3fd8407cc9a2e7f487b6247681bd8a78a4560.
2013-02-20bits/nan.h: Change __attribute_used__ to __attribute__ ((unused)).Thomas Schwinge
2013-02-20Add missing __attribute_used__.Thomas Schwinge
Generic IEEE 754 file has been changed in commit b575c52b86fe0c00adec925e356eb72cf95b23a7.
2013-02-20Align to generic file.Thomas Schwinge
2013-02-19Add FUTEX_*_REQUEUE_PI support for MIPS.Joseph Myers
2013-02-18Add FUTEX_*_REQUEUE_PI support for ARM.Joseph Myers
2013-02-18Add __cxa_thread_atexit_impl to aarch64 abilistSiddhesh Poyarekar
2013-02-18C++11 thread_local destructors supportSiddhesh Poyarekar
This feature is specifically for the C++ compiler to offload calling thread_local object destructors on thread program exit, to glibc. This is to overcome the possible complication of destructors of thread_local objects getting called after the DSO in which they're defined is unloaded by the dynamic linker. The DSO is marked as 'unloadable' if it has a constructed thread_local object and marked as 'unloadable' again when all the constructed thread_local objects defined in it are destroyed.
2013-02-15Remove miscellaneous bounded-pointers relics in C code.Joseph Myers
2013-02-14hppa: Remove unused lll_unlock_wake_cb.Carlos O'Donell
There hasn't been a use for lll_unlock_wake_cb since it was removed globally in 2007-05-29. This patch removes the function from hppa's lowlevellock.[ch] implementation.
2013-02-14aarch64: Update libm-test-ulps.Marcus Shawcroft
2013-02-14Remove bp-sym.h and BP_SYM uses from C code.Joseph Myers
2013-02-13Remove __ptrvalue, __bounded and __unbounded.Joseph Myers
2013-02-11Add CFI information for MIPS assembly sources.Joseph Myers