This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
rtl checking fixes
- To: gcc-patches at gcc dot gnu dot org
- Subject: rtl checking fixes
- From: Richard Henderson <rth at cygnus dot com>
- Date: Thu, 2 Sep 1999 21:53:49 -0700
Two things that showed up on Alpha just building libgcc.a.
r~
* 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.
Index: reload1.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/reload1.c,v
retrieving revision 1.156
diff -c -p -d -r1.156 reload1.c
*** reload1.c 1999/09/01 14:30:34 1.156
--- reload1.c 1999/09/03 04:45:29
*************** eliminate_regs_in_insn (insn, replace)
*** 3355,3361 ****
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);
val = 1;
goto done;
}
--- 3355,3364 ----
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);
! return 1;
! }
val = 1;
goto done;
}
Index: gcse.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/gcse.c,v
retrieving revision 1.47
diff -c -p -d -r1.47 gcse.c
*** gcse.c 1999/09/02 17:29:21 1.47
--- gcse.c 1999/09/03 04:49:22
*************** hash_expr_1 (x, mode, do_not_record_p)
*** 1363,1369 ****
if (GET_MODE (x) != VOIDmode)
for (i = 2; i < GET_RTX_LENGTH (CONST_DOUBLE); i++)
{
! unsigned tem = XINT (x, i);
hash += tem;
}
else
--- 1363,1369 ----
if (GET_MODE (x) != VOIDmode)
for (i = 2; i < GET_RTX_LENGTH (CONST_DOUBLE); i++)
{
! unsigned tem = XWINT (x, i);
hash += tem;
}
else