Files
rust/library/stdarch
Thomas Schilling 05b045746a SSE Comparison instructions (#111)
* Add _mm_cmp*_ps variant (SSE)

* Add _mm_comi{eq,lt,le,gt,ge,neq}_ss instructions (sse)

* Add _mm_ucomi*_ss instructions SSE

They all compile down to the same x86 instruction, UCOMISS, whereas the
_mm_comi*_ss instructions compile down to COMISS. The outputs of both
sets of instructions are exactly the same. The only difference is in
exception handling. I therefore added a single test case which tests
their different effect on the MXCSR register (_mm_getcsr) of
_mm_comieq_ss vs. _mm_ucomieq_ss. Together with the tests about emitting
the right instruction, no tests further tests are needed for the other
variants.

* Avoid constant-folding test case
2017-10-12 13:47:21 -04:00
..
2017-10-11 17:33:41 -07:00
2017-10-12 13:47:21 -04:00
2017-09-26 14:58:41 -07:00
2017-10-11 11:28:02 -04:00
2016-12-02 21:46:58 -05:00
2017-10-06 22:54:18 +00:00
2017-09-26 14:58:41 -07:00
2017-09-25 12:43:06 -07:00
2017-09-25 12:43:06 -07:00
2017-06-19 17:06:53 -04:00
2017-09-25 13:45:00 -07:00

stdsimd

Experimental support for SIMD destined to eventually become part of Rust's standard library

Build Status Build status

This is a work in progress.

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.