[llvm] [Transforms] Use range-based for loops (NFC) (PR #145252)
Kazu Hirata via llvm-commits
llvm-commits at lists.llvm.org
Sun Jun 22 16:12:30 PDT 2025
https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/145252
None
>From 4ca297211d5be473ad2655b3482ad3d48a27a4e5 Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sun, 22 Jun 2025 15:21:47 -0700
Subject: [PATCH] [Transforms] Use range-based for loops (NFC)
---
llvm/lib/Transforms/IPO/GlobalOpt.cpp | 8 ++++----
.../InstCombine/InstructionCombining.cpp | 16 ++++++++--------
llvm/lib/Transforms/Scalar/LoopInterchange.cpp | 4 ++--
llvm/lib/Transforms/Scalar/Reassociate.cpp | 10 +++++-----
llvm/lib/Transforms/Vectorize/VectorCombine.cpp | 6 +++---
5 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/llvm/lib/Transforms/IPO/GlobalOpt.cpp b/llvm/lib/Transforms/IPO/GlobalOpt.cpp
index 4a06e0fa619c0..5099cb7deb9c4 100644
--- a/llvm/lib/Transforms/IPO/GlobalOpt.cpp
+++ b/llvm/lib/Transforms/IPO/GlobalOpt.cpp
@@ -250,10 +250,10 @@ CleanupPointerRootUsers(GlobalVariable *GV,
}
}
- for (int i = 0, e = Dead.size(); i != e; ++i) {
- if (IsSafeComputationToRemove(Dead[i].first, GetTLI)) {
- Dead[i].second->eraseFromParent();
- Instruction *I = Dead[i].first;
+ for (const auto &Pair : Dead) {
+ if (IsSafeComputationToRemove(Pair.first, GetTLI)) {
+ Pair.second->eraseFromParent();
+ Instruction *I = Pair.first;
do {
if (isAllocationFn(I, GetTLI))
break;
diff --git a/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp b/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
index ce42029261359..a1d9173b68dbd 100644
--- a/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
@@ -3472,13 +3472,13 @@ Instruction *InstCombinerImpl::visitAllocSite(Instruction &MI) {
auto Removable =
isAllocSiteRemovable(&MI, Users, TLI, KnowInitZero | KnowInitUndef);
if (Removable) {
- for (unsigned i = 0, e = Users.size(); i != e; ++i) {
+ for (WeakTrackingVH &User : Users) {
// Lowering all @llvm.objectsize and MTI calls first because they may use
// a bitcast/GEP of the alloca we are removing.
- if (!Users[i])
- continue;
+ if (!User)
+ continue;
- Instruction *I = cast<Instruction>(&*Users[i]);
+ Instruction *I = cast<Instruction>(&*User);
if (IntrinsicInst *II = dyn_cast<IntrinsicInst>(I)) {
if (II->getIntrinsicID() == Intrinsic::objectsize) {
@@ -3489,7 +3489,7 @@ Instruction *InstCombinerImpl::visitAllocSite(Instruction &MI) {
Worklist.add(Inserted);
replaceInstUsesWith(*I, Result);
eraseInstFromFunction(*I);
- Users[i] = nullptr; // Skip examining in the next loop.
+ User = nullptr; // Skip examining in the next loop.
continue;
}
if (auto *MTI = dyn_cast<MemTransferInst>(I)) {
@@ -3505,11 +3505,11 @@ Instruction *InstCombinerImpl::visitAllocSite(Instruction &MI) {
}
}
}
- for (unsigned i = 0, e = Users.size(); i != e; ++i) {
- if (!Users[i])
+ for (WeakTrackingVH &User : Users) {
+ if (!User)
continue;
- Instruction *I = cast<Instruction>(&*Users[i]);
+ Instruction *I = cast<Instruction>(&*User);
if (ICmpInst *C = dyn_cast<ICmpInst>(I)) {
replaceInstUsesWith(*C,
diff --git a/llvm/lib/Transforms/Scalar/LoopInterchange.cpp b/llvm/lib/Transforms/Scalar/LoopInterchange.cpp
index 1e16677e5a56f..9e3b4b82cc454 100644
--- a/llvm/lib/Transforms/Scalar/LoopInterchange.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopInterchange.cpp
@@ -235,8 +235,8 @@ static bool populateDependencyMatrix(CharMatrix &DepMatrix, unsigned Level,
// matrix by exchanging the two columns.
static void interChangeDependencies(CharMatrix &DepMatrix, unsigned FromIndx,
unsigned ToIndx) {
- for (unsigned I = 0, E = DepMatrix.size(); I < E; ++I)
- std::swap(DepMatrix[I][ToIndx], DepMatrix[I][FromIndx]);
+ for (auto &Row : DepMatrix)
+ std::swap(Row[ToIndx], Row[FromIndx]);
}
// Check if a direction vector is lexicographically positive. Return true if it
diff --git a/llvm/lib/Transforms/Scalar/Reassociate.cpp b/llvm/lib/Transforms/Scalar/Reassociate.cpp
index 778a6a012556b..343da5b2e4704 100644
--- a/llvm/lib/Transforms/Scalar/Reassociate.cpp
+++ b/llvm/lib/Transforms/Scalar/Reassociate.cpp
@@ -83,10 +83,10 @@ static void PrintOps(Instruction *I, const SmallVectorImpl<ValueEntry> &Ops) {
Module *M = I->getModule();
dbgs() << Instruction::getOpcodeName(I->getOpcode()) << " "
<< *Ops[0].Op->getType() << '\t';
- for (unsigned i = 0, e = Ops.size(); i != e; ++i) {
+ for (const ValueEntry &Op : Ops) {
dbgs() << "[ ";
- Ops[i].Op->printAsOperand(dbgs(), false, M);
- dbgs() << ", #" << Ops[i].Rank << "] ";
+ Op.Op->printAsOperand(dbgs(), false, M);
+ dbgs() << ", #" << Op.Rank << "] ";
}
}
#endif
@@ -1585,9 +1585,9 @@ Value *ReassociatePass::OptimizeAdd(Instruction *I,
// where they are actually the same multiply.
unsigned MaxOcc = 0;
Value *MaxOccVal = nullptr;
- for (unsigned i = 0, e = Ops.size(); i != e; ++i) {
+ for (const ValueEntry &Op : Ops) {
BinaryOperator *BOp =
- isReassociableOp(Ops[i].Op, Instruction::Mul, Instruction::FMul);
+ isReassociableOp(Op.Op, Instruction::Mul, Instruction::FMul);
if (!BOp)
continue;
diff --git a/llvm/lib/Transforms/Vectorize/VectorCombine.cpp b/llvm/lib/Transforms/Vectorize/VectorCombine.cpp
index 3e459f5ea4ce5..a4bfdcabaa314 100644
--- a/llvm/lib/Transforms/Vectorize/VectorCombine.cpp
+++ b/llvm/lib/Transforms/Vectorize/VectorCombine.cpp
@@ -3082,10 +3082,10 @@ bool VectorCombine::foldSelectShuffle(Instruction &I, bool FromReduction) {
auto *SSV = cast<ShuffleVectorInst>(SVOp0);
SVOp0 = SSV->getOperand(0);
SVOp1 = SSV->getOperand(1);
- for (unsigned I = 0, E = Mask.size(); I != E; I++) {
- if (Mask[I] >= static_cast<int>(SSV->getShuffleMask().size()))
+ for (int &Elem : Mask) {
+ if (Elem >= static_cast<int>(SSV->getShuffleMask().size()))
return false;
- Mask[I] = Mask[I] < 0 ? Mask[I] : SSV->getMaskValue(Mask[I]);
+ Elem = Elem < 0 ? Elem : SSV->getMaskValue(Elem);
}
}
if (SVOp0 == Op1 && SVOp1 == Op0) {
More information about the llvm-commits
mailing list