From 276863d5c6d1e4fb2a2b908f4a09ddb71a45df8f Mon Sep 17 00:00:00 2001 From: Kazu Hirata Date: Sat, 11 Jan 2025 19:51:54 -0800 Subject: [PATCH] [ELF] Avoid repeated hash lookups (NFC) --- lld/ELF/Arch/ARM.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lld/ELF/Arch/ARM.cpp b/lld/ELF/Arch/ARM.cpp index 29a72d35af6669..de6e45c6cc65c6 100644 --- a/lld/ELF/Arch/ARM.cpp +++ b/lld/ELF/Arch/ARM.cpp @@ -1320,8 +1320,9 @@ void elf::processArmCmseSymbols(Ctx &ctx) { MutableArrayRef syms = file->getMutableSymbols(); for (size_t i = 0, e = syms.size(); i != e; ++i) { StringRef symName = syms[i]->getName(); - if (ctx.symtab->cmseSymMap.count(symName)) - syms[i] = ctx.symtab->cmseSymMap[symName].acleSeSym; + auto it = ctx.symtab->cmseSymMap.find(symName); + if (it != ctx.symtab->cmseSymMap.end()) + syms[i] = it->second.acleSeSym; } }); } @@ -1370,8 +1371,9 @@ void ArmCmseSGSection::addSGVeneer(Symbol *acleSeSym, Symbol *sym) { // Only secure symbols with values equal to that of it's non-secure // counterpart needs to be in the .gnu.sgstubs section. std::unique_ptr ss; - if (ctx.symtab->cmseImportLib.count(sym->getName())) { - Defined *impSym = ctx.symtab->cmseImportLib[sym->getName()]; + auto it = ctx.symtab->cmseImportLib.find(sym->getName()); + if (it != ctx.symtab->cmseImportLib.end()) { + Defined *impSym = it->second; ss = std::make_unique(sym, acleSeSym, impSym->value); } else { ss = std::make_unique(sym, acleSeSym);