mirror of
https://github.com/BLAKE3-team/BLAKE3
synced 2024-05-04 15:06:13 +02:00
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.
This commit is contained in:
parent
afdaf3036b
commit
0281f1ae16
|
@ -118,15 +118,15 @@ jobs:
|
|||
# Test the assembly implementations.
|
||||
- run: make test_asm
|
||||
working-directory: ./c
|
||||
- run: make clean && rm blake3-sse41-x86_64-unix.S
|
||||
- run: make clean && rm blake3_sse41-x86_64-unix.S
|
||||
working-directory: ./c
|
||||
- run: BLAKE3_NO_SSE41=1 make test_asm
|
||||
working-directory: ./c
|
||||
- run: make clean && rm blake3-avx2-x86_64-unix.S
|
||||
- run: make clean && rm blake3_avx2-x86_64-unix.S
|
||||
working-directory: ./c
|
||||
- run: BLAKE3_NO_SSE41=1 BLAKE3_NO_AVX2=1 make test_asm
|
||||
working-directory: ./c
|
||||
- run: make clean && rm blake3-avx512-x86_64-unix.S
|
||||
- run: make clean && rm blake3_avx512-x86_64-unix.S
|
||||
working-directory: ./c
|
||||
- run: BLAKE3_NO_SSE41=1 BLAKE3_NO_AVX2=1 BLAKE3_NO_AVX512=1 make test_asm
|
||||
working-directory: ./c
|
||||
|
|
18
build.rs
18
build.rs
|
@ -87,24 +87,24 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|||
// "c_prefer_intrinsics" feature is enabled.
|
||||
if is_windows_msvc() {
|
||||
let mut build = new_build();
|
||||
build.file("c/blake3-sse41-x86_64-windows-msvc.asm");
|
||||
build.file("c/blake3-avx2-x86_64-windows-msvc.asm");
|
||||
build.file("c/blake3-avx512-x86_64-windows-msvc.asm");
|
||||
build.file("c/blake3_sse41-x86_64-windows-msvc.asm");
|
||||
build.file("c/blake3_avx2-x86_64-windows-msvc.asm");
|
||||
build.file("c/blake3_avx512-x86_64-windows-msvc.asm");
|
||||
build.compile("blake3_asm");
|
||||
} else if is_windows_gnu() {
|
||||
let mut build = new_build();
|
||||
build.file("c/blake3-sse41-x86_64-windows-gnu.S");
|
||||
build.file("c/blake3-avx2-x86_64-windows-gnu.S");
|
||||
build.file("c/blake3-avx512-x86_64-windows-gnu.S");
|
||||
build.file("c/blake3_sse41-x86_64-windows-gnu.S");
|
||||
build.file("c/blake3_avx2-x86_64-windows-gnu.S");
|
||||
build.file("c/blake3_avx512-x86_64-windows-gnu.S");
|
||||
build.compile("blake3_asm");
|
||||
} else {
|
||||
// All non-Windows implementations are assumed to support
|
||||
// Linux-style assembly. These files do contain a small
|
||||
// explicit workaround for macOS also.
|
||||
let mut build = new_build();
|
||||
build.file("c/blake3-sse41-x86_64-unix.S");
|
||||
build.file("c/blake3-avx2-x86_64-unix.S");
|
||||
build.file("c/blake3-avx512-x86_64-unix.S");
|
||||
build.file("c/blake3_sse41-x86_64-unix.S");
|
||||
build.file("c/blake3_avx2-x86_64-unix.S");
|
||||
build.file("c/blake3_avx512-x86_64-unix.S");
|
||||
build.compile("blake3_asm");
|
||||
}
|
||||
} else if is_x86_64() || is_x86_32() {
|
||||
|
|
|
@ -9,21 +9,21 @@ ifdef BLAKE3_NO_SSE41
|
|||
EXTRAFLAGS += -DBLAKE3_NO_SSE41
|
||||
else
|
||||
TARGETS += blake3_sse41.o
|
||||
ASM_TARGETS += blake3-sse41-x86_64-unix.S
|
||||
ASM_TARGETS += blake3_sse41-x86_64-unix.S
|
||||
endif
|
||||
|
||||
ifdef BLAKE3_NO_AVX2
|
||||
EXTRAFLAGS += -DBLAKE3_NO_AVX2
|
||||
else
|
||||
TARGETS += blake3_avx2.o
|
||||
ASM_TARGETS += blake3-avx2-x86_64-unix.S
|
||||
ASM_TARGETS += blake3_avx2-x86_64-unix.S
|
||||
endif
|
||||
|
||||
ifdef BLAKE3_NO_AVX512
|
||||
EXTRAFLAGS += -DBLAKE3_NO_AVX512
|
||||
else
|
||||
TARGETS += blake3_avx512.o
|
||||
ASM_TARGETS += blake3-avx512-x86_64-unix.S
|
||||
ASM_TARGETS += blake3_avx512-x86_64-unix.S
|
||||
endif
|
||||
|
||||
ifdef BLAKE3_USE_NEON
|
||||
|
|
|
@ -59,7 +59,7 @@ with a Unix-like OS, you can compile a working binary like this:
|
|||
|
||||
```bash
|
||||
gcc -O3 -o example example.c blake3.c blake3_dispatch.c blake3_portable.c \
|
||||
blake3-sse41-x86_64-unix.S blake3-avx2-x86_64-unix.S blake3-avx512-x86_64-unix.S
|
||||
blake3_sse41-x86_64-unix.S blake3_avx2-x86_64-unix.S blake3_avx512-x86_64-unix.S
|
||||
```
|
||||
|
||||
## Building
|
||||
|
@ -91,7 +91,7 @@ the assembly implementations:
|
|||
|
||||
```bash
|
||||
gcc -shared -O3 -o libblake3.so blake3.c blake3_dispatch.c blake3_portable.c \
|
||||
blake3-sse41-x86_64-unix.S blake3-avx2-x86_64-unix.S blake3-avx512-x86_64-unix.S
|
||||
blake3_sse41-x86_64-unix.S blake3_avx2-x86_64-unix.S blake3_avx512-x86_64-unix.S
|
||||
```
|
||||
|
||||
When building the intrinsics-based implementations, you need to build
|
||||
|
|
|
@ -60,24 +60,24 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|||
// "prefer_intrinsics" feature is enabled.
|
||||
if is_windows_msvc() {
|
||||
let mut build = new_build();
|
||||
build.file("../blake3-sse41-x86_64-windows-msvc.asm");
|
||||
build.file("../blake3-avx2-x86_64-windows-msvc.asm");
|
||||
build.file("../blake3-avx512-x86_64-windows-msvc.asm");
|
||||
build.file("../blake3_sse41-x86_64-windows-msvc.asm");
|
||||
build.file("../blake3_avx2-x86_64-windows-msvc.asm");
|
||||
build.file("../blake3_avx512-x86_64-windows-msvc.asm");
|
||||
build.compile("blake3_asm");
|
||||
} else if is_windows_gnu() {
|
||||
let mut build = new_build();
|
||||
build.file("../blake3-sse41-x86_64-windows-gnu.S");
|
||||
build.file("../blake3-avx2-x86_64-windows-gnu.S");
|
||||
build.file("../blake3-avx512-x86_64-windows-gnu.S");
|
||||
build.file("../blake3_sse41-x86_64-windows-gnu.S");
|
||||
build.file("../blake3_avx2-x86_64-windows-gnu.S");
|
||||
build.file("../blake3_avx512-x86_64-windows-gnu.S");
|
||||
build.compile("blake3_asm");
|
||||
} else {
|
||||
// All non-Windows implementations are assumed to support
|
||||
// Linux-style assembly. These files do contain a small
|
||||
// explicit workaround for macOS also.
|
||||
let mut build = new_build();
|
||||
build.file("../blake3-sse41-x86_64-unix.S");
|
||||
build.file("../blake3-avx2-x86_64-unix.S");
|
||||
build.file("../blake3-avx512-x86_64-unix.S");
|
||||
build.file("../blake3_sse41-x86_64-unix.S");
|
||||
build.file("../blake3_avx2-x86_64-unix.S");
|
||||
build.file("../blake3_avx512-x86_64-unix.S");
|
||||
build.compile("blake3_asm");
|
||||
}
|
||||
} else if is_x86_64() || is_x86_32() {
|
||||
|
|
Loading…
Reference in New Issue