[Lldb-commits] [lldb] [lldb] Avoid repeated hash lookups (NFC) (PR #113412)
Kazu Hirata via lldb-commits
lldb-commits at lists.llvm.org
Tue Oct 22 20:13:54 PDT 2024
https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/113412
None
>From 89c932a72dc2289dd194f7b7950623589948e872 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Tue, 22 Oct 2024 08:10:43 -0700
Subject: [PATCH] [lldb] Avoid repeated hash lookups (NFC)
---
.../InstEmulation/UnwindAssemblyInstEmulation.cpp | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
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;
More information about the lldb-commits
mailing list