Skip to content
This repository was archived by the owner on Jan 22, 2024. It is now read-only.

mtb0x1/fdlibm-rs

Repository files navigation

Fdlibm-rs

This crate is a rust wrapper of fdlibm.

Usage

Run the following Cargo command in your project directory:

cargo add fdlibm-rs
use fdlibm_rs::sin;
let value = unsafe {sin(1.0)};
println!("sin(1)={}",value);

Disclaimer

  1. This lib is currently in beta version, some of functions doesn't have unit tests and some are buggy (gamma).
  2. Other modes decribed in fdlibm are not supported yet.

Todo

  1. Avoid using std::, instead use core:: when possible.

  2. Support other targets (wip):

    • [] aarch64-pc-windows-gnullvm
    • aarch64-linux-android
    • aarch64-unknown-linux-gnu
    • aarch64-unknown-linux-musl
    • x86_64-linux-android
    • x86_64-pc-windows-gnu
    • x86_64-unknown-linux-gnu
    • x86_64-unknown-linux-musl
  3. Support other Modes.

  4. Benchmarks (wip, only on x86_64-unknown-linux-gnu).