From c680e7f672a30b81ccffb8e2d1bcd01bca659c55 Mon Sep 17 00:00:00 2001 From: "Maciej W. Rozycki" Date: Tue, 6 Jul 2010 00:06:04 +0000 Subject: [PATCH] * mips-dis.c (print_insn_mips): Correct branch instruction type determination. --- opcodes/ChangeLog | 5 +++++ opcodes/mips-dis.c | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 2832beb..db9f65e 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,5 +1,10 @@ 2010-07-06 Maciej W. Rozycki + * mips-dis.c (print_insn_mips): Correct branch instruction type + determination. + +2010-07-06 Maciej W. Rozycki + * mips-dis.c (print_mips16_insn_arg): Remove branch instruction type and delay slot determination. (print_insn_mips16): Extend branch instruction type and delay diff --git a/opcodes/mips-dis.c b/opcodes/mips-dis.c index 01e446c..c0cfed6 100644 --- a/opcodes/mips-dis.c +++ b/opcodes/mips-dis.c @@ -1404,7 +1404,8 @@ print_insn_mips (bfd_vma memaddr, /* Figure out instruction type and branch delay information. */ if ((op->pinfo & INSN_UNCOND_BRANCH_DELAY) != 0) { - if ((info->insn_type & INSN_WRITE_GPR_31) != 0) + if ((op->pinfo & (INSN_WRITE_GPR_31 + | INSN_WRITE_GPR_D)) != 0) info->insn_type = dis_jsr; else info->insn_type = dis_branch; @@ -1413,7 +1414,7 @@ print_insn_mips (bfd_vma memaddr, else if ((op->pinfo & (INSN_COND_BRANCH_DELAY | INSN_COND_BRANCH_LIKELY)) != 0) { - if ((info->insn_type & INSN_WRITE_GPR_31) != 0) + if ((op->pinfo & INSN_WRITE_GPR_31) != 0) info->insn_type = dis_condjsr; else info->insn_type = dis_condbranch; -- 2.7.4