aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/fp-bit.c
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2001-01-31 11:04:33 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2001-01-31 11:04:33 +0000
commit8b1065f175b12ed568852af5a054c8592641f699 (patch)
tree5aaeeb779c9206aa1bc7eaf352ef209e4e2b6c82 /gcc/config/fp-bit.c
parent0aca1a4fd3d3f5fbfbbbfcc8e29a3f1cbb45d56a (diff)
downloadgcc-8b1065f175b12ed568852af5a054c8592641f699.zip
gcc-8b1065f175b12ed568852af5a054c8592641f699.tar.gz
gcc-8b1065f175b12ed568852af5a054c8592641f699.tar.bz2
fp-bit.c: Include hconfig.h
* config/fp-bit.c: Include hconfig.h (float_to_si): Don't assume SImode is 32-bits wide. (float_to_usi): Likewise. From-SVN: r39373
Diffstat (limited to 'gcc/config/fp-bit.c')
-rw-r--r--gcc/config/fp-bit.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/config/fp-bit.c b/gcc/config/fp-bit.c
index 4269970..07d2151 100644
--- a/gcc/config/fp-bit.c
+++ b/gcc/config/fp-bit.c
@@ -1,8 +1,8 @@
/* This is a software floating point library which can be used instead of
the floating point routines in libgcc1.c for targets without hardware
floating point.
- Copyright (C) 1994, 1995, 1996, 1997, 1998,
- 2000 Free Software Foundation, Inc.
+ Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001
+ Free Software Foundation, Inc.
This file is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
@@ -45,6 +45,7 @@ Boston, MA 02111-1307, USA. */
to one copy, then compile both copies and add them to libgcc.a. */
#include "fp-bit.h"
+#include "hconfig.h"
/* The following macros can be defined to change the behaviour of this file:
FLOAT: Implement a `float', aka SFmode, fp library. If this is not
@@ -1222,7 +1223,7 @@ float_to_si (FLO_type arg_a)
/* it is a number, but a small one */
if (a.normal_exp < 0)
return 0;
- if (a.normal_exp > 30)
+ if (a.normal_exp > 4 * BITS_PER_UNIT - 2)
return a.sign ? (-MAX_SI_INT)-1 : MAX_SI_INT;
tmp = a.fraction.ll >> ((FRACBITS + NGARDS) - a.normal_exp);
return a.sign ? (-tmp) : (tmp);
@@ -1259,7 +1260,7 @@ float_to_usi (FLO_type arg_a)
/* it is a number, but a small one */
if (a.normal_exp < 0)
return 0;
- if (a.normal_exp > 31)
+ if (a.normal_exp > 4 * BITS_PER_UNIT - 1)
return MAX_USI_INT;
else if (a.normal_exp > (FRACBITS + NGARDS))
return a.fraction.ll << (a.normal_exp - (FRACBITS + NGARDS));