1
0
mirror of https://github.com/BLAKE3-team/BLAKE3 synced 2024-11-08 12:59:17 +01:00
Commit Graph

36 Commits

Author SHA1 Message Date
Jack O'Connor
e3069da68e only run CI on branches and PRs, not tags 2020-04-02 10:23:46 -04:00
Jack O'Connor
b8cdcb1f84 automatically fall back to the pure Rust build
There are two scenarios where compiling AVX-512 C or assembly code might
not work:

1. There might not be a C compiler installed at all. Most commonly this
   is either in cross-compiling situations, or with the Windows GNU
   target.
2. The installed C compiler might not support e.g. -mavx512f, because
   it's too old.

In both of these cases, print a relevant warning, and then automatically
fall back to using the pure Rust intrinsics build.

Note that this only affects x86 targets. Other targets always use pure
Rust, unless the "neon" feature is enabled.
2020-04-01 19:13:15 -04:00
Jack O'Connor
2dff29cf0e turn all compiler warnings into errors in CI 2020-03-31 16:02:57 -04:00
Jack O'Connor
152740578e add testing-only flags to disable individual instruction sets
This lets CI test a wider range of possible SIMD support settings.
2020-03-29 23:12:47 -04:00
Jack O'Connor
e06a0f255a refactor the Cargo feature set
The biggest change here is that assembly implementations are enabled by
default.

Added features:
- "pure" (Pure Rust, with no C or assembly implementations.)

Removed features:
- "c" (Now basically the default.)

Renamed features;
- "c_prefer_intrinsics" -> "prefer_intrinsics"
- "c_neon" -> "neon"

Unchanged:
- "rayon"
- "std" (Still the only feature on by default.)
2020-03-29 18:02:03 -04:00
Jack O'Connor
96c36d5df9 add more --release mode testing 2020-03-29 01:01:30 -04:00
Jack O'Connor
be4e7babee print instruction set support quietly 2020-03-28 19:51:54 -04:00
Jack O'Connor
f77c8ffd7c print out instruction set support in CI 2020-03-28 19:30:28 -04:00
Jack O'Connor
eb50d82f16 add release assembly tests 2020-03-28 19:15:25 -04:00
Jack O'Connor
4feadee6bb disable fail-fast for cross tests too 2020-03-24 16:45:33 -04:00
Jack O'Connor
fcc14c8c1b more file renaming, use underscores more consistently 2020-02-12 18:41:41 -05:00
Erik Johansson
0281f1ae16 Rename assembly files (blake3-* -> blake3_*)
This gives the assembly files the same prefix as the intrinsics files which
simplifies building when the build system should pick between the assembly and
the intrinsics files.
2020-02-12 23:08:44 +01:00
Jack O'Connor
1c4d7fdd8d add test_asm to the C Makefile 2020-02-12 13:12:05 -05:00
Jack O'Connor
b8a1d2d982 integrate assembly implementations into blake3_c_rust_bindings 2020-02-12 10:23:17 -05:00
Jack O'Connor
efbfa0463c integrate assembly implementations into the blake3 crate 2020-02-12 10:23:17 -05:00
Jack O'Connor
ec34043b45 add cross testing on i686 to CI 2020-02-11 13:58:26 -05:00
Jack O'Connor
c0a43e5fb8 add the Windows GNU toolchain to CI 2020-02-07 13:46:42 -05:00
Jack O'Connor
ca62c4724d stop skipping all other builds when one CI build fails 2020-02-06 18:43:50 -05:00
Jack O'Connor
4a92e8eeb1 add the reference impl doc test to CI 2020-01-20 16:36:30 -05:00
Jack O'Connor
4021636022 test the BLAKE3_NO_* vars in CI 2020-01-20 16:19:16 -05:00
Jack O'Connor
84c26670bf add blake3_c_rust_bindings for testing and benchmarking 2020-01-16 16:09:42 -05:00
Jack O'Connor
9096249e09 enable CI on pull requests
As per instructions at:
https://help.github.com/en/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows
2020-01-10 10:22:12 -05:00
Jack O'Connor
a0d7b4f3f8 merge the C code's ci.yml into the top level one
CI is not currently working due to quota issues, so I'll need to check
that this is actually working later.
2020-01-09 09:48:52 -05:00
Jack O'Connor
d963fe18f3 test release mode in CI
As part of this, get rid of the BLAKE3_FUZZ_ITERATIONS variable. I
wasn't using it anywhere, and it was leading to some compiler warnings
in --no-default-features mode.
2019-12-13 13:15:48 -05:00
Jack O'Connor
9bf1020213 make the "c_avx512" feature a no-op on non-x86
This lets us enable it by default in b3sum.
2019-12-12 15:13:04 -05:00
Jack O'Connor
7cf6b8f174 initial version of b3sum 2019-12-12 13:18:57 -05:00
Jack O'Connor
59752de9bd fix syntax errors in ci.yml 2019-12-11 23:21:25 -05:00
Jack O'Connor
6823655aed run the test vectors on cross tests (ARM, MIPS) on CI 2019-12-11 23:19:58 -05:00
Jack O'Connor
a3be434d28 fix bench tests running in the wrong directory 2019-12-11 22:34:03 -05:00
Jack O'Connor
dd3a72fb9f run test vectors and bench tests in the regular CI test matrix 2019-12-11 22:30:19 -05:00
Jack O'Connor
c81d5c2522 test against test_vectors.json in CI 2019-12-11 10:50:18 -05:00
Jack O'Connor
4ca4c60694 add cargo +nightly test --benches to CI 2019-12-10 14:57:46 -05:00
Jack O'Connor
cbaf350c05 typo in ci.yml 2019-12-09 22:13:48 -05:00
Jack O'Connor
8c4cd710c3 set ARMv7 NEON compiler flags automatically 2019-12-09 21:52:24 -05:00
Jack O'Connor
61b34f35b4 fix a syntax error in ci.yml 2019-12-09 21:25:36 -05:00
Jack O'Connor
98dd9cbbf1 add ci.yml 2019-12-09 21:20:04 -05:00