[Lldb-commits] [lldb] [lldb] Avoid repeated hash lookups (NFC) (PR #113412)
via lldb-commits
lldb-commits at lists.llvm.org
Tue Oct 22 20:14:28 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-lldb
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/113412.diff
1 Files Affected:
- (modified) lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp (+3-4)
``````````diff
diff --git a/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp b/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
index 49edd40544e32a..1a680d80a9d3d7 100644
--- a/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
+++ b/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp
@@ -461,8 +461,7 @@ size_t UnwindAssemblyInstEmulation::WriteMemory(
if (reg_num != LLDB_INVALID_REGNUM &&
generic_regnum != LLDB_REGNUM_GENERIC_SP) {
- if (m_pushed_regs.find(reg_num) == m_pushed_regs.end()) {
- m_pushed_regs[reg_num] = addr;
+ if (m_pushed_regs.try_emplace(reg_num, addr).second) {
const int32_t offset = addr - m_initial_sp;
m_curr_row->SetRegisterLocationToAtCFAPlusOffset(reg_num, offset,
/*can_replace=*/true);
@@ -608,8 +607,8 @@ bool UnwindAssemblyInstEmulation::WriteRegister(
generic_regnum != LLDB_REGNUM_GENERIC_SP) {
switch (context.GetInfoType()) {
case EmulateInstruction::eInfoTypeAddress:
- if (m_pushed_regs.find(reg_num) != m_pushed_regs.end() &&
- context.info.address == m_pushed_regs[reg_num]) {
+ if (auto it = m_pushed_regs.find(reg_num);
+ it != m_pushed_regs.end() && context.info.address == it->second) {
m_curr_row->SetRegisterLocationToSame(reg_num,
false /*must_replace*/);
m_curr_row_modified = true;
``````````
</details>
https://github.com/llvm/llvm-project/pull/113412
More information about the lldb-commits
mailing list