* config/atof-ieee.c (gen_to_words): When adding carry back in,

don't permit lp to become less than the words array.
This commit is contained in:
Ian Lance Taylor
2000-05-03 21:24:59 +00:00
parent 9bdbac4d7f
commit 6f3c4363ce
2 changed files with 9 additions and 2 deletions

View File

@@ -1,3 +1,8 @@
2000-05-03 Ian Lance Taylor <ian@zembu.com>
* config/atof-ieee.c (gen_to_words): When adding carry back in,
don't permit lp to become less than the words array.
2000-05-03 David O'Brien <obrien@NUXI.com>
* as.c (parse_args): Update copyright.

View File

@@ -1,5 +1,5 @@
/* atof_ieee.c - turn a Flonum into an IEEE floating point number
Copyright (C) 1987, 92, 93, 94, 95, 96, 97, 98, 1999
Copyright (C) 1987, 92, 93, 94, 95, 96, 97, 98, 99, 2000
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@@ -624,11 +624,13 @@ gen_to_words (words, precision, exponent_bits)
don't get a sticky sign bit after shifting right, and that
permits us to propagate the carry without any masking of bits.
#endif */
for (carry = 1, lp--; carry && (lp >= words); lp--)
for (carry = 1, lp--; carry; lp--)
{
carry = *lp + carry;
*lp = carry;
carry >>= LITTLENUM_NUMBER_OF_BITS;
if (lp == words)
break;
}
if (precision == X_PRECISION && exponent_bits == 15)
{