diff options
| author | 许杰友 Jieyou Xu (Joe) <39484203+jieyouxu@users.noreply.github.com> | 2024-11-23 20:19:51 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-23 20:19:51 +0800 |
| commit | c6d36256a6e6b7263eef2fa3f5aafef07768ac99 (patch) | |
| tree | 04ac9ad89a2d29b85e43271187de4c34b81d9e6a /compiler/rustc_codegen_llvm/src/consts.rs | |
| parent | 6e1c11591fc7e98015f8e793a15c8faf0bda67f1 (diff) | |
| parent | 204b2281fa508cf512d343cb1631955a5dfa9e0e (diff) | |
| download | rust-c6d36256a6e6b7263eef2fa3f5aafef07768ac99.tar.gz rust-c6d36256a6e6b7263eef2fa3f5aafef07768ac99.zip | |
Rollup merge of #127483 - BertalanD:no_sanitize-global-var, r=rcvalle
Allow disabling ASan instrumentation for globals AddressSanitizer adds instrumentation to global variables unless the [`no_sanitize_address`](https://llvm.org/docs/LangRef.html#global-attributes) attribute is set on them. This commit extends the existing `#[no_sanitize(address)]` attribute to set this; previously it only had the desired effect on functions. (cc https://github.com/rust-lang/rust/issues/39699)
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/consts.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/consts.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/consts.rs b/compiler/rustc_codegen_llvm/src/consts.rs index 6f5ffbb4b34..c7114480d8b 100644 --- a/compiler/rustc_codegen_llvm/src/consts.rs +++ b/compiler/rustc_codegen_llvm/src/consts.rs @@ -470,6 +470,8 @@ impl<'ll> CodegenCx<'ll, '_> { base::set_link_section(g, attrs); } + base::set_variable_sanitizer_attrs(g, attrs); + if attrs.flags.contains(CodegenFnAttrFlags::USED) { // `USED` and `USED_LINKER` can't be used together. assert!(!attrs.flags.contains(CodegenFnAttrFlags::USED_LINKER)); |
