[llvm] [ADT] Simplify DenseMap::{makeIterator,makeConstIterator} (NFC) (PR #156200)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Sat Aug 30 12:39:05 PDT 2025


https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/156200

makeIterator and makeConstIterator take a reference to DebugEpochBase,
which is the base class of DenseMapBase.  Since both these functions
and their callers are in DenseMapBase, we don't really need to pass
*this.

This patch drops "&Epoch" from these two functions and adjust callers
accordingly.


>From 8867849b731f2d43bbbc218a4a64edf357c7d513 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sat, 30 Aug 2025 11:32:39 -0700
Subject: [PATCH] [ADT] Simplify DenseMap::{makeIterator,makeConstIterator}
 (NFC)

makeIterator and makeConstIterator take a reference to DebugEpochBase,
which is the base class of DenseMapBase.  Since both these functions
and their callers are in DenseMapBase, we don't really need to pass
*this.

This patch drops "&Epoch" from these two functions and adjust callers
accordingly.
---
 llvm/include/llvm/ADT/DenseMap.h | 35 +++++++++++++++-----------------
 1 file changed, 16 insertions(+), 19 deletions(-)

diff --git a/llvm/include/llvm/ADT/DenseMap.h b/llvm/include/llvm/ADT/DenseMap.h
index 4a2da7f630663..e5c424a41d96c 100644
--- a/llvm/include/llvm/ADT/DenseMap.h
+++ b/llvm/include/llvm/ADT/DenseMap.h
@@ -81,21 +81,21 @@ class DenseMapBase : public DebugEpochBase {
     if (empty())
       return end();
     if (shouldReverseIterate<KeyT>())
-      return makeIterator(getBucketsEnd() - 1, getBuckets(), *this);
-    return makeIterator(getBuckets(), getBucketsEnd(), *this);
+      return makeIterator(getBucketsEnd() - 1, getBuckets());
+    return makeIterator(getBuckets(), getBucketsEnd());
   }
   inline iterator end() {
-    return makeIterator(getBucketsEnd(), getBucketsEnd(), *this, true);
+    return makeIterator(getBucketsEnd(), getBucketsEnd(), true);
   }
   inline const_iterator begin() const {
     if (empty())
       return end();
     if (shouldReverseIterate<KeyT>())
-      return makeConstIterator(getBucketsEnd() - 1, getBuckets(), *this);
-    return makeConstIterator(getBuckets(), getBucketsEnd(), *this);
+      return makeConstIterator(getBucketsEnd() - 1, getBuckets());
+    return makeConstIterator(getBuckets(), getBucketsEnd());
   }
   inline const_iterator end() const {
-    return makeConstIterator(getBucketsEnd(), getBucketsEnd(), *this, true);
+    return makeConstIterator(getBucketsEnd(), getBucketsEnd(), true);
   }
 
   // Return an iterator to iterate over keys in the map.
@@ -186,7 +186,7 @@ class DenseMapBase : public DebugEpochBase {
     if (BucketT *Bucket = doFind(Val))
       return makeIterator(
           Bucket, shouldReverseIterate<KeyT>() ? getBuckets() : getBucketsEnd(),
-          *this, true);
+          true);
     return end();
   }
   template <class LookupKeyT>
@@ -194,7 +194,7 @@ class DenseMapBase : public DebugEpochBase {
     if (const BucketT *Bucket = doFind(Val))
       return makeConstIterator(
           Bucket, shouldReverseIterate<KeyT>() ? getBuckets() : getBucketsEnd(),
-          *this, true);
+          true);
     return end();
   }
 
@@ -485,30 +485,27 @@ class DenseMapBase : public DebugEpochBase {
     return {makeInsertIterator(Bucket), Inserted};
   }
 
-  iterator makeIterator(BucketT *P, BucketT *E, DebugEpochBase &Epoch,
-                        bool NoAdvance = false) {
+  iterator makeIterator(BucketT *P, BucketT *E, bool NoAdvance = false) {
     if (shouldReverseIterate<KeyT>()) {
       BucketT *B = P == getBucketsEnd() ? getBuckets() : P + 1;
-      return iterator(B, E, Epoch, NoAdvance);
+      return iterator(B, E, *this, NoAdvance);
     }
-    return iterator(P, E, Epoch, NoAdvance);
+    return iterator(P, E, *this, NoAdvance);
   }
 
   const_iterator makeConstIterator(const BucketT *P, const BucketT *E,
-                                   const DebugEpochBase &Epoch,
                                    const bool NoAdvance = false) const {
     if (shouldReverseIterate<KeyT>()) {
       const BucketT *B = P == getBucketsEnd() ? getBuckets() : P + 1;
-      return const_iterator(B, E, Epoch, NoAdvance);
+      return const_iterator(B, E, *this, NoAdvance);
     }
-    return const_iterator(P, E, Epoch, NoAdvance);
+    return const_iterator(P, E, *this, NoAdvance);
   }
 
   iterator makeInsertIterator(BucketT *TheBucket) {
-    return makeIterator(TheBucket,
-                        shouldReverseIterate<KeyT>() ? getBuckets()
-                                                     : getBucketsEnd(),
-                        *this, true);
+    return makeIterator(
+        TheBucket,
+        shouldReverseIterate<KeyT>() ? getBuckets() : getBucketsEnd(), true);
   }
 
   unsigned getNumEntries() const {



More information about the llvm-commits mailing list