dalek-cryptography / curve25519-dalek

A pure-Rust implementation of group operations on Ristretto and Curve25519
Other
879 stars 446 forks source link

Allow disabled SIMD support on x86_64 baremetal targets #689

Open DarkKirb opened 1 month ago

DarkKirb commented 1 month ago

Related to #552

Currently, on x86_64 baremetal targets and UEFI, compiling curve25519-dalek fails with the error message:

rustc-LLVM ERROR: Do not know how to split the result of this operator!

this is because these targets disable FPU support (target features -mmx,-sse,+soft-float). It would be nice to have some sort of opt-out like sha2’s force-soft feature.

tarcieri commented 1 month ago

That's surprising, because cpufeatures should already take care of this: https://github.com/RustCrypto/utils/pull/821