rust/compiler/rustc_metadata/src
Stuart Cook efdc8aca3e
Rollup merge of #147043 - ilovepi:default-sanitizers, r=petrochenkov
Add default sanitizers to TargetOptions

Some sanitizers are part of a system's ABI, like the shadow call stack on Aarch64 and RISC-V Fuchsia. Typically ABI options have other spellings, but LLVM has, for historical reasons, marked this as a sanitizer instead of an alternate ABI option. As a result, Fuchsia targets may not be compiled against the correct ABI unless this option is set. This hasn't caused correctness problems, since the backend reserves the SCS register, and thus preserves its value. But this is an issue for unwinding, as the SCS will not be an array of PCs describing the call complete call chain, and will have gaps from callers that don't use the correct ABI.

In the long term, I'd like to see all the sanitizer configs that all frontends copy from clang moved into llvm's libFrontend, and exposed so that frontend consumers can use a small set of simple APIs to use sanitizers in a consistent way across the LLVM ecosystem, but that work is not yet ready today.
2025-11-06 14:07:16 +11:00
..
rmeta Rollup merge of #148306 - zetanumbers:expn_id_decode, r=nnethercote 2025-11-03 17:20:38 +01:00
creader.rs Add default sanitizers to TargetOptions 2025-11-03 17:36:32 -06:00
dependency_format.rs Add panic=immediate-abort 2025-09-21 13:12:18 -04:00
errors.rs Add panic=immediate-abort 2025-09-21 13:12:18 -04:00
foreign_modules.rs Retire hir::ForeignItemRef. 2025-07-13 13:50:00 +00:00
fs.rs Move metadata object generation for dylibs to the linker code 2025-06-03 10:04:34 +00:00
lib.rs Unify the configuration of the compiler docs 2025-11-05 11:25:27 +00:00
locator.rs use let chains in hir, lint, mir 2025-07-28 06:10:14 +05:00
native_libs.rs Rollup merge of #147043 - ilovepi:default-sanitizers, r=petrochenkov 2025-11-06 14:07:16 +11:00