glibc/sysdeps/arm
Szabolcs Nagy 1fae5a6800 [BZ #19129][ARM] Fix _dl_tlsdesc_resolve_hold to save r0
_dl_tlsdesc_resolve_hold calls into a C function that clobbers r0,
but it assumes the original argument is still in r0 after the call.
This can cause crash in case of concurrent TLS access when TLSDESC
is in use (-mtls-dialect=gnu2).

Run into this while fixing BZ 18572.

Both r0 and r1 are saved/restored so the stack remains 8 byte aligned.

	[BZ #19129]
	* sysdeps/arm/dl-tlsdesc.S (_dl_tlsdesc_resolve_hold): Save and restore
	r0 and r1.
2015-10-14 17:01:12 +01:00
..
armv6 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
armv6t2 Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
armv7 ARM: Remove configure check for binutils 2.21 for ARMv7 2015-01-02 16:52:40 +00:00
bits Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
include/bits Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
nacl Make sysdeps/posix bring in login subdir. 2015-07-23 17:04:22 -07:00
nptl Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
sys Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
__longjmp.S arm: setjmp/longjmp: fix PIC vs SHARED thinkos 2015-09-18 13:09:57 -04:00
abi-note.S
add_n.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
addmul_1.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_assert.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_atexit.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_errno_addr.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_lcsts.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_localeconv.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_math.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_mb_cur_max.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_memclr.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_memcpy.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_memmove.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_memset.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_sighandlers.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
aeabi_unwind_cpp_pr1.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
arm-features.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
arm-mcount.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
arm-unwind-resume.S ARM: Consolidate with generic unwinder wrapper code 2015-01-05 15:42:16 -08:00
atomic-machine.h Move bits/atomic.h to atomic-machine.h (bug 14912). 2015-09-11 20:00:19 +00:00
backtrace.c Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912). 2015-09-08 21:11:03 +00:00
bsd-_setjmp.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
bsd-setjmp.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
configure BZ#18383: Conditionalize test-xfail-tst-tlsalign{,-static} on ARM assembler bug. 2015-07-08 15:00:43 -07:00
configure.ac BZ#18383: Conditionalize test-xfail-tst-tlsalign{,-static} on ARM assembler bug. 2015-07-08 15:00:43 -07:00
crti.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
crtn.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
dl-irel.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
dl-lookupcfg.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
dl-machine.h [ARM][BZ #17711] Fix extern protected data handling 2015-07-24 10:05:07 +01:00
dl-sysdep.h [ARM][BZ #17711] Fix extern protected data handling 2015-07-24 10:05:07 +01:00
dl-tls.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
dl-tlsdesc.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
dl-tlsdesc.S [BZ #19129][ARM] Fix _dl_tlsdesc_resolve_hold to save r0 2015-10-14 17:01:12 +01:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fclrexcpt.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fedisblxcpt.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
feenablxcpt.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fegetenv.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fegetexcept.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fegetround.c Fix libm fegetround namespace (bug 17748). 2015-01-02 20:44:42 +00:00
feholdexcpt.c Fix libm feholdexcept namespace (bug 17748). 2015-01-05 23:06:14 +00:00
fenv_private.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fesetenv.c Fix libm fesetenv namespace (bug 17748). 2015-01-06 23:36:20 +00:00
fesetround.c Fix libm fesetround namespace (bug 17748). 2015-01-07 00:41:23 +00:00
feupdateenv.c Fix libm feupdateenv namespace (bug 17748). 2015-01-07 19:01:20 +00:00
fgetexcptflg.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
find_exidx.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fix-fp-int-convert-overflow.h Fix llrint, llround missing exceptions for ARM (bug 15470). 2015-10-09 22:23:39 +00:00
fpu_control.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
fraiseexcpt.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
frame.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
framestate.c
fsetexcptflg.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
ftestexcept.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
gcc-compat.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
gccframe.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
get-rounding-mode.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
gmp-mparam.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Implies Remove sysdeps/arm/soft-fp directory. 2014-10-16 09:54:45 -07:00
jmpbuf-unwind.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
ldsodefs.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
libc-aeabi_read_tp.S ARM: Move more aeabi routine magic out of Linux-specific directories 2014-06-26 15:08:29 -07:00
libc-tls.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
libm-test-ulps Regenerate ARM libm-test-ulps. 2015-10-09 22:30:26 +00:00
linkmap.h Rename bits/linkmap.h to linkmap.h (bug 14912). 2015-09-04 19:44:27 +00:00
machine-gmon.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Makefile Clean up sysdep-dl-routines variable. 2015-02-06 10:42:08 -08:00
math_private.h [ARM] Add support for fenv_private on ARM. 2014-04-28 10:53:04 +01:00
math-tests.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
memcpy.S ARM: Fix memcpy & memmove for [ARM_ALWAYS_BX] 2015-03-19 12:45:24 -07:00
memmove.S ARM: Fix memcpy & memmove for [ARM_ALWAYS_BX] 2015-03-19 12:45:24 -07:00
memset.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
memusage.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
nptl-aeabi_unwind_cpp_pr1.c ARM: Move more aeabi routine magic out of Linux-specific directories 2014-06-26 15:08:29 -07:00
preconfigure arm: drop EABI check 2014-11-22 19:34:49 -05:00
preconfigure.ac arm: drop EABI check 2014-11-22 19:34:49 -05:00
pt-arm-unwind-resume.S ARM: Consolidate with generic unwinder wrapper code 2015-01-05 15:42:16 -08:00
rt-aeabi_unwind_cpp_pr1.c ARM: Move more aeabi routine magic out of Linux-specific directories 2014-06-26 15:08:29 -07:00
rt-arm-unwind-resume.S ARM: Consolidate with generic unwinder wrapper code 2015-01-05 15:42:16 -08:00
rtld-global-offsets.sym
s_fma.c
s_fmaf.c
setfpucw.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
setjmp.S arm: setjmp/longjmp: fix PIC vs SHARED thinkos 2015-09-18 13:09:57 -04:00
sfp-machine.h Remove sysdeps/arm/soft-fp directory. 2014-10-16 09:54:45 -07:00
sotruss-lib.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
stackinfo.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
start.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
static-stubs.c
strlen.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
sub_n.S
submul_1.S Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
sysdep.h ARM: Add missing sfi_breg in LDR_GLOBAL macro. 2015-02-06 14:42:18 -08:00
test-fpucw.c
tls-macros.h ARM: Rewrite sysdeps/arm/tls-macros.h 2015-03-13 10:10:09 -07:00
tlsdesc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tlsdesc.sym
tst-armtlsdescextlazy.c [BZ #17075] ARM: Fix immediate calculation of R_ARM_TLS_DESC 2014-06-20 20:22:42 +01:00
tst-armtlsdescextlazymod.c [BZ #17075] ARM: Fix immediate calculation of R_ARM_TLS_DESC 2014-06-20 20:22:42 +01:00
tst-armtlsdescextnow.c [BZ #17075] ARM: Fix immediate calculation of R_ARM_TLS_DESC 2014-06-20 20:22:42 +01:00
tst-armtlsdescextnowmod.c [BZ #17075] ARM: Fix immediate calculation of R_ARM_TLS_DESC 2014-06-20 20:22:42 +01:00
tst-armtlsdescloc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-armtlsdesclocmod.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
tst-audit.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
unwind-dw2-fde-glibc.c Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
unwind-pe.c
unwind-resume.h Update copyright year to 2015 for new files. 2015-01-21 10:35:31 -05:00
unwind.h Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Versions Use -Werror=undef for assembly code. 2015-02-12 13:57:32 -08:00