Musl commit 97e9b73d59 ("math: new software sqrt") adds a new algorithm
using Goldschmidt division. Port this algorithm to Rust and make it
generic, which shows a notable performance improvement over the existing
algorithm.
This also allows adding square root routines for `f16` and `f128`.
830 lines
16 KiB
JSON
830 lines
16 KiB
JSON
{
|
|
"__comment": "Autogenerated by update-api-list.py. List of files that define a function with a given name. This file is checked in to make it obvious if refactoring breaks things",
|
|
"acos": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/acos.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"acosf": {
|
|
"sources": [
|
|
"src/math/acosf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"acosh": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/acosh.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"acoshf": {
|
|
"sources": [
|
|
"src/math/acoshf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"asin": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/asin.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"asinf": {
|
|
"sources": [
|
|
"src/math/asinf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"asinh": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/asinh.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"asinhf": {
|
|
"sources": [
|
|
"src/math/asinhf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"atan": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/atan.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"atan2": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/atan2.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"atan2f": {
|
|
"sources": [
|
|
"src/math/atan2f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"atanf": {
|
|
"sources": [
|
|
"src/math/atanf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"atanh": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/atanh.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"atanhf": {
|
|
"sources": [
|
|
"src/math/atanhf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"cbrt": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/cbrt.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"cbrtf": {
|
|
"sources": [
|
|
"src/math/cbrtf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"ceil": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/arch/i586.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/ceil.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"ceilf": {
|
|
"sources": [
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/ceilf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"copysign": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/copysign.rs",
|
|
"src/math/generic/copysign.rs",
|
|
"src/math/support/float_traits.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"copysignf": {
|
|
"sources": [
|
|
"src/math/copysignf.rs",
|
|
"src/math/generic/copysign.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"copysignf128": {
|
|
"sources": [
|
|
"src/math/copysignf128.rs",
|
|
"src/math/generic/copysign.rs"
|
|
],
|
|
"type": "f128"
|
|
},
|
|
"copysignf16": {
|
|
"sources": [
|
|
"src/math/copysignf16.rs",
|
|
"src/math/generic/copysign.rs"
|
|
],
|
|
"type": "f16"
|
|
},
|
|
"cos": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/cos.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"cosf": {
|
|
"sources": [
|
|
"src/math/cosf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"cosh": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/cosh.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"coshf": {
|
|
"sources": [
|
|
"src/math/coshf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"erf": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/erf.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"erfc": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/erf.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"erfcf": {
|
|
"sources": [
|
|
"src/math/erff.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"erff": {
|
|
"sources": [
|
|
"src/math/erff.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"exp": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/exp.rs",
|
|
"src/math/support/float_traits.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"exp10": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/exp10.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"exp10f": {
|
|
"sources": [
|
|
"src/math/exp10f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"exp2": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/exp2.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"exp2f": {
|
|
"sources": [
|
|
"src/math/exp2f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"expf": {
|
|
"sources": [
|
|
"src/math/expf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"expm1": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/expm1.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"expm1f": {
|
|
"sources": [
|
|
"src/math/expm1f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fabs": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/fabs.rs",
|
|
"src/math/generic/fabs.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"fabsf": {
|
|
"sources": [
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/fabsf.rs",
|
|
"src/math/generic/fabs.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fabsf128": {
|
|
"sources": [
|
|
"src/math/fabsf128.rs",
|
|
"src/math/generic/fabs.rs"
|
|
],
|
|
"type": "f128"
|
|
},
|
|
"fabsf16": {
|
|
"sources": [
|
|
"src/math/fabsf16.rs",
|
|
"src/math/generic/fabs.rs"
|
|
],
|
|
"type": "f16"
|
|
},
|
|
"fdim": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/fdim.rs",
|
|
"src/math/generic/fdim.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"fdimf": {
|
|
"sources": [
|
|
"src/math/fdimf.rs",
|
|
"src/math/generic/fdim.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fdimf128": {
|
|
"sources": [
|
|
"src/math/fdimf128.rs",
|
|
"src/math/generic/fdim.rs"
|
|
],
|
|
"type": "f128"
|
|
},
|
|
"fdimf16": {
|
|
"sources": [
|
|
"src/math/fdimf16.rs",
|
|
"src/math/generic/fdim.rs"
|
|
],
|
|
"type": "f16"
|
|
},
|
|
"floor": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/arch/i586.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/floor.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"floorf": {
|
|
"sources": [
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/floorf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fma": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/fma.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"fmaf": {
|
|
"sources": [
|
|
"src/math/fmaf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fmax": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/fmax.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"fmaxf": {
|
|
"sources": [
|
|
"src/math/fmaxf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fmin": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/fmin.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"fminf": {
|
|
"sources": [
|
|
"src/math/fminf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"fmod": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/fmod.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"fmodf": {
|
|
"sources": [
|
|
"src/math/fmodf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"frexp": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/frexp.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"frexpf": {
|
|
"sources": [
|
|
"src/math/frexpf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"hypot": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/hypot.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"hypotf": {
|
|
"sources": [
|
|
"src/math/hypotf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"ilogb": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/ilogb.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"ilogbf": {
|
|
"sources": [
|
|
"src/math/ilogbf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"j0": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/j0.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"j0f": {
|
|
"sources": [
|
|
"src/math/j0f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"j1": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/j1.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"j1f": {
|
|
"sources": [
|
|
"src/math/j1f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"jn": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/jn.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"jnf": {
|
|
"sources": [
|
|
"src/math/jnf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"ldexp": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/ldexp.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"ldexpf": {
|
|
"sources": [
|
|
"src/math/ldexpf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"lgamma": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/lgamma.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"lgamma_r": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/lgamma_r.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"lgammaf": {
|
|
"sources": [
|
|
"src/math/lgammaf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"lgammaf_r": {
|
|
"sources": [
|
|
"src/math/lgammaf_r.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"log": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/log.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"log10": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/log10.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"log10f": {
|
|
"sources": [
|
|
"src/math/log10f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"log1p": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/log1p.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"log1pf": {
|
|
"sources": [
|
|
"src/math/log1pf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"log2": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/log2.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"log2f": {
|
|
"sources": [
|
|
"src/math/log2f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"logf": {
|
|
"sources": [
|
|
"src/math/logf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"modf": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/modf.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"modff": {
|
|
"sources": [
|
|
"src/math/modff.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"nextafter": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/nextafter.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"nextafterf": {
|
|
"sources": [
|
|
"src/math/nextafterf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"pow": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/pow.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"powf": {
|
|
"sources": [
|
|
"src/math/powf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"remainder": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/remainder.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"remainderf": {
|
|
"sources": [
|
|
"src/math/remainderf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"remquo": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/remquo.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"remquof": {
|
|
"sources": [
|
|
"src/math/remquof.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"rint": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/arch/aarch64.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/rint.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"rintf": {
|
|
"sources": [
|
|
"src/math/arch/aarch64.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/rintf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"round": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/round.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"roundf": {
|
|
"sources": [
|
|
"src/math/roundf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"scalbn": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/scalbn.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"scalbnf": {
|
|
"sources": [
|
|
"src/math/scalbnf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"sin": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/sin.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"sincos": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/sincos.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"sincosf": {
|
|
"sources": [
|
|
"src/math/sincosf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"sinf": {
|
|
"sources": [
|
|
"src/math/sinf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"sinh": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/sinh.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"sinhf": {
|
|
"sources": [
|
|
"src/math/sinhf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"sqrt": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/arch/i686.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/generic/sqrt.rs",
|
|
"src/math/sqrt.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"sqrtf": {
|
|
"sources": [
|
|
"src/math/arch/i686.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/generic/sqrt.rs",
|
|
"src/math/sqrtf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"tan": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/tan.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"tanf": {
|
|
"sources": [
|
|
"src/math/tanf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"tanh": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/tanh.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"tanhf": {
|
|
"sources": [
|
|
"src/math/tanhf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"tgamma": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/tgamma.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"tgammaf": {
|
|
"sources": [
|
|
"src/math/tgammaf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"trunc": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/generic/trunc.rs",
|
|
"src/math/trunc.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"truncf": {
|
|
"sources": [
|
|
"src/math/arch/wasm32.rs",
|
|
"src/math/generic/trunc.rs",
|
|
"src/math/truncf.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"truncf128": {
|
|
"sources": [
|
|
"src/math/generic/trunc.rs",
|
|
"src/math/truncf128.rs"
|
|
],
|
|
"type": "f128"
|
|
},
|
|
"truncf16": {
|
|
"sources": [
|
|
"src/math/generic/trunc.rs",
|
|
"src/math/truncf16.rs"
|
|
],
|
|
"type": "f16"
|
|
},
|
|
"y0": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/j0.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"y0f": {
|
|
"sources": [
|
|
"src/math/j0f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"y1": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/j1.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"y1f": {
|
|
"sources": [
|
|
"src/math/j1f.rs"
|
|
],
|
|
"type": "f32"
|
|
},
|
|
"yn": {
|
|
"sources": [
|
|
"src/libm_helper.rs",
|
|
"src/math/jn.rs"
|
|
],
|
|
"type": "f64"
|
|
},
|
|
"ynf": {
|
|
"sources": [
|
|
"src/math/jnf.rs"
|
|
],
|
|
"type": "f32"
|
|
}
|
|
}
|