From ebf0b03c706b28c990f5f3c6713dacd23f58341e Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Tue, 7 Feb 2017 02:08:23 +0000 Subject: [PATCH] LD: vfinfo: Make clever formatters consistent WRT function name reporting Remove an inconsistency in linker error message processing causing that it depends on the ability to infer the name of the originating source file whether or not the name of the offending function is repeated by clever formatters for each issue reported within the function. Taking the `ld/testsuite/ld-powerpc/tocopt7.s' test case source as an example and the `powerpc-linux' target we have: $ as -gdwarf2 -o tocopt.o -a64 tocopt.s $ ld -o tocopt -melf64ppc tocopt.o tocopt.o: In function `_start': tocopt.s:35:(.text+0x14): toc optimization is not supported for 0x3fa00000 instruction. tocopt.s:49:(.text+0x34): toc optimization is not supported for 0x3fa00000 instruction. $ vs: $ as -o tocopt.o -a64 tocopt.s $ ld -o tocopt -melf64ppc tocopt.o tocopt.o: In function `_start': (.text+0x14): toc optimization is not supported for 0x3fa00000 instruction. tocopt.o: In function `_start': (.text+0x34): toc optimization is not supported for 0x3fa00000 instruction. $ Similarly with the `mips-linux' target and this source: $ cat jal-global-multi-overflow.s .text .set noreorder .space 0x2000 .align 4 .globl foo .ent foo foo: jal bar nor $0, $0 jal bar nor $0, $0 .end foo .space 0x1ff0 .align 4 .globl bar .ent bar bar: jal foo nor $0, $0 jal foo nor $0, $0 .end bar $ as -o jal-global-multi-overflow.o jal-global-multi-overflow.s $ ld -Ttext 0x1fffd000 -e foo -o jal-global-multi-overflow jal-global-multi-overflow.o jal-global-multi-overflow.o: In function `foo': (.text+0x2000): relocation truncated to fit: R_MIPS_26 against `bar' jal-global-multi-overflow.o: In function `foo': (.text+0x2008): relocation truncated to fit: R_MIPS_26 against `bar' jal-global-multi-overflow.o: In function `bar': (.text+0x4000): relocation truncated to fit: R_MIPS_26 against `foo' jal-global-multi-overflow.o: In function `bar': (.text+0x4008): relocation truncated to fit: R_MIPS_26 against `foo' $ Not only this is inconsistent, but it causes output clutter as well with redundant information. The cause for this is a check in `vfinfo' the intent of which is to print the function heading whenever (among others) the name of the source file has changed, which however does not take into account a situation where the name couldn't have been established both now and previously. Adjust the check then for this situation, yielding: $ as -o tocopt.o -a64 tocopt.s $ ld -o tocopt -melf64ppc tocopt.o tocopt.o: In function `_start': (.text+0x14): toc optimization is not supported for 0x3fa00000 instruction. (.text+0x34): toc optimization is not supported for 0x3fa00000 instruction. $ and: $ as -o jal-global-multi-overflow.o jal-global-multi-overflow.s $ ld -Ttext 0x1fffd000 -e foo -o jal-global-multi-overflow jal-global-multi-overflow.o jal-global-multi-overflow.o: In function `foo': (.text+0x2000): relocation truncated to fit: R_MIPS_26 against `bar' (.text+0x2008): relocation truncated to fit: R_MIPS_26 against `bar' jal-global-multi-overflow.o: In function `bar': (.text+0x4000): relocation truncated to fit: R_MIPS_26 against `foo' (.text+0x4008): relocation truncated to fit: R_MIPS_26 against `foo' $ respectively instead. Adjust the test suite accordingly. ld/ * ldmisc.c (vfinfo): Don't print the function name again either if no source file name has been found both now and previously. * testsuite/ld-cris/tls-err-20x.d: Adjust accordingly. * testsuite/ld-mips-elf/mode-change-error-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d: Likewise. * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise. * testsuite/ld-mips-elf/unaligned-jump.d: Likewise. * testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise. * testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise. * testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise. * testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise. * testsuite/ld-powerpc/tocopt.out: Likewise. * testsuite/ld-powerpc/tocopt7.out: Likewise. --- ld/ChangeLog | 33 ++++++++ ld/ldmisc.c | 2 +- ld/testsuite/ld-cris/tls-err-20x.d | 2 +- .../ld-mips-elf/mode-change-error-1.d | 1 - ld/testsuite/ld-mips-elf/unaligned-branch-2.d | 43 ----------- .../ld-mips-elf/unaligned-branch-ignore-2.d | 29 ------- .../unaligned-branch-ignore-micromips.d | 39 ---------- .../unaligned-branch-ignore-mips16.d | 15 ---- .../unaligned-branch-ignore-r6-1.d | 33 -------- .../ld-mips-elf/unaligned-branch-micromips.d | 75 ------------------- .../ld-mips-elf/unaligned-branch-mips16.d | 33 -------- .../ld-mips-elf/unaligned-branch-r6-1.d | 54 ------------- .../ld-mips-elf/unaligned-branch-r6-2.d | 29 ------- ld/testsuite/ld-mips-elf/unaligned-branch.d | 8 -- .../ld-mips-elf/unaligned-jalx-addend-1.d | 11 --- .../ld-mips-elf/unaligned-jalx-addend-3.d | 11 --- .../unaligned-jalx-addend-micromips-1.d | 11 --- .../unaligned-jalx-addend-mips16-1.d | 11 --- .../ld-mips-elf/unaligned-jump-micromips.d | 56 -------------- .../ld-mips-elf/unaligned-jump-mips16.d | 26 ------- ld/testsuite/ld-mips-elf/unaligned-jump.d | 45 ----------- ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d | 2 - ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d | 1 - ld/testsuite/ld-powerpc/tocopt.out | 1 - ld/testsuite/ld-powerpc/tocopt7.out | 12 --- 25 files changed, 35 insertions(+), 548 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 43e4992f79..1fc23dc896 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,36 @@ +2017-02-15 Maciej W. Rozycki + + * ldmisc.c (vfinfo): Don't print the function name again either + if no source file name has been found both now and previously. + * testsuite/ld-cris/tls-err-20x.d: Adjust accordingly. + * testsuite/ld-mips-elf/mode-change-error-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-mips16.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-micromips.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-r6-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-2.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-r6-2.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-2.d: Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d: + Likewise. + * testsuite/ld-mips-elf/unaligned-jalx-addend-3.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jump.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jump-mips16.d: Likewise. + * testsuite/ld-mips-elf/unaligned-jump-micromips.d: Likewise. + * testsuite/ld-mips-elf/unaligned-lwpc-1.d: Likewise. + * testsuite/ld-mips-elf/unaligned-ldpc-1.d: Likewise. + * testsuite/ld-powerpc/tocopt.out: Likewise. + * testsuite/ld-powerpc/tocopt7.out: Likewise. + 2017-02-15 Maciej W. Rozycki * ldmisc.c (vfinfo) <'H'>: Remove static NULL initializers. diff --git a/ld/ldmisc.c b/ld/ldmisc.c index b50637d9ed..420ddb13c1 100644 --- a/ld/ldmisc.c +++ b/ld/ldmisc.c @@ -331,9 +331,9 @@ vfinfo (FILE *fp, const char *fmt, va_list arg, bfd_boolean is_warning) (eg emacs) to correctly locate multiple errors in the same source file. */ if (last_bfd == NULL - || last_file == NULL || last_function == NULL || last_bfd != abfd + || (last_file == NULL) != (filename == NULL) || (filename != NULL && filename_cmp (last_file, filename) != 0) || strcmp (last_function, functionname) != 0) diff --git a/ld/testsuite/ld-cris/tls-err-20x.d b/ld/testsuite/ld-cris/tls-err-20x.d index 23779bf863..d12e4eeb90 100644 --- a/ld/testsuite/ld-cris/tls-err-20x.d +++ b/ld/testsuite/ld-cris/tls-err-20x.d @@ -5,7 +5,7 @@ #source: tls-hx.s --pic #as: --no-underscore --em=criself #ld: -m crislinux -#error: \A[^\n]*: warning: cannot find entry symbol _start; defaulting to [0-9a-f]*\n[^\n]*: In function `tlsdsofn9':\n[^\n]*: undefined reference to `x1'\n[^\n]*: In function `tlsdsofn9':\n[^\n]*: undefined reference to `x2'\Z +#error: \A[^\n]*: warning: cannot find entry symbol _start; defaulting to [0-9a-f]*\n[^\n]*: In function `tlsdsofn9':\n[^\n]*: undefined reference to `x1'\n[^\n]*: undefined reference to `x2'\Z # Code coverage case similar to tls-e-20.d, except with an undefined # reference. 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 cab1ddb3a0..340d0879a2 100644 --- a/ld/testsuite/ld-mips-elf/mode-change-error-1.d +++ b/ld/testsuite/ld-mips-elf/mode-change-error-1.d @@ -4,5 +4,4 @@ #ld: -e 0x8000000 #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/unaligned-branch-2.d b/ld/testsuite/ld-mips-elf/unaligned-branch-2.d index 2be87a8ebc..c4103ae571 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-2.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-2.d @@ -4,89 +4,46 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1024\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1054\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1084\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10bc\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e4\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ec\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1114\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x111c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1154\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1174\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x117c\): Unsupported branch between ISA modes\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-2.d b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-2.d index 323c43ae22..d032705f53 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-2.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-2.d @@ -4,61 +4,32 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1024\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1054\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1084\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10bc\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1154\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Cannot convert a branch to JALX for a non-word-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d index 6a62fe5434..92cb3fa02b 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-micromips.d @@ -4,81 +4,42 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-micromips-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x100a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1012\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1032\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1062\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1072\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1088\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a0\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a6\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ca\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10d6\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e8\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ee\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1100\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1106\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x110c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112a\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1136\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1146\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1156\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1172\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x117a\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1186\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1196\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11b2\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11ba\): Branch to a non-instruction-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d index f6ace4a253..8981030bd5 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-mips16.d @@ -4,33 +4,18 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-mips16-2.s #error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1008\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x100e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1014\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1020\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1026\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104a\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1056\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1068\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x106e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1074\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1080\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1086\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10aa\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b6\): Branch to a non-instruction-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d index b7a11bdfa3..af4d9f6985 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-ignore-r6-1.d @@ -4,69 +4,36 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-r6-3.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1024\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1054\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1084\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10bc\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10dc\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x110c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1114\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x116c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1174\): Cannot convert a branch to JALX for a non-word-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-micromips.d b/ld/testsuite/ld-mips-elf/unaligned-branch-micromips.d index cd485fc52a..f4929eb6ad 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-micromips.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-micromips.d @@ -4,153 +4,78 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-micromips-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x100a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1012\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1032\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1062\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1072\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1082\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1088\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1088\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a0\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a0\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a6\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a6\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b2\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ca\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10d6\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e2\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e8\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e8\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ee\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ee\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fa\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1100\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1100\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1106\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1106\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x110c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x110c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1112\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112a\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1136\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1142\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1146\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1146\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1152\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1156\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1156\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1162\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1172\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x117a\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1182\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1186\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1186\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1192\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1196\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1196\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119a\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11a2\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11b2\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11ba\): Branch to a non-instruction-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-mips16.d b/ld/testsuite/ld-mips-elf/unaligned-branch-mips16.d index 399a457eb2..b2c113c0f3 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-mips16.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-mips16.d @@ -4,69 +4,36 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-mips16-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x1002\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1008\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1008\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x100e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x100e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1014\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1014\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1020\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1020\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1026\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1026\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1032\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104a\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1056\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1062\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1068\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1068\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x106e\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x106e\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1074\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1074\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107a\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1080\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1080\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1086\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1086\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1092\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10aa\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b6\): Branch to a non-instruction-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-r6-1.d b/ld/testsuite/ld-mips-elf/unaligned-branch-r6-1.d index c63fa5f2ab..07b41daaf1 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-r6-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-r6-1.d @@ -4,111 +4,57 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-r6-3.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1024\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1054\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1084\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10bc\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10dc\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10dc\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10e4\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ec\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x110c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x110c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1114\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1114\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x111c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1154\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x116c\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x116c\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1174\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1174\): Unsupported branch between ISA modes\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x117c\): Unsupported branch between ISA modes\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch-r6-2.d b/ld/testsuite/ld-mips-elf/unaligned-branch-r6-2.d index c1a297f049..e397a093c5 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch-r6-2.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch-r6-2.d @@ -4,61 +4,32 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-branch-r6-4.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1024\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1054\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1084\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10bc\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1154\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Branch to a non-instruction-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-branch.d b/ld/testsuite/ld-mips-elf/unaligned-branch.d index 54894b68bd..00e8ffe0fe 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-branch.d +++ b/ld/testsuite/ld-mips-elf/unaligned-branch.d @@ -5,19 +5,11 @@ #ld: -EB -Ttext 0x10000000 -e 0x10000000 #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x14\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x24\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x28\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x30\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x38\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x3c\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x44\): Branch to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x4c\): Branch to a non-instruction-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-1.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-1.d index 54d674793f..2b21cd637c 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-1.d @@ -5,25 +5,14 @@ #ld: -EB -Ttext 0x1c000000 -e 0x1c000000 #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-3.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-3.d index 1c0551cff0..04d4045053 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-3.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-3.d @@ -5,25 +5,14 @@ #ld: -EB -Ttext 0x1c000000 -e 0x1c000000 #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x0\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x8\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x18\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x20\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x28\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x30\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x38\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x40\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x48\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x50\): Cannot convert a branch to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x58\): Cannot convert a branch to JALX for a non-word-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d index 0734d83d15..33473f8371 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-micromips-1.d @@ -6,25 +6,14 @@ #objdump: -dr --prefix-addresses --show-raw-insn #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d index 9f2e626831..dd2ff3bfc6 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jalx-addend-mips16-1.d @@ -6,25 +6,14 @@ #objdump: -dr --prefix-addresses --show-raw-insn #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): Cannot convert a jump to JALX for a non-word-aligned address\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jump-micromips.d b/ld/testsuite/ld-mips-elf/unaligned-jump-micromips.d index 65ebd3c924..17c609a9d5 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jump-micromips.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jump-micromips.d @@ -4,115 +4,59 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-jump-micromips-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x1012\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1018\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1026\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102e\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103a\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1042\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104a\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104a\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1050\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1050\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1056\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1066\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1066\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x106c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x106c\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1082\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1088\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1096\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109e\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10aa\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b2\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ba\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ba\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10c0\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10c0\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10c6\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ce\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10d6\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10d6\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10dc\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10dc\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f2\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f8\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fe\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x111a\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1136\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1152\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1152\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115a\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1162\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1168\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x116e\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118a\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x118a\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1192\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x119a\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11a0\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x11a6\): Unsupported JALX to the same ISA mode\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jump-mips16.d b/ld/testsuite/ld-mips-elf/unaligned-jump-mips16.d index 6e18679f4e..faafb57657 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jump-mips16.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jump-mips16.d @@ -4,55 +4,29 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-jump-mips16-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x100e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1014\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101a\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1020\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1026\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103e\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104a\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1050\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1056\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x106e\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107a\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107a\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1080\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1086\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1092\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1092\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1098\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109e\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109e\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10aa\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10aa\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b0\): Jump to a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b6\): Unsupported JALX to the same ISA mode\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-jump.d b/ld/testsuite/ld-mips-elf/unaligned-jump.d index 4341df3d41..845f73d611 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-jump.d +++ b/ld/testsuite/ld-mips-elf/unaligned-jump.d @@ -4,93 +4,48 @@ #source: ../../../gas/testsuite/gas/mips/unaligned-jump-2.s #error: \A[^\n]*: In function `foo':\n #error: \(\.text\+0x1004\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x101c\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1024\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x102c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1034\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x103c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1044\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x104c\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1054\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x105c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1064\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x107c\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1084\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x108c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1094\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x109c\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10a4\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ac\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10b4\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10bc\): Jump to a non-instruction-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10c4\): Unsupported JALX to the same ISA mode\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10ec\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10f4\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x10fc\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1104\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x111c\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1124\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x112c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1134\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x113c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1144\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x114c\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1154\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x115c\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Cannot convert a jump to JALX for a non-word-aligned address\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x1164\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\n -#error: [^\n]*: In function `foo':\n #error: \(\.text\+0x117c\): Unsupported jump between ISA modes; consider recompiling with interlinking enabled\Z diff --git a/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d b/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d index 8287dac5ae..3af5cee744 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-ldpc-1.d @@ -5,7 +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]*: 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-lwpc-1.d b/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d index 0c207024a5..bddff01296 100644 --- a/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d +++ b/ld/testsuite/ld-mips-elf/unaligned-lwpc-1.d @@ -5,5 +5,4 @@ #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]*: In function `foo':\n #error: \(\.text\+0x[0-9a-f]+\): PC-relative load from unaligned address\Z diff --git a/ld/testsuite/ld-powerpc/tocopt.out b/ld/testsuite/ld-powerpc/tocopt.out index b551e86deb..8acb6ec140 100644 --- a/ld/testsuite/ld-powerpc/tocopt.out +++ b/ld/testsuite/ld-powerpc/tocopt.out @@ -1,4 +1,3 @@ .* \(\.text\+0x14\): .* -.* \(\.text\+0x34\): .* diff --git a/ld/testsuite/ld-powerpc/tocopt7.out b/ld/testsuite/ld-powerpc/tocopt7.out index f74d91d308..a698acc193 100644 --- a/ld/testsuite/ld-powerpc/tocopt7.out +++ b/ld/testsuite/ld-powerpc/tocopt7.out @@ -1,26 +1,14 @@ .* \(\.text\+0x18\): .* -.* \(\.text\+0x34\): .* -.* \(\.text\+0x5c\): .* -.* \(\.text\+0xa4\): .* -.* \(\.text\+0xec\): .* -.* \(\.text\+0x114\): .* -.* \(\.text\+0x13c\): .* -.* \(\.text\+0x1b8\): .* -.* \(\.text\+0x1d4\): .* -.* \(\.text\+0x1f0\): .* -.* \(\.text\+0x20c\): .* -.* \(\.text\+0x228\): .* -.* \(\.text\+0x244\): .* -- 2.34.1