glibc/include
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
..
arpa * include/resolv.h: Adjust __libc_res_nquery and __libc_res_nsend 2008-05-10 23:27:39 +00:00
bits * misc/error.h: Use __const instead of const. 2007-10-07 17:29:37 +00:00
gnu
net
netinet
protocols
rpc
rpcsvc
sys
aio.h
aliases.h
alloca.h
argp.h
argz.h
assert.h
atomic.h
byteswap.h
caller.h
complex.h
ctype.h
des.h
dirent.h
dlfcn.h
elf.h
endian.h
envz.h
err.h
errno.h
error.h
execinfo.h
fcntl.h
features.h * include/features.h (__GLIBC_MINOR__): Bump to 8. 2008-04-11 17:33:24 +00:00
fenv.h * sysdeps/powerpc/fpu/fenv_libc.h: Add libm_hidden_proto for 2008-04-12 00:51:34 +00:00
fnmatch.h
fpu_control.h
ftw.h
gconv.h
getopt_int.h
getopt.h
glob.h
gmp.h
gnu-versions.h
grp.h
iconv.h
ifaddrs.h * include/ifaddrs.h: Remove in6ai_temporary. 2007-11-14 06:58:35 +00:00
inline-hashtab.h Introduce TLS descriptors for i386 and x86_64. 2008-05-13 05:41:30 +00:00
langinfo.h * locale/nl_langinfo.c (nl_langinfo): Just call __nl_langinfo_l. 2007-12-14 03:54:07 +00:00
libc-internal.h
libc-symbols.h
libgen.h
libintl.h
libio.h
limits.h
link.h * include/link.h (FORCED_DYNAMIC_TLS_OFFSET): Define. 2008-01-17 20:20:00 +00:00
locale.h
malloc.h
math.h
mcheck.h
memory.h
mntent.h
monetary.h
mqueue.h
netdb.h Declare __gethostbyaddr2_r and __gethostbyname3_r. 2007-10-30 00:43:16 +00:00
netgroup.h
nl_types.h
nss.h
nsswitch.h
obstack.h
poll.h
printf.h
pthread.h
pty.h
pwd.h
regex.h
resolv.h Adjust __libc_res_nquery and __libc_res_nsend prototypes. 2008-05-10 23:22:49 +00:00
sched.h
search.h
set-hooks.h
setjmp.h
sgtty.h
shadow.h
shlib-compat.h
signal.h
spawn.h
stab.h
stdio_ext.h * include/stdio_ext.h (__fsetlocking): Define as macro. 2007-10-01 21:21:46 +00:00
stdio.h * include/stdio.h (__asprintf_chk, __dprintf_chk, 2008-03-05 07:05:13 +00:00
stdlib.h * stdlib/stdlib.h: Define __compar_d_fn_t. Declare qsort_r. 2007-11-13 17:21:43 +00:00
string.h
strings.h
stub-tag.h
stubs-biarch.h
stubs-prologue.h
syscall.h
sysexits.h
syslog.h
tar.h
termios.h
tgmath.h
time.h * include/time.h: Declare __tzset_parse_tz and __tzset_compute. 2007-10-14 09:15:45 +00:00
tls.h
ttyent.h
ucontext.h
ulimit.h
unistd.h
utime.h
utmp.h
values.h
wchar.h * include/stdio.h (__isoc99_fscanf, __isoc99_scanf, 2007-09-18 19:04:01 +00:00
wctype.h
wordexp.h
xlocale.h