* real.c (round_for_format): Collect sticky as unsigned long, not bool.

From-SVN: r57289
This commit is contained in:
Richard Henderson 2002-09-18 17:05:28 -07:00 committed by Richard Henderson
parent 678b77333a
commit 15769ca344
2 changed files with 7 additions and 3 deletions

View File

@ -1,3 +1,7 @@
2002-09-18 Richard Henderson <rth@redhat.com>
* real.c (round_for_format): Collect sticky as unsigned long, not bool.
2002-09-19 Alan Modra <amodra@bigpond.net.au>
* config/rs6000/rs6000.md: (floatdisf2): Rename to

View File

@ -2121,7 +2121,8 @@ round_for_format (fmt, r)
struct real_value *r;
{
int p2, np2, i, w;
bool sticky, guard, lsb;
unsigned long sticky;
bool guard, lsb;
int emin2m1, emax2;
p2 = fmt->p * fmt->log2_b;
@ -2207,8 +2208,7 @@ round_for_format (fmt, r)
sticky = 0;
for (i = 0, w = (np2 - 1) / HOST_BITS_PER_LONG; i < w; ++i)
if (r->sig[i])
sticky = 1;
sticky |= r->sig[i];
sticky |=
r->sig[w] & (((unsigned long)1 << ((np2 - 1) % HOST_BITS_PER_LONG)) - 1);