aboutsummaryrefslogtreecommitdiff
path: root/elf/tst-unique2.c
AgeCommit message (Collapse)Author
2015-10-19Remove gnu_unique_object configure test.Joseph Myers
There is a configure test for assembler support for the gnu_unique_object symbol type. This support was added in binutils 2.20, so is present in all versions supported for building glibc. Thus, I think the configure test can be removed; this patch does so. Now, there is a caveat that the gas NEWS entry refers to this as a feature for GNU/Linux targets. But the condition is use of ELFOSABI_GNU or ELFOSABI_NONE. ELFOSABI_GNU covers Hurd as well as GNU/Linux (as was the case with the older ELFOSABI_LINUX name), and ELFOSABI_NONE means this is effectively OS-independent. Furthermore, I think a correct binutils port for any glibc target ought to support this feature for use with glibc; glibc supports this as an OS-independent feature (the configure test is only about glibc testcases). Tested for x86_64 (testsuite, and that installed shared libraries are unchanged by the patch). * configure.ac (libc_cv_asm_unique_object): Remove configure test. * configure: Regenerated. * config.h.in (HAVE_ASM_UNIQUE_OBJECT): Remove #undef. * elf/tst-unique1.c (do_test) [HAVE_ASM_UNIQUE_OBJECT]: Make code unconditional. * elf/tst-unique1mod1.c [HAVE_ASM_UNIQUE_OBJECT]: Likewise. * elf/tst-unique1mod2.c [HAVE_ASM_UNIQUE_OBJECT]: Likewise. * elf/tst-unique2.c (do_test) [HAVE_ASM_UNIQUE_OBJECT]: Likewise. (do_test) [!HAVE_ASM_UNIQUE_OBJECT]: Remove conditional code. * elf/tst-unique2mod1.c [HAVE_ASM_UNIQUE_OBJECT]: Make code unconditional. * elf/tst-unique2mod2.c [HAVE_ASM_UNIQUE_OBJECT]: Likewise.
2009-07-09Implement STB_GNU_UNIQUE handling.Ulrich Drepper
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.