From 75b0964bc8f00400056449eceb8ab57c8eb3fde2 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Thu, 15 Oct 2015 19:47:55 +0000 Subject: Remove .previous, .popsection configure tests. There is a configure test for the assembler .previous directive, and, as a fallback, for .popsection. glibc now only supports ELF. For ELF, the GNU assembler has supported .previous since version 2.2 (support added by Mon Jul 19 15:21:20 1993 Ken Raeburn (raeburn@rtl.cygnus.com) * config/obj-elf.c (obj_elf_previous): New function. (previous_section, previous_subsection): New vars. (obj_elf_section): Save current place in case DWARF code wants us to pop back to it. Handle unquoted section name as well as quoted section name. Don't crash on invalid strings. (obj_pseudo_table): Handle new pseudos "previous", "2byte", and "4byte". ). Thus this configure test is obsolete, and this patch removes it (and with it the fallback .popsection test). Tested for x86_64 and x86 (testsuite, and that installed shared libraries are unchanged by the patch). * configure.ac (libc_cv_asm_previous_directive): Remove configure test. (libc_cv_asm_popsection_directive): Likewise. * configure: Regenerated. * config.h.in (HAVE_ASM_PREVIOUS_DIRECTIVE): Remove #undef. (HAVE_ASM_POPSECTION_DIRECTIVE): Likewise. * include/libc-symbols.h [HAVE_ASM_PREVIOUS_DIRECTIVE] (__make_section_unallocated): Make definition unconditional. [HAVE_ASM_POPSECTION_DIRECTIVE] (__make_section_unallocated): Remove conditional definition. [!HAVE_ASM_PREVIOUS_DIRECTIVE && !HAVE_ASM_POPSECTION_DIRECTIVE] (__make_section_unallocated): Likewise. --- include/libc-symbols.h | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'include') diff --git a/include/libc-symbols.h b/include/libc-symbols.h index 743b6f6f5b..e2c63fc392 100644 --- a/include/libc-symbols.h +++ b/include/libc-symbols.h @@ -175,15 +175,8 @@ /* When a reference to SYMBOL is encountered, the linker will emit a warning message MSG. */ /* We want the .gnu.warning.SYMBOL section to be unallocated. */ -#ifdef HAVE_ASM_PREVIOUS_DIRECTIVE -# define __make_section_unallocated(section_string) \ +#define __make_section_unallocated(section_string) \ asm (".section " section_string "\n\t.previous"); -#elif defined HAVE_ASM_POPSECTION_DIRECTIVE -# define __make_section_unallocated(section_string) \ - asm (".pushsection " section_string "\n\t.popsection"); -#else -# define __make_section_unallocated(section_string) -#endif /* Tacking on "\n\t#" to the section name makes gcc put it's bogus section attributes on what looks like a comment to the assembler. */ -- cgit 1.4.1