X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=opcodes%2Fm10300-dis.c;h=00210c25cd359a67c3316d72a832fbe360efbc92;hb=50d036364fb2a71b3ac9a0b0cdbe58296832a1b2;hp=3445fc28c3319c26a72440aac30491ac146256a6;hpb=df7b86aa4cb63ce86e60949b8160438bc0f9e389;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/m10300-dis.c b/opcodes/m10300-dis.c index 3445fc28c3..00210c25cd 100644 --- a/opcodes/m10300-dis.c +++ b/opcodes/m10300-dis.c @@ -1,6 +1,5 @@ /* Disassemble MN10300 instructions. - Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2005, 2007, 2012 - Free Software Foundation, Inc. + Copyright (C) 1996-2020 Free Software Foundation, Inc. This file is part of the GNU opcodes library. @@ -22,7 +21,7 @@ #include "sysdep.h" #include #include "opcode/mn10300.h" -#include "dis-asm.h" +#include "disassemble.h" #include "opintl.h" #define HAVE_AM33_2 (info->mach == AM33_2) @@ -319,7 +318,13 @@ disassemble (bfd_vma memaddr, if ((operand->flags & MN10300_OPERAND_PLUS) != 0) nocomma = 1; - if ((operand->flags & MN10300_OPERAND_SPLIT) != 0) + if ((operand->flags & MN10300_OPERAND_DREG) != 0 + || (operand->flags & MN10300_OPERAND_AREG) != 0 + || (operand->flags & MN10300_OPERAND_RREG) != 0 + || (operand->flags & MN10300_OPERAND_XRREG) != 0) + value = ((insn >> (operand->shift + extra_shift)) + & ((1 << operand->bits) - 1)); + else if ((operand->flags & MN10300_OPERAND_SPLIT) != 0) { unsigned long temp; @@ -411,18 +416,10 @@ disassemble (bfd_vma memaddr, nocomma = 0; if ((operand->flags & MN10300_OPERAND_DREG) != 0) - { - value = ((insn >> (operand->shift + extra_shift)) - & ((1 << operand->bits) - 1)); - (*info->fprintf_func) (info->stream, "d%d", (int) value); - } + (*info->fprintf_func) (info->stream, "d%d", (int) value); else if ((operand->flags & MN10300_OPERAND_AREG) != 0) - { - value = ((insn >> (operand->shift + extra_shift)) - & ((1 << operand->bits) - 1)); - (*info->fprintf_func) (info->stream, "a%d", (int) value); - } + (*info->fprintf_func) (info->stream, "a%d", (int) value); else if ((operand->flags & MN10300_OPERAND_SP) != 0) (*info->fprintf_func) (info->stream, "sp"); @@ -435,8 +432,6 @@ disassemble (bfd_vma memaddr, else if ((operand->flags & MN10300_OPERAND_RREG) != 0) { - value = ((insn >> (operand->shift + extra_shift)) - & ((1 << operand->bits) - 1)); if (value < 8) (*info->fprintf_func) (info->stream, "r%d", (int) value); else if (value < 12) @@ -447,8 +442,6 @@ disassemble (bfd_vma memaddr, else if ((operand->flags & MN10300_OPERAND_XRREG) != 0) { - value = ((insn >> (operand->shift + extra_shift)) - & ((1 << operand->bits) - 1)); if (value == 0) (*info->fprintf_func) (info->stream, "sp"); else