X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=opcodes%2Fbfin-dis.c;h=82bedbc7396070628db9f7a8636ee54be0f6fa87;hb=a8eb42a8b7d48ff6bd12ac83b0e31967b4f5abf1;hp=54fac225341417c212c10cf7e80d84745458de1c;hpb=b6518b3871859f9eeb7653bf2f3baaa43fa0a5d0;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/bfin-dis.c b/opcodes/bfin-dis.c index 54fac22534..82bedbc739 100644 --- a/opcodes/bfin-dis.c +++ b/opcodes/bfin-dis.c @@ -1,5 +1,5 @@ /* Disassemble ADI Blackfin Instructions. - Copyright (C) 2005-2015 Free Software Foundation, Inc. + Copyright (C) 2005-2018 Free Software Foundation, Inc. This file is part of libopcodes. @@ -38,7 +38,7 @@ typedef long TIword; #define SIGNEXTEND(v, n) ((v << (HOST_LONG_WORD_SIZE - (n))) >> (HOST_LONG_WORD_SIZE - (n))) #define MASKBITS(val, bits) (val & ((1 << bits) - 1)) -#include "dis-asm.h" +#include "disassemble.h" typedef unsigned int bu32; @@ -350,7 +350,7 @@ static const enum machine_registers decode_gregs[] = REG_P0, REG_P1, REG_P2, REG_P3, REG_P4, REG_P5, REG_SP, REG_FP, }; -#define gregs(x, i) REGNAME (decode_gregs[((i) << 3) | (x)]) +#define gregs(x, i) REGNAME (decode_gregs[(((i) << 3) | (x)) & 15]) /* [dregs pregs (iregs mregs) (bregs lregs)]. */ static const enum machine_registers decode_regs[] = @@ -361,7 +361,7 @@ static const enum machine_registers decode_regs[] = REG_B0, REG_B1, REG_B2, REG_B3, REG_L0, REG_L1, REG_L2, REG_L3, }; -#define regs(x, i) REGNAME (decode_regs[((i) << 3) | (x)]) +#define regs(x, i) REGNAME (decode_regs[(((i) << 3) | (x)) & 31]) /* [dregs pregs (iregs mregs) (bregs lregs) Low Half]. */ static const enum machine_registers decode_regs_lo[] = @@ -372,7 +372,7 @@ static const enum machine_registers decode_regs_lo[] = REG_BL0, REG_BL1, REG_BL2, REG_BL3, REG_LL0, REG_LL1, REG_LL2, REG_LL3, }; -#define regs_lo(x, i) REGNAME (decode_regs_lo[((i) << 3) | (x)]) +#define regs_lo(x, i) REGNAME (decode_regs_lo[(((i) << 3) | (x)) & 31]) /* [dregs pregs (iregs mregs) (bregs lregs) High Half]. */ static const enum machine_registers decode_regs_hi[] = @@ -383,7 +383,7 @@ static const enum machine_registers decode_regs_hi[] = REG_BH0, REG_BH1, REG_BH2, REG_BH3, REG_LH0, REG_LH1, REG_LH2, REG_LH3, }; -#define regs_hi(x, i) REGNAME (decode_regs_hi[((i) << 3) | (x)]) +#define regs_hi(x, i) REGNAME (decode_regs_hi[(((i) << 3) | (x)) & 31]) static const enum machine_registers decode_statbits[] = {