aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/testsuite/ld-mips-elf/jalr4.dd19
-rw-r--r--ld/testsuite/ld-mips-elf/mips-elf.exp9
3 files changed, 32 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 8807c90..3e88456 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2017-02-23 Maciej W. Rozycki <macro@imgtec.com>
+
+ * testsuite/ld-mips-elf/jalr4.dd: New test.
+ * testsuite/ld-mips-elf/mips-elf.exp: Run the new test.
+
2017-02-23 Alan Modra <amodra@gmail.com>
PR 20744
diff --git a/ld/testsuite/ld-mips-elf/jalr4.dd b/ld/testsuite/ld-mips-elf/jalr4.dd
new file mode 100644
index 0000000..8e41756
--- /dev/null
+++ b/ld/testsuite/ld-mips-elf/jalr4.dd
@@ -0,0 +1,19 @@
+.*: +file format .*mips.*
+
+Disassembly of section \.text:
+[0-9a-f]+ <[^>]*> 0411000f bal 0+000040 <bar0>
+[0-9a-f]+ <[^>]*> 00000000 nop
+[0-9a-f]+ <[^>]*> 1000000d b 0+000040 <bar0>
+[0-9a-f]+ <[^>]*> 00000000 nop
+[0-9a-f]+ <[^>]*> 0320f809 jalr t9
+[0-9a-f]+ <[^>]*> 00000000 nop
+[0-9a-f]+ <[^>]*> 03200008 jr t9
+[0-9a-f]+ <[^>]*> 00000000 nop
+[0-9a-f]+ <[^>]*> 0320f809 jalr t9
+[0-9a-f]+ <[^>]*> 00000000 nop
+[0-9a-f]+ <[^>]*> 03200008 jr t9
+[0-9a-f]+ <[^>]*> 00000000 nop
+ \.\.\.
+ \.\.\.
+ \.\.\.
+ \.\.\.
diff --git a/ld/testsuite/ld-mips-elf/mips-elf.exp b/ld/testsuite/ld-mips-elf/mips-elf.exp
index 7fa11c5..dab0e0f 100644
--- a/ld/testsuite/ld-mips-elf/mips-elf.exp
+++ b/ld/testsuite/ld-mips-elf/mips-elf.exp
@@ -999,7 +999,14 @@ foreach { abi } $abis {
"$abi_asflags($abi)" \
[list ../../../gas/testsuite/gas/mips/jalr3.s] \
[list "objdump -d jalr3.dd"] \
- "jalr3-${abi}"]]
+ "jalr3-${abi}"] \
+ [list \
+ "MIPS JALR reloc unaligned/cross-mode link test ($abi)" \
+ "$abi_ldflags($abi) -T jalr3.ld" "" \
+ "$abi_asflags($abi)" \
+ [list ../../../gas/testsuite/gas/mips/jalr4.s] \
+ [list "objdump {-d --prefix-addresses --show-raw-insn} jalr4.dd"] \
+ "jalr4-${abi}"]]
}
proc build_mips_plt_lib { abi } {