This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] third liveness pass


> In message <20020526191956.B2011@redhat.com>, Richard Henderson writes:
>  > On Sun, May 26, 2002 at 02:21:47PM +0200, Jan Hubicka wrote:
>  > > +       cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_PRE_LOOP);
>  > > +       life_analysis (insns, rtl_dump_file, PROP_DEATH_NOTES
>  > > + 		     | PROP_KILL_DEAD_CODE | PROP_SCAN_DEAD_CODE
>  > > + 		     | PROP_EQUAL_NOTES);
>  > > +       cleanup_cfg (CLEANUP_EXPENSIVE | CLEANUP_UPDATE_LIFE | CLEANUP_PRE
>  > _LOOP
>  > > + 		   | (flag_thread_jumps ? CLEANUP_THREADING : 0));
>  > > +       if (flag_if_conversion)
>  > > + 	if_convert (1);
>  > > +       count_or_remove_death_notes (NULL, 1);
>  > > +       reg_scan (insns, max_reg_num (), 1);
>  > > +       close_dump_file (DFI_lifeearly, print_rtl_with_bb, insns);
>  > > +     }
>  > > + 
>  > >     /* Perform global cse.  */
>  > 
>  > Hum.  Except for the call to if_convert, this might be exactly
>  > what Roger needs for his gcse jump threading pass.  Not sure if
>  > there are any transformations in gcse that would invalidate this
>  > information...
> Well, gcse is going to create new registers and may change the lifetimes of
> existing registers (on a global basis).  gcse can also remove basic blocks
> as well.

This is not problem for the liveness updating algorithm.

Honza
> 
> jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]