musl/arch/arm
Rich Felker 0beb9dfbec add TLSDESC support for 32-bit arm
unlike other asm where the baseline ISA is used, these functions are
hot paths and use ISA-level specializations.

call-clobbered vfp registers are saved before calling __tls_get_new,
since there is no guarantee it won't use them. while setjmp/longjmp
have to use hwcap to decide whether to the fpu is in use, since
application code could be using vfp registers even if libc was
compiled as pure softfloat, __tls_get_new is part of libc and can be
assumed not to have access to vfp registers if tlsdesc.S does not.
thus it suffices just to check the predefined preprocessor macros. the
check for __ARM_PCS_VFP is redundant; !__SOFTFP__ must always be true
if the target ISA level includes fpu instructions/registers.
2018-10-01 18:37:02 -04:00
..
bits add arm and sh bits/ptrace.h 2018-09-20 17:56:29 -04:00
atomic_arch.h define and use internal macros for hidden visibility, weak refs 2018-09-05 14:05:14 -04:00
crt_arch.h add .text section directive to all crt_arch.h files missing it 2015-05-22 01:50:05 -04:00
pthread_arch.h define and use internal macros for hidden visibility, weak refs 2018-09-05 14:05:14 -04:00
reloc.h add TLSDESC support for 32-bit arm 2018-10-01 18:37:02 -04:00
syscall_arch.h work around broken kernel struct ipc_perm on some big endian archs 2018-06-20 00:07:09 -04:00