aboutsummaryrefslogtreecommitdiff
path: root/c/README.md
AgeCommit message (Collapse)Author
2025-04-19c: fix cmake call in docsPavel Shago
2025-03-15example_tbb.cJack O'Connor
2025-03-13README.md and c/README.md edits related to multithreadingJack O'Connor
2025-03-13Implement TBB-based parallelism for C libsilvanshade
2023-05-23Fix typosJoel Rosdahl
2022-07-22replace a copy-pasted Rust API reference in the C docsJack O'Connor
2022-04-09add prototypes to fix -Wstrict-prototypes warningsFangrui Song
2022-03-04add "(if any)" regarding keying in the security notesJack O'Connor
2022-03-03correct the security notes for the C APIJack O'Connor
2022-03-03simplify a bit moreJack O'Connor
2022-03-02simplify the security notes, avoid referring to entropyJack O'Connor
2022-03-02copy the same notes to the C docsJack O'Connor
2022-01-07add blake3_hasher_reset to the C APIJack O'Connor
2021-10-21a small capitalization changeJack O'Connor
2021-10-12Use BLAKE3_USE_NEON=0 instead of BLAKE3_NO_NEON defrsdy
2021-10-08Make the C implementation default to using NEON on aarch64rsdy
2021-08-24handle IO errors in example.cJack O'Connor
2021-05-18explicitly document the properties of short outputsJack O'Connor
Suggested by @joshtriplett at: https://github.com/BLAKE3-team/BLAKE3/issues/168#issuecomment-829609667
2021-02-18clarify C build instructions a bitJack O'Connor
2021-02-05replace the 'Differences' section with 'Multithreading'Jack O'Connor
2020-10-20include example.cJack O'Connor
2020-10-20readme tweaksJack O'Connor
2020-09-10add some horizontal rules to the C readmeJack O'Connor
2020-09-10C readme editsJack O'Connor
2020-09-10Merge pull request #114 from k0001/no-cstrJack O'Connor
C: Add blake3_hasher_init_derive_key_len
2020-09-01C: rename blake3_hasher_init_derive_key_raw and documentationRenzo Carbonara
2020-08-31Merge pull request #110 from mkrupcale/sse2Samuel Neves
Add SSE2 implementations
2020-08-30C: Add blake3_hasher_init_derive_key_lenRenzo Carbonara
blake3_hasher_init_derive_key_len is an alternative version of blake3_hasher_init_derive_key which takes the context and its length as separate parameters, and not together as a C string. The motivation for this addition is making it easier for bindings to this C library to call this function without having to first copy over the context bytes just to add one 0x00 byte at the end. Notice that contrary to blake3_hasher_init_derive_key, blake3_hasher_init_derive_key_len allows the inclusion of a 0x00 byte in the context. Given the rules about context string selection, this byte is unlikely to be used as part of a context string. But if for some reason it is ever given, it will be included in the context string and processed like any other non-alphanumeric byte would. For compatibility with blake3_hasher_init_derive_key, bindings should still check for the absence of 0x00 bytes.
2020-08-26wording tweak in the C readmeJack O'Connor
2020-08-24Start SSE2 implementation based on SSE4.1 versionMatthew Krupcale
Wire up basic functions and features for SSE2 support using the SSE4.1 version as a basis without implementing the SSE2 instructions yet. * Cargo.toml: add no_sse2 feature * benches/bench.rs: wire SSE2 benchmarks * build.rs: add SSE2 rust intrinsics and assembly builds * c/Makefile.testing: add SSE2 C and assembly targets * c/README.md: add SSE2 to C build instructions * c/blake3_c_rust_bindings/build.rs: add SSE2 C rust binding builds * c/blake3_c_rust_bindings/src/lib.rs: add SSE2 C rust bindings * c/blake3_dispatch.c: add SSE2 C dispatch * c/blake3_impl.h: add SSE2 C function prototypes * c/blake3_sse2.c: add SSE2 C intrinsic file starting with SSE4.1 version * c/blake3_sse2_x86-64_{unix.S,windows_gnu.S,windows_msvc.asm}: add SSE2 assembly files starting with SSE4.1 version * src/ffi_sse2.rs: add rust implementation using SSE2 C rust bindings * src/lib.rs: add SSE2 rust intrinsics and SSE2 C rust binding rust SSE2 module configurations * src/platform.rs: add SSE2 rust platform detection and dispatch * src/rust_sse2.rs: add SSE2 rust intrinsic file starting with SSE4.1 version * tools/instruction_set_support/src/main.rs: add SSE2 feature detection
2020-07-20clarify multithreading support in the C readmeJack O'Connor
Fixes https://github.com/BLAKE3-team/BLAKE3/issues/99.
2020-03-25C files -> C and assembly filesJack O'Connor
2020-03-25c/README.md changesJack O'Connor
The C implementation now supports output seeking. Also expand the API section a bit, and reorganize things to put the example on top.
2020-03-01clean up the C example a bitJack O'Connor
2020-02-12more file renaming, use underscores more consistentlyJack O'Connor
2020-02-12Rename assembly files (blake3-* -> blake3_*)Erik Johansson
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-12document how to build the C code with assembly implementationsJack O'Connor
2020-01-29formating in c/README.mdJack O'Connor
2020-01-29update the c/README.md example to hash stdinJack O'Connor
2020-01-28add NEON support to blake3_dispatch.cJack O'Connor
Currently this requires setting the BLAKE3_USE_NEON preprocessor flag. In the future we may enable this automatically on AArch32/64 or include some kind of dynamic feature detection. (Though ARM makes this harder than x86.) As part of this, get rid of the IS_ARM flag. It wasn't being set properly when I tried it on a Raspberry Pi. Closes #30.
2020-01-27add a note about AVX-512 flagsJack O'Connor
2020-01-26typoJack O'Connor
2020-01-26expand the C README for public consumptionJack O'Connor
2020-01-09replace the C code README with a "not yet ready" remarkJack O'Connor
2020-01-09merge BLAKE3-c into this repoJack O'Connor
This is commit 4476d9da0e370993823e7ad17592b84e905afd76 of https://github.com/veorq/BLAKE3-c.