diff options
author | Alan Modra <amodra@gmail.com> | 2018-12-18 10:47:44 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2018-12-18 11:57:45 +1030 |
commit | a529dcc854968b7f6ad766c714650011dc361382 (patch) | |
tree | e10bd95a2d42b2ab1edcda1f50cf7b5a868546de /gold | |
parent | 7af5d5c4dda26ac36ee2ff42af8f39a10382cc41 (diff) | |
download | binutils-a529dcc854968b7f6ad766c714650011dc361382.zip binutils-a529dcc854968b7f6ad766c714650011dc361382.tar.gz binutils-a529dcc854968b7f6ad766c714650011dc361382.tar.bz2 |
[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.
Diffstat (limited to 'gold')
-rw-r--r-- | gold/ChangeLog | 6 | ||||
-rw-r--r-- | gold/testsuite/Makefile.am | 2 | ||||
-rw-r--r-- | gold/testsuite/Makefile.in | 2 |
3 files changed, 8 insertions, 2 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index b16c728..cdbddde 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -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 diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am index 135790b..e44cf6e 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 db92394..dd6bbfc 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 |