Commit graph

14 commits

Author SHA1 Message Date
Alex Crichton
6fbab9af44 Add a test for x86 runtime support
Make sure we agree with the `cupid` crate
2017-09-26 14:58:41 -07:00
Alex Crichton
b8bcdd93c6 Always test intrinsics unconditionally
This commit alters the test suite to unconditionally compile and run all tests,
regardless of the ambient target features enabled. This then uses a new
convenience macro, `#[simd_test]`, to guard all tests with the appropriate
`cfg_feature_enabled!` and also enable the `#[target_feature]` appropriately.
2017-09-26 14:38:58 -07:00
Alex Crichton
903ed4f602 Add license files
Closes #12
2017-09-25 12:43:06 -07:00
Alex Crichton
d30ac624f8 Merge pull request #31 from gnzlbg/runtime_detection
[runtime] initial run-time feature detection support
2017-09-25 14:09:26 -05:00
Alex Crichton
c77c903e88 Help debug missing assembly 2017-09-21 07:32:37 -07:00
gnzlbg
4e52b8641a Merge branch 'master' into runtime_detection 2017-09-21 13:09:46 +02:00
gnzlbg
0dc630020a [runtime] initial run-time feature detection support 2017-09-20 20:25:37 +02:00
Alex Crichton
ba7f62715a Add assertions correct instructions are generated
This commit adds a procedural macro which can be used to test instruction
generation in a lightweight way. The intention is that all functions are
annotated with:

    #[cfg_attr(test, assert_instr(maxps))]
    fn foo(...) {
        // ...
    }

and then during `cargo test --release` it'll assert the function `foo` does
indeed generate the instruction `maxps`. This only activates tests in optimized
mode to avoid debug mode inefficiencies, and it uses a literal invocation of
`objdump` and some parsing to figure out what instructions are inside each
function. Finally it also uses the `backtrace` crate to figure out the symbol
name of the relevant function and hook that up to the output of `objdump`.

I added a few assertions in the `sse` module to get some feedback, but curious
what y'all think of this!
2017-09-20 09:57:43 -07:00
Andrew Gallant
81db783a91
0.0.2 2017-09-17 18:11:04 -04:00
Andrew Gallant
edabaf0763
add doc link 2017-09-17 18:10:48 -04:00
Andrew Gallant
b2ac72c2fa
prepare for publish 2017-09-17 18:08:32 -04:00
Andrew Gallant
12121fc2bb progress 2016-11-27 01:06:39 -05:00
Andrew Gallant
c709196f7a scratch 2016-11-24 22:45:52 -05:00
Andrew Gallant
abe1abd26d initial commit 2016-11-24 20:47:25 -05:00