This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: -funsafe-loop-optimizations
- From: Andi Kleen <ak at muc dot de>
- To: Zdenek Dvorak <rakdver at atrey dot karlin dot mff dot cuni dot cz>
- Cc: dje at gcc dot gnu dot org, gcc at gcc dot gnu dot org
- Date: Sat, 01 Jan 2005 10:32:58 +0100
- Subject: Re: -funsafe-loop-optimizations
- References: <20041231211409.GA22814@atrey.karlin.mff.cuni.cz>
Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz> writes:
> 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).
It would be nicer/safer to have this as a per loop pragma. This would
allow to only enable it when the programmer knows it is true for a specific
loop, without risking breaking inline code in C library includes etc.
Most other compilers seem to have pragmas like this. For unrolling
it would be useful too.
Unfortunately it seems to be non trivial to pass such attributes through
the tree-ssa passes :/
-Andi