diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-07-09 23:52:22 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-07-09 23:52:22 -0700 |
commit | 415ac3df9b10ae426d4f71f9d48003f6a3c7bd8d (patch) | |
tree | ffdd1aed425688539db80ff7b9daf6f6ddbcbfff /ChangeLog | |
parent | b4f55afd031f14531ba7681032fc5f75a1578320 (diff) | |
download | glibc-415ac3df9b10ae426d4f71f9d48003f6a3c7bd8d.tar glibc-415ac3df9b10ae426d4f71f9d48003f6a3c7bd8d.tar.gz glibc-415ac3df9b10ae426d4f71f9d48003f6a3c7bd8d.tar.bz2 glibc-415ac3df9b10ae426d4f71f9d48003f6a3c7bd8d.zip |
Implement STB_GNU_UNIQUE handling.
Some symbols have to be identified process-wide by their name. This is
particularly important for some C++ features (e.g., class local static data
and static variables in inline functions). This cannot completely be
implemented with ELF functionality so far. The STB_GNU_UNIQUE binding
helps by ensuring the dynamic linker will always use the same definition for
all symbols with the same name and this binding.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 24 |
1 files changed, 23 insertions, 1 deletions
@@ -1,3 +1,25 @@ +2009-07-09 Ulrich Drepper <drepper@redhat.com> + + * configure.in: Check for gnu_unique_symbol symbol type. + * config.h.in: Add HAVE_ASM_UNIQUE_OBJECT entry. + * elf/do-lookup.h (do_lookup_x): Take new parameter with link map of + the undefined symbol. Handle STB_GNU_UNIQUE binding of found symbol. + * elf/dl-lookup.c (_dl_lookup_symbol_x): Adjust callers for do_lookup_x + change. + * sysdeps/generic/ldsodefs.h (struct rtld_global): Add definitions for + unique symbol table. + * elf/rtld.c (rtld_global): Initialize lock of unique symbol hash table + for first namespace. + * elf/dl-open.c (_dl_open): For new namespace, initialize lock for + unique symbol hash table. + * elf/Makefile: Add rules to build and run tst-unique1 and tst-unique2. + * elf/tst-unique1.c: New file. + * elf/tst-unique1mod1.c: New file. + * elf/tst-unique1mod2.c: New file. + * elf/tst-unique2.c: New file. + * elf/tst-unique2mod1.c: New file. + * elf/tst-unique2mod2.c: New file. + 2009-07-07 Ulrich Drepper <drepper@redhat.com> * elf/elf.h (STB_GNU_UNIQUE): Define. @@ -9,7 +31,7 @@ 2009-07-06 Ulrich Drepper <drepper@redhat.com> - * elf/do-lookup.h (ALLOWED_STT): Optimize test for valid symbol types. + * elf/do-lookup.h (do_lookup_x): Optimize test for valid symbol types. 2009-07-03 Andreas Schwab <aschwab@redhat.com> |