At 14:03 29-5-2005, you wrote:
Jonas Maebe wrote:
On 29 May 2005, at 13:41, Peter Vreman wrote:

Doesn't the compiler attempt to inline small functions/methods
automatically as part of its optimisation (even if the inline
directive is not specified)?


No.


The inline directive is only a hint to the compiler. The behaviour is the same in D2005.

Yes, but the poster was asking whether the compiler never decided by
itself to inline something (even if no "inline" directive was
specified). That's not the case currently.

well thats soemthing you should add to your to do list. Automatic inlining can deliver a signifcant performance improvement especially as delphi uses a lot of one line procedures to set property values. A fucntion call adds quite a bit of overhead (around 10+ clock cycles at a guess)

But inlining doesn't help if the one line procedures are virtual methods. So this automatic inlining is a low priority issue.

Note that real world applications also don't benefit from optimizations. Therefor effort in creating optimizations can currently better be invested in better maintainability and extendability of the compiler and adding new features.



Peter


_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to