[llvm] 303825d - [Analysis] Avoid repeated hash lookups (NFC) (#128394)

via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 23 08:47:06 PST 2025


Author: Kazu Hirata
Date: 2025-02-23T08:47:02-08:00
New Revision: 303825d2ab077ee7fc5ef6871741b5512ba7449b

URL: https://github.com/llvm/llvm-project/commit/303825d2ab077ee7fc5ef6871741b5512ba7449b
DIFF: https://github.com/llvm/llvm-project/commit/303825d2ab077ee7fc5ef6871741b5512ba7449b.diff

LOG: [Analysis] Avoid repeated hash lookups (NFC) (#128394)

Added: 
    

Modified: 
    llvm/lib/Analysis/LoopAccessAnalysis.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Analysis/LoopAccessAnalysis.cpp b/llvm/lib/Analysis/LoopAccessAnalysis.cpp
index a1d91de3bb788..cf3bb6a8eae1c 100644
--- a/llvm/lib/Analysis/LoopAccessAnalysis.cpp
+++ b/llvm/lib/Analysis/LoopAccessAnalysis.cpp
@@ -1443,12 +1443,13 @@ void AccessAnalysis::processMemAccesses() {
                     UnderlyingObj->getType()->getPointerAddressSpace()))
               continue;
 
-            UnderlyingObjToAccessMap::iterator Prev =
-                ObjToLastAccess.find(UnderlyingObj);
-            if (Prev != ObjToLastAccess.end())
-              DepCands.unionSets(Access, Prev->second);
+            auto [It, Inserted] =
+                ObjToLastAccess.try_emplace(UnderlyingObj, Access);
+            if (!Inserted) {
+              DepCands.unionSets(Access, It->second);
+              It->second = Access;
+            }
 
-            ObjToLastAccess[UnderlyingObj] = Access;
             LLVM_DEBUG(dbgs() << "  " << *UnderlyingObj << "\n");
           }
         }


        


More information about the llvm-commits mailing list