aboutsummaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorMaciej W. Rozycki <macro@imgtec.com>2016-06-21 14:06:27 +0100
committerMaciej W. Rozycki <macro@imgtec.com>2016-06-21 14:18:23 +0100
commit5f68df25f869d74f0235276a81536392fd376e6d (patch)
treedd8c7be1f1586b18720cd8c263f13d65ae593e97 /ld
parent04d59df6f311bcc20d74ada64a5e15a4bbb40026 (diff)
downloadgdb-5f68df25f869d74f0235276a81536392fd376e6d.zip
gdb-5f68df25f869d74f0235276a81536392fd376e6d.tar.gz
gdb-5f68df25f869d74f0235276a81536392fd376e6d.tar.bz2
MIPS/BFD: Don't stop processing on a cross-mode jump conversion error
As with commit ed53407eec9e ("MIPS/BFD: Don't stop processing on `bfd_reloc_outofrange'") don't bail out right away and instead continue processing on a cross-mode jump conversion error, so that any further issues are also reported. Adjust message formatting accordingly, using `%X' to abort processing at conclusion. Remove the full stop from the end of the message, for consistency across error reporting. Adjust the corresponding test case accordingly and make it trigger the error twice. bfd/ * elfxx-mips.c (mips_elf_perform_relocation): Call `info->callbacks->einfo' rather than `*_bfd_error_handler' and use the `%X%H' format for the cross-mode jump conversion error message. Remove the full stop from the end of the message. Continue processing rather than returning failure. ld/ * testsuite/ld-mips-elf/mode-change-error-1a.s: Trigger an error twice rather than once. * testsuite/ld-mips-elf/mode-change-error-1.d: Adjust accordingly. Remove the full stop from the end of the message.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog7
-rw-r--r--ld/testsuite/ld-mips-elf/mode-change-error-1.d5
-rw-r--r--ld/testsuite/ld-mips-elf/mode-change-error-1a.s3
3 files changed, 14 insertions, 1 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index f1c1fe7..7a2d781 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,10 @@
+2016-06-21 Maciej W. Rozycki <macro@imgtec.com>
+
+ * testsuite/ld-mips-elf/mode-change-error-1a.s: Trigger an error
+ twice rather than once.
+ * testsuite/ld-mips-elf/mode-change-error-1.d: Adjust
+ accordingly. Remove the full stop from the end of the message.
+
2016-06-21 Graham Markall <graham.markall@embecosm.com>
* testsuite/ld-arc/nps-1a.d: Use -mcpu=arc700 -mnps400.
diff --git a/ld/testsuite/ld-mips-elf/mode-change-error-1.d b/ld/testsuite/ld-mips-elf/mode-change-error-1.d
index 885c628..cab1ddb 100644
--- a/ld/testsuite/ld-mips-elf/mode-change-error-1.d
+++ b/ld/testsuite/ld-mips-elf/mode-change-error-1.d
@@ -2,4 +2,7 @@
#source: mode-change-error-1a.s
#source: mode-change-error-1b.s
#ld: -e 0x8000000
-#error: .*: Unsupported jump between ISA modes; consider recompiling with interlinking enabled.
+#error: \A[^\n]*: In function `main':\n
+#error: \(\.text\+0x0\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n
+#error: [^\n]*: In function `main':\n
+#error: \(\.text\+0x8\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\Z
diff --git a/ld/testsuite/ld-mips-elf/mode-change-error-1a.s b/ld/testsuite/ld-mips-elf/mode-change-error-1a.s
index 44bdb1f..d52caf5 100644
--- a/ld/testsuite/ld-mips-elf/mode-change-error-1a.s
+++ b/ld/testsuite/ld-mips-elf/mode-change-error-1a.s
@@ -13,5 +13,8 @@ main:
j doit
nop
+ j doit
+ nop
+
.end main
.size main, .-main