+2010-11-01 Maciej W. Rozycki <macro@linux-mips.org>
+
+ * config/tc-mips.c (macro)[M_LD_OB, M_SD_OB]: Use the offset
+ reloc supplied.
+ (mips_ip)['o']: Initialise offset_reloc.
+
2010-10-29 Joseph Myers <joseph@codesourcery.com>
* doc/c-tic6x.texi (TIC6X Directives): Mention
case M_SD_OB:
s = HAVE_64BIT_GPRS ? "sd" : "sw";
sd_ob:
- macro_build (&offset_expr, s, "t,o(b)", treg, BFD_RELOC_LO16, breg);
+ macro_build (&offset_expr, s, "t,o(b)", treg,
+ -1, offset_reloc[0], offset_reloc[1], offset_reloc[2],
+ breg);
if (!HAVE_64BIT_GPRS)
{
offset_expr.X_add_number += 4;
macro_build (&offset_expr, s, "t,o(b)", treg + 1,
- BFD_RELOC_LO16, breg);
+ -1, offset_reloc[0], offset_reloc[1], offset_reloc[2],
+ breg);
}
break;
continue;
case 'o': /* 16 bit offset */
+ offset_reloc[0] = BFD_RELOC_LO16;
+ offset_reloc[1] = BFD_RELOC_UNUSED;
+ offset_reloc[2] = BFD_RELOC_UNUSED;
+
/* Check whether there is only a single bracketed expression
left. If so, it must be the base register and the
constant must be zero. */