-
Notifications
You must be signed in to change notification settings - Fork 466
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Remove dependency on `packed_simd` * Support SIMD on stable Rust * Move `packed_simd.rs` to `vector` module * Add comment header to `packed_simd.rs` * Initialize SIMD registers using intrinsics instead of `transmute` * Use a splat inside of `unpack_pair` * Update README: the AVX2 backend now works on stable Rust * Add a CI job to also build the AVX2 SIMD backend on Rust stable * Added SIMD MSRV test
- Loading branch information
Showing
11 changed files
with
1,194 additions
and
862 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -55,7 +55,7 @@ jobs: | |
- run: cargo build --target thumbv7em-none-eabi --release | ||
- run: cargo build --target thumbv7em-none-eabi --release --features serde | ||
|
||
build-simd: | ||
build-simd-nightly: | ||
name: Build simd backend (nightly) | ||
runs-on: ubuntu-latest | ||
steps: | ||
|
@@ -69,6 +69,16 @@ jobs: | |
RUSTFLAGS: '--cfg curve25519_dalek_backend="simd" -C target_feature=+avx512ifma' | ||
run: cargo build --target x86_64-unknown-linux-gnu | ||
|
||
test-simd-avx2: | ||
name: Test simd backend (avx2) | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: dtolnay/rust-toolchain@stable | ||
- env: | ||
RUSTFLAGS: '--cfg curve25519_dalek_backend="simd" -C target_feature=+avx2' | ||
run: cargo test --target x86_64-unknown-linux-gnu | ||
|
||
build-docs: | ||
name: Build docs | ||
runs-on: ubuntu-latest | ||
|
@@ -151,6 +161,10 @@ jobs: | |
# deps and the stated MSRV | ||
- uses: dtolnay/[email protected] | ||
- run: cargo build --no-default-features --features serde | ||
# Also make sure the AVX2 build works | ||
- env: | ||
RUSTFLAGS: '--cfg curve25519_dalek_backend="simd" -C target_feature=+avx2' | ||
run: cargo build --target x86_64-unknown-linux-gnu | ||
|
||
bench: | ||
name: Check that benchmarks compile | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.