CRC32C implementation with support for CPU-specific acceleration instructions (SSE 4.2) and software fallback.
To use crc32c-hw
, add this to your Cargo.toml
:
[dependencies]
crc32c-hw = "0.1.3"
extern crate crc32c_hw;
let mut crc = 0;
crc = crc32c_hw::update(crc, b"123");
crc = crc32c_hw::update(crc, b"456");
crc = crc32c_hw::update(crc, b"789");
assert_eq!(crc, 0xe3069283);
assert_eq!(crc32c_hw::compute(b"123456789"), 0xe3069283);
Distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.
See LICENSE-APACHE, and LICENSE-MIT for details.