diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2014-12-30 19:09:11 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2014-12-30 19:09:11 -0800 |
commit | ee3b52e917c3a19850232a6a20f5698090619fc6 (patch) | |
tree | bbc97bb0c5f38fad65e38ce93a23a6d034535d05 /ld | |
parent | 24fbeb8dc2c20f86c9940cc62e6af192a9d11b1a (diff) | |
download | gdb-ee3b52e917c3a19850232a6a20f5698090619fc6.zip gdb-ee3b52e917c3a19850232a6a20f5698090619fc6.tar.gz gdb-ee3b52e917c3a19850232a6a20f5698090619fc6.tar.bz2 |
Assign file position for .strtab only if needed
bfd/
PR ld/17773
* elflink.c (bfd_elf_final_link): Assign the file position for
the symbol string table only there are symbols to be emitted.
ld/testsuite/
PR ld/17773
* ld-elf/binutils.exp (binutils_test): Add an optional
readelf_options. Replace -l with $readelf_options. Add a
gap test.
* ld/testsuite/ld-elf/gap.s: New file.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | ld/testsuite/ld-elf/binutils.exp | 15 | ||||
-rw-r--r-- | ld/testsuite/ld-elf/gap.s | 4 |
3 files changed, 21 insertions, 6 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index 6fc0318..49ab015 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2014-12-30 H.J. Lu <hongjiu.lu@intel.com> + + PR ld/17773 + * ld-elf/binutils.exp (binutils_test): Add an optional + readelf_options. Replace -l with $readelf_options. Add a + gap test. + * ld/testsuite/ld-elf/gap.s: New file. + 2014-12-26 Alan Modra <amodra@gmail.com> * ld-sh/sh64/crangerel1.rd: Update. diff --git a/ld/testsuite/ld-elf/binutils.exp b/ld/testsuite/ld-elf/binutils.exp index 4ade8cb..37ab6b3 100644 --- a/ld/testsuite/ld-elf/binutils.exp +++ b/ld/testsuite/ld-elf/binutils.exp @@ -38,8 +38,9 @@ if { [istarget *-*-linux*aout*] # to hardwire the test name. This is important if ld_options contains # absolute path names because the default test name is constructed # from the prog_name and ld_options and we do not want absolute paths -# to appear in the test_name. -proc binutils_test { prog_name ld_options test {test_name ""}} { +# to appear in the test_name. The optional readelf_options can be +# used to specify different options for readelf. +proc binutils_test { prog_name ld_options test {test_name ""} {readelf_options "-l"}} { global as global ld global READELF @@ -71,8 +72,8 @@ proc binutils_test { prog_name ld_options test {test_name ""}} { return } - send_log "$READELF -l --wide tmpdir/$test > tmpdir/$test.exp\n" - set got [remote_exec host "$READELF -l --wide tmpdir/$test" "" "/dev/null" "tmpdir/$test.exp"] + send_log "$READELF $readelf_options --wide tmpdir/$test > tmpdir/$test.exp\n" + set got [remote_exec host "$READELF $readelf_options --wide tmpdir/$test" "" "/dev/null" "tmpdir/$test.exp"] if { [lindex $got 0] != 0 || ![string match "" [lindex $got 1]] } then { send_log "$got\n" unresolved "$test_name" @@ -111,8 +112,8 @@ proc binutils_test { prog_name ld_options test {test_name ""}} { return } - send_log "$READELF -l --wide tmpdir/$test > tmpdir/$test.out\n" - set got [remote_exec host "$READELF -l --wide tmpdir/$test" "" "/dev/null" "tmpdir/$test.out"] + send_log "$READELF $readelf_options --wide tmpdir/$test > tmpdir/$test.out\n" + set got [remote_exec host "$READELF $readelf_options --wide tmpdir/$test" "" "/dev/null" "tmpdir/$test.out"] if { [lindex $got 0] != 0 || ![string match "" [lindex $got 1]] } then { send_log "$got\n" unresolved "$test_name" @@ -176,3 +177,5 @@ foreach testitem $tls_tests { binutils_test objcopy $testopt $testitem } } + +binutils_test strip "-s" gap "" "-lS" diff --git a/ld/testsuite/ld-elf/gap.s b/ld/testsuite/ld-elf/gap.s new file mode 100644 index 0000000..039d26b --- /dev/null +++ b/ld/testsuite/ld-elf/gap.s @@ -0,0 +1,4 @@ + .text + .global _start +_start: + .long 0 |