[Lldb-commits] [lldb] [lldb] Remove ConstString from UnwindPlan (PR #227914)
via lldb-commits
lldb-commits at lists.llvm.org
Wed Sep 30 17:14:16 PDT 2026
llvmorg-github-actions[bot] wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-lldb
Author: Alex Langford (bulbazord)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/227914.diff
4 Files Affected:
- (modified) lldb/include/lldb/Symbol/UnwindPlan.h (+3-4)
- (modified) lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp (+1-1)
- (modified) lldb/source/Symbol/UnwindPlan.cpp (+8-8)
- (modified) lldb/source/Target/RegisterContextUnwind.cpp (+1-1)
``````````diff
diff --git a/lldb/include/lldb/Symbol/UnwindPlan.h b/lldb/include/lldb/Symbol/UnwindPlan.h
index 957eb6afc6573..92e2a4b57f962 100644
--- a/lldb/include/lldb/Symbol/UnwindPlan.h
+++ b/lldb/include/lldb/Symbol/UnwindPlan.h
@@ -14,7 +14,6 @@
#include <vector>
#include "lldb/Core/AddressRange.h"
-#include "lldb/Utility/ConstString.h"
#include "lldb/Utility/RegisterInfo.h"
#include "lldb/Utility/Stream.h"
#include "lldb/lldb-private.h"
@@ -489,7 +488,7 @@ class UnwindPlan {
const UnwindPlan::Row *GetLastRow() const;
- lldb_private::ConstString GetSourceName() const;
+ llvm::StringRef GetSourceName() const;
void SetSourceName(const char *);
@@ -533,7 +532,7 @@ class UnwindPlan {
m_row_list.clear();
m_plan_valid_ranges.clear();
m_register_kind = lldb::eRegisterKindDWARF;
- m_source_name.Clear();
+ m_source_name.clear();
m_plan_is_sourced_from_compiler = eLazyBoolCalculate;
m_plan_is_valid_at_all_instruction_locations = eLazyBoolCalculate;
m_plan_is_for_signal_trap = eLazyBoolCalculate;
@@ -550,7 +549,7 @@ class UnwindPlan {
uint32_t m_return_addr_register; // The register that has the return address
// for the caller frame
// e.g. the lr on arm
- lldb_private::ConstString
+ std::string
m_source_name; // for logging, where this UnwindPlan originated from
lldb_private::LazyBool m_plan_is_sourced_from_compiler;
lldb_private::LazyBool m_plan_is_valid_at_all_instruction_locations;
diff --git a/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp b/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
index d85c11e3af120..4ae66f8c94b39 100644
--- a/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
+++ b/lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
@@ -1541,7 +1541,7 @@ bool x86AssemblyInspectionEngine::AugmentUnwindPlanFromCallSite(
unwind_plan.SetPlanValidAddressRanges({func_range});
if (unwind_plan_updated) {
- std::string unwind_plan_source = unwind_plan.GetSourceName().GetString();
+ std::string unwind_plan_source = unwind_plan.GetSourceName().str();
unwind_plan_source += " plus augmentation from assembly parsing";
unwind_plan.SetSourceName(unwind_plan_source.c_str());
unwind_plan.SetSourcedFromCompiler(eLazyBoolNo);
diff --git a/lldb/source/Symbol/UnwindPlan.cpp b/lldb/source/Symbol/UnwindPlan.cpp
index 3187284bd0762..a92c4e32ec0bb 100644
--- a/lldb/source/Symbol/UnwindPlan.cpp
+++ b/lldb/source/Symbol/UnwindPlan.cpp
@@ -462,11 +462,11 @@ bool UnwindPlan::PlanValidAtAddress(Address addr) const {
LLDB_LOGF(log,
"UnwindPlan is invalid -- no unwind rows for UnwindPlan "
"'%s' at address %s",
- m_source_name.GetCString(), s.GetData());
+ m_source_name.c_str(), s.GetData());
} else {
LLDB_LOGF(log,
"UnwindPlan is invalid -- no unwind rows for UnwindPlan '%s'",
- m_source_name.GetCString());
+ m_source_name.c_str());
}
}
return false;
@@ -485,12 +485,12 @@ bool UnwindPlan::PlanValidAtAddress(Address addr) const {
LLDB_LOGF(log,
"UnwindPlan is invalid -- no CFA register defined in row 0 "
"for UnwindPlan '%s' at address %s",
- m_source_name.GetCString(), s.GetData());
+ m_source_name.c_str(), s.GetData());
} else {
LLDB_LOGF(log,
"UnwindPlan is invalid -- no CFA register defined in row 0 "
"for UnwindPlan '%s'",
- m_source_name.GetCString());
+ m_source_name.c_str());
}
}
return false;
@@ -508,9 +508,9 @@ bool UnwindPlan::PlanValidAtAddress(Address addr) const {
}
void UnwindPlan::Dump(Stream &s, Thread *thread, lldb::addr_t base_addr) const {
- if (!m_source_name.IsEmpty()) {
+ if (!m_source_name.empty()) {
s.Printf("This UnwindPlan originally sourced from %s\n",
- m_source_name.GetCString());
+ m_source_name.c_str());
}
s.PutCString("This UnwindPlan is sourced from the compiler: ");
switch (m_plan_is_sourced_from_compiler) {
@@ -563,10 +563,10 @@ void UnwindPlan::Dump(Stream &s, Thread *thread, lldb::addr_t base_addr) const {
}
void UnwindPlan::SetSourceName(const char *source) {
- m_source_name = ConstString(source);
+ m_source_name = llvm::StringRef(source).str();
}
-ConstString UnwindPlan::GetSourceName() const { return m_source_name; }
+llvm::StringRef UnwindPlan::GetSourceName() const { return m_source_name; }
const RegisterInfo *UnwindPlan::GetRegisterInfo(Thread *thread,
uint32_t unwind_reg) const {
diff --git a/lldb/source/Target/RegisterContextUnwind.cpp b/lldb/source/Target/RegisterContextUnwind.cpp
index 354bfddaa47ce..c2edf90e5d2df 100644
--- a/lldb/source/Target/RegisterContextUnwind.cpp
+++ b/lldb/source/Target/RegisterContextUnwind.cpp
@@ -1584,7 +1584,7 @@ RegisterContextUnwind::GetAbstractRegisterLocation(uint32_t lldb_regnum,
std::string unwindplan_name;
if (m_full_unwind_plan_sp) {
unwindplan_name += "via '";
- unwindplan_name += m_full_unwind_plan_sp->GetSourceName().AsCString("");
+ unwindplan_name += m_full_unwind_plan_sp->GetSourceName();
unwindplan_name += "'";
}
UNWIND_LOG(log, "no save location for {0} ({1}) {2}", regnum.GetName(),
``````````
</details>
https://github.com/llvm/llvm-project/pull/227914
More information about the lldb-commits
mailing list