aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sim/mips/ChangeLog5
-rw-r--r--sim/mips/cp1.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/sim/mips/ChangeLog b/sim/mips/ChangeLog
index 9b75782..5ff1ef0 100644
--- a/sim/mips/ChangeLog
+++ b/sim/mips/ChangeLog
@@ -1,3 +1,8 @@
+2002-07-29 Michael Snyder <msnyder@redhat.com>
+
+ * cp1.c (fp_recip2): Modify initialization expression so that
+ GCC will recognize it as constant.
+
2002-06-18 Chris Demetriou <cgd@broadcom.com>
* mdmx.c (SD_): Delete.
diff --git a/sim/mips/cp1.c b/sim/mips/cp1.c
index 26249f0..ea0f599 100644
--- a/sim/mips/cp1.c
+++ b/sim/mips/cp1.c
@@ -1235,7 +1235,7 @@ fp_recip2(sim_cpu *cpu,
{
static const unsigned64 one_single = UNSIGNED64 (0x3F800000);
static const unsigned64 one_double = UNSIGNED64 (0x3FF0000000000000);
- static const unsigned64 one_ps = (one_single << 32 | one_single);
+ static const unsigned64 one_ps = (UNSIGNED64 (0x3F800000) << 32 | UNSIGNED64 (0x3F800000));
unsigned64 one;
/* Implemented as nmsub fd, 1, fs, ft. */
@@ -1333,7 +1333,7 @@ fp_rsqrt2(sim_cpu *cpu,
{
static const unsigned64 half_single = UNSIGNED64 (0x3F000000);
static const unsigned64 half_double = UNSIGNED64 (0x3FE0000000000000);
- static const unsigned64 half_ps = (half_single << 32 | half_single);
+ static const unsigned64 half_ps = (UNSIGNED64 (0x3F000000) << 32 | UNSIGNED64 (0x3F000000));
unsigned64 half;
/* Implemented as (nmsub fd, 0.5, fs, ft)/2, where the divide is