From: Nick Clifton Date: Fri, 10 Feb 2006 12:05:12 +0000 (+0000) Subject: Fix %hi() operator for 64-bit hosts. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8536c657ffc11014c02aa7811eda04ce8b05dd6b;p=binutils-gdb.git Fix %hi() operator for 64-bit hosts. --- diff --git a/cpu/ChangeLog b/cpu/ChangeLog index 358e366ef02..baefa5cde95 100644 --- a/cpu/ChangeLog +++ b/cpu/ChangeLog @@ -1,3 +1,7 @@ +2006-02-10 Nick Clifton + + * iq2000.opc (parse_hi16): Truncate shifted values to 16 bits. + 2006-01-06 DJ Delorie * m32c.cpu (mov.w:q): Fix mode. diff --git a/cpu/iq2000.opc b/cpu/iq2000.opc index 63ef0768dd5..528750688f4 100644 --- a/cpu/iq2000.opc +++ b/cpu/iq2000.opc @@ -218,6 +218,7 @@ parse_hi16 (CGEN_CPU_DESC cd, if (value & 0x8000) value += 0x10000; value >>= 16; + value &= 0xffff; } *valuep = value; @@ -243,6 +244,7 @@ parse_hi16 (CGEN_CPU_DESC cd, && result_type == CGEN_PARSE_OPERAND_RESULT_NUMBER) value >>= 16; + value &= 0xffff; *valuep = value; return errmsg; diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 51bbb1c8165..9de01b6c023 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2006-02-10 Nick Clifton + + * iq2000-asm.c: Regenerate. + 2006-02-07 Nathan Sidwell * m68k-dis.c (print_insn_m68k): Use bfd_m68k_mach_to_features. diff --git a/opcodes/iq2000-asm.c b/opcodes/iq2000-asm.c index caab54f500b..0ec59ce3243 100644 --- a/opcodes/iq2000-asm.c +++ b/opcodes/iq2000-asm.c @@ -213,6 +213,7 @@ parse_hi16 (CGEN_CPU_DESC cd, 1 to the resultant %hi value. */ if (value & 0x8000) value += 0x10000; + value &= 0xffff; value >>= 16; } *valuep = value; @@ -239,6 +240,7 @@ parse_hi16 (CGEN_CPU_DESC cd, && result_type == CGEN_PARSE_OPERAND_RESULT_NUMBER) value >>= 16; + value &= 0xffff; *valuep = value; return errmsg;