glibc/sysdeps
Florian Weimer 9e78f6f6e7 Implement _dl_catch_error, _dl_signal_error in libc.so [BZ #16628]
This change moves the main implementation of _dl_catch_error,
_dl_signal_error to libc.so, where TLS variables can be used
directly.  This removes a writable function pointer from the
rtld_global variable.

For use during initial relocation, minimal implementations of these
functions are provided in ld.so.  These are eventually interposed
by the libc.so implementations.  This is implemented by compiling
elf/dl-error-skeleton.c twice, via elf/dl-error.c and
elf/dl-error-minimal.c.

As a side effect of this change, the static version of dl-error.c
no longer includes support for the
_dl_signal_cerror/_dl_receive_error mechanism because it is only
used in ld.so.
2016-11-30 15:59:57 +01:00
..
aarch64 Refactor FP_FAST_* into bits/fp-fast.h. 2016-11-29 01:45:00 +00:00
alpha Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
arm Refactor FP_FAST_* into bits/fp-fast.h. 2016-11-29 01:45:00 +00:00
generic Implement _dl_catch_error, _dl_signal_error in libc.so [BZ #16628] 2016-11-30 15:59:57 +01:00
gnu Define wordsize.h macros everywhere 2016-11-04 09:37:44 -07:00
hppa Refactor FP_FAST_* into bits/fp-fast.h. 2016-11-29 01:45:00 +00:00
i386 Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
ia64 Fix sysdeps/ia64/fpu/libm-symbols.h for inclusion in testcases. 2016-11-28 23:12:49 +00:00
ieee754 Make ilogb wrappers type-generic. 2016-11-28 23:27:23 +00:00
init_array Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
m68k Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
mach Fix hurd __access_noerrno implementation. 2016-11-18 16:49:08 -02:00
microblaze Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
mips Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
nacl Add setpayloadsig, setpayloadsigf, setpayloadsigl. 2016-11-24 23:56:48 +00:00
nios2 Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
nptl Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
posix hurd: fix fcntl visibility 2016-09-18 23:48:55 +02:00
powerpc powerpc: Add hidden definition for __sigsetjmp 2016-11-29 10:16:35 +01:00
pthread Installed-header hygiene (BZ#20366): time.h types. 2016-09-23 08:43:56 -04:00
s390 Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
sh Refactor FP_FAST_* into bits/fp-fast.h. 2016-11-29 01:45:00 +00:00
sparc Remove cached PID/TID in clone 2016-11-24 19:38:51 -02:00
tile Refactor FP_FAST_* into bits/fp-fast.h. 2016-11-29 01:45:00 +00:00
unix Implement _dl_catch_error, _dl_signal_error in libc.so [BZ #16628] 2016-11-30 15:59:57 +01:00
wordsize-32 Define wordsize.h macros everywhere 2016-11-04 09:37:44 -07:00
wordsize-64 Define wordsize.h macros everywhere 2016-11-04 09:37:44 -07:00
x86 Refactor FP_FAST_* into bits/fp-fast.h. 2016-11-29 01:45:00 +00:00
x86_64 Implement _dl_catch_error, _dl_signal_error in libc.so [BZ #16628] 2016-11-30 15:59:57 +01:00