From 7c1b5b039c69fd587ab4c7774945fff5b5755ed7 Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Tue, 14 Feb 2017 23:47:34 +0000 Subject: [PATCH] Do not lookup a DenseMap twice using the same key. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295124 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/MC/WinCOFFObjectWriter.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/lib/MC/WinCOFFObjectWriter.cpp b/lib/MC/WinCOFFObjectWriter.cpp index 7f626462e6e..23af66c4bb1 100644 --- a/lib/MC/WinCOFFObjectWriter.cpp +++ b/lib/MC/WinCOFFObjectWriter.cpp @@ -230,13 +230,10 @@ COFFSymbol *WinCOFFObjectWriter::createSymbol(StringRef Name) { } COFFSymbol *WinCOFFObjectWriter::GetOrCreateCOFFSymbol(const MCSymbol *Symbol) { - symbol_map::iterator i = SymbolMap.find(Symbol); - if (i != SymbolMap.end()) - return i->second; - COFFSymbol *RetSymbol = - createCOFFEntity(Symbol->getName(), Symbols); - SymbolMap[Symbol] = RetSymbol; - return RetSymbol; + COFFSymbol *&Ret = SymbolMap[Symbol]; + if (!Ret) + Ret = createCOFFEntity(Symbol->getName(), Symbols); + return Ret; } COFFSection *WinCOFFObjectWriter::createSection(StringRef Name) { -- 2.11.0