diff options
author | Ramkumar Ramachandra <ramkumar.ramachandra@codasip.com> | 2025-04-04 14:34:08 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-04 14:34:08 +0100 |
commit | fd6260f13bfecfb13537e184f4e8365cf35492fd (patch) | |
tree | b815c22e48941e16c0ade6ef37e45814a0a7f3a8 /llvm/lib/Analysis/VectorUtils.cpp | |
parent | fb9deab74e5dc9a9227732fcd95c1aadacf86d44 (diff) | |
download | llvm-fd6260f13bfecfb13537e184f4e8365cf35492fd.zip llvm-fd6260f13bfecfb13537e184f4e8365cf35492fd.tar.gz llvm-fd6260f13bfecfb13537e184f4e8365cf35492fd.tar.bz2 |
[EquivClasses] Shorten members_{begin,end} idiom (#134373)
Introduce members() iterator-helper to shorten the members_{begin,end}
idiom. A previous attempt of this patch was #130319, which had to be
reverted due to unit-test failures when attempting to call members() on
the end iterator. In this patch, members() accepts either an ECValue or
an ElemTy, which is more intuitive and doesn't suffer from the same
issue.
Diffstat (limited to 'llvm/lib/Analysis/VectorUtils.cpp')
-rw-r--r-- | llvm/lib/Analysis/VectorUtils.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Analysis/VectorUtils.cpp b/llvm/lib/Analysis/VectorUtils.cpp index 663b961..46f588f 100644 --- a/llvm/lib/Analysis/VectorUtils.cpp +++ b/llvm/lib/Analysis/VectorUtils.cpp @@ -847,7 +847,7 @@ llvm::computeMinimumValueSizes(ArrayRef<BasicBlock *> Blocks, DemandedBits &DB, if (!E->isLeader()) continue; uint64_t LeaderDemandedBits = 0; - for (Value *M : make_range(ECs.member_begin(*E), ECs.member_end())) + for (Value *M : ECs.members(*E)) LeaderDemandedBits |= DBits[M]; uint64_t MinBW = llvm::bit_width(LeaderDemandedBits); @@ -859,7 +859,7 @@ llvm::computeMinimumValueSizes(ArrayRef<BasicBlock *> Blocks, DemandedBits &DB, // indvars. // If we are required to shrink a PHI, abandon this entire equivalence class. bool Abort = false; - for (Value *M : make_range(ECs.member_begin(*E), ECs.member_end())) + for (Value *M : ECs.members(*E)) if (isa<PHINode>(M) && MinBW < M->getType()->getScalarSizeInBits()) { Abort = true; break; @@ -867,7 +867,7 @@ llvm::computeMinimumValueSizes(ArrayRef<BasicBlock *> Blocks, DemandedBits &DB, if (Abort) continue; - for (Value *M : make_range(ECs.member_begin(*E), ECs.member_end())) { + for (Value *M : ECs.members(*E)) { auto *MI = dyn_cast<Instruction>(M); if (!MI) continue; |