hashes icon indicating copy to clipboard operation
hashes copied to clipboard

sha2: use ARM intrinsics rather than ASM

Open tarcieri opened this issue 1 year ago • 1 comments

As of Rust 1.76, the SHA-256 NEON intrinsics are stable, but the SHA-512 ones are not. See tracking issue here: https://github.com/rust-lang/rust/issues/117225

We currently use asm! for both algorithms to "emulate" the relevant unstable intrinsics.

It probably doesn't make sense to switch only SHA-256 to the intrinsics, which would necessitate what's currently an aggressive MSRV bump to 1.76, but wouldn't completely get rid of the asm!.

When the SHA-512 intrinsics have been stabilized and we're ready to bump MSRV, we can migrate both implementations.

tarcieri avatar Mar 12 '24 16:03 tarcieri

This PR stabilizes the SHA-512 intrinsics: https://github.com/rust-lang/stdarch/pull/1552

tarcieri avatar Mar 13 '24 18:03 tarcieri