diff --git a/bolt/lib/Core/BinaryFunction.cpp b/bolt/lib/Core/BinaryFunction.cpp index 36c42fced93d0..ef3fba37817da 100644 --- a/bolt/lib/Core/BinaryFunction.cpp +++ b/bolt/lib/Core/BinaryFunction.cpp @@ -3684,9 +3684,8 @@ BinaryFunction::BasicBlockListType BinaryFunction::dfs() const { BinaryBasicBlock *BB = Stack.top(); Stack.pop(); - if (Visited.find(BB) != Visited.end()) + if (!Visited.insert(BB).second) continue; - Visited.insert(BB); DFS.push_back(BB); for (BinaryBasicBlock *SuccBB : BB->landing_pads()) { @@ -3879,11 +3878,8 @@ void BinaryFunction::disambiguateJumpTables( JumpTable *JT = getJumpTable(Inst); if (!JT) continue; - auto Iter = JumpTables.find(JT); - if (Iter == JumpTables.end()) { - JumpTables.insert(JT); + if (JumpTables.insert(JT).second) continue; - } // This instruction is an indirect jump using a jump table, but it is // using the same jump table of another jump. Try all our tricks to // extract the jump table symbol and make it point to a new, duplicated JT