fabs not being inlined?
uplink.coder at googlemail.com
Mon Feb 11 23:52:50 UTC 2019
On Saturday, 9 February 2019 at 15:38:55 UTC, kinke wrote:
> On Saturday, 9 February 2019 at 15:08:22 UTC, NaN wrote:
> Both manual versions are ugly and IMO should be avoided at all
> costs. ;) If LTO/cross-module-inlining is not an option but
> fabs performance is critical, then use the intrinsic directly:
> import ldc.intrinsics;
> alias fabs = llvm_fabs;
> The reason std.math doesn't just alias (I had a go at this
> once) is that there are some tests checking that the std.math
> functions are real functions (and that their address can be
> Looks like some linker tricks required for the MinGW-based libs
> don't work with LTO; I guess it works with the MS toolchain,
> e.g., when run inside in a Visual Studio command prompt. I'll
> spare you the dirty details.
IIRC __chkstk is a msvcrt call to dynamically grow the stack.
There might be a hidden dependency introduced by llvm?
More information about the digitalmars-d-ldc