16 bit immediate expr support for mips
This commit is contained in:
parent
addd3117d7
commit
2ae7e77be8
|
@ -1,3 +1,9 @@
|
||||||
|
2000-06-27 Aldy Hernandez <aldyh@redhat.com>
|
||||||
|
|
||||||
|
* config/tc-mips.c (mips_ip): handle "(foo-.-4)" type of
|
||||||
|
expressions. Ignore the problem when handling 16 bit immediates,
|
||||||
|
because the assembler will take care of the relocation later.
|
||||||
|
|
||||||
2000-06-27 Nick Clifton <nickc@cygnus.com>
|
2000-06-27 Nick Clifton <nickc@cygnus.com>
|
||||||
|
|
||||||
* config/tc-d30v.c (write_2_short): Do not allow opcodes with
|
* config/tc-d30v.c (write_2_short): Do not allow opcodes with
|
||||||
|
|
|
@ -7746,10 +7746,8 @@ mips_ip (str, ip)
|
||||||
if (insn + 1 < &mips_opcodes[NUMOPCODES] &&
|
if (insn + 1 < &mips_opcodes[NUMOPCODES] &&
|
||||||
!strcmp (insn->name, insn[1].name))
|
!strcmp (insn->name, insn[1].name))
|
||||||
break;
|
break;
|
||||||
if (imm_expr.X_op != O_constant
|
if (imm_expr.X_op == O_constant
|
||||||
&& imm_expr.X_op != O_big)
|
|| imm_expr.X_op == O_big)
|
||||||
insn_error = _("absolute expression required");
|
|
||||||
else
|
|
||||||
as_bad (_("16 bit expression not in range 0..65535"));
|
as_bad (_("16 bit expression not in range 0..65535"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7785,10 +7783,8 @@ mips_ip (str, ip)
|
||||||
{
|
{
|
||||||
if (more)
|
if (more)
|
||||||
break;
|
break;
|
||||||
if (imm_expr.X_op != O_constant
|
if (imm_expr.X_op == O_constant
|
||||||
&& imm_expr.X_op != O_big)
|
|| imm_expr.X_op == O_big)
|
||||||
insn_error = _("absolute expression required");
|
|
||||||
else
|
|
||||||
as_bad (_("16 bit expression not in range -32768..32767"));
|
as_bad (_("16 bit expression not in range -32768..32767"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue