This is the mail archive of the
mailing list for the GCC project.
Re: PATCH to expand_end_loop for better optimization
- To: mark at markmitchell dot com
- Subject: Re: PATCH to expand_end_loop for better optimization
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Mon, 17 Aug 1998 10:29:36 -0600
- cc: egcs-patches at cygnus dot com
- Reply-To: law at cygnus dot com
In message <199807170709.AAA02089@smtp.earthlink.net>you write:
> The expand_end_loop function attempts to move exit tests to the end of
> loops. This allows duplicate_loop_exit_test to duplicate the test.
> The point of all this is that then (at least the first) instructions
> in the loop body itself are guaranteed to be executed, which allows
> the loop optimizer to move more code out of loops.
> However, expand_end_loop was, for some reason, refusing to treat
> unconditional jumps out of the loop as part of the exit test, once
> it had seen a conditional jump. I corrected this, and cleaned up the
> code a bit as well.
[ ... ]
> Fri Jul 17 00:03:45 1998 Mark Mitchell <email@example.com>
> * stmt.c (expand_end_loop): Tidy. Allow unconditional
> jumps out of the loop to be treated as part of the exit test.
Thanks. I've installed this into the mainline tree.