Avoid messing up loop notes 3 take 2

Jan Hubicka jh@suse.cz
Sat Jul 28 11:28:00 GMT 2001


> On Fri, Jul 27, 2001 at 06:48:26PM +0200, Jan Hubicka wrote:
> > 	* expr.c (loop_not_expected): New global variable.
> > 	* rtl.h (loop_not_expected): Declare.
> > 	* flow.c (try_forward_edges): Avoid removing of loop pre-headers
> > 	before loop.
> > 	* toplev.c (rest_of_compilation): Set loop_not_expected.
> 
> I sorta liked the CLEANUP_PRE_LOOP version better.
OK, I've considered it somewhat fragile, as someone later may come,
call cfg_cleanup once before loop optimizer without the flag and blast
it off.

I will update the old version and resend then.
Once we get indepdendent on loop notes, we should probably blast off
the pre-headers always and then re-create them for each natural loop
found in the loop optimizer.

This is little bit tricky with LOOP notes as they may lurk around on
inexpected places.

Honza



More information about the Gcc-patches mailing list