diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 82861049ba5..301d7184ceb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2007-05-17 Steve Ellcey + + PR target/31850 + * reload.c (subst_reloads): Remove checking. + 2007-05-17 Eric Botcazou PR rtl-optimization/31691 diff --git a/gcc/reload.c b/gcc/reload.c index bf220ef6bc0..243b65bd709 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -88,6 +88,9 @@ a register with any other reload. */ #define REG_OK_STRICT +/* We do not enable this with ENABLE_CHECKING, since it is awfully slow. */ +#undef DEBUG_RELOAD + #include "config.h" #include "system.h" #include "coretypes.h" @@ -6102,8 +6105,12 @@ subst_reloads (rtx insn) rtx reloadreg = rld[r->what].reg_rtx; if (reloadreg) { -#ifdef ENABLE_CHECKING - /* Internal consistency test. Check that we don't modify +#ifdef DEBUG_RELOAD + /* This checking takes a very long time on some platforms + causing the gcc.c-torture/compile/limits-fnargs.c test + to time out during testing. See PR 31850. + + Internal consistency test. Check that we don't modify anything in the equivalence arrays. Whenever something from those arrays needs to be reloaded, it must be unshared before being substituted into; the equivalence must not be modified. @@ -6125,7 +6132,7 @@ subst_reloads (rtx insn) CHECK_MODF (reg_equiv_mem); #undef CHECK_MODF } -#endif /* ENABLE_CHECKING */ +#endif /* DEBUG_RELOAD */ /* If we're replacing a LABEL_REF with a register, add a REG_LABEL note to indicate to flow which label this