[llvm] 96eff99 - [llvm-reduce] Avoid repeated hash lookups (NFC) (#109747)

via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 24 16:37:48 PDT 2024


Author: Kazu Hirata
Date: 2024-09-24T16:37:44-07:00
New Revision: 96eff99e64aaffed1cb8b378ed8f3ac09786e986

URL: https://github.com/llvm/llvm-project/commit/96eff99e64aaffed1cb8b378ed8f3ac09786e986
DIFF: https://github.com/llvm/llvm-project/commit/96eff99e64aaffed1cb8b378ed8f3ac09786e986.diff

LOG: [llvm-reduce] Avoid repeated hash lookups (NFC) (#109747)

Added: 
    

Modified: 
    llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp b/llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp
index 32fca80b5e5d60..02129263f6af44 100644
--- a/llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp
+++ b/llvm/tools/llvm-reduce/deltas/ReduceDistinctMetadata.cpp
@@ -41,10 +41,8 @@ reduceNodes(MDNode *Root,
       if (MDNode *Operand =
               dyn_cast<MDNode>(CurrentNode->getOperand(I).get())) {
         // Check whether node has been visited
-        if (!VisitedNodes.contains(Operand)) {
+        if (VisitedNodes.insert(Operand))
           NodesToTraverse.push(Operand);
-          VisitedNodes.insert(Operand);
-        }
         // Delete the node only if it is distinct
         if (Operand->isDistinct()) {
           // Add to removal list
@@ -74,10 +72,8 @@ static void cleanUpTemporaries(NamedMDNode &NamedNode, MDTuple *TemporaryTuple,
     // If the node hasn't been traversed yet, add it to the queue of nodes to
     // traverse.
     if (MDTuple *TupleI = dyn_cast<MDTuple>((*I))) {
-      if (!VisitedNodes.contains(TupleI)) {
+      if (VisitedNodes.insert(TupleI))
         NodesToTraverse.push(TupleI);
-        VisitedNodes.insert(TupleI);
-      }
     }
   }
 
@@ -113,12 +109,10 @@ static void cleanUpTemporaries(NamedMDNode &NamedNode, MDTuple *TemporaryTuple,
     // Push the remaining nodes into the queue
     for (unsigned int I = 0; I < CurrentTuple->getNumOperands(); ++I) {
       MDTuple *Operand = dyn_cast<MDTuple>(CurrentTuple->getOperand(I).get());
-      if (Operand && !VisitedNodes.contains(Operand)) {
-        NodesToTraverse.push(Operand);
+      if (Operand && VisitedNodes.insert(Operand))
         // If the node hasn't been traversed yet, add it to the queue of nodes
         // to traverse.
-        VisitedNodes.insert(Operand);
-      }
+        NodesToTraverse.push(Operand);
     }
   }
 }


        


More information about the llvm-commits mailing list