* doublest.c (convert_floatformat_to_doublest): Cast exp_bias to int.

* config/alpha/alpha-linux.mh (MH_CFLAGS): Add -mieee.
This commit is contained in:
Daniel Jacobowitz 2002-12-04 05:40:40 +00:00
parent d8ef46f5fa
commit 38c52d5ab7
3 changed files with 14 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2002-12-04 Daniel Jacobowitz <drow@mvista.com>
* doublest.c (convert_floatformat_to_doublest): Cast exp_bias to int.
* config/alpha/alpha-linux.mh (MH_CFLAGS): Add -mieee.
2002-12-03 H.J. Lu (hjl@gnu.org)
* breakpoint.c (create_thread_event_breakpoint): Use xasprintf.

View File

@ -8,3 +8,7 @@ LOADLIBES = -ldl -rdynamic
MMALLOC =
MMALLOC_CFLAGS = -DNO_MMALLOC
# doublest.c currently assumes some properties of FP arithmetic
# on the host which require this.
MH_CFLAGS = -mieee

View File

@ -172,12 +172,14 @@ convert_floatformat_to_doublest (const struct floatformat *fmt,
special_exponent = exponent == 0 || exponent == fmt->exp_nan;
/* Don't bias NaNs. Use minimum exponent for denorms. For simplicity,
we don't check for zero as the exponent doesn't matter. */
/* Don't bias NaNs. Use minimum exponent for denorms. For simplicity,
we don't check for zero as the exponent doesn't matter. Note the cast
to int; exp_bias is unsigned, so it's important to make sure the
operation is done in signed arithmetic. */
if (!special_exponent)
exponent -= fmt->exp_bias;
else if (exponent == 0)
exponent = 1 - fmt->exp_bias;
exponent = 1 - (int) fmt->exp_bias;
/* Build the result algebraically. Might go infinite, underflow, etc;
who cares. */