diff options
| author | Ramon de C Valle <rcvalle@users.noreply.github.com> | 2023-05-03 22:22:24 +0000 |
|---|---|---|
| committer | Ramon de C Valle <rcvalle@users.noreply.github.com> | 2023-05-09 20:04:19 +0000 |
| commit | 7c7b22e62cd3aa34ef60ec98b145258caa55261f (patch) | |
| tree | ca585ce832e8a356ca78d1b6da720dc853471707 /compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs | |
| parent | eac35583d2ffb5ed9e564dee0822c9a244058ee0 (diff) | |
| download | rust-7c7b22e62cd3aa34ef60ec98b145258caa55261f.tar.gz rust-7c7b22e62cd3aa34ef60ec98b145258caa55261f.zip | |
CFI: Fix SIGILL reached via trait objects
Fix #106547 by transforming the concrete self into a reference to a trait object before emitting type metadata identifiers for trait methods.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs b/compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs index 3dc0ac03312..cd261293e9b 100644 --- a/compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs +++ b/compiler/rustc_codegen_llvm/src/coverageinfo/mod.rs @@ -207,6 +207,7 @@ fn declare_unused_fn<'tcx>(cx: &CodegenCx<'_, 'tcx>, def_id: DefId) -> Instance< )), ty::List::empty(), ), + None, ); llvm::set_linkage(llfn, llvm::Linkage::PrivateLinkage); |
