diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 79137329f7..9ec2d50100 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +2010-05-28 Matthew Gretton-Dann + + * arm-dis.c (print_insn_neon): Ensure disassembly of Neon + constants is the same on 32-bit and 64-bit hosts. + 2010-05-27 Jason Duerstock * m68k-dis.c (print_insn_m68k): Emit undefined instructions as diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c index c5b00da0ec..3763c1ee7c 100644 --- a/opcodes/arm-dis.c +++ b/opcodes/arm-dis.c @@ -2720,7 +2720,8 @@ print_insn_neon (struct disassemble_info *info, long given, bfd_boolean thumb) } else func (stream, "#%ld\t; 0x%.8lx", - (long) (NEGATIVE_BIT_SET ? value | ~0xffffffffL : value), + (long) (((value & 0x80000000L) != 0) + ? value | ~0xffffffffL : value), value); break;