diff options
| author | bors <bors@rust-lang.org> | 2022-12-10 11:16:18 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-12-10 11:16:18 +0000 |
| commit | b12b83674f310b85f49ba799e51f9b9f1824870c (patch) | |
| tree | 30a3fba4cc6a131f33f6da5df02a6416a4ae934d /compiler/rustc_codegen_llvm/src/context.rs | |
| parent | cbc70ff277dda8b7f227208eff789f1f68b6de5a (diff) | |
| parent | f6c2add0ed76cf2723168f76989b1704eface686 (diff) | |
| download | rust-b12b83674f310b85f49ba799e51f9b9f1824870c.tar.gz rust-b12b83674f310b85f49ba799e51f9b9f1824870c.zip | |
Auto merge of #105525 - matthiaskrgr:rollup-ricyw5s, r=matthiaskrgr
Rollup of 10 pull requests Successful merges: - #98391 (Reimplement std's thread parker on top of events on SGX) - #104019 (Compute generator sizes with `-Zprint_type_sizes`) - #104512 (Set `download-ci-llvm = "if-available"` by default when `channel = dev`) - #104901 (Implement masking in FileType comparison on Unix) - #105082 (Fix Async Generator ABI) - #105109 (Add LLVM KCFI support to the Rust compiler) - #105505 (Don't warn about unused parens when they are used by yeet expr) - #105514 (Introduce `Span::is_visible`) - #105516 (Update cargo) - #105522 (Remove wrong note for short circuiting operators) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/context.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/context.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/context.rs b/compiler/rustc_codegen_llvm/src/context.rs index 4dcc7cd5447..aa1735f38ac 100644 --- a/compiler/rustc_codegen_llvm/src/context.rs +++ b/compiler/rustc_codegen_llvm/src/context.rs @@ -250,6 +250,11 @@ pub unsafe fn create_module<'ll>( ); } + if sess.is_sanitizer_kcfi_enabled() { + let kcfi = "kcfi\0".as_ptr().cast(); + llvm::LLVMRustAddModuleFlag(llmod, llvm::LLVMModFlagBehavior::Override, kcfi, 1); + } + // Control Flow Guard is currently only supported by the MSVC linker on Windows. if sess.target.is_like_msvc { match sess.opts.cg.control_flow_guard { |
