rust/library/stdarch
2018-11-05 09:36:55 -06:00
..
ci fix _mm_castsi128_pd and _mm_castpd_si128 impls (#581) 2018-10-23 18:10:54 +02:00
coresimd fix return type of _MM_SHUFFLE from u32 to i32 (#588) 2018-11-05 09:36:55 -06:00
crates fix _mm_castsi128_pd and _mm_castpd_si128 impls (#581) 2018-10-23 18:10:54 +02:00
examples Rename wasm32 memory intrinsics (#560) 2018-09-06 15:34:05 -07:00
stdsimd Add wasm intrinsics to documentation 2018-10-09 12:30:59 -07:00
.appveyor.yml fix _mm_castsi128_pd and _mm_castpd_si128 impls (#581) 2018-10-23 18:10:54 +02:00
.gitignore Use workspaces and fix tests 2017-11-22 13:42:58 +01:00
.travis.yml fix _mm_castsi128_pd and _mm_castpd_si128 impls (#581) 2018-10-23 18:10:54 +02:00
Cargo.toml Add wasm32 simd128 intrinsics (#549) 2018-08-15 09:20:33 -07:00
CONTRIBUTING.md Update CONTRIBUTING.md with recent changes 2018-01-29 07:17:14 -08:00
LICENSE-APACHE Add license files 2017-09-25 12:43:06 -07:00
LICENSE-MIT Add license files 2017-09-25 12:43:06 -07:00
QUESTIONS.md refactor 2017-06-19 17:06:53 -04:00
README.md update README 2018-06-23 12:57:46 +02:00
rustfmt.toml [fmt] remove fn_call_width option (was removed upstream) 2017-12-22 00:24:23 +01:00

stdsimd - Rust's standard library SIMD components

Travis-CI Status Appveyor Status Latest Version docs

Usage

stdsimd is now shipped with Rust's std library - its is part of libcore and libstd.

The easiest way to use it is just to import it via use std::arch.

The std::arch component for x86 is available in stable Rust. The std::arch components for other architectures and the std::simd component require nightly Rust.

Using stdsimd master branch is not recommended. It requires nightly Rust, it only works with particular Rust nightly versions, and it can (and does) break often. If you need to use stdsimd master branch, you can add it to your Cargo.toml as follows:

#[dependencies]
stdsimd = { git = "https://github.com/rust-lang-nursery/stdsimd.git" }

Documentation

Approach

The main goal is to expose APIs defined by vendors with the least amount of abstraction possible. On x86, for example, the API should correspond to that provided by emmintrin.h.

License

stdsimd is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.

See LICENSE-APACHE, and LICENSE-MIT for details.