Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
Rounds a float
to an int64
using the current rounding mode. The default rounding mode is "round half to even", and we expect that no program will change the rounding mode.
If the argument is NaN or infinite or if the rounded value cannot be represented, then the result is unspecified.
On an x86-64 machine, this compiles to cvtsd2si rax, xmm0
. On ARM, this calls a C implementation.
Equivalent to if x < y then x else y
.
On an x86-64 machine, this compiles to minsd xmm0, xmm1
. On ARM, this calls a C implementation.
Equivalent to if x > y then x else y
.
On an x86-64 machine, this compiles to maxsd xmm0, xmm1
. On ARM, this calls a C implementation.
Rounds a float
to an integer float
using the current rounding mode. The default rounding mode is "round half to even", and we expect that no program will change the rounding mode.
On an x86-64 machine, this compiles to roundsd xmm0, xmm1, $12
. Requires SSE4.1. On ARM, this calls a C implementation.
Rounds a float
to an integer float
using the mode specified in the function name.
On an x86-64 machine, these compile to roundsd xmm0, xmm1, $N
. Requires SSE4.1. On ARM, these call a C implementation.