mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-24 11:41:07 +00:00
c9ff0187a6
* include/inline-hashtab.h: New file, copied from 2005's libiberty, with fix for memory leak imported afterwards by Glauber de Oliveira Costa. * elf/tlsdeschtab.h: New file. * elf/dl-reloc.c (_dl_try_allocate_static_tls): Extract from... (_dl_allocate_static_tls): ... here. Rearrange failure path. (CHECK_STATIC_TLS): Move to... * elf/dynamic-link.h: ... this file. (TRY_STATIC_TLS): New macro. * elf/dl-conflict.c (CHECK_STATIC_TLS, TRY_STATIC_TLS): Override. * elf/elf.h (R_386_TLS_GOTDESC, R_386_TLS_DESC_CALL, R_386_TLS_DESC): Define. (R_X86_64_PC64, R_X86_GOTOFF64, R_X86_64_GOTPC32): Merge from binutils. (R_X86_64_GOTPC32_TLSDESC, R_X86_64_TLSDESC_CALL, R_X86_64_TLSDESC): Define. (R_386_NUM, R_X86_64_NUM): Adjust. * sysdeps/i386/Makefile (sysdep-dl-routines, sysdep_routines, systep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir. (gen-as-const-headers): Add tlsdesc.sym to csu subdir. * sysdeps/i386/dl-lookupcfg.h: New file. Introduce _dl_unmap to release tlsdesc_table. * sysdeps/i386/dl-machine.h: Include dl-tlsdesc.h. (elf_machine_type_class): Mark R_386_TLS_DESC as PLT class. (elf_machine_rel): Handle R_386_TLS_DESC. (elf_machine_rela): Likewise. (elf_machine_lazy_rel): Likewise. (elf_machine_lazy_rela): Likewise. * sysdeps/i386/dl-tls.h (struct dl_tls_index): Name it. * sysdeps/i386/dl-tlsdesc.S: New file. * sysdeps/i386/dl-tlsdesc.h: New file. * sysdeps/i386/tlsdesc.c: New file. * sysdeps/i386/tlsdesc.sym: New file. * sysdeps/i386/bits/linkmap.h (struct link_map_machine): Add tlsdesc_table. * sysdeps/x86_64/Makefile (sysdep-dl-routines, sysdep_routines, systep-rtld-routines): Add tlsdesc and dl-tlsdesc for elf subdir. (gen-as-const-headers): Add tlsdesc.sym to csu subdir. * sysdeps/x86_64/dl-lookupcfg.h: New file. Introduce _dl_unmap to release tlsdesc_table. * sysdeps/x86_64/dl-machine.h: Include dl-tlsdesc.h. (elf_machine_runtime_setup): Set up lazy TLSDESC GOT entry. (elf_machine_type_class): Mark R_X86_64_TLSDESC as PLT class. (elf_machine_rel): Handle R_X86_64_TLSDESC. (elf_machine_rela): Likewise. (elf_machine_lazy_rel): Likewise. * sysdeps/x86_64/dl-tls.h (struct dl_tls_index): Name it. (__tls_get_addr): Do not declare for non-shared compiles. * sysdeps/x86_64/dl-tlsdesc.S: New file. * sysdeps/x86_64/dl-tlsdesc.h: New file. * sysdeps/x86_64/tlsdesc.c: New file. * sysdeps/x86_64/tlsdesc.sym: New file. * sysdeps/x86_64/bits/linkmap.h (struct link_map_machine): Add tlsdesc_table for both 32- and 64-bit structs. |
||
---|---|---|
.. | ||
bits | ||
elf | ||
fpu | ||
i486 | ||
i586 | ||
i686 | ||
i786 | ||
sys | ||
__longjmp.S | ||
abort-instr.h | ||
add_n.S | ||
addmul_1.S | ||
asm-syntax.h | ||
backtrace.c | ||
bp-asm.h | ||
bsd-_setjmp.S | ||
bsd-setjmp.S | ||
bzero.c | ||
configure | ||
configure.in | ||
dl-lookupcfg.h | ||
dl-machine.h | ||
dl-procinfo.c | ||
dl-procinfo.h | ||
dl-tls.h | ||
dl-tlsdesc.h | ||
dl-tlsdesc.S | ||
dl-trampoline.S | ||
ffs.c | ||
fpu_control.h | ||
gccframe.h | ||
gmp-mparam.h | ||
htonl.S | ||
htons.S | ||
i386-mcount.S | ||
Implies | ||
init-first.c | ||
jmpbuf-offsets.h | ||
jmpbuf-unwind.h | ||
ldbl2mpn.c | ||
lshift.S | ||
machine-gmon.h | ||
Makefile | ||
memchr.S | ||
memcmp.S | ||
memcopy.h | ||
memset.c | ||
memusage.h | ||
mp_clz_tab.c | ||
mul_1.S | ||
rawmemchr.S | ||
rshift.S | ||
setfpucw.c | ||
setjmp.S | ||
stackinfo.h | ||
stpcpy.S | ||
stpncpy.S | ||
strchr.S | ||
strchrnul.S | ||
strcspn.S | ||
string-inlines.c | ||
strlen.c | ||
strpbrk.S | ||
strrchr.S | ||
strspn.S | ||
strtok_r.S | ||
strtok.S | ||
sub_n.S | ||
submul_1.S | ||
sysdep.h | ||
tlsdesc.c | ||
tlsdesc.sym | ||
tst-stack-align.h | ||
Versions |