Inlining of immediately called function literals
via Digitalmars-d
digitalmars-d at puremagic.com
Sun Jul 27 01:00:54 PDT 2014
On Sunday, 27 July 2014 at 07:48:18 UTC, Marc Schütz wrote:
> On Sunday, 27 July 2014 at 07:01:52 UTC, Daniel Murphy wrote:
>> "Dicebot" wrote in message
>> news:xpjsskmamagclzoiwtxb at forum.dlang.org...
>>
>>> I can't PR but there were one by Kenji that did inline of
>>> such calls in the frontend providing 100% gurantee whatever
>>> backend is used.
>>
>> There is no 100% guarantee, the frontend's inliner is not
>> capable of inlining the majority of function calls. The only
>> guarantee is that it will try to inline the lambda whether or
>> not the -inline switch is used.
>
> Too bad... If it was guaranteed, there would then be a compiler
> independent way to force inlining. Is there a chance that the
> limits to inlining in DMD will ever be removed?
IIRC the core reason is that expression nodes in the AST cannot
contain statements. Isn't it possible to create a "bridge" node
type that is allowed to appear in expressions, but may also
contain statements?
More information about the Digitalmars-d
mailing list