+2010-08-09 Catherine Moore <clm@codesourcery.com>
+
+ * elfxx-mips.c (mips_elf_perform_relocation): Improve
+ interlinking error message.
+
2010-08-06 Alan Modra <amodra@gmail.com>
* elf64-ppc.c (ha_reloc_match): Allow matches to other than r2.
if (!ok)
{
(*_bfd_error_handler)
- (_("%B: %A+0x%lx: jump to stub routine which is not jal"),
+ (_("%B: %A+0x%lx: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled."),
input_bfd,
input_section,
(unsigned long) relocation->r_offset);
+2010-08-09 Catherine Moore <clm@codesourcery.com>
+
+ * ld-mips-elf/mode-change-error-1.d: New.
+ * ld-mips-elf/mode-change-error-1a.s: New.
+ * ld-mips-elf/mode-change-error-1b.s: New.
+ * ld-mips-elf/mips-elf.exp: Run new test.
+
2010-08-06 Alan Modra <amodra@gmail.com>
* ld-powerpc/tocopt.s, * ld-powerpc/tocopt.d: New test.
run_dump_test "jalbal"
}
+run_dump_test "mode-change-error-1"
+
run_dump_test "mips16-hilo"
if {$has_newabi} {
run_dump_test "mips16-hilo-n32"
--- /dev/null
+#name: Mode Change Error 1
+#source: mode-change-error-1a.s
+#source: mode-change-error-1b.s
+#ld: -e 0x8000000
+#error: .*: Direct jumps between ISA modes are not allowed; consider recompiling with interlinking enabled.
--- /dev/null
+ .option pic0
+ .text
+ .align 4
+ .globl main
+ .set nomips16
+ .ent main
+ .type main, @function
+main:
+ .mask 0x80000000,-4
+ .fmask 0x00000000,0
+ .set noreorder
+
+ j doit
+ nop
+
+ .end main
+ .size main, .-main
--- /dev/null
+ .text
+ .align 4
+ .globl doit
+ .set mips16
+ .ent doit
+ .type doit, @function
+doit:
+ .frame $sp,0,$31
+ .mask 0x00000000,0
+ .fmask 0x00000000,0
+ sll $2,$4,1
+ sll $4,$4,3
+ .set noreorder
+ .set nomacro
+ j $31
+ addu $2,$2,$4
+ .end doit
+ .size doit, .-doit