diff options
| author | Eduard-Mihai Burtescu <edy.burt@gmail.com> | 2020-02-10 22:52:20 +0200 |
|---|---|---|
| committer | Eduard-Mihai Burtescu <edy.burt@gmail.com> | 2020-10-21 04:43:57 +0300 |
| commit | 88d874de6395a5422caad1f61783dadd395d49d0 (patch) | |
| tree | 490ecd0ca002b91ae29f58cd925075c4a2030de4 /compiler/rustc_codegen_llvm/src/debuginfo | |
| parent | fa2b381ec83556111a99750bcc7688521d7e8b0d (diff) | |
| download | rust-88d874de6395a5422caad1f61783dadd395d49d0.tar.gz rust-88d874de6395a5422caad1f61783dadd395d49d0.zip | |
rustc_codegen_llvm: avoid converting between DILocation and Value.
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/debuginfo')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/debuginfo/mod.rs | 3 | ||||
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/debuginfo/source_loc.rs | 6 |
2 files changed, 5 insertions, 4 deletions
diff --git a/compiler/rustc_codegen_llvm/src/debuginfo/mod.rs b/compiler/rustc_codegen_llvm/src/debuginfo/mod.rs index 3f47c62ccae..c940656b256 100644 --- a/compiler/rustc_codegen_llvm/src/debuginfo/mod.rs +++ b/compiler/rustc_codegen_llvm/src/debuginfo/mod.rs @@ -192,7 +192,8 @@ impl DebugInfoBuilderMethods for Builder<'a, 'll, 'tcx> { let dbg_loc = self.cx().create_debug_loc(scope, span); unsafe { - llvm::LLVMSetCurrentDebugLocation(self.llbuilder, dbg_loc); + let dbg_loc_as_llval = llvm::LLVMRustMetadataAsValue(self.cx().llcx, dbg_loc); + llvm::LLVMSetCurrentDebugLocation(self.llbuilder, dbg_loc_as_llval); } } fn insert_reference_to_gdb_debug_scripts_section_global(&mut self) { diff --git a/compiler/rustc_codegen_llvm/src/debuginfo/source_loc.rs b/compiler/rustc_codegen_llvm/src/debuginfo/source_loc.rs index 517246cd0b2..f1d9b8653bc 100644 --- a/compiler/rustc_codegen_llvm/src/debuginfo/source_loc.rs +++ b/compiler/rustc_codegen_llvm/src/debuginfo/source_loc.rs @@ -2,8 +2,8 @@ use super::metadata::{UNKNOWN_COLUMN_NUMBER, UNKNOWN_LINE_NUMBER}; use super::utils::debug_context; use crate::common::CodegenCx; -use crate::llvm::debuginfo::DIScope; -use crate::llvm::{self, Value}; +use crate::llvm; +use crate::llvm::debuginfo::{DILocation, DIScope}; use rustc_codegen_ssa::traits::*; use rustc_data_structures::sync::Lrc; @@ -45,7 +45,7 @@ impl CodegenCx<'ll, '_> { } } - pub fn create_debug_loc(&self, scope: &'ll DIScope, span: Span) -> &'ll Value { + pub fn create_debug_loc(&self, scope: &'ll DIScope, span: Span) -> &'ll DILocation { let DebugLoc { line, col, .. } = self.lookup_debug_loc(span.lo()); unsafe { |
