On inlining in D libraries

Dmitry Olshansky dmitry.olsh at gmail.com
Mon Sep 9 07:58:47 PDT 2013


09-Sep-2013 18:39, Joseph Rushton Wakeling пишет:
> On 09/09/13 16:34, Dmitry Olshansky wrote:
>> On the bright side of things std.regex is real fast on LDC *when
>> hacked* to
>> inline the critical bits :)
>
> Do you mean when manually inlined, or when the design is tweaked to
> facilitate inlining?

When I put extra () to indicate that said functions are templates.
Then compiler gets its grip on them and finally inlines.
Otherwise it generates calls and links in object code from libphobos.

Which is the whole reason for the topic - is THAT is the way to go?
Shouldn't compiler look into source for inlinable stuff (when source is 
available)?

>
> My experience is that LDC is starting to pull ahead in the speed stakes
> these days [*], although it does seem to depend a bit on exactly what
> kind of code you're writing.
>
> [* Caveat: that might be due to me switching to an LLVM 3.3 backend,
> although I was starting to observe this even when I was still working
> with 3.2.]

I'm using LLVM 3.3 and fresh git clone of LDC.

-- 
Dmitry Olshansky


More information about the Digitalmars-d mailing list