Effective work with std.experimental.ndslice and and
mir.ndslice.array requires half of std.math be an exactly aliases
to LLVM intrinsics (for LDC).
To enable vectorization for mir.ndslice.algorithm I created
internal math module [1] in Mir. But this is weird, because third
side packages like DCV [2] requires to use the module too. Also,
some optimisation for std.complex and future
std.exprimental.color would be very ugly without proposed change.
Proposed change is very simple:
Each math function listed in [1] should be a template for DMD/GDC
and an alias for LDC in std.math.
If some one has strong arguments against it, please let me know
now.
[1]
https://github.com/libmir/mir/blob/master/source/mir/internal/math.d
[2] https://github.com/ljubobratovicrelja/dcv
Best regards,
Ilya