11 lines
325 B
D
11 lines
325 B
D
module core.math;
|
|
|
|
pragma(LDC_intrinsic, "llvm.sqrt.f32")
|
|
float llvm_sqrt(float x) pure nothrow @nogc @safe;
|
|
|
|
pragma(LDC_intrinsic, "llvm.sqrt.f64")
|
|
double llvm_sqrt(double x) pure nothrow @nogc @safe;
|
|
|
|
float sqrt(float x ) => x < 0 ? float.nan : llvm_sqrt(x);
|
|
double sqrt(double x) => x < 0 ? double.nan : llvm_sqrt(x);
|