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: -funsafe-loop-optimizations


Hello,

> > 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.

I have thought about this.  But the runtime checks are not for free, and
increase in code size also would not be insignificant.

Zdenek


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