[GOLD] Tweak keep_text_section_prefix test for PowerPC64 ELFv1
authorAlan Modra <amodra@gmail.com>
Tue, 18 Dec 2018 00:17:44 +0000 (10:47 +1030)
committerAlan Modra <amodra@gmail.com>
Tue, 18 Dec 2018 01:27:45 +0000 (11:57 +1030)
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.

gold/ChangeLog
gold/testsuite/Makefile.am
gold/testsuite/Makefile.in

index b16c728ebcf12c7dd0ea946643e84f3c315fb3dd..cdbddde63f5cb8abd348db042752af32ab57d020 100644 (file)
@@ -1,3 +1,9 @@
+2018-12-18  Alan Modra  <amodra@gmail.com>
+
+       * testsuite/Makefile.am (keep_text_section_prefix_nm.stdout):
+       Pass --synthetic to nm.
+       * testsuite/Makefile.in: Regenerate.
+
 2018-12-08  Alan Modra  <amodra@gmail.com>
 
        PR 21128
index 135790b30d7fe36abf72fb61c1e007c8a02f4e1f..e44cf6e4f9d788b5f515b0eb883ebe18dfb8c990 100644 (file)
@@ -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
index db923943fb5c10988189e0dbb8bd611c1c935203..dd6bbfc4ad99a289f9f2e707b4a5949525a4051f 100644 (file)
@@ -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