fix sign extension problem with d30v
This commit is contained in:
parent
d018757450
commit
b7b8f32709
2 changed files with 5 additions and 4 deletions
|
@ -1,3 +1,8 @@
|
|||
2000-03-02 Michael Meissner <meissner@redhat.com>
|
||||
|
||||
* config/tc-d30v.c (check_range): Remove code that incorrectly
|
||||
sign extended values where bits < 32.
|
||||
|
||||
2000-03-02 H.J. Lu (hjl@gnu.org)
|
||||
|
||||
* configure.in: Support --enable-targets=all on ia32.
|
||||
|
|
|
@ -247,10 +247,6 @@ check_range (num, bits, flags)
|
|||
if (bits == 32 && sizeof(unsigned long) * CHAR_BIT == 32)
|
||||
return 0;
|
||||
|
||||
/* Sign extend signed values to unsigned long */
|
||||
if ((flags & OPERAND_SIGNED) && (num & ((unsigned long)1 << (bits - 1))))
|
||||
num |= ((long)-1 << (bits - 1));
|
||||
|
||||
if (flags & OPERAND_SHIFT)
|
||||
{
|
||||
/* We know that all shifts are right by three bits.... */
|
||||
|
|
Loading…
Reference in a new issue