diff options
-rw-r--r-- | opcodes/ChangeLog | 4 | ||||
-rw-r--r-- | opcodes/arc-dis.c | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 634ad27..fe26838 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,5 +1,9 @@ 2016-11-03 Graham Markall <graham.markall@embecosm.com> + * arc-dis.c (print_insn_arc): Swap highbyte and lowbyte. + +2016-11-03 Graham Markall <graham.markall@embecosm.com> + * arc-dis.c (find_format_from_table): Replace use of ARC_SHORT with arc_opcode_len. (find_format_long_instructions): Likewise. diff --git a/opcodes/arc-dis.c b/opcodes/arc-dis.c index a1aaf34..64bfecd 100644 --- a/opcodes/arc-dis.c +++ b/opcodes/arc-dis.c @@ -921,8 +921,8 @@ print_insn_arc (bfd_vma memaddr, } memset (&iter, 0, sizeof (iter)); - lowbyte = ((info->endian == BFD_ENDIAN_LITTLE) ? 1 : 0); - highbyte = ((info->endian == BFD_ENDIAN_LITTLE) ? 0 : 1); + highbyte = ((info->endian == BFD_ENDIAN_LITTLE) ? 1 : 0); + lowbyte = ((info->endian == BFD_ENDIAN_LITTLE) ? 0 : 1); if (info->section && info->section->owner) header = elf_elfheader (info->section->owner); @@ -1025,13 +1025,13 @@ print_insn_arc (bfd_vma memaddr, return size; } - insn_len = arc_insn_length (buffer[lowbyte], buffer[highbyte], info); + insn_len = arc_insn_length (buffer[highbyte], buffer[lowbyte], info); pr_debug ("instruction length = %d bytes\n", insn_len); switch (insn_len) { case 2: - insn[0] = (buffer[lowbyte] << 8) | buffer[highbyte]; + insn[0] = (buffer[highbyte] << 8) | buffer[lowbyte]; break; default: |