* reload.c (find_reloads_address_part): Kill rtx obstack hackery.

From-SVN: r37062
This commit is contained in:
Richard Henderson 2000-10-25 16:58:53 -07:00 committed by Richard Henderson
parent d4f1c1faff
commit 081b49f144
2 changed files with 6 additions and 18 deletions

View File

@ -1,3 +1,7 @@
2000-10-25 Richard Henderson <rth@redhat.com>
* reload.c (find_reloads_address_part): Kill rtx obstack hackery.
2000-10-25 Richard Henderson <rth@redhat.com>
* simplify-rtx.c (simplify_relational_operation): Sign extend

View File

@ -5525,18 +5525,7 @@ find_reloads_address_part (x, loc, class, mode, opnum, type, ind_levels)
{
rtx tem;
/* If this is a CONST_INT, it could have been created by a
plus_constant call in eliminate_regs, which means it may be
on the reload_obstack. reload_obstack will be freed later, so
we can't allow such RTL to be put in the constant pool. There
is code in force_const_mem to check for this case, but it doesn't
work because we have already popped off the reload_obstack, so
rtl_obstack == saveable_obstack is true at this point. */
if (GET_CODE (x) == CONST_INT)
tem = x = force_const_mem (mode, GEN_INT (INTVAL (x)));
else
tem = x = force_const_mem (mode, x);
tem = x = force_const_mem (mode, x);
find_reloads_address (mode, &tem, XEXP (tem, 0), &XEXP (tem, 0),
opnum, type, ind_levels, 0);
}
@ -5548,12 +5537,7 @@ find_reloads_address_part (x, loc, class, mode, opnum, type, ind_levels)
{
rtx tem;
/* See comment above. */
if (GET_CODE (XEXP (x, 1)) == CONST_INT)
tem = force_const_mem (GET_MODE (x), GEN_INT (INTVAL (XEXP (x, 1))));
else
tem = force_const_mem (GET_MODE (x), XEXP (x, 1));
tem = force_const_mem (GET_MODE (x), XEXP (x, 1));
x = gen_rtx_PLUS (GET_MODE (x), XEXP (x, 0), tem);
find_reloads_address (mode, &tem, XEXP (tem, 0), &XEXP (tem, 0),
opnum, type, ind_levels, 0);