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++)
{