From: Alan Modra Date: Tue, 18 Dec 2018 00:17:44 +0000 (+1030) Subject: [GOLD] Tweak keep_text_section_prefix test for PowerPC64 ELFv1 X-Git-Tag: binutils-2_32~289 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a529dcc854968b7f6ad766c714650011dc361382;p=thirdparty%2Fbinutils-gdb.git [GOLD] Tweak keep_text_section_prefix test for PowerPC64 ELFv1 This test checks code layout by function symbol ordering, but that doesn't work on powerpc64 ELFv1 where the function symbol is on a descriptor. A simple work-around is to have nm emit synthetic symbols marking the code entry point of functions. Since the text segment is laid out before the data segment, the synthetic symbols will have lower addresses than function descriptor symbols and be seen first in nm -n output. On other targets, nm --synthetic typically emits symbols on plt entries. Since the testcase doesn't call any of the functions of interest there shouldn't be plt entries for those functions, so there should be no potentially confusing extra symbols. * testsuite/Makefile.am (keep_text_section_prefix_nm.stdout): Pass --synthetic to nm. * testsuite/Makefile.in: Regenerate. --- diff --git a/gold/ChangeLog b/gold/ChangeLog index b16c728ebcf..cdbddde63f5 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,9 @@ +2018-12-18 Alan Modra + + * testsuite/Makefile.am (keep_text_section_prefix_nm.stdout): + Pass --synthetic to nm. + * testsuite/Makefile.in: Regenerate. + 2018-12-08 Alan Modra PR 21128 diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am index 135790b30d7..e44cf6e4f9d 100644 --- a/gold/testsuite/Makefile.am +++ b/gold/testsuite/Makefile.am @@ -388,7 +388,7 @@ keep_text_section_prefix: keep_text_section_prefix.o gcctestdir/ld keep_text_section_prefix_readelf.stdout: keep_text_section_prefix $(TEST_READELF) -Wl $< >$@ keep_text_section_prefix_nm.stdout: keep_text_section_prefix - $(TEST_NM) -n $< >$@ + $(TEST_NM) -n --synthetic $< >$@ check_PROGRAMS += icf_virtual_function_folding_test MOSTLYCLEANFILES += icf_virtual_function_folding_test icf_virtual_function_folding_test.map diff --git a/gold/testsuite/Makefile.in b/gold/testsuite/Makefile.in index db923943fb5..dd6bbfc4ad9 100644 --- a/gold/testsuite/Makefile.in +++ b/gold/testsuite/Makefile.in @@ -7985,7 +7985,7 @@ uninstall-am: @GCC_TRUE@@NATIVE_LINKER_TRUE@keep_text_section_prefix_readelf.stdout: keep_text_section_prefix @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_READELF) -Wl $< >$@ @GCC_TRUE@@NATIVE_LINKER_TRUE@keep_text_section_prefix_nm.stdout: keep_text_section_prefix -@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_NM) -n $< >$@ +@GCC_TRUE@@NATIVE_LINKER_TRUE@ $(TEST_NM) -n --synthetic $< >$@ @GCC_TRUE@@NATIVE_LINKER_TRUE@icf_virtual_function_folding_test.o: icf_virtual_function_folding_test.cc @GCC_TRUE@@NATIVE_LINKER_TRUE@ $(CXXCOMPILE) -O0 -c -ffunction-sections -fPIE -g -o $@ $< @GCC_TRUE@@NATIVE_LINKER_TRUE@icf_virtual_function_folding_test: icf_virtual_function_folding_test.o gcctestdir/ld