glibc/sysdeps/i386
Ulrich Drepper c9ff0187a6 Introduce TLS descriptors for i386 and x86_64.
* 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.
2008-05-13 05:41:30 +00:00
..
bits Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
elf Help the compiler recognize unreachable code on 32-bit machines. 2007-10-16 23:25:46 +00:00
fpu * sysdeps/i386/fpu/ftestexcept.c (fetestexcept): Use short for fnstsw. 2008-01-22 18:58:31 +00:00
i486 [BZ #5477] 2007-12-12 18:03:27 +00:00
i586 2007-09-13 H.J. Lu <hongjiu.lu@intel.com> 2007-11-13 01:56:18 +00:00
i686 * elf/tls-macros.h (__TLS_GET_ADDR): Define according to the ABI 2008-04-11 21:04:10 +00:00
i786
sys
__longjmp.S 2006-01-12 Roland McGrath <roland@redhat.com> 2006-01-12 09:27:47 +00:00
abort-instr.h
add_n.S
addmul_1.S
asm-syntax.h
backtrace.c [BZ #3112] 2007-10-28 01:29:21 +00:00
bp-asm.h
bsd-_setjmp.S 2006-01-12 Roland McGrath <roland@redhat.com> 2006-01-12 09:27:47 +00:00
bsd-setjmp.S 2006-01-12 Roland McGrath <roland@redhat.com> 2006-01-12 09:27:47 +00:00
bzero.c
configure
configure.in
dl-lookupcfg.h Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
dl-machine.h Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
dl-procinfo.c
dl-procinfo.h
dl-tls.h Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
dl-tlsdesc.h Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
dl-tlsdesc.S Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
dl-trampoline.S [BZ #3924] 2007-10-07 05:31:00 +00:00
ffs.c
fpu_control.h
gccframe.h
gmp-mparam.h
htonl.S
htons.S
i386-mcount.S
Implies
init-first.c
jmpbuf-offsets.h * include/bits/setjmp.h: New file. 2006-01-10 10:18:56 +00:00
jmpbuf-unwind.h 2006-01-12 Roland McGrath <roland@redhat.com> 2006-01-12 09:27:47 +00:00
ldbl2mpn.c [BZ #4586] 2007-06-08 02:50:59 +00:00
lshift.S
machine-gmon.h
Makefile Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
memchr.S
memcmp.S
memcopy.h
memset.c
memusage.h [BZ #1566] 2005-12-23 15:29:25 +00:00
mp_clz_tab.c
mul_1.S
rawmemchr.S
rshift.S
setfpucw.c
setjmp.S 2006-01-12 Roland McGrath <roland@redhat.com> 2006-01-12 09:27:47 +00:00
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 [BZ #2126] 2006-01-10 00:25:07 +00:00
sub_n.S
submul_1.S
sysdep.h . 2007-07-31 13:33:18 +00:00
tlsdesc.c Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
tlsdesc.sym Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
tst-stack-align.h
Versions