|
|
|
@ -168,14 +168,13 @@ get_insn_size (unsigned short memdata, const insn_template *insn) |
|
|
|
} |
|
|
|
|
|
|
|
int |
|
|
|
print_instruction (info, memaddr, opcode, tm_name, tm_operands, size, ext) |
|
|
|
disassemble_info *info; |
|
|
|
bfd_vma memaddr; |
|
|
|
unsigned short opcode; |
|
|
|
const char *tm_name; |
|
|
|
const enum optype tm_operands[]; |
|
|
|
int size; |
|
|
|
int ext; |
|
|
|
print_instruction (disassemble_info *info, |
|
|
|
bfd_vma memaddr, |
|
|
|
unsigned short opcode, |
|
|
|
const char *tm_name, |
|
|
|
const enum optype tm_operands[], |
|
|
|
int size, |
|
|
|
int ext) |
|
|
|
{ |
|
|
|
static int n; |
|
|
|
/* string storage for multiple operands */ |
|
|
|
@ -469,12 +468,11 @@ print_instruction (info, memaddr, opcode, tm_name, tm_operands, size, ext) |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
print_parallel_instruction (info, memaddr, opcode, ptm, size) |
|
|
|
disassemble_info *info; |
|
|
|
bfd_vma memaddr; |
|
|
|
unsigned short opcode; |
|
|
|
const insn_template *ptm; |
|
|
|
int size; |
|
|
|
print_parallel_instruction (disassemble_info *info, |
|
|
|
bfd_vma memaddr, |
|
|
|
unsigned short opcode, |
|
|
|
const insn_template *ptm, |
|
|
|
int size) |
|
|
|
{ |
|
|
|
print_instruction (info, memaddr, opcode, |
|
|
|
ptm->name, ptm->operand_types, size, 0); |
|
|
|
@ -484,10 +482,9 @@ print_parallel_instruction (info, memaddr, opcode, ptm, size) |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
sprint_dual_address (info, buf, code) |
|
|
|
disassemble_info *info ATTRIBUTE_UNUSED; |
|
|
|
char buf[]; |
|
|
|
unsigned short code; |
|
|
|
sprint_dual_address (disassemble_info *info ATTRIBUTE_UNUSED, |
|
|
|
char buf[], |
|
|
|
unsigned short code) |
|
|
|
{ |
|
|
|
const char *formats[] = { |
|
|
|
"*ar%d", |
|
|
|
@ -499,10 +496,9 @@ sprint_dual_address (info, buf, code) |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
sprint_indirect_address (info, buf, opcode) |
|
|
|
disassemble_info *info ATTRIBUTE_UNUSED; |
|
|
|
char buf[]; |
|
|
|
unsigned short opcode; |
|
|
|
sprint_indirect_address (disassemble_info *info ATTRIBUTE_UNUSED, |
|
|
|
char buf[], |
|
|
|
unsigned short opcode) |
|
|
|
{ |
|
|
|
const char *formats[] = { |
|
|
|
"*ar%d", |
|
|
|
@ -522,20 +518,18 @@ sprint_indirect_address (info, buf, opcode) |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
sprint_direct_address (info, buf, opcode) |
|
|
|
disassemble_info *info ATTRIBUTE_UNUSED; |
|
|
|
char buf[]; |
|
|
|
unsigned short opcode; |
|
|
|
sprint_direct_address (disassemble_info *info ATTRIBUTE_UNUSED, |
|
|
|
char buf[], |
|
|
|
unsigned short opcode) |
|
|
|
{ |
|
|
|
/* FIXME -- look up relocation if available */ |
|
|
|
return sprintf (buf, "DP+0x%02x", (int) (opcode & 0x7F)); |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
sprint_mmr (info, buf, mmr) |
|
|
|
disassemble_info *info ATTRIBUTE_UNUSED; |
|
|
|
char buf[]; |
|
|
|
int mmr; |
|
|
|
sprint_mmr (disassemble_info *info ATTRIBUTE_UNUSED, |
|
|
|
char buf[], |
|
|
|
int mmr) |
|
|
|
{ |
|
|
|
symbol *reg = (symbol *) mmregs; |
|
|
|
while (reg->name != NULL) |
|
|
|
@ -552,10 +546,9 @@ sprint_mmr (info, buf, mmr) |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
sprint_cc2 (info, buf, opcode) |
|
|
|
disassemble_info *info ATTRIBUTE_UNUSED; |
|
|
|
char *buf; |
|
|
|
unsigned short opcode; |
|
|
|
sprint_cc2 (disassemble_info *info ATTRIBUTE_UNUSED, |
|
|
|
char *buf, |
|
|
|
unsigned short opcode) |
|
|
|
{ |
|
|
|
const char *cc2[] = { |
|
|
|
"??", "??", "ageq", "alt", "aneq", "aeq", "agt", "aleq", |
|
|
|
@ -565,10 +558,9 @@ sprint_cc2 (info, buf, opcode) |
|
|
|
} |
|
|
|
|
|
|
|
static int |
|
|
|
sprint_condition (info, buf, opcode) |
|
|
|
disassemble_info *info ATTRIBUTE_UNUSED; |
|
|
|
char *buf; |
|
|
|
unsigned short opcode; |
|
|
|
sprint_condition (disassemble_info *info ATTRIBUTE_UNUSED, |
|
|
|
char *buf, |
|
|
|
unsigned short opcode) |
|
|
|
{ |
|
|
|
char *start = buf; |
|
|
|
const char *cmp[] = { |
|
|
|
|