glibc/sysdeps/arm
Andi Kleen 8491ed6d70 Add adaptive elision to rwlocks
This patch relies on the C version of the rwlocks posted earlier.
With C rwlocks it is very straight forward to do adaptive elision
using TSX. It is based on the infrastructure added earlier
for mutexes, but uses its own elision macros. The macros
are fairly general purpose and could be used for other
elision purposes too.

This version is much cleaner than the earlier assembler based
version, and in particular implements adaptation which makes
it safer.

I changed the behavior slightly to not require any changes
in the test suite and fully conform to all expected
behaviors (generally at the cost of not eliding in
various situations). In particular this means the timedlock
variants are not elided.  Nested trylock aborts.
2014-06-13 13:15:28 -07:00
..
armv6 Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
armv6t2 Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
armv7 Make armv7 strcmp assembly compatible with ARM mode and SFI. 2014-05-09 13:22:00 -07:00
bits Fix -Wundef warnins for __FP_FAST_FMA* 2014-03-21 17:28:43 +05:30
include/bits ARM: Add SystemTap probes to longjmp and setjmp. 2014-02-25 10:07:04 +00:00
nptl Add adaptive elision to rwlocks 2014-06-13 13:15:28 -07:00
soft-fp ARM: soft-fp NaN representation correction 2014-05-16 23:10:29 +01:00
sys Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
__longjmp.S ARM: Fix up setjmp/longjmp changes sfi_* macro use. 2014-03-11 10:59:01 -07:00
abi-note.S Fix whitespace in ARM files to allow move. 2014-02-08 01:52:38 +00:00
add_n.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
addmul_1.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_assert.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_atexit.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_errno_addr.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_lcsts.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_localeconv.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_math.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_mb_cur_max.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_memclr.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_memcpy.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_memmove.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_memset.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_sighandlers.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
aeabi_unwind_cpp_pr1.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
arm-features.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
arm-mcount.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
backtrace.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
bsd-_setjmp.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
bsd-setjmp.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
configure Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
configure.ac Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
crti.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
crtn.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
dl-irel.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
dl-lookupcfg.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
dl-machine.h ARM: Fix R_ARM_IRELATIVE RELA relocations. 2014-04-30 16:17:59 +00:00
dl-sysdep.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
dl-tls.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
dl-tlsdesc.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
dl-tlsdesc.S ARM: Fix handling of concurrent TLS descriptor resolution 2014-05-27 10:39:18 +01:00
dl-trampoline.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
fclrexcpt.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
fedisblxcpt.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
feenablxcpt.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
fegetenv.c ARM: Improve fenv implementation 2014-05-15 15:23:27 +01:00
fegetexcept.c ARM: Improve fenv implementation 2014-05-15 15:23:27 +01:00
fegetround.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
feholdexcpt.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
fenv_private.h [ARM] Add support for fenv_private on ARM. 2014-04-28 10:53:04 +01:00
fesetenv.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
fesetround.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
feupdateenv.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
fgetexcptflg.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
find_exidx.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
fpu_control.h [ARM] Add support for fenv_private on ARM. 2014-04-28 10:53:04 +01:00
fraiseexcpt.c ARM: Improve fenv implementation 2014-05-15 15:23:27 +01:00
frame.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
framestate.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
fsetexcptflg.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
ftestexcept.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
gcc-compat.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
gccframe.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
get-rounding-mode.h ARM: Improve fenv implementation 2014-05-15 15:23:27 +01:00
gmp-mparam.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
Implies Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
jmpbuf-unwind.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
ldsodefs.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
libc-tls.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
libm-test-ulps Don't include individual test ulps in libm-test-ulps. 2014-03-05 15:02:38 +00:00
machine-gmon.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
Makefile Consistently use $(elf-objpfx). 2014-05-21 16:52:08 +00:00
math_private.h [ARM] Add support for fenv_private on ARM. 2014-04-28 10:53:04 +01:00
math-tests.h Add fenv test support for targets which don't have FP traps. 2014-04-17 09:39:27 +01:00
memcpy.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
memmove.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
memset.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
memusage.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
preconfigure ARM: Allow auto-detection of linker relro feature 2014-05-09 16:57:12 +01:00
preconfigure.ac ARM: Allow auto-detection of linker relro feature 2014-05-09 16:57:12 +01:00
rtld-global-offsets.sym Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
s_fma.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
s_fmaf.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
setfpucw.c Revert "ARM: Improve fenv implementation" 2014-05-19 09:08:59 +01:00
setjmp.S ARM: Fix up setjmp/longjmp changes sfi_* macro use. 2014-03-11 10:59:01 -07:00
shlib-versions Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
sotruss-lib.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
stackinfo.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
start.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
static-stubs.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
strlen.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
sub_n.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
submul_1.S Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
sysdep.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
test-fpucw.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
tls-macros.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
tlsdesc.c Factor mmap/munmap of PT_LOAD segments out of _dl_map_object_from_fd et al. 2014-04-03 10:47:14 -07:00
tlsdesc.sym Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
tst-audit.h Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
unwind-dw2-fde-glibc.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
unwind-pe.c Move arm from ports to libc. 2014-02-08 01:49:39 +00:00
unwind.h Move ARM internal unwind.h header to the right sysdeps directory. 2014-05-06 15:55:20 -07:00
Versions Move arm from ports to libc. 2014-02-08 01:49:39 +00:00