This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: -funsafe-loop-optimizations
- From: "Giovanni Bajo" <giovannibajo at libero dot it>
- To: "Zdenek Dvorak" <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- Cc: <gcc at gcc dot gnu dot org>
- Date: Sat, 1 Jan 2005 21:56:36 +0100
- Subject: Re: -funsafe-loop-optimizations
- References: <20041231211409.GA22814@atrey.karlin.mff.cuni.cz>
Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> wrote:
> several times some people sounded opinion that in addition to
> improving
> analyses in loop optimizer, we might also add a flag that would enable
> the compiler to assume that the compiled code does not contain loops
> behaving in "weird" way (loops whose control induction variables
> overflows, infinite loops with nontrivial exit conditions).
>
> I remember several people were against this possibility. Therefore
> I send the proposal for the patch implementing this flag first here
> to the gcc list, to give the chance to discuss about it before I try
> to test and submit it properly (or not).
Another idea: why don't you generate both the safe and the unsafe code testing
at runtime for the condition (e.g. n==0)? This is also what we do in autovect
to test for aligned/unaligned access. We could use this new optimization flag
to disable generate of the safe version of the loop, but we would still be
generating decent loop with the default options.
Giovanni Bajo