Reuse unix::cmath

This commit is contained in:
Christiaan Dirkx 2021-04-24 17:50:40 +02:00
parent e11a9fa52a
commit 26fb1e373b
10 changed files with 34 additions and 118 deletions

View File

@ -1,29 +0,0 @@
// These symbols are all defined in `compiler-builtins`
extern "C" {
pub fn acos(n: f64) -> f64;
pub fn acosf(n: f32) -> f32;
pub fn asin(n: f64) -> f64;
pub fn asinf(n: f32) -> f32;
pub fn atan(n: f64) -> f64;
pub fn atan2(a: f64, b: f64) -> f64;
pub fn atan2f(a: f32, b: f32) -> f32;
pub fn atanf(n: f32) -> f32;
pub fn cbrt(n: f64) -> f64;
pub fn cbrtf(n: f32) -> f32;
pub fn cosh(n: f64) -> f64;
pub fn coshf(n: f32) -> f32;
pub fn expm1(n: f64) -> f64;
pub fn expm1f(n: f32) -> f32;
pub fn fdim(a: f64, b: f64) -> f64;
pub fn fdimf(a: f32, b: f32) -> f32;
pub fn hypot(x: f64, y: f64) -> f64;
pub fn hypotf(x: f32, y: f32) -> f32;
pub fn log1p(n: f64) -> f64;
pub fn log1pf(n: f32) -> f32;
pub fn sinh(n: f64) -> f64;
pub fn sinhf(n: f32) -> f32;
pub fn tan(n: f64) -> f64;
pub fn tanf(n: f32) -> f32;
pub fn tanh(n: f64) -> f64;
pub fn tanhf(n: f32) -> f32;
}

View File

@ -20,6 +20,7 @@
pub mod alloc; pub mod alloc;
pub mod args; pub mod args;
#[path = "../unix/cmath.rs"]
pub mod cmath; pub mod cmath;
pub mod condvar; pub mod condvar;
pub mod env; pub mod env;

View File

@ -1,31 +0,0 @@
#![cfg(not(test))]
// These symbols are all defined in `compiler-builtins`
extern "C" {
pub fn acos(n: f64) -> f64;
pub fn acosf(n: f32) -> f32;
pub fn asin(n: f64) -> f64;
pub fn asinf(n: f32) -> f32;
pub fn atan(n: f64) -> f64;
pub fn atan2(a: f64, b: f64) -> f64;
pub fn atan2f(a: f32, b: f32) -> f32;
pub fn atanf(n: f32) -> f32;
pub fn cbrt(n: f64) -> f64;
pub fn cbrtf(n: f32) -> f32;
pub fn cosh(n: f64) -> f64;
pub fn coshf(n: f32) -> f32;
pub fn expm1(n: f64) -> f64;
pub fn expm1f(n: f32) -> f32;
pub fn fdim(a: f64, b: f64) -> f64;
pub fn fdimf(a: f32, b: f32) -> f32;
pub fn hypot(x: f64, y: f64) -> f64;
pub fn hypotf(x: f32, y: f32) -> f32;
pub fn log1p(n: f64) -> f64;
pub fn log1pf(n: f32) -> f32;
pub fn sinh(n: f64) -> f64;
pub fn sinhf(n: f32) -> f32;
pub fn tan(n: f64) -> f64;
pub fn tanf(n: f32) -> f32;
pub fn tanh(n: f64) -> f64;
pub fn tanhf(n: f32) -> f32;
}

View File

@ -13,6 +13,7 @@
pub mod alloc; pub mod alloc;
pub mod args; pub mod args;
#[path = "../unix/cmath.rs"]
pub mod cmath; pub mod cmath;
pub mod condvar; pub mod condvar;
pub mod env; pub mod env;

View File

@ -1,32 +1,33 @@
#![cfg(not(test))] #![cfg(not(test))]
use libc::{c_double, c_float}; // These symbols are all defined by `libm`,
// or by `compiler-builtins` on unsupported platforms.
extern "C" { extern "C" {
pub fn acos(n: c_double) -> c_double; pub fn acos(n: f64) -> f64;
pub fn acosf(n: c_float) -> c_float; pub fn acosf(n: f32) -> f32;
pub fn asin(n: c_double) -> c_double; pub fn asin(n: f64) -> f64;
pub fn asinf(n: c_float) -> c_float; pub fn asinf(n: f32) -> f32;
pub fn atan(n: c_double) -> c_double; pub fn atan(n: f64) -> f64;
pub fn atan2(a: c_double, b: c_double) -> c_double; pub fn atan2(a: f64, b: f64) -> f64;
pub fn atan2f(a: c_float, b: c_float) -> c_float; pub fn atan2f(a: f32, b: f32) -> f32;
pub fn atanf(n: c_float) -> c_float; pub fn atanf(n: f32) -> f32;
pub fn cbrt(n: c_double) -> c_double; pub fn cbrt(n: f64) -> f64;
pub fn cbrtf(n: c_float) -> c_float; pub fn cbrtf(n: f32) -> f32;
pub fn cosh(n: c_double) -> c_double; pub fn cosh(n: f64) -> f64;
pub fn coshf(n: c_float) -> c_float; pub fn coshf(n: f32) -> f32;
pub fn expm1(n: c_double) -> c_double; pub fn expm1(n: f64) -> f64;
pub fn expm1f(n: c_float) -> c_float; pub fn expm1f(n: f32) -> f32;
pub fn fdim(a: c_double, b: c_double) -> c_double; pub fn fdim(a: f64, b: f64) -> f64;
pub fn fdimf(a: c_float, b: c_float) -> c_float; pub fn fdimf(a: f32, b: f32) -> f32;
pub fn hypot(x: c_double, y: c_double) -> c_double; pub fn hypot(x: f64, y: f64) -> f64;
pub fn hypotf(x: c_float, y: c_float) -> c_float; pub fn hypotf(x: f32, y: f32) -> f32;
pub fn log1p(n: c_double) -> c_double; pub fn log1p(n: f64) -> f64;
pub fn log1pf(n: c_float) -> c_float; pub fn log1pf(n: f32) -> f32;
pub fn sinh(n: c_double) -> c_double; pub fn sinh(n: f64) -> f64;
pub fn sinhf(n: c_float) -> c_float; pub fn sinhf(n: f32) -> f32;
pub fn tan(n: c_double) -> c_double; pub fn tan(n: f64) -> f64;
pub fn tanf(n: c_float) -> c_float; pub fn tanf(n: f32) -> f32;
pub fn tanh(n: c_double) -> c_double; pub fn tanh(n: f64) -> f64;
pub fn tanhf(n: c_float) -> c_float; pub fn tanhf(n: f32) -> f32;
} }

View File

@ -11,6 +11,7 @@
pub mod alloc; pub mod alloc;
pub mod android; pub mod android;
pub mod args; pub mod args;
#[path = "../unix/cmath.rs"]
pub mod cmath; pub mod cmath;
pub mod condvar; pub mod condvar;
pub mod env; pub mod env;

View File

@ -1,29 +0,0 @@
// These symbols are all defined in `compiler-builtins`
extern "C" {
pub fn acos(n: f64) -> f64;
pub fn acosf(n: f32) -> f32;
pub fn asin(n: f64) -> f64;
pub fn asinf(n: f32) -> f32;
pub fn atan(n: f64) -> f64;
pub fn atan2(a: f64, b: f64) -> f64;
pub fn atan2f(a: f32, b: f32) -> f32;
pub fn atanf(n: f32) -> f32;
pub fn cbrt(n: f64) -> f64;
pub fn cbrtf(n: f32) -> f32;
pub fn cosh(n: f64) -> f64;
pub fn coshf(n: f32) -> f32;
pub fn expm1(n: f64) -> f64;
pub fn expm1f(n: f32) -> f32;
pub fn fdim(a: f64, b: f64) -> f64;
pub fn fdimf(a: f32, b: f32) -> f32;
pub fn hypot(x: f64, y: f64) -> f64;
pub fn hypotf(x: f32, y: f32) -> f32;
pub fn log1p(n: f64) -> f64;
pub fn log1pf(n: f32) -> f32;
pub fn sinh(n: f64) -> f64;
pub fn sinhf(n: f32) -> f32;
pub fn tan(n: f64) -> f64;
pub fn tanf(n: f32) -> f32;
pub fn tanh(n: f64) -> f64;
pub fn tanhf(n: f32) -> f32;
}

View File

@ -2,6 +2,7 @@
pub mod alloc; pub mod alloc;
pub mod args; pub mod args;
#[path = "../unix/cmath.rs"]
pub mod cmath; pub mod cmath;
pub mod condvar; pub mod condvar;
pub mod env; pub mod env;

View File

@ -20,7 +20,7 @@
#[path = "../unix/alloc.rs"] #[path = "../unix/alloc.rs"]
pub mod alloc; pub mod alloc;
pub mod args; pub mod args;
#[path = "../unsupported/cmath.rs"] #[path = "../unix/cmath.rs"]
pub mod cmath; pub mod cmath;
#[path = "../unsupported/condvar.rs"] #[path = "../unsupported/condvar.rs"]
pub mod condvar; pub mod condvar;

View File

@ -18,7 +18,7 @@
pub mod alloc; pub mod alloc;
pub mod args; pub mod args;
#[path = "../unsupported/cmath.rs"] #[path = "../unix/cmath.rs"]
pub mod cmath; pub mod cmath;
pub mod env; pub mod env;
#[path = "../unsupported/fs.rs"] #[path = "../unsupported/fs.rs"]