+2002-08-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/tc-mips.c (tc_gen_reloc): Extend GP-relative addend
+ handling to BFD_RELOC_MIPS16_GPREL.
+
2002-08-01 Nick Clifton <nickc@redhat.com>
* config/tc-arm.c (add_to_lit_pool): Ensure that offset to literal
stop md_apply_fix3 from subtracting twice in the first place since
the fake addend is required for variant frags above. */
if (fixp->fx_addsy != NULL && OUTPUT_FLAVOR == bfd_target_elf_flavour
- && code == BFD_RELOC_GPREL16
+ && (code == BFD_RELOC_GPREL16 || code == BFD_RELOC_MIPS16_GPREL)
&& reloc->addend != 0
&& mips_need_elf_addend_fixup (fixp))
reloc->addend += S_GET_VALUE (fixp->fx_addsy);
+2002-08-01 Richard Sandiford <rsandifo@redhat.com>
+
+ * gas/mips/elf-rel6.[sd]: New test.
+ * gas/mips/mips.exp: Run it.
+
2002-07-29 Chris Demetriou <cgd@broadcom.com>
* gas/mips/elf_ase_mips16.d: New file to test ELF MIPS16 ASE marking.
--- /dev/null
+#objdump: -dr --prefix-addresses
+#name: MIPS ELF reloc 6
+
+.*: +file format elf.*mips.*
+
+Disassembly of section \.text:
+0+00 <.*> lb v0,0\(v1\)
+ 0: R_MIPS16_GPREL bar
+0+04 <.*> lb v0,1\(v1\)
+ 4: R_MIPS16_GPREL bar
--- /dev/null
+ .sdata
+ .global foo
+ .globl bar
+foo: .byte 1
+ .byte 2
+bar: .byte 3
+ .byte 4
+
+ .text
+ .set mips16
+ .global f
+ .ent f
+f:
+ lb $2,%gprel(bar)($3)
+ lb $2,%gprel(bar+1)($3)
+ .end f
run_dump_test "e32-rel4"
}
run_dump_test "elf-rel5"
+ run_dump_test "elf-rel6"
run_dump_test "${tmips}${el}empic"
run_dump_test "empic2"
run_dump_test "empic3_e"