X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=opcodes%2Favr-dis.c;h=23d5b3f6f2c834c96e0c1c00c140960895838e16;hb=c2e5c986b3825c16a578e5bf84aa412eec276dc7;hp=16467b8a5a59a23184b6a8d093e52198eeb6455a;hpb=219d1afa89d0d53ca93a684cac341f16470f3ca0;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/avr-dis.c b/opcodes/avr-dis.c index 16467b8a5a..23d5b3f6f2 100644 --- a/opcodes/avr-dis.c +++ b/opcodes/avr-dis.c @@ -1,5 +1,5 @@ /* Disassemble AVR instructions. - Copyright (C) 1999-2018 Free Software Foundation, Inc. + Copyright (C) 1999-2020 Free Software Foundation, Inc. Contributed by Denis Chertykov @@ -198,6 +198,8 @@ avr_operand (unsigned int insn, unsigned int insn2, unsigned int pc, int constra { unsigned int val = ((insn & 0xf) | ((insn & 0x600) >> 5) | ((insn & 0x100) >> 2)); + if ((insn & 0x100) == 0) + val |= 0x80; *sym = 1; *sym_addr = val | 0x800000; sprintf (buf, "0x%02x", val); @@ -212,7 +214,8 @@ avr_operand (unsigned int insn, unsigned int insn2, unsigned int pc, int constra case 'n': sprintf (buf, "??"); - fprintf (stderr, _("Internal disassembler error")); + /* xgettext:c-format */ + opcodes_error_handler (_("internal disassembler error")); ok = 0; break; @@ -265,7 +268,8 @@ avr_operand (unsigned int insn, unsigned int insn2, unsigned int pc, int constra default: sprintf (buf, "??"); - fprintf (stderr, _("unknown constraint `%c'"), constraint); + /* xgettext:c-format */ + opcodes_error_handler (_("unknown constraint `%c'"), constraint); ok = 0; }