This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] MIPS/BFD: Don't stop processing on `bfd_reloc_outofrange'


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ed53407eec9eba3b55a3a00fb7eaa7eddbf01363

commit ed53407eec9eba3b55a3a00fb7eaa7eddbf01363
Author: Maciej W. Rozycki <macro@imgtec.com>
Date:   Thu May 26 12:24:45 2016 +0100

    MIPS/BFD: Don't stop processing on `bfd_reloc_outofrange'
    
    Upon a `bfd_reloc_outofrange' error continue processing so that any
    further issues are also reported, similarly to how `bfd_reloc_overflow'
    is handled.  Adjust message formatting accordingly, using `%X' to abort
    processing at conclusion.
    
    Reduce the number of test cases by grouping relocations the handling of
    which can now be verified together with a single source and dump.
    
    	bfd/
    	* elfxx-mips.c (_bfd_mips_elf_relocate_section)
    	<bfd_reloc_outofrange>: Use the `%X%H' rather than `%C' format
    	for message.  Continue processing rather than returning failure.
    
    	ld/
    	* testsuite/ld-mips-elf/unaligned-jalx-0.d: Fold
    	`unaligned-jalx-2' here.
    	* testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d: Fold
    	`unaligned-jalx-mips16-2' here.
    	* testsuite/ld-mips-elf/unaligned-jalx-micromips-0.d: Fold
    	`unaligned-jalx-micromips-2' here.
    	* testsuite/ld-mips-elf/unaligned-jalx-0.s: Update accordingly.
    	* testsuite/ld-mips-elf/unaligned-jalx-1.d: Update error
    	message.
    	* testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d: Likewise.
    	* testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d: Likewise.
    	* testsuite/ld-mips-elf/unaligned-jalx-2.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-jalx-mips16-2.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-jalx-micromips-2.d: Remove
    	test.
    	* testsuite/ld-mips-elf/unaligned-jalx-2.s: Remove test source.
    	* testsuite/ld-mips-elf/unaligned-lwpc-0.d: Fold
    	`unaligned-lwpc-3' here.
    	* testsuite/ld-mips-elf/unaligned-lwpc-0.s: Update accordingly.
    	* testsuite/ld-mips-elf/unaligned-lwpc-1.d: Fold
    	`unaligned-lwpc-2' here.
    	* testsuite/ld-mips-elf/unaligned-lwpc-1.s: Update accordingly.
    	* testsuite/ld-mips-elf/unaligned-lwpc-2.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-lwpc-2.s: Remove test source.
    	* testsuite/ld-mips-elf/unaligned-lwpc-3.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-lwpc-3.s: Remove test source.
    	* testsuite/ld-mips-elf/unaligned-ldpc-0.d: Fold
    	`unaligned-ldpc-4' here.
    	* testsuite/ld-mips-elf/unaligned-ldpc-0.s: Update accordingly.
    	* testsuite/ld-mips-elf/unaligned-ldpc-1.d: Update error
    	message.  Fold `unaligned-ldpc-2' and `unaligned-ldpc-3' here.
    	* testsuite/ld-mips-elf/unaligned-ldpc-1.s: Update accordingly.
    	* testsuite/ld-mips-elf/unaligned-ldpc-2.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-ldpc-2.s: Remove test source.
    	* testsuite/ld-mips-elf/unaligned-ldpc-3.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-ldpc-3.s: Remove test source.
    	* testsuite/ld-mips-elf/unaligned-ldpc-4.d: Remove test.
    	* testsuite/ld-mips-elf/unaligned-ldpc-4.s: Remove test source.
    	* testsuite/ld-mips-elf/mips-elf.exp: Delete removed tests.

Diff:
---
 bfd/ChangeLog                                      |  8 ++++-
 bfd/elfxx-mips.c                                   |  5 ++-
 ld/ChangeLog                                       | 42 ++++++++++++++++++++++
 ld/testsuite/ld-mips-elf/mips-elf.exp              |  8 -----
 ld/testsuite/ld-mips-elf/unaligned-jalx-0.d        |  2 ++
 ld/testsuite/ld-mips-elf/unaligned-jalx-0.s        |  1 +
 ld/testsuite/ld-mips-elf/unaligned-jalx-1.d        |  3 +-
 ld/testsuite/ld-mips-elf/unaligned-jalx-2.d        | 21 -----------
 ld/testsuite/ld-mips-elf/unaligned-jalx-2.s        | 11 ------
 .../ld-mips-elf/unaligned-jalx-micromips-0.d       |  2 ++
 .../ld-mips-elf/unaligned-jalx-micromips-1.d       |  3 +-
 .../ld-mips-elf/unaligned-jalx-micromips-2.d       | 21 -----------
 ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d |  2 ++
 ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d |  3 +-
 ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-2.d | 21 -----------
 ld/testsuite/ld-mips-elf/unaligned-ldpc-0.d        |  1 +
 ld/testsuite/ld-mips-elf/unaligned-ldpc-0.s        |  1 +
 ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d        |  5 ++-
 ld/testsuite/ld-mips-elf/unaligned-ldpc-1.s        |  2 ++
 ld/testsuite/ld-mips-elf/unaligned-ldpc-2.d        |  8 -----
 ld/testsuite/ld-mips-elf/unaligned-ldpc-2.s        | 11 ------
 ld/testsuite/ld-mips-elf/unaligned-ldpc-3.d        |  8 -----
 ld/testsuite/ld-mips-elf/unaligned-ldpc-3.s        | 11 ------
 ld/testsuite/ld-mips-elf/unaligned-ldpc-4.d        | 12 -------
 ld/testsuite/ld-mips-elf/unaligned-ldpc-4.s        | 11 ------
 ld/testsuite/ld-mips-elf/unaligned-lwpc-0.d        |  1 +
 ld/testsuite/ld-mips-elf/unaligned-lwpc-0.s        |  1 +
 ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d        |  3 +-
 ld/testsuite/ld-mips-elf/unaligned-lwpc-1.s        |  1 +
 ld/testsuite/ld-mips-elf/unaligned-lwpc-2.d        |  8 -----
 ld/testsuite/ld-mips-elf/unaligned-lwpc-2.s        | 11 ------
 ld/testsuite/ld-mips-elf/unaligned-lwpc-3.d        | 12 -------
 ld/testsuite/ld-mips-elf/unaligned-lwpc-3.s        | 11 ------
 33 files changed, 74 insertions(+), 197 deletions(-)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 3250acc..bb9cb3c 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,11 @@
+2016-05-26  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* elfxx-mips.c (_bfd_mips_elf_relocate_section)
+	<bfd_reloc_outofrange>: Use the `%X%H' rather than `%C' format
+	for message.  Continue processing rather than returning failure.
+
 2016-05-25  Maciej W. Rozycki  <macro@imgtec.com>
-    
+
 	* elfxx-mips.c (_bfd_mips_elf_relocate_section)
 	<bfd_reloc_outofrange>: Call `->einfo' rather than `->warning'.
 	Call `bfd_set_error'.
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index c695278..3e7b488 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -10267,9 +10267,8 @@ _bfd_mips_elf_relocate_section (bfd *output_bfd, struct bfd_link_info *info,
 	  if (msg)
 	    {
 	      info->callbacks->einfo
-		("%C: %s\n", input_bfd, input_section, rel->r_offset, msg);
-	      bfd_set_error (bfd_error_bad_value);
-	      return FALSE;
+		("%X%H: %s\n", input_bfd, input_section, rel->r_offset, msg);
+	      break;
 	    }
 	  /* Fall through.  */
 
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 9812e7c..4462450 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,45 @@
+2016-05-26  Maciej W. Rozycki  <macro@imgtec.com>
+
+	* testsuite/ld-mips-elf/unaligned-jalx-0.d: Fold
+	`unaligned-jalx-2' here.
+	* testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d: Fold
+	`unaligned-jalx-mips16-2' here.
+	* testsuite/ld-mips-elf/unaligned-jalx-micromips-0.d: Fold
+	`unaligned-jalx-micromips-2' here.
+	* testsuite/ld-mips-elf/unaligned-jalx-0.s: Update accordingly.
+	* testsuite/ld-mips-elf/unaligned-jalx-1.d: Update error
+	message.
+	* testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d: Likewise.
+	* testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d: Likewise.
+	* testsuite/ld-mips-elf/unaligned-jalx-2.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-jalx-mips16-2.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-jalx-micromips-2.d: Remove
+	test.
+	* testsuite/ld-mips-elf/unaligned-jalx-2.s: Remove test source.
+	* testsuite/ld-mips-elf/unaligned-lwpc-0.d: Fold
+	`unaligned-lwpc-3' here.
+	* testsuite/ld-mips-elf/unaligned-lwpc-0.s: Update accordingly.
+	* testsuite/ld-mips-elf/unaligned-lwpc-1.d: Fold
+	`unaligned-lwpc-2' here.
+	* testsuite/ld-mips-elf/unaligned-lwpc-1.s: Update accordingly.
+	* testsuite/ld-mips-elf/unaligned-lwpc-2.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-lwpc-2.s: Remove test source.
+	* testsuite/ld-mips-elf/unaligned-lwpc-3.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-lwpc-3.s: Remove test source.
+	* testsuite/ld-mips-elf/unaligned-ldpc-0.d: Fold
+	`unaligned-ldpc-4' here.
+	* testsuite/ld-mips-elf/unaligned-ldpc-0.s: Update accordingly.
+	* testsuite/ld-mips-elf/unaligned-ldpc-1.d: Update error
+	message.  Fold `unaligned-ldpc-2' and `unaligned-ldpc-3' here.
+	* testsuite/ld-mips-elf/unaligned-ldpc-1.s: Update accordingly.
+	* testsuite/ld-mips-elf/unaligned-ldpc-2.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-ldpc-2.s: Remove test source.
+	* testsuite/ld-mips-elf/unaligned-ldpc-3.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-ldpc-3.s: Remove test source.
+	* testsuite/ld-mips-elf/unaligned-ldpc-4.d: Remove test.
+	* testsuite/ld-mips-elf/unaligned-ldpc-4.s: Remove test source.
+	* testsuite/ld-mips-elf/mips-elf.exp: Delete removed tests.
+
 2016-05-26  Nick Clifton  <nickc@redhat.com>
 
 	PR target/20134
diff --git a/ld/testsuite/ld-mips-elf/mips-elf.exp b/ld/testsuite/ld-mips-elf/mips-elf.exp
index ceb588d..f9bbcec 100644
--- a/ld/testsuite/ld-mips-elf/mips-elf.exp
+++ b/ld/testsuite/ld-mips-elf/mips-elf.exp
@@ -179,23 +179,15 @@ if $has_newabi {
 
 run_dump_test "unaligned-jalx-0" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-jalx-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-jalx-2" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-jalx-mips16-0" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-jalx-mips16-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-jalx-mips16-2" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-jalx-micromips-0" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-jalx-micromips-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-jalx-micromips-2" [list [list ld $abi_ldflags(o32)]]
 
 run_dump_test "unaligned-lwpc-0" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-lwpc-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-lwpc-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-lwpc-3" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-ldpc-0" [list [list ld $abi_ldflags(o32)]]
 run_dump_test "unaligned-ldpc-1" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-ldpc-2" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-ldpc-3" [list [list ld $abi_ldflags(o32)]]
-run_dump_test "unaligned-ldpc-4" [list [list ld $abi_ldflags(o32)]]
 
 # Test multi-got link.  We only do this on GNU/Linux because it requires
 # the "traditional" emulations.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-0.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-0.d
index 571a293..a37e5a9 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-0.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-0.d
@@ -10,6 +10,8 @@
 Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> 77000008 	jalx	1c000020 <bar0>
 [0-9a-f]+ <[^>]*> 00000000 	nop
+[0-9a-f]+ <[^>]*> 77000009 	jalx	1c000024 <bar2>
+[0-9a-f]+ <[^>]*> 00000000 	nop
 	\.\.\.
 	\.\.\.
 	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-0.s b/ld/testsuite/ld-mips-elf/unaligned-jalx-0.s
index 11e874a..46e542d 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-0.s
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-0.s
@@ -4,6 +4,7 @@
 	.ent	foo
 foo:
 	jal	bar0
+	jal	bar2
 	.end	foo
 
 # Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-1.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-1.d
index 9cbf654..650bd8f 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-1.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-1.d
@@ -4,5 +4,4 @@
 #as: -EB -32
 #ld: -EB -Ttext 0x1c000000 -e 0x1c000000
 #error: \A[^\n]*: In function `foo':\n
-#error:   \(\.text\+0x[0-9a-f]+\): JALX to a non-word-aligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
+#error:   \(\.text\+0x[0-9a-f]+\): JALX to a non-word-aligned address\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-2.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-2.d
deleted file mode 100644
index c401cfe..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-2.d
+++ /dev/null
@@ -1,21 +0,0 @@
-#name: MIPS JALX to unaligned symbol 2
-#source: unaligned-jalx-2.s
-#source: unaligned-insn.s -mips16
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
-#objdump: -dr --prefix-addresses --show-raw-insn
-
-.*: +file format .*mips.*
-
-Disassembly of section \.text:
-[0-9a-f]+ <[^>]*> 77000009 	jalx	1c000024 <bar2>
-[0-9a-f]+ <[^>]*> 00000000 	nop
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-2.s b/ld/testsuite/ld-mips-elf/unaligned-jalx-2.s
deleted file mode 100644
index 34de139..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-2.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	.text
-	.align	4
-	.globl	foo
-	.ent	foo
-foo:
-	jal	bar2
-	.end	foo
-
-# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
-	.align	4, 0
-	.space	16
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-0.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-0.d
index 5b3dea1..2622103 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-0.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-0.d
@@ -10,6 +10,8 @@
 Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> f300 0008 	jalx	1c000020 <bar0>
 [0-9a-f]+ <[^>]*> 0000 0000 	nop
+[0-9a-f]+ <[^>]*> f300 0009 	jalx	1c000024 <bar2>
+[0-9a-f]+ <[^>]*> 0000 0000 	nop
 	\.\.\.
 	\.\.\.
 	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d
index a63fa31..2df19df 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-1.d
@@ -4,5 +4,4 @@
 #as: -EB -32
 #ld: -EB -Ttext 0x1c000000 -e 0x1c000000
 #error: \A[^\n]*: In function `foo':\n
-#error:   \(\.text\+0x[0-9a-f]+\): JALX to a non-word-aligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
+#error:   \(\.text\+0x[0-9a-f]+\): JALX to a non-word-aligned address\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-2.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-2.d
deleted file mode 100644
index 8c07023..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-micromips-2.d
+++ /dev/null
@@ -1,21 +0,0 @@
-#name: microMIPS JALX to unaligned symbol 2
-#source: unaligned-jalx-2.s -mmicromips
-#source: unaligned-insn.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
-#objdump: -dr --prefix-addresses --show-raw-insn
-
-.*: +file format .*mips.*
-
-Disassembly of section \.text:
-[0-9a-f]+ <[^>]*> f300 0009 	jalx	1c000024 <bar2>
-[0-9a-f]+ <[^>]*> 0000 0000 	nop
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d
index 9609736..176680d 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-0.d
@@ -10,6 +10,8 @@
 Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> 1c18 0008 	jalx	1c000020 <bar0>
 [0-9a-f]+ <[^>]*> 6500      	nop
+[0-9a-f]+ <[^>]*> 1c18 0009 	jalx	1c000024 <bar2>
+[0-9a-f]+ <[^>]*> 6500      	nop
 	\.\.\.
 	\.\.\.
 	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d
index 45188e0..4c3e1bb 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-1.d
@@ -4,5 +4,4 @@
 #as: -EB -32
 #ld: -EB -Ttext 0x1c000000 -e 0x1c000000
 #error: \A[^\n]*: In function `foo':\n
-#error:   \(\.text\+0x[0-9a-f]+\): JALX to a non-word-aligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
+#error:   \(\.text\+0x[0-9a-f]+\): JALX to a non-word-aligned address\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-2.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-2.d
deleted file mode 100644
index d406651..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-jalx-mips16-2.d
+++ /dev/null
@@ -1,21 +0,0 @@
-#name: MIPS16 JALX to unaligned symbol 2
-#source: unaligned-jalx-2.s -mips16
-#source: unaligned-insn.s
-#as: -EB -32
-#ld: -EB -Ttext 0x1c000000 -e 0x1c000000
-#objdump: -dr --prefix-addresses --show-raw-insn
-
-.*: +file format .*mips.*
-
-Disassembly of section \.text:
-[0-9a-f]+ <[^>]*> 1c18 0009 	jalx	1c000024 <bar2>
-[0-9a-f]+ <[^>]*> 6500      	nop
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
-	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.d b/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.d
index 126c1b1..84b356c 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.d
@@ -9,4 +9,5 @@
 
 Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> ec590004 	ldpc	v0,1c080020 <bar0>
+[0-9a-f]+ <[^>]*> ec590005 	ldpc	v0,1c080028 <bar8>
 	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.s b/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.s
index c99b4b7..22fcd72 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.s
+++ b/ld/testsuite/ld-mips-elf/unaligned-ldpc-0.s
@@ -4,6 +4,7 @@
 	.ent	foo
 foo:
 	ldpc	$2, bar0
+	ldpc	$2, bar8
 	.end	foo
 
 # Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d b/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d
index 1213cd0..ca20d61 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d
@@ -5,4 +5,7 @@
 #ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
 #error: \A[^\n]*: In function `foo':\n
 #error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
+#error:   [^\n]*: In function `foo':\n
+#error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
+#error:   [^\n]*: In function `foo':\n
+#error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.s b/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.s
index 4afe849..40b44e3 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.s
+++ b/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.s
@@ -4,6 +4,8 @@
 	.ent	foo
 foo:
 	ldpc	$2, bar1
+	ldpc	$2, bar2
+	ldpc	$2, bar4
 	.end	foo
 
 # Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-2.d b/ld/testsuite/ld-mips-elf/unaligned-ldpc-2.d
deleted file mode 100644
index 6c0176c..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-2.d
+++ /dev/null
@@ -1,8 +0,0 @@
-#name: MIPS LDPC from unaligned symbol 2
-#source: unaligned-ldpc-2.s
-#source: unaligned-syms.s
-#as: -EB -32 -mips64r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
-#error: \A[^\n]*: In function `foo':\n
-#error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-2.s b/ld/testsuite/ld-mips-elf/unaligned-ldpc-2.s
deleted file mode 100644
index 11e88f6..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-2.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	.text
-	.align	4
-	.globl	foo
-	.ent	foo
-foo:
-	ldpc	$2, bar2
-	.end	foo
-
-# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
-	.align	4, 0
-	.space	16
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-3.d b/ld/testsuite/ld-mips-elf/unaligned-ldpc-3.d
deleted file mode 100644
index 7a95d1c..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-3.d
+++ /dev/null
@@ -1,8 +0,0 @@
-#name: MIPS LDPC from unaligned symbol 3
-#source: unaligned-ldpc-3.s
-#source: unaligned-syms.s
-#as: -EB -32 -mips64r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
-#error: \A[^\n]*: In function `foo':\n
-#error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-3.s b/ld/testsuite/ld-mips-elf/unaligned-ldpc-3.s
deleted file mode 100644
index dac870f..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-3.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	.text
-	.align	4
-	.globl	foo
-	.ent	foo
-foo:
-	ldpc	$2, bar4
-	.end	foo
-
-# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
-	.align	4, 0
-	.space	16
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-4.d b/ld/testsuite/ld-mips-elf/unaligned-ldpc-4.d
deleted file mode 100644
index d5610a7..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-4.d
+++ /dev/null
@@ -1,12 +0,0 @@
-#name: MIPS LDPC from unaligned symbol 4
-#source: unaligned-ldpc-4.s
-#source: unaligned-syms.s
-#as: -EB -32 -mips64r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
-#objdump: -dr --prefix-addresses --show-raw-insn
-
-.*: +file format .*mips.*
-
-Disassembly of section \.text:
-[0-9a-f]+ <[^>]*> ec590005 	ldpc	v0,1c080028 <bar8>
-	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-4.s b/ld/testsuite/ld-mips-elf/unaligned-ldpc-4.s
deleted file mode 100644
index 596cccb..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-4.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	.text
-	.align	4
-	.globl	foo
-	.ent	foo
-foo:
-	ldpc	$2, bar8
-	.end	foo
-
-# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
-	.align	4, 0
-	.space	16
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.d b/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.d
index 89c56c8..b7b2946 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.d
@@ -9,4 +9,5 @@
 
 Disassembly of section \.text:
 [0-9a-f]+ <[^>]*> ec4a0008 	lwpc	v0,1c080020 <bar0>
+[0-9a-f]+ <[^>]*> ec4a0008 	lwpc	v0,1c080024 <bar4>
 	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.s b/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.s
index 5d997f5..028969f 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.s
+++ b/ld/testsuite/ld-mips-elf/unaligned-lwpc-0.s
@@ -4,6 +4,7 @@
 	.ent	foo
 foo:
 	lwpc	$2, bar0
+	lwpc	$2, bar4
 	.end	foo
 
 # Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d b/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d
index f4cf317..39f03c3 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d
+++ b/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d
@@ -5,4 +5,5 @@
 #ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
 #error: \A[^\n]*: In function `foo':\n
 #error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
+#error:   [^\n]*: In function `foo':\n
+#error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.s b/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.s
index 595ebb9..c8d4edf 100644
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.s
+++ b/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.s
@@ -4,6 +4,7 @@
 	.ent	foo
 foo:
 	lwpc	$2, bar1
+	lwpc	$2, bar2
 	.end	foo
 
 # Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-2.d b/ld/testsuite/ld-mips-elf/unaligned-lwpc-2.d
deleted file mode 100644
index 2875828..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-2.d
+++ /dev/null
@@ -1,8 +0,0 @@
-#name: MIPS LWPC from unaligned symbol 2
-#source: unaligned-lwpc-2.s
-#source: unaligned-syms.s
-#as: -EB -32 -mips32r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
-#error: \A[^\n]*: In function `foo':\n
-#error:   \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\n
-#error:   [^\n]*: final link failed: Bad value\Z
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-2.s b/ld/testsuite/ld-mips-elf/unaligned-lwpc-2.s
deleted file mode 100644
index 1debe4d..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-2.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	.text
-	.align	4
-	.globl	foo
-	.ent	foo
-foo:
-	lwpc	$2, bar2
-	.end	foo
-
-# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
-	.align	4, 0
-	.space	16
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-3.d b/ld/testsuite/ld-mips-elf/unaligned-lwpc-3.d
deleted file mode 100644
index bda99c3..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-3.d
+++ /dev/null
@@ -1,12 +0,0 @@
-#name: MIPS LWPC from unaligned symbol 3
-#source: unaligned-lwpc-3.s
-#source: unaligned-syms.s
-#as: -EB -32 -mips32r6
-#ld: -EB -Ttext 0x1c000000 -Tdata 0x1c080000 -e 0x1c000000
-#objdump: -dr --prefix-addresses --show-raw-insn
-
-.*: +file format .*mips.*
-
-Disassembly of section \.text:
-[0-9a-f]+ <[^>]*> ec4a0009 	lwpc	v0,1c080024 <bar4>
-	\.\.\.
diff --git a/ld/testsuite/ld-mips-elf/unaligned-lwpc-3.s b/ld/testsuite/ld-mips-elf/unaligned-lwpc-3.s
deleted file mode 100644
index 667d7d9..0000000
--- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-3.s
+++ /dev/null
@@ -1,11 +0,0 @@
-	.text
-	.align	4
-	.globl	foo
-	.ent	foo
-foo:
-	lwpc	$2, bar4
-	.end	foo
-
-# Force some (non-delay-slot) zero bytes, to make 'objdump' print ...
-	.align	4, 0
-	.space	16


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]