aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib
diff options
context:
space:
mode:
authorKazu Hirata <kazu@google.com>2025-08-09 23:05:41 -0700
committerGitHub <noreply@github.com>2025-08-09 23:05:41 -0700
commitc123f4782f0ec87c947aa97a2f0b3a4c2d02e68c (patch)
treeb2998f6e0aafdcfd1af358e6ab8706e06d6f1899 /llvm/lib
parentb2cdd80411dab7b08a7649a5043370d816dbd3f4 (diff)
downloadllvm-c123f4782f0ec87c947aa97a2f0b3a4c2d02e68c.zip
llvm-c123f4782f0ec87c947aa97a2f0b3a4c2d02e68c.tar.gz
llvm-c123f4782f0ec87c947aa97a2f0b3a4c2d02e68c.tar.bz2
[ADT] Use range-based for loops in SmallPtrSet (NFC) (#152882)
This patch introduces helper function buckets() to convert two loops to range-based for loops.
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Support/SmallPtrSet.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/llvm/lib/Support/SmallPtrSet.cpp b/llvm/lib/Support/SmallPtrSet.cpp
index 83143a7..0c22697 100644
--- a/llvm/lib/Support/SmallPtrSet.cpp
+++ b/llvm/lib/Support/SmallPtrSet.cpp
@@ -110,8 +110,7 @@ const void *const *SmallPtrSetImplBase::FindBucketFor(const void *Ptr) const {
/// Grow - Allocate a larger backing store for the buckets and move it over.
///
void SmallPtrSetImplBase::Grow(unsigned NewSize) {
- const void **OldBuckets = CurArray;
- const void **OldEnd = EndPointer();
+ auto OldBuckets = buckets();
bool WasSmall = isSmall();
// Install the new array. Clear all the buckets to empty.
@@ -123,15 +122,14 @@ void SmallPtrSetImplBase::Grow(unsigned NewSize) {
memset(CurArray, -1, NewSize*sizeof(void*));
// Copy over all valid entries.
- for (const void **BucketPtr = OldBuckets; BucketPtr != OldEnd; ++BucketPtr) {
+ for (const void *&Bucket : OldBuckets) {
// Copy over the element if it is valid.
- const void *Elt = *BucketPtr;
- if (Elt != getTombstoneMarker() && Elt != getEmptyMarker())
- *const_cast<void**>(FindBucketFor(Elt)) = const_cast<void*>(Elt);
+ if (Bucket != getTombstoneMarker() && Bucket != getEmptyMarker())
+ *const_cast<void **>(FindBucketFor(Bucket)) = const_cast<void *>(Bucket);
}
if (!WasSmall)
- free(OldBuckets);
+ free(OldBuckets.begin());
NumNonEmpty -= NumTombstones;
NumTombstones = 0;
IsSmall = false;