[fpc-devel] Tail recursion optimization

Jonas Maebe jonas.maebe at elis.ugent.be
Tue Oct 10 10:22:36 CEST 2006


On 10 okt 2006, at 10:05, Daniƫl Mantione wrote:

> If the optimization needs significant processing power, -O3. If it  
> doesn't
> but is debug safe, -O1, if it is not debug safe, -O2.

It's definitely not debug safe, since it messes up stack information.

> A separate option -OoTAILREC is IMHO not necessary.

All possible optimizations have their -Oo-switch for individual  
enabling disabling (like regvars, peepholeopt, asmcse, stackframe,  
loopunroll). It's both useful for debugging the individual  
optimizations and in case a user's program is incompatible with a  
particular optimization (either due to a bug in the optimization or  
an inherent requirement -- e.g., we could add -Oonostackframe at the  
end of the compiler switches for the RTL's object unit when compiling  
for x86).


Jonas


More information about the fpc-devel mailing list