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.
This commit is contained in:
Joseph Myers 2015-10-15 19:47:55 +00:00
parent 30f58bb192
commit 75b0964bc8
5 changed files with 14 additions and 102 deletions

View File

@ -1,5 +1,18 @@
2015-10-15 Joseph Myers <joseph@codesourcery.com>
* 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.
* configure.ac (libc_cv_gcc_static_libgcc): Remove configure test.
* configure: Regenerated.
* config.make.in (static-libgcc): Remove variable.

View File

@ -43,14 +43,6 @@
/* Define if _Unwind_Find_FDE should be exported from glibc. */
#undef EXPORT_UNWIND_FIND_FDE
/* Define if using ELF and the assembler supports the `.previous'
directive. */
#undef HAVE_ASM_PREVIOUS_DIRECTIVE
/* Define if using ELF and the assembler supports the `.popsection'
directive. */
#undef HAVE_ASM_POPSECTION_DIRECTIVE
/* Define if static NSS modules are wanted. */
#undef DO_STATIC_NSS

55
configure vendored
View File

@ -5593,61 +5593,6 @@ if test $libc_cv_asm_unique_object = yes; then
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .previous assembler directive" >&5
$as_echo_n "checking for .previous assembler directive... " >&6; }
if ${libc_cv_asm_previous_directive+:} false; then :
$as_echo_n "(cached) " >&6
else
cat > conftest.s <<EOF
.section foo_section
.previous
EOF
if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; }; then
libc_cv_asm_previous_directive=yes
else
libc_cv_asm_previous_directive=no
fi
rm -f conftest*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_previous_directive" >&5
$as_echo "$libc_cv_asm_previous_directive" >&6; }
if test $libc_cv_asm_previous_directive = yes; then
$as_echo "#define HAVE_ASM_PREVIOUS_DIRECTIVE 1" >>confdefs.h
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .popsection assembler directive" >&5
$as_echo_n "checking for .popsection assembler directive... " >&6; }
if ${libc_cv_asm_popsection_directive+:} false; then :
$as_echo_n "(cached) " >&6
else
cat > conftest.s <<EOF
.pushsection foo_section
.popsection
EOF
if { ac_try='${CC-cc} -c $ASFLAGS conftest.s 1>&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; }; }; then
libc_cv_asm_popsection_directive=yes
else
libc_cv_asm_popsection_directive=no
fi
rm -f conftest*
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_popsection_directive" >&5
$as_echo "$libc_cv_asm_popsection_directive" >&6; }
if test $libc_cv_asm_popsection_directive = yes; then
$as_echo "#define HAVE_ASM_POPSECTION_DIRECTIVE 1" >>confdefs.h
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for .protected and .hidden assembler directive" >&5
$as_echo_n "checking for .protected and .hidden assembler directive... " >&6; }
if ${libc_cv_asm_protected_directive+:} false; then :

View File

@ -1138,37 +1138,6 @@ if test $libc_cv_asm_unique_object = yes; then
AC_DEFINE(HAVE_ASM_UNIQUE_OBJECT)
fi
AC_CACHE_CHECK(for .previous assembler directive,
libc_cv_asm_previous_directive, [dnl
cat > conftest.s <<EOF
.section foo_section
.previous
EOF
if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
libc_cv_asm_previous_directive=yes
else
libc_cv_asm_previous_directive=no
fi
rm -f conftest*])
if test $libc_cv_asm_previous_directive = yes; then
AC_DEFINE(HAVE_ASM_PREVIOUS_DIRECTIVE)
else
AC_CACHE_CHECK(for .popsection assembler directive,
libc_cv_asm_popsection_directive, [dnl
cat > conftest.s <<EOF
.pushsection foo_section
.popsection
EOF
if AC_TRY_COMMAND(${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD); then
libc_cv_asm_popsection_directive=yes
else
libc_cv_asm_popsection_directive=no
fi
rm -f conftest*])
if test $libc_cv_asm_popsection_directive = yes; then
AC_DEFINE(HAVE_ASM_POPSECTION_DIRECTIVE)
fi
fi
AC_CACHE_CHECK(for .protected and .hidden assembler directive,
libc_cv_asm_protected_directive, [dnl
cat > conftest.s <<EOF

View File

@ -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) \
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. */