Fix %hi() operator for 64-bit hosts.

This commit is contained in:
Nick Clifton 2006-02-10 12:05:12 +00:00
parent b6637a13d5
commit 8536c657ff
4 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2006-02-10 Nick Clifton <nickc@redhat.com>
* iq2000.opc (parse_hi16): Truncate shifted values to 16 bits.
2006-01-06 DJ Delorie <dj@redhat.com>
* m32c.cpu (mov.w:q): Fix mode.

View File

@ -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;

View File

@ -1,3 +1,7 @@
2006-02-10 Nick Clifton <nickc@redhat.com>
* iq2000-asm.c: Regenerate.
2006-02-07 Nathan Sidwell <nathan@codesourcery.com>
* m68k-dis.c (print_insn_m68k): Use bfd_m68k_mach_to_features.

View File

@ -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;