On Fri, Feb 08, 2019 at 11:34:47PM +0000, Dennis via Digitalmars-d-announce 
wrote:
> On Friday, 8 February 2019 at 23:02:34 UTC, Nicholas Wilson wrote:
> > Immediately called lamdas are always inlined.
> 
> ```
> extern(C) void main() {
>     int a = (() => 1)();
> }
> ```
> 
> dmd -inline -O -release -betterC
> 
> asm:
> ```
> main:
>               push    RBP
>               mov     RBP,RSP
>               call    qword ptr pure nothrow @nogc @safe int
> onlineapp.main().__lambda1()@GOTPCREL[RIP]
>               xor     EAX,EAX
>               pop     RBP
>               ret
> ```
> 
> https://run.dlang.io/is/lZW9B6
> 
> Still a lambda call :/

Does LDC/GDC inline it?

I no longer trust dmd for codegen quality. :-/


T

-- 
Customer support: the art of getting your clients to pay for your own 
incompetence.
        • Re: DIP 1... 12345swordy via Digitalmars-d-announce
          • Re: D... Don via Digitalmars-d-announce
            • ... 12345swordy via Digitalmars-d-announce
  • Re: DIP 1016--ref T ac... bitwise via Digitalmars-d-announce
    • Re: DIP 1016--ref... Dominikus Dittes Scherkl via Digitalmars-d-announce
      • Re: DIP 1016-... bitwise via Digitalmars-d-announce
        • Re: DIP 1... Paul Backus via Digitalmars-d-announce
          • Re: D... bitwise via Digitalmars-d-announce
            • ... Nicholas Wilson via Digitalmars-d-announce
              • ... Dennis via Digitalmars-d-announce
              • ... H. S. Teoh via Digitalmars-d-announce
              • ... H. S. Teoh via Digitalmars-d-announce
              • ... Dennis via Digitalmars-d-announce
              • ... H. S. Teoh via Digitalmars-d-announce
              • ... bitwise via Digitalmars-d-announce
              • ... H. S. Teoh via Digitalmars-d-announce
              • ... Daniel N via Digitalmars-d-announce

Reply via email to