Author: Kazu Hirata Date: 2020-12-20T09:19:35-08:00 New Revision: 3285ee143b7f4b41ab3c37ea4ba10ba00a57756e
URL: https://github.com/llvm/llvm-project/commit/3285ee143b7f4b41ab3c37ea4ba10ba00a57756e DIFF: https://github.com/llvm/llvm-project/commit/3285ee143b7f4b41ab3c37ea4ba10ba00a57756e.diff LOG: [Analysis, IR, CodeGen] Use llvm::erase_if (NFC) Added: Modified: llvm/include/llvm/IR/PassManager.h llvm/lib/Analysis/CGSCCPassManager.cpp llvm/lib/Analysis/ScalarEvolution.cpp llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp llvm/lib/CodeGen/RDFLiveness.cpp llvm/lib/CodeGen/StackMaps.cpp llvm/lib/IR/LLVMContextImpl.h llvm/lib/IR/Metadata.cpp Removed: ################################################################################ diff --git a/llvm/include/llvm/IR/PassManager.h b/llvm/include/llvm/IR/PassManager.h index 9aea968c8956..c669565aa33b 100644 --- a/llvm/include/llvm/IR/PassManager.h +++ b/llvm/include/llvm/IR/PassManager.h @@ -1129,9 +1129,9 @@ class OuterAnalysisManagerProxy for (auto &KeyValuePair : OuterAnalysisInvalidationMap) { AnalysisKey *OuterID = KeyValuePair.first; auto &InnerIDs = KeyValuePair.second; - InnerIDs.erase(llvm::remove_if(InnerIDs, [&](AnalysisKey *InnerID) { - return Inv.invalidate(InnerID, IRUnit, PA); }), - InnerIDs.end()); + llvm::erase_if(InnerIDs, [&](AnalysisKey *InnerID) { + return Inv.invalidate(InnerID, IRUnit, PA); + }); if (InnerIDs.empty()) DeadKeys.push_back(OuterID); } diff --git a/llvm/lib/Analysis/CGSCCPassManager.cpp b/llvm/lib/Analysis/CGSCCPassManager.cpp index 59df6059dcf6..7eb2168bcc0f 100644 --- a/llvm/lib/Analysis/CGSCCPassManager.cpp +++ b/llvm/lib/Analysis/CGSCCPassManager.cpp @@ -1039,23 +1039,20 @@ static LazyCallGraph::SCC &updateCGAndAnalysisManagerForPass( DeadTargets.push_back(&E.getNode()); } // Remove the easy cases quickly and actually pull them out of our list. - DeadTargets.erase( - llvm::remove_if(DeadTargets, - [&](Node *TargetN) { - SCC &TargetC = *G.lookupSCC(*TargetN); - RefSCC &TargetRC = TargetC.getOuterRefSCC(); - - // We can't trivially remove internal targets, so skip - // those. - if (&TargetRC == RC) - return false; - - RC->removeOutgoingEdge(N, *TargetN); - LLVM_DEBUG(dbgs() << "Deleting outgoing edge from '" - << N << "' to '" << TargetN << "'\n"); - return true; - }), - DeadTargets.end()); + llvm::erase_if(DeadTargets, [&](Node *TargetN) { + SCC &TargetC = *G.lookupSCC(*TargetN); + RefSCC &TargetRC = TargetC.getOuterRefSCC(); + + // We can't trivially remove internal targets, so skip + // those. + if (&TargetRC == RC) + return false; + + RC->removeOutgoingEdge(N, *TargetN); + LLVM_DEBUG(dbgs() << "Deleting outgoing edge from '" << N << "' to '" + << TargetN << "'\n"); + return true; + }); // Now do a batch removal of the internal ref edges left. auto NewRefSCCs = RC->removeInternalRefEdge(N, DeadTargets); diff --git a/llvm/lib/Analysis/ScalarEvolution.cpp b/llvm/lib/Analysis/ScalarEvolution.cpp index 071b569d3f17..361a1437f690 100644 --- a/llvm/lib/Analysis/ScalarEvolution.cpp +++ b/llvm/lib/Analysis/ScalarEvolution.cpp @@ -11620,9 +11620,7 @@ static bool findArrayDimensionsRec(ScalarEvolution &SE, } // Remove all SCEVConstants. - Terms.erase( - remove_if(Terms, [](const SCEV *E) { return isa<SCEVConstant>(E); }), - Terms.end()); + erase_if(Terms, [](const SCEV *E) { return isa<SCEVConstant>(E); }); if (Terms.size() > 0) if (!findArrayDimensionsRec(SE, Terms, Sizes)) diff --git a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 2be446531faa..75b4a2831b0f 100644 --- a/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -1636,9 +1636,7 @@ bool DwarfDebug::buildLocationList(SmallVectorImpl<DebugLocEntry> &DebugLoc, // Remove all values that are no longer live. size_t Index = std::distance(EB, EI); - auto Last = - remove_if(OpenRanges, [&](OpenRange &R) { return R.first <= Index; }); - OpenRanges.erase(Last, OpenRanges.end()); + erase_if(OpenRanges, [&](OpenRange &R) { return R.first <= Index; }); // If we are dealing with a clobbering entry, this iteration will result in // a location list entry starting after the clobbering instruction. diff --git a/llvm/lib/CodeGen/RDFLiveness.cpp b/llvm/lib/CodeGen/RDFLiveness.cpp index 50bd910739b5..37273bb0c4bb 100644 --- a/llvm/lib/CodeGen/RDFLiveness.cpp +++ b/llvm/lib/CodeGen/RDFLiveness.cpp @@ -300,7 +300,7 @@ NodeList Liveness::getAllReachingDefs(RegisterRef RefRR, auto DeadP = [](const NodeAddr<DefNode*> DA) -> bool { return DA.Addr->getFlags() & NodeAttrs::Dead; }; - RDefs.resize(std::distance(RDefs.begin(), llvm::remove_if(RDefs, DeadP))); + llvm::erase_if(RDefs, DeadP); return RDefs; } diff --git a/llvm/lib/CodeGen/StackMaps.cpp b/llvm/lib/CodeGen/StackMaps.cpp index ee1a4a47b4cc..5645e3062d41 100644 --- a/llvm/lib/CodeGen/StackMaps.cpp +++ b/llvm/lib/CodeGen/StackMaps.cpp @@ -361,10 +361,7 @@ StackMaps::parseRegisterLiveOutMask(const uint32_t *Mask) const { } } - LiveOuts.erase( - llvm::remove_if(LiveOuts, - [](const LiveOutReg &LO) { return LO.Reg == 0; }), - LiveOuts.end()); + llvm::erase_if(LiveOuts, [](const LiveOutReg &LO) { return LO.Reg == 0; }); return LiveOuts; } diff --git a/llvm/lib/IR/LLVMContextImpl.h b/llvm/lib/IR/LLVMContextImpl.h index ddbf1e518ebe..46feca94fcd1 100644 --- a/llvm/lib/IR/LLVMContextImpl.h +++ b/llvm/lib/IR/LLVMContextImpl.h @@ -1304,8 +1304,7 @@ class MDAttachments { /// /// Erases all attachments matching the \c shouldRemove predicate. template <class PredTy> void remove_if(PredTy shouldRemove) { - Attachments.erase(llvm::remove_if(Attachments, shouldRemove), - Attachments.end()); + llvm::erase_if(Attachments, shouldRemove); } }; diff --git a/llvm/lib/IR/Metadata.cpp b/llvm/lib/IR/Metadata.cpp index 4dd0052c60a2..7ca538995db2 100644 --- a/llvm/lib/IR/Metadata.cpp +++ b/llvm/lib/IR/Metadata.cpp @@ -1169,11 +1169,10 @@ bool MDAttachments::erase(unsigned ID) { return true; } - auto I = std::remove_if(Attachments.begin(), Attachments.end(), - [ID](const Attachment &A) { return A.MDKind == ID; }); - bool Changed = I != Attachments.end(); - Attachments.erase(I, Attachments.end()); - return Changed; + auto OldSize = Attachments.size(); + llvm::erase_if(Attachments, + [ID](const Attachment &A) { return A.MDKind == ID; }); + return OldSize != Attachments.size(); } MDNode *Value::getMetadata(unsigned KindID) const { _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits