diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2013-05-29 16:22:14 +0000 |
---|---|---|
committer | Maciej W. Rozycki <macro@linux-mips.org> | 2013-05-29 16:22:14 +0000 |
commit | d6101ac20076846ff5092444691d502fd689c886 (patch) | |
tree | bc8ed8a04d7189c55c1d9b6b3966300002064ba8 /ld/testsuite | |
parent | 95e34fb4f43f5cc57c48d4799c5c59d7dcf6c2a2 (diff) | |
download | gdb-d6101ac20076846ff5092444691d502fd689c886.zip gdb-d6101ac20076846ff5092444691d502fd689c886.tar.gz gdb-d6101ac20076846ff5092444691d502fd689c886.tar.bz2 |
gas/
* write.c (resolve_reloc_expr_symbols): On REL targets don't
convert relocs who have no relocatable field either. Rephrase
the conditional so that the PC-relative check is only applied
for REL targets.
gas/testsuite/
* gas/mips/jalr3.d: New test.
* gas/mips/jalr3-n32.d: New test.
* gas/mips/jalr3-n64.d: New test.
* gas/mips/jalr3.s: New test source.
* gas/mips/mips.exp: Run the new tests.
ld/testsuite/
* ld-mips-elf/jalr3.dd: New test.
* ld-mips-elf/jalr3.ld: New test linker script.
* ld-mips-elf/mips-elf.exp: Run the new test.
Diffstat (limited to 'ld/testsuite')
-rw-r--r-- | ld/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | ld/testsuite/ld-mips-elf/jalr3.dd | 14 | ||||
-rw-r--r-- | ld/testsuite/ld-mips-elf/jalr3.ld | 5 | ||||
-rw-r--r-- | ld/testsuite/ld-mips-elf/mips-elf.exp | 13 |
4 files changed, 38 insertions, 0 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog index cad469c..4e932aa 100644 --- a/ld/testsuite/ChangeLog +++ b/ld/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2013-05-29 Maciej W. Rozycki <macro@codesourcery.com> + + * ld-mips-elf/jalr3.dd: New test. + * ld-mips-elf/jalr3.ld: New test linker script. + * ld-mips-elf/mips-elf.exp: Run the new test. + 2013-05-21 Alan Modra <amodra@gmail.com> PR ld/12982 diff --git a/ld/testsuite/ld-mips-elf/jalr3.dd b/ld/testsuite/ld-mips-elf/jalr3.dd new file mode 100644 index 0000000..6b6d484 --- /dev/null +++ b/ld/testsuite/ld-mips-elf/jalr3.dd @@ -0,0 +1,14 @@ +.*: +file format .*mips.* + +Disassembly of section \.text: + +0+000000 <foo>: + 0: 04110003 bal 10 <\$bar> + 4: 00000000 nop + 8: 10000001 b 10 <\$bar> + c: 00000000 nop + +0+000010 <\$bar>: + 10: 03e00008 jr ra + 14: 00000000 nop + \.\.\. diff --git a/ld/testsuite/ld-mips-elf/jalr3.ld b/ld/testsuite/ld-mips-elf/jalr3.ld new file mode 100644 index 0000000..1b86045 --- /dev/null +++ b/ld/testsuite/ld-mips-elf/jalr3.ld @@ -0,0 +1,5 @@ +ENTRY(foo) +SECTIONS +{ + .text : { *(.text) } +} diff --git a/ld/testsuite/ld-mips-elf/mips-elf.exp b/ld/testsuite/ld-mips-elf/mips-elf.exp index 97e0c2c..e0ddac9 100644 --- a/ld/testsuite/ld-mips-elf/mips-elf.exp +++ b/ld/testsuite/ld-mips-elf/mips-elf.exp @@ -734,3 +734,16 @@ foreach { abi } $abis { [list "readelf -s ehdr_start-2.nd"] \ "ehdr_start-2-${abi}"]] } + +# R_MIPS_JALR reloc tests. +set abis [concat o32 [expr {$has_newabi ? "n32 n64" : ""}]] +foreach { abi } $abis { + run_ld_link_tests [list \ + [list \ + "MIPS JALR reloc test ($abi)" \ + "$abi_ldflags($abi) -T jalr3.ld" "" \ + "$abi_asflags($abi)" \ + [list ../../../gas/testsuite/gas/mips/jalr3.s] \ + [list "objdump -d jalr3.dd"] \ + "jalr3-${abi}"]] +} |