summaryrefslogtreecommitdiff
path: root/gnu/usr.bin/binutils/opcodes/sh-dis.c
diff options
context:
space:
mode:
authorNiklas Hallqvist <niklas@cvs.openbsd.org>1996-06-10 10:55:58 +0000
committerNiklas Hallqvist <niklas@cvs.openbsd.org>1996-06-10 10:55:58 +0000
commita7e831079363e3bb45f3172f6e59ba48e335682b (patch)
treeee4324eac9a9d66f189fab60498ec42b8226b7fc /gnu/usr.bin/binutils/opcodes/sh-dis.c
parent467cb0a471d13c5186a6ee166e60b47c30da64e9 (diff)
Bring Cygnus versions into the trunk, keeping our local patches
Diffstat (limited to 'gnu/usr.bin/binutils/opcodes/sh-dis.c')
-rw-r--r--gnu/usr.bin/binutils/opcodes/sh-dis.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/usr.bin/binutils/opcodes/sh-dis.c b/gnu/usr.bin/binutils/opcodes/sh-dis.c
index b1d6506fec3..c83570ed495 100644
--- a/gnu/usr.bin/binutils/opcodes/sh-dis.c
+++ b/gnu/usr.bin/binutils/opcodes/sh-dis.c
@@ -70,6 +70,8 @@ print_insn_shx(memaddr, info)
int imm;
int rn;
int rm;
+ int rb;
+
for (n = 0; n < 4; n++) {
int i = op->nibbles[n];
if (i < 16)
@@ -135,6 +137,9 @@ print_insn_shx(memaddr, info)
case REG_M:
rm = nibs[n];
break;
+ case REG_B:
+ rb = nibs[n] & 0x07;
+ break;
default:
abort();
}
@@ -184,6 +189,9 @@ print_insn_shx(memaddr, info)
case A_DISP_REG_M:
fprintf(stream,"@(%d,r%d)",imm, rm);
break;
+ case A_REG_B:
+ fprintf(stream,"r%d_bank", rb);
+ break;
case A_DISP_PC:
fprintf(stream,"0x%0x", imm+ 4+(memaddr&relmask));
break;
@@ -212,6 +220,12 @@ print_insn_shx(memaddr, info)
case A_VBR:
fprintf(stream,"vbr");
break;
+ case A_SSR:
+ fprintf(stream,"ssr");
+ break;
+ case A_SPC:
+ fprintf(stream,"spc");
+ break;
case A_MACH:
fprintf(stream,"mach");
break;
@@ -221,6 +235,23 @@ print_insn_shx(memaddr, info)
case A_PR:
fprintf(stream,"pr");
break;
+ case F_REG_N:
+ fprintf(stream,"fr%d", rn);
+ break;
+ case F_REG_M:
+ fprintf(stream,"fr%d", rm);
+ break;
+ case FPSCR_M:
+ case FPSCR_N:
+ fprintf(stream,"fpscr");
+ break;
+ case FPUL_M:
+ case FPUL_N:
+ fprintf(stream,"fpul");
+ break;
+ case F_FR0:
+ fprintf(stream,"fr0");
+ break;
default:
abort();
}