-
Notifications
You must be signed in to change notification settings - Fork 13
Description
A few months ago a PR failed only on the reproducible build, and it was because LIBCXX_HARDENING_MODE=fast
-- only enabled in the reproducible builds -- caught a defect.
Looking at libc++'s docs,
https://libcxx.llvm.org/Hardening.html
Extensive mode, which contains all the checks from fast mode and some additional checks for undefined behavior that incur relatively little overhead but aren’t security-critical. Production builds requiring a broader set of checks than fast mode should consider enabling extensive mode. The additional rigour impacts performance more than fast mode: we recommend benchmarking to determine if that is acceptable for your program.
It would be interesting to try the extensive mode in the reproducible builds and see what kind of performance hit it incurs. The additional safety could clearly be useful, and the documentation does state that extensive mode is still intended for production builds.
Metadata
Metadata
Assignees
Type
Projects
Status