LDC 1.15.0-beta1

kinke noone at nowhere.com
Sun Mar 10 11:41:36 UTC 2019


On Sunday, 10 March 2019 at 02:05:37 UTC, Manu wrote:
> Can you explain what this means:
>
> * Fix: functions annotated with `pragma(inline, true)` are
> implicitly cross-module-inlined again.

`pragma(inline, true)` functions have only been inlined in the 
same compilation unit since LDC v1.1 (without explicit 
`-enable-cross-module-inlining`). Now they are inlined across 
compilation units again, as before v1.1 (and independent from the 
-O level). E.g., this means that you don't need LTO to get rid of 
calls to std.math trampolines for LLVM intrinsics such as:

pragma(inline, true)
real fabs(real x) @safe pure nothrow @nogc { return llvm_fabs(x); 
}


More information about the Digitalmars-d-announce mailing list