Jonas Maebe wrote: > > 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.
Not really. I didn't try it yet but it shouldn't mess up much. The optimziation is done completely on the node level, the pascal code would look like http://www.hu.freepascal.org/fpcircbot/cgipastebin?msgid=156 except that there are temps involved to calculate the new parameters because calculating one parameter could require the original value of another one. > >> 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 -- So it will probably -OoTAILREC and automatically included in -O2. > e.g., we > could add -Oonostackframe at the end of the compiler switches for the > RTL's object unit when compiling for x86). What we still need are switches in the sources to enable particular optimizations. _______________________________________________ fpc-devel maillist - fpc-devel@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-devel