From: Richard Henderson Date: Fri, 3 Sep 1999 04:51:35 +0000 (-0700) Subject: reload1.c (eliminate_regs_in_insn): Avoid eliminating the reg notes on a deleted... X-Git-Tag: prereleases/libstdc++-2.92~10861 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8a34409df67594337075cf40e4a8f23f3102ab95;p=thirdparty%2Fgcc.git reload1.c (eliminate_regs_in_insn): Avoid eliminating the reg notes on a deleted insn. * 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. From-SVN: r29076 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 771d3af68324..05d4d2eedf82 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +Thu Sep 2 21:49:52 1999 Richard Henderson + + * 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 2c299a2188f4..40ff243f2ebb 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 8b92b431effa..2a107e8e0a09 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; }