diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h b/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h index f54ed0eae0076..3ca6309874de5 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFAArch64.h @@ -121,13 +121,13 @@ class RuntimeDyldCOFFAArch64 : public RuntimeDyldCOFF { OriginalRelValueRef.Addend = Addend; OriginalRelValueRef.SymbolName = TargetName.data(); - auto Stub = Stubs.find(OriginalRelValueRef); - if (Stub == Stubs.end()) { + auto [Stub, Inserted] = Stubs.try_emplace(OriginalRelValueRef); + if (Inserted) { LLVM_DEBUG(dbgs() << " Create a new stub function for " << TargetName.data() << "\n"); StubOffset = Section.getStubOffset(); - Stubs[OriginalRelValueRef] = StubOffset; + Stub->second = StubOffset; createStubFunction(Section.getAddressWithOffset(StubOffset)); Section.advanceStubOffset(getMaxStubSize()); } else { diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h b/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h index 984a8d765c845..2a45535f68fa0 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFX86_64.h @@ -160,13 +160,13 @@ class RuntimeDyldCOFFX86_64 : public RuntimeDyldCOFF { OriginalRelValueRef.Addend = Addend; OriginalRelValueRef.SymbolName = TargetName.data(); - auto Stub = Stubs.find(OriginalRelValueRef); - if (Stub == Stubs.end()) { + auto [Stub, Inserted] = Stubs.try_emplace(OriginalRelValueRef); + if (Inserted) { LLVM_DEBUG(dbgs() << " Create a new stub function for " << TargetName.data() << "\n"); StubOffset = Section.getStubOffset(); - Stubs[OriginalRelValueRef] = StubOffset; + Stub->second = StubOffset; createStubFunction(Section.getAddressWithOffset(StubOffset)); Section.advanceStubOffset(getMaxStubSize()); } else {