2003-01-02 Chris Demetriou <cgd@broadcom.com>

* mips-dis.c (print_insn_args): Use position extracted by "+A"
        to calculate size for "+B".  Redo code for "+C" so it shares
        the same style as "+A" and "+B" now do.
This commit is contained in:
Chris Demetriou 2003-01-02 22:04:55 +00:00
parent 64543e1acf
commit 440cc0bc1a
2 changed files with 15 additions and 9 deletions

View File

@ -1,3 +1,9 @@
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* mips-dis.c (print_insn_args): Use position extracted by "+A"
to calculate size for "+B". Redo code for "+C" so it shares
the same style as "+A" and "+B" now do.
2003-01-02 Chris Demetriou <cgd@broadcom.com>
* mips-dis.c: Update copyright years.

View File

@ -672,6 +672,9 @@ print_insn_args (d, l, pc, info)
struct disassemble_info *info;
{
int op, delta;
unsigned int lsb, msb, msbd;
lsb = 0;
for (; *d != '\0'; d++)
{
@ -697,21 +700,18 @@ print_insn_args (d, l, pc, info)
return;
case 'A':
(*info->fprintf_func) (info->stream, "0x%x",
(l >> OP_SH_SHAMT) & OP_MASK_SHAMT);
lsb = (l >> OP_SH_SHAMT) & OP_MASK_SHAMT;
(*info->fprintf_func) (info->stream, "0x%x", lsb);
break;
case 'B':
(*info->fprintf_func) (info->stream, "0x%x",
(((l >> OP_SH_INSMSB) & OP_MASK_INSMSB)
- ((l >> OP_SH_SHAMT) & OP_MASK_SHAMT)
+ 1));
msb = (l >> OP_SH_INSMSB) & OP_MASK_INSMSB;
(*info->fprintf_func) (info->stream, "0x%x", msb - lsb + 1);
break;
case 'C':
(*info->fprintf_func) (info->stream, "0x%x",
(((l >> OP_SH_EXTMSBD) & OP_MASK_EXTMSBD)
+ 1));
msbd = (l >> OP_SH_EXTMSBD) & OP_MASK_EXTMSBD;
(*info->fprintf_func) (info->stream, "0x%x", msbd + 1);
break;
case 'D':