This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Mainline bootstrap failure (revision 110017)
- From: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- To: Roger Sayle <roger at eyesopen dot com>
- Cc: Kenneth Zadeck <zadeck at naturalbridge dot com>, Daniel Berlin <dberlin at dberlin dot org>, Ranjit Mathew <rmathew at gmail dot com>, Andrew Pinski <pinskia at physics dot uc dot edu>, gcc at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org, Mark Mitchell <mark at codesourcery dot com>
- Date: Tue, 24 Jan 2006 10:40:30 +0100
- Subject: Re: Mainline bootstrap failure (revision 110017)
- References: <20060120161928.GA1406@atrey.karlin.mff.cuni.cz> <Pine.LNX.4.44.0601200914360.32480-100000@www.eyesopen.com>
Hello,
> On Fri, 20 Jan 2006, Zdenek Dvorak wrote:
> > I propose the following workaround instead, that also restores
> > bootstrap. It changes the way loop-iv uses df to more conservative one,
> > that does not seem to cause problems.
>
> That's what I like to see... options. Yes, this is OK for mainline,
> please hold off on the reversion (or if necessary reapply with this
> change).
OK to revert this workaround now? Mainline now passes bootstrap &
regtesting on i686 without it.
Zdenek
* loop-iv.c (iv_analysis_loop_init): Use df analysis in a more
efficient way.
Index: loop-iv.c
===================================================================
*** loop-iv.c (revision 110143)
--- loop-iv.c (working copy)
*************** iv_analysis_loop_init (struct loop *loop
*** 250,260 ****
current_loop = loop;
/* Clear the information from the analysis of the previous loop. */
! if (!first_time)
! iv_analysis_done ();
! df = df_init (DF_HARD_REGS | DF_EQUIV_NOTES);
! df_chain_add_problem (df, DF_UD_CHAIN);
! bivs = htab_create (10, biv_hash, biv_eq, free);
for (i = 0; i < loop->num_nodes; i++)
{
--- 250,263 ----
current_loop = loop;
/* Clear the information from the analysis of the previous loop. */
! if (first_time)
! {
! df = df_init (DF_HARD_REGS | DF_EQUIV_NOTES);
! df_chain_add_problem (df, DF_UD_CHAIN);
! bivs = htab_create (10, biv_hash, biv_eq, free);
! }
! else
! clear_iv_info ();
for (i = 0; i < loop->num_nodes; i++)
{