inlining or not inlining...

spir denis.spir at gmail.com
Fri Feb 11 10:29:46 PST 2011


On 02/11/2011 07:08 PM, bearophile wrote:
> Jim:
>
>> I rarely need to go that low-level.
>
> Two times I have had D1 code that was too much slow compared to equivalent C code. After profiling and some changes I have understood that the cause was an important missing inline. With a list of the inlined functions (as done by CommonLisp some compilers, see the enhancement request in Bugzilla), this search becomes quicker.
>
>
>> My hope is that the compiler will sort this out in the end. Give it some time, or effort to have these optimizations implemented in the compiler.
>
> The LLVM back-end of LDC is able to inline much more, but even here a list of inlined/not inlined functions helps. D is almost a system language, so sometimes you need to go lower level (or you just need a program that's not too much slow).

To me the relevant aspect is not that much practical effect, but understanding 
how/why/what is inlined by (hopefully good) compilers. Learning about that, 
even if not much put in practice (I don't intend to write the next big 
language's compiler ;-) can only improve coding skills and, say... help and 
stop shooting in the dark.

Denis
-- 
_________________
vita es estrany
spir.wikidot.com



More information about the Digitalmars-d mailing list