On Monday, 15 February 2016 at 22:29:00 UTC, Basile B. wrote:
Same for std.math.lround

they use the FP way while for float and double it's only one sse instruction. Typically with 6 functions similar to this one:


int round(float value)
{
    asm
    {
        naked;
        cvtss2si EAX, XMM0;
        ret;
    }
}

we could get ceil/trunc/round/floor, also almost as easily fmod, hypoth.
classic but I dont get why thery're not in std.math.

Goddamnit, we're in 2016.

lround and friends have been a big performance problem at times.
Everytime you can use cast(int) instead, it's way faster.

Reply via email to