[llvm-branch-commits] [llvm] a550fef - [llvm] Use llvm::fill instead of std::fill(NFC) (#146911)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Sun Jul 6 19:11:11 PDT 2025
Author: Austin
Date: 2025-07-04T14:10:28+08:00
New Revision: a550fef9061f3628e75825306759b13365cb50e3
URL: https://github.com/llvm/llvm-project/commit/a550fef9061f3628e75825306759b13365cb50e3
DIFF: https://github.com/llvm/llvm-project/commit/a550fef9061f3628e75825306759b13365cb50e3.diff
LOG: [llvm] Use llvm::fill instead of std::fill(NFC) (#146911)
Use llvm::fill instead of std::fill
Added:
Modified:
llvm/docs/CodingStandards.rst
llvm/include/llvm/ADT/BitVector.h
llvm/include/llvm/ADT/Bitset.h
llvm/include/llvm/CodeGen/TargetLowering.h
llvm/include/llvm/TargetParser/SubtargetFeature.h
llvm/lib/CodeGen/MachineLICM.cpp
llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/lib/CodeGen/TargetLoweringBase.cpp
llvm/lib/ExecutionEngine/ExecutionEngine.cpp
llvm/lib/Transforms/Scalar/LoopDeletion.cpp
llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
llvm/lib/Transforms/Utils/LoopUtils.cpp
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
llvm/tools/llvm-mca/Views/RegisterFileStatistics.cpp
llvm/tools/llvm-mca/Views/TimelineView.cpp
llvm/unittests/Support/ParallelTest.cpp
llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
Removed:
################################################################################
diff --git a/llvm/docs/CodingStandards.rst b/llvm/docs/CodingStandards.rst
index 7d275a511de1a..c614a6d7ace9e 100644
--- a/llvm/docs/CodingStandards.rst
+++ b/llvm/docs/CodingStandards.rst
@@ -684,7 +684,7 @@ something notionally equivalent. Examples:
};
// The Foo constructor call is reading a file, don't use braces to call it.
- std::fill(foo.begin(), foo.end(), Foo("name"));
+ llvm::fill(foo, Foo("name"));
// The pair is being constructed like an aggregate, use braces.
bar_map.insert({my_key, my_value});
diff --git a/llvm/include/llvm/ADT/BitVector.h b/llvm/include/llvm/ADT/BitVector.h
index 0eaa77b6dd81c..70de4c239c1c7 100644
--- a/llvm/include/llvm/ADT/BitVector.h
+++ b/llvm/include/llvm/ADT/BitVector.h
@@ -795,9 +795,7 @@ class BitVector {
set_unused_bits(false);
}
- void init_words(bool t) {
- std::fill(Bits.begin(), Bits.end(), 0 - (BitWord)t);
- }
+ void init_words(bool t) { llvm::fill(Bits, 0 - (BitWord)t); }
template<bool AddBits, bool InvertMask>
void applyMask(const uint32_t *Mask, unsigned MaskWords) {
diff --git a/llvm/include/llvm/ADT/Bitset.h b/llvm/include/llvm/ADT/Bitset.h
index 4ba5c63535b2d..55b96e47f2ed6 100644
--- a/llvm/include/llvm/ADT/Bitset.h
+++ b/llvm/include/llvm/ADT/Bitset.h
@@ -50,7 +50,7 @@ class Bitset {
}
Bitset &set() {
- std::fill(std::begin(Bits), std::end(Bits), -BitWord(0));
+ llvm::fill(Bits, -BitWord(0));
return *this;
}
diff --git a/llvm/include/llvm/CodeGen/TargetLowering.h b/llvm/include/llvm/CodeGen/TargetLowering.h
index 84c53e1e45452..b07937c11b024 100644
--- a/llvm/include/llvm/CodeGen/TargetLowering.h
+++ b/llvm/include/llvm/CodeGen/TargetLowering.h
@@ -1116,10 +1116,7 @@ class LLVM_ABI TargetLoweringBase {
LegalizeTypeAction ValueTypeActions[MVT::VALUETYPE_SIZE];
public:
- ValueTypeActionImpl() {
- std::fill(std::begin(ValueTypeActions), std::end(ValueTypeActions),
- TypeLegal);
- }
+ ValueTypeActionImpl() { llvm::fill(ValueTypeActions, TypeLegal); }
LegalizeTypeAction getTypeAction(MVT VT) const {
return ValueTypeActions[VT.SimpleTy];
diff --git a/llvm/include/llvm/TargetParser/SubtargetFeature.h b/llvm/include/llvm/TargetParser/SubtargetFeature.h
index cdcfcdd0e802e..a48b18745352a 100644
--- a/llvm/include/llvm/TargetParser/SubtargetFeature.h
+++ b/llvm/include/llvm/TargetParser/SubtargetFeature.h
@@ -56,7 +56,7 @@ class FeatureBitset {
}
FeatureBitset &set() {
- std::fill(std::begin(Bits), std::end(Bits), -1ULL);
+ llvm::fill(Bits, -1ULL);
return *this;
}
diff --git a/llvm/lib/CodeGen/MachineLICM.cpp b/llvm/lib/CodeGen/MachineLICM.cpp
index c9079170ca575..699d7ab175568 100644
--- a/llvm/lib/CodeGen/MachineLICM.cpp
+++ b/llvm/lib/CodeGen/MachineLICM.cpp
@@ -400,7 +400,7 @@ bool MachineLICMImpl::run(MachineFunction &MF) {
// Estimate register pressure during pre-regalloc pass.
unsigned NumRPS = TRI->getNumRegPressureSets();
RegPressure.resize(NumRPS);
- std::fill(RegPressure.begin(), RegPressure.end(), 0);
+ llvm::fill(RegPressure, 0);
RegLimit.resize(NumRPS);
for (unsigned i = 0, e = NumRPS; i != e; ++i)
RegLimit[i] = TRI->getRegPressureSetLimit(MF, i);
@@ -941,7 +941,7 @@ static bool isOperandKill(const MachineOperand &MO, MachineRegisterInfo *MRI) {
/// initialize the starting "register pressure". Note this does not count live
/// through (livein but not used) registers.
void MachineLICMImpl::InitRegPressure(MachineBasicBlock *BB) {
- std::fill(RegPressure.begin(), RegPressure.end(), 0);
+ llvm::fill(RegPressure, 0);
// If the preheader has only a single predecessor and it ends with a
// fallthrough or an unconditional branch, then scan its predecessor for live
diff --git a/llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp b/llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
index e0e8d503ca92a..0a449fd011e69 100644
--- a/llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
@@ -54,8 +54,8 @@ ResourcePriorityQueue::ResourcePriorityQueue(SelectionDAGISel *IS)
unsigned NumRC = TRI->getNumRegClasses();
RegLimit.resize(NumRC);
RegPressure.resize(NumRC);
- std::fill(RegLimit.begin(), RegLimit.end(), 0);
- std::fill(RegPressure.begin(), RegPressure.end(), 0);
+ llvm::fill(RegLimit, 0);
+ llvm::fill(RegPressure, 0);
for (const TargetRegisterClass *RC : TRI->regclasses())
RegLimit[RC->getID()] = TRI->getRegPressureLimit(RC, *IS->MF);
diff --git a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
index 2c51a01044cdf..a570b71ecd28d 100644
--- a/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
@@ -1769,8 +1769,8 @@ class RegReductionPQBase : public SchedulingPriorityQueue {
unsigned NumRC = TRI->getNumRegClasses();
RegLimit.resize(NumRC);
RegPressure.resize(NumRC);
- std::fill(RegLimit.begin(), RegLimit.end(), 0);
- std::fill(RegPressure.begin(), RegPressure.end(), 0);
+ llvm::fill(RegLimit, 0);
+ llvm::fill(RegPressure, 0);
for (const TargetRegisterClass *RC : TRI->regclasses())
RegLimit[RC->getID()] = tri->getRegPressureLimit(RC, MF);
}
@@ -1793,7 +1793,7 @@ class RegReductionPQBase : public SchedulingPriorityQueue {
void releaseState() override {
SUnits = nullptr;
SethiUllmanNumbers.clear();
- std::fill(RegPressure.begin(), RegPressure.end(), 0);
+ llvm::fill(RegPressure, 0);
}
unsigned getNodePriority(const SUnit *SU) const;
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
index 6df21b624137f..2a3c8e2b011ad 100644
--- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
@@ -1457,8 +1457,8 @@ void SelectionDAG::clear() {
TargetExternalSymbols.clear();
MCSymbols.clear();
SDEI.clear();
- std::fill(CondCodeNodes.begin(), CondCodeNodes.end(), nullptr);
- std::fill(ValueTypeNodes.begin(), ValueTypeNodes.end(), nullptr);
+ llvm::fill(CondCodeNodes, nullptr);
+ llvm::fill(ValueTypeNodes, nullptr);
EntryNode.UseList = nullptr;
InsertNode(&EntryNode);
diff --git a/llvm/lib/CodeGen/TargetLoweringBase.cpp b/llvm/lib/CodeGen/TargetLoweringBase.cpp
index cda41a91a372f..65bbec8461a12 100644
--- a/llvm/lib/CodeGen/TargetLoweringBase.cpp
+++ b/llvm/lib/CodeGen/TargetLoweringBase.cpp
@@ -681,9 +681,8 @@ void TargetLoweringBase::initActions() {
memset(TruncStoreActions, 0, sizeof(TruncStoreActions));
memset(IndexedModeActions, 0, sizeof(IndexedModeActions));
memset(CondCodeActions, 0, sizeof(CondCodeActions));
- std::fill(std::begin(RegClassForVT), std::end(RegClassForVT), nullptr);
- std::fill(std::begin(TargetDAGCombineArray),
- std::end(TargetDAGCombineArray), 0);
+ llvm::fill(RegClassForVT, nullptr);
+ llvm::fill(TargetDAGCombineArray, 0);
// Let extending atomic loads be unsupported by default.
for (MVT ValVT : MVT::all_valuetypes())
diff --git a/llvm/lib/ExecutionEngine/ExecutionEngine.cpp b/llvm/lib/ExecutionEngine/ExecutionEngine.cpp
index 9455a3847692b..01456d54465d2 100644
--- a/llvm/lib/ExecutionEngine/ExecutionEngine.cpp
+++ b/llvm/lib/ExecutionEngine/ExecutionEngine.cpp
@@ -952,8 +952,7 @@ GenericValue ExecutionEngine::getConstantValue(const Constant *C) {
if (CAZ) {
GenericValue floatZero;
floatZero.FloatVal = 0.f;
- std::fill(Result.AggregateVal.begin(), Result.AggregateVal.end(),
- floatZero);
+ llvm::fill(Result.AggregateVal, floatZero);
break;
}
if(CV) {
@@ -974,8 +973,7 @@ GenericValue ExecutionEngine::getConstantValue(const Constant *C) {
if (CAZ) {
GenericValue doubleZero;
doubleZero.DoubleVal = 0.0;
- std::fill(Result.AggregateVal.begin(), Result.AggregateVal.end(),
- doubleZero);
+ llvm::fill(Result.AggregateVal, doubleZero);
break;
}
if(CV) {
@@ -996,8 +994,7 @@ GenericValue ExecutionEngine::getConstantValue(const Constant *C) {
if (CAZ) {
GenericValue intZero;
intZero.IntVal = APInt(ElemTy->getScalarSizeInBits(), 0ull);
- std::fill(Result.AggregateVal.begin(), Result.AggregateVal.end(),
- intZero);
+ llvm::fill(Result.AggregateVal, intZero);
break;
}
if(CV) {
diff --git a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
index e5355d23b5d61..0664eed072a9a 100644
--- a/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopDeletion.cpp
@@ -467,8 +467,7 @@ static LoopDeletionResult deleteLoopIfDead(Loop *L, DominatorTree &DT,
SE.forgetLoop(L);
// Set incoming value to poison for phi nodes in the exit block.
for (PHINode &P : ExitBlock->phis()) {
- std::fill(P.incoming_values().begin(), P.incoming_values().end(),
- PoisonValue::get(P.getType()));
+ llvm::fill(P.incoming_values(), PoisonValue::get(P.getType()));
}
ORE.emit([&]() {
return OptimizationRemark(DEBUG_TYPE, "NeverExecutes", L->getStartLoc(),
diff --git a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
index a712b4632e9a8..b3bffeb7ea412 100644
--- a/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+++ b/llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
@@ -2382,7 +2382,7 @@ class LowerMatrixIntrinsics {
llvm::copy(C.vectors(), std::back_inserter(CondV));
} else {
CondV.resize(A.getNumVectors());
- std::fill(CondV.begin(), CondV.end(), Cond);
+ llvm::fill(CondV, Cond);
}
for (auto [CV, AV, BV] : llvm::zip_equal(CondV, A.vectors(), B.vectors()))
diff --git a/llvm/lib/Transforms/Utils/LoopUtils.cpp b/llvm/lib/Transforms/Utils/LoopUtils.cpp
index e44fa6af29ffb..200d1fb854155 100644
--- a/llvm/lib/Transforms/Utils/LoopUtils.cpp
+++ b/llvm/lib/Transforms/Utils/LoopUtils.cpp
@@ -1171,7 +1171,7 @@ Value *llvm::getShuffleReduction(IRBuilderBase &Builder, Value *Src,
SmallVector<int, 32> ShuffleMask(VF);
for (unsigned stride = 1; stride < VF; stride <<= 1) {
// Initialise the mask with undef.
- std::fill(ShuffleMask.begin(), ShuffleMask.end(), -1);
+ llvm::fill(ShuffleMask, -1);
for (unsigned j = 0; j < VF; j += stride << 1) {
ShuffleMask[j] = j + stride;
}
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
index 0941bf61953f1..4009084ba0a56 100644
--- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
@@ -5443,7 +5443,7 @@ BoUpSLP::findReusedOrderedScalars(const BoUpSLP::TreeEntry &TE,
MutableArrayRef<unsigned> Slice = CurrentOrder.slice(I * PartSz, Limit);
// Shuffle of at least 2 vectors - ignore.
if (any_of(Slice, [&](unsigned I) { return I != NumScalars; })) {
- std::fill(Slice.begin(), Slice.end(), NumScalars);
+ llvm::fill(Slice, NumScalars);
ShuffledSubMasks.set(I);
continue;
}
@@ -5471,7 +5471,7 @@ BoUpSLP::findReusedOrderedScalars(const BoUpSLP::TreeEntry &TE,
FirstMin = (FirstMin / PartSz) * PartSz;
// Shuffle of at least 2 vectors - ignore.
if (SecondVecFound) {
- std::fill(Slice.begin(), Slice.end(), NumScalars);
+ llvm::fill(Slice, NumScalars);
ShuffledSubMasks.set(I);
continue;
}
@@ -5492,7 +5492,7 @@ BoUpSLP::findReusedOrderedScalars(const BoUpSLP::TreeEntry &TE,
}
// Shuffle of at least 2 vectors - ignore.
if (SecondVecFound) {
- std::fill(Slice.begin(), Slice.end(), NumScalars);
+ llvm::fill(Slice, NumScalars);
ShuffledSubMasks.set(I);
continue;
}
diff --git a/llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp b/llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
index 7823b02298e27..e7d8083da19d2 100644
--- a/llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
+++ b/llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
@@ -41,8 +41,7 @@ PressureTracker::PressureTracker(const MCSchedModel &Model)
}
ResourceUsers.resize(NextResourceUsersIdx);
- std::fill(ResourceUsers.begin(), ResourceUsers.end(),
- std::make_pair<unsigned, unsigned>(~0U, 0U));
+ llvm::fill(ResourceUsers, std::make_pair<unsigned, unsigned>(~0U, 0U));
}
void PressureTracker::getResourceUsers(uint64_t ResourceMask,
diff --git a/llvm/tools/llvm-mca/Views/RegisterFileStatistics.cpp b/llvm/tools/llvm-mca/Views/RegisterFileStatistics.cpp
index 4ef8053bff410..54566dc860c57 100644
--- a/llvm/tools/llvm-mca/Views/RegisterFileStatistics.cpp
+++ b/llvm/tools/llvm-mca/Views/RegisterFileStatistics.cpp
@@ -38,10 +38,10 @@ RegisterFileStatistics::RegisterFileStatistics(const MCSubtargetInfo &sti)
unsigned NumRegFiles = std::max(PI.NumRegisterFiles, 1U);
PRFUsage.resize(NumRegFiles);
- std::fill(PRFUsage.begin(), PRFUsage.end(), RFUEmpty);
+ llvm::fill(PRFUsage, RFUEmpty);
MoveElimInfo.resize(NumRegFiles);
- std::fill(MoveElimInfo.begin(), MoveElimInfo.end(), MEIEmpty);
+ llvm::fill(MoveElimInfo, MEIEmpty);
}
void RegisterFileStatistics::updateRegisterFileUsage(
diff --git a/llvm/tools/llvm-mca/Views/TimelineView.cpp b/llvm/tools/llvm-mca/Views/TimelineView.cpp
index 2eca48aadfd70..193bceca190df 100644
--- a/llvm/tools/llvm-mca/Views/TimelineView.cpp
+++ b/llvm/tools/llvm-mca/Views/TimelineView.cpp
@@ -28,14 +28,14 @@ TimelineView::TimelineView(const MCSubtargetInfo &sti, MCInstPrinter &Printer,
NumInstructions *= Iterations;
Timeline.resize(NumInstructions);
TimelineViewEntry InvalidTVEntry = {-1, 0, 0, 0, 0};
- std::fill(Timeline.begin(), Timeline.end(), InvalidTVEntry);
+ llvm::fill(Timeline, InvalidTVEntry);
WaitTimeEntry NullWTEntry = {0, 0, 0};
- std::fill(WaitTime.begin(), WaitTime.end(), NullWTEntry);
+ llvm::fill(WaitTime, NullWTEntry);
std::pair<unsigned, int> NullUsedBufferEntry = {/* Invalid resource ID*/ 0,
/* unknown buffer size */ -1};
- std::fill(UsedBuffer.begin(), UsedBuffer.end(), NullUsedBufferEntry);
+ llvm::fill(UsedBuffer, NullUsedBufferEntry);
}
void TimelineView::onReservedBuffers(const InstRef &IR,
diff --git a/llvm/unittests/Support/ParallelTest.cpp b/llvm/unittests/Support/ParallelTest.cpp
index ccf5f2bb91324..041067d068883 100644
--- a/llvm/unittests/Support/ParallelTest.cpp
+++ b/llvm/unittests/Support/ParallelTest.cpp
@@ -67,17 +67,17 @@ TEST(Parallel, TransformReduce) {
// Check that we handle non-divisible task sizes as above.
uint32_t range[2050];
- std::fill(std::begin(range), std::end(range), 1);
+ llvm::fill(range, 1);
sum = parallelTransformReduce(range, 0U, std::plus<uint32_t>(), identity);
EXPECT_EQ(sum, 2050U);
- std::fill(std::begin(range), std::end(range), 2);
+ llvm::fill(range, 2);
sum = parallelTransformReduce(range, 0U, std::plus<uint32_t>(), identity);
EXPECT_EQ(sum, 4100U);
// Avoid one large task.
uint32_t range2[3060];
- std::fill(std::begin(range2), std::end(range2), 1);
+ llvm::fill(range2, 1);
sum = parallelTransformReduce(range2, 0U, std::plus<uint32_t>(), identity);
EXPECT_EQ(sum, 3060U);
}
diff --git a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
index 86be0d12d7b8a..20d622808bc7e 100644
--- a/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
+++ b/llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
@@ -2103,7 +2103,7 @@ TreePatternNodePtr TreePatternNode::clone() const {
/// RemoveAllTypes - Recursively strip all the types of this tree.
void TreePatternNode::RemoveAllTypes() {
// Reset to unknown type.
- std::fill(Types.begin(), Types.end(), TypeSetByHwMode());
+ llvm::fill(Types, TypeSetByHwMode());
if (isLeaf())
return;
for (TreePatternNode &Child : children())
More information about the llvm-branch-commits
mailing list