Add gamma and ln_gamma functions to f32 and f64

This commit is contained in:
Andrew Kane 2023-07-31 07:41:50 -07:00
parent a17c7968b7
commit fcecaff16e
7 changed files with 158 additions and 1 deletions

View file

@ -30,4 +30,8 @@ extern "C" {
pub fn tanf(n: f32) -> f32;
pub fn tanh(n: f64) -> f64;
pub fn tanhf(n: f32) -> f32;
pub fn tgamma(n: f64) -> f64;
pub fn tgammaf(n: f32) -> f32;
pub fn lgamma_r(n: f64, s: &mut i32) -> f64;
pub fn lgammaf_r(n: f32, s: &mut i32) -> f32;
}

View file

@ -1,6 +1,6 @@
#![cfg(not(test))]
use libc::{c_double, c_float};
use libc::{c_double, c_float, c_int};
extern "C" {
pub fn acos(n: c_double) -> c_double;
@ -23,6 +23,10 @@ extern "C" {
pub fn sinh(n: c_double) -> c_double;
pub fn tan(n: c_double) -> c_double;
pub fn tanh(n: c_double) -> c_double;
pub fn tgamma(n: c_double) -> c_double;
pub fn tgammaf(n: c_float) -> c_float;
pub fn lgamma_r(n: c_double, s: &mut c_int) -> c_double;
pub fn lgammaf_r(n: c_float, s: &mut c_int) -> c_float;
}
pub use self::shims::*;