about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
diff options
context:
space:
mode:
authorDaniel Bertalan <dani@danielbertalan.dev>2024-07-08 15:49:50 +0200
committerDaniel Bertalan <dani@danielbertalan.dev>2024-11-02 22:35:34 +0100
commit204b2281fa508cf512d343cb1631955a5dfa9e0e (patch)
tree1221c0c6c1107f69fa573af702b353f867e606b4 /compiler/rustc_codegen_llvm/src/llvm/ffi.rs
parent00ed73cdc09a6452cb58202d56a9211fb3c73031 (diff)
downloadrust-204b2281fa508cf512d343cb1631955a5dfa9e0e.tar.gz
rust-204b2281fa508cf512d343cb1631955a5dfa9e0e.zip
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.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/llvm/ffi.rs')
-rw-r--r--compiler/rustc_codegen_llvm/src/llvm/ffi.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
index 5fad7583e1a..2679d8ba9fe 100644
--- a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
+++ b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
@@ -2474,4 +2474,7 @@ unsafe extern "C" {
     pub fn LLVMRustIs64BitSymbolicFile(buf_ptr: *const u8, buf_len: usize) -> bool;
 
     pub fn LLVMRustIsECObject(buf_ptr: *const u8, buf_len: usize) -> bool;
+
+    pub fn LLVMRustSetNoSanitizeAddress(Global: &Value);
+    pub fn LLVMRustSetNoSanitizeHWAddress(Global: &Value);
 }