aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/gcse.c2
-rw-r--r--gcc/reload1.c5
3 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 771d3af..05d4d2e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+Thu Sep 2 21:49:52 1999 Richard Henderson <rth@cygnus.com>
+
+ * reload1.c (eliminate_regs_in_insn): Avoid eliminating the
+ reg notes on a deleted insn.
+ * gcse.c (hash_expr_1): Use XWINT on a CONST_DOUBLE.
+
Thu Sep 2 20:18:12 1999 Jeffrey A Law (law@cygnus.com)
* i386.c (ix86_attr_length_default): Handle TYPE_FXCH.
diff --git a/gcc/gcse.c b/gcc/gcse.c
index 2c299a2..40ff243 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -1363,7 +1363,7 @@ hash_expr_1 (x, mode, do_not_record_p)
if (GET_MODE (x) != VOIDmode)
for (i = 2; i < GET_RTX_LENGTH (CONST_DOUBLE); i++)
{
- unsigned tem = XINT (x, i);
+ unsigned tem = XWINT (x, i);
hash += tem;
}
else
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 8b92b43..2a107e8 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -3355,7 +3355,10 @@ eliminate_regs_in_insn (insn, replace)
If REPLACE isn't set, we can't delete this insn, but needn't
process it since it won't be used unless something changes. */
if (replace)
- delete_dead_insn (insn);
+ {
+ delete_dead_insn (insn);
+ return 1;
+ }
val = 1;
goto done;
}