about summary refs log tree commit diff
path: root/compiler/rustc_codegen_ssa/src/traits
diff options
context:
space:
mode:
authordianqk <dianqk@dianqk.net>2025-06-18 22:04:48 +0800
committerdianqk <dianqk@dianqk.net>2025-10-02 14:55:51 +0800
commit1bd89bd42e0bb6f29b8af5d6bdf3f756196bb8ee (patch)
tree8d7ac71c287300c9ce4f2b3a1cfbe05b998bf9ae /compiler/rustc_codegen_ssa/src/traits
parent85b2f706939528b5796d98e82c183637f8338cd1 (diff)
downloadrust-1bd89bd42e0bb6f29b8af5d6bdf3f756196bb8ee.tar.gz
rust-1bd89bd42e0bb6f29b8af5d6bdf3f756196bb8ee.zip
codegen: Generate `dbg_value` for the ref statement
Diffstat (limited to 'compiler/rustc_codegen_ssa/src/traits')
-rw-r--r--compiler/rustc_codegen_ssa/src/traits/debuginfo.rs14
1 files changed, 13 insertions, 1 deletions
diff --git a/compiler/rustc_codegen_ssa/src/traits/debuginfo.rs b/compiler/rustc_codegen_ssa/src/traits/debuginfo.rs
index b9d4950e0ad..a4da6c915de 100644
--- a/compiler/rustc_codegen_ssa/src/traits/debuginfo.rs
+++ b/compiler/rustc_codegen_ssa/src/traits/debuginfo.rs
@@ -77,7 +77,19 @@ pub trait DebugInfoBuilderMethods: BackendTypes {
         indirect_offsets: &[Size],
         // Byte range in the `dbg_var` covered by this fragment,
         // if this is a fragment of a composite `DIVariable`.
-        fragment: Option<Range<Size>>,
+        fragment: &Option<Range<Size>>,
+    );
+    fn dbg_var_value(
+        &mut self,
+        dbg_var: Self::DIVariable,
+        dbg_loc: Self::DILocation,
+        value: Self::Value,
+        direct_offset: Size,
+        // NB: each offset implies a deref (i.e. they're steps in a pointer chain).
+        indirect_offsets: &[Size],
+        // Byte range in the `dbg_var` covered by this fragment,
+        // if this is a fragment of a composite `DIVariable`.
+        fragment: &Option<Range<Size>>,
     );
     fn set_dbg_loc(&mut self, dbg_loc: Self::DILocation);
     fn clear_dbg_loc(&mut self);