japaric-archived / m

Licence: other
Deprecated in favor of the libm crate.

Programming Languages

rust
11053 projects
powershell
5483 projects
shell
77523 projects

Projects that are alternatives of or similar to m

Rhai
Rhai - An embedded scripting language for Rust.
Stars: ✭ 958 (+3448.15%)
Mutual labels:  no-std
Beef
Faster, more compact implementation of std::borrow::Cow
Stars: ✭ 189 (+600%)
Mutual labels:  no-std
register-rs
Unified interface for type-safe MMIO and CPU register access in Rust
Stars: ✭ 48 (+77.78%)
Mutual labels:  no-std
Bitmatch
A Rust crate that allows you to match, bind, and pack the individual bits of integers.
Stars: ✭ 82 (+203.7%)
Mutual labels:  no-std
Pin Project
A crate for safe and ergonomic pin-projection.
Stars: ✭ 174 (+544.44%)
Mutual labels:  no-std
Staticvec
Implements a fixed-capacity stack-allocated Vec alternative backed by an array, using const generics.
Stars: ✭ 236 (+774.07%)
Mutual labels:  no-std
Xargo
The sysroot manager that lets you build and customize `std`
Stars: ✭ 841 (+3014.81%)
Mutual labels:  no-std
drone-stm32-map
STM32 peripheral mappings for Drone, an Embedded Operating System.
Stars: ✭ 16 (-40.74%)
Mutual labels:  no-std
Auto enums
A library for to allow multiple return types by automatically generated enum.
Stars: ✭ 188 (+596.3%)
Mutual labels:  no-std
rust-amplify
Amplifying Rust language capabilities: multiple generic trait implementations, type wrappers, bit-precise numerics, derive macros
Stars: ✭ 38 (+40.74%)
Mutual labels:  no-std
Governor
A rate-limiting library for Rust (formerly ratelimit_meter)
Stars: ✭ 99 (+266.67%)
Mutual labels:  no-std
Utest
Unit `#[test]`ing for microcontrollers and other `no_std` systems
Stars: ✭ 119 (+340.74%)
Mutual labels:  no-std
mfrc522
A platform agnostic driver to interface the MFRC522 (RFID reader/writer)
Stars: ✭ 27 (+0%)
Mutual labels:  no-std
Wyhash Rs
wyhash fast portable non-cryptographic hashing algorithm and random number generator in Rust
Stars: ✭ 44 (+62.96%)
Mutual labels:  no-std
alloc-cortex-m
A heap allocator for Cortex-M processors
Stars: ✭ 139 (+414.81%)
Mutual labels:  no-std
Byte
A low-level, zero-copy, panic-free, binary serializer and deserializer. (parser and encoder)
Stars: ✭ 29 (+7.41%)
Mutual labels:  no-std
Rust Lexical
Lexical, to- and from-string conversion routines.
Stars: ✭ 192 (+611.11%)
Mutual labels:  no-std
m4vga-rs
VGA-style video output for STM32F4 processors, in Rust
Stars: ✭ 122 (+351.85%)
Mutual labels:  no-std
fixedvec-rs
Heapless vector implementation for Rust
Stars: ✭ 39 (+44.44%)
Mutual labels:  no-std
stm32f103xx
DEPRECATED
Stars: ✭ 31 (+14.81%)
Mutual labels:  no-std

PSA: this crate has been deprecated in favor of libm

libm is a port of MUSL's libm. MUSL source code proved much easier to translate to Rust, and more importantly it was easier to write a test generator that didn't require compiling C code and that worked on a bunch of different architectures.

These two aspects make such a difference that we were able to port 30 math functions to Rust in less than 24 hours.

-@japaric, 2018-07-14


crates.io crates.io

m

A C free / pure Rust mathematical library ("libm") for no_std code

This is a port of OpenLibm.

Documentation

Change log

License

The m crate is a port of the OpenLibm library, which contains code that is covered by various licenses:

The OpenLibm code derives from the FreeBSD msun and OpenBSD libm implementations, which in turn derives from FDLIBM 5.3. As a result, it has a number of fixes and updates that have accumulated over the years in msun, and also optimized assembly versions of many functions. These improvements are provided under the BSD and ISC licenses. The msun library also includes work placed under the public domain, which is noted in the individual files. Further work on making a standalone OpenLibm library from msun, as part of the Julia project is covered under the MIT license.

TL;DR OpenLibm contains code that is licensed under the 2-clause BSD, the ISC and the MIT licenses and code that is in the public domain. As a user of this code you agree to use it under these licenses. As a contributor, you agree to allow your code to be used under all these licenses as well.

Full text of the relevant licenses is in LICENSE.md.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].