diff --git a/llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h b/llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h index 273da3a87ee7..9c1374719298 100644 --- a/llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h +++ b/llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h @@ -141,10 +141,11 @@ public: "Expected LoadInst or StoreInst!"); assert(all_of(Seeds, [](auto *S) { return isa(S); }) && "Expected Load or Store instructions!"); - llvm::sort(Seeds, [&SE](Instruction *I0, Instruction *I1) { + auto Cmp = [&SE](Instruction *I0, Instruction *I1) { return Utils::atLowerAddress(cast(I0), cast(I1), SE); - }); + }; + std::sort(Seeds.begin(), Seeds.end(), Cmp); } explicit MemSeedBundle(LoadOrStoreT *MemI) : SeedBundle(MemI) { static_assert(std::is_same::value || diff --git a/llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp b/llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp index 8029fbcf66d3..ffdf08eec996 100644 --- a/llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp +++ b/llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp @@ -2333,10 +2333,11 @@ static AssignmentTrackingLowering::OverlapMap buildOverlapMapAndRecordDeclares( // order of fragment size - there should be no duplicates. for (auto &Pair : FragmentMap) { SmallVector &Frags = Pair.second; - llvm::sort(Frags, [](const DebugVariable &Next, const DebugVariable &Elmt) { - return Elmt.getFragmentOrDefault().SizeInBits > - Next.getFragmentOrDefault().SizeInBits; - }); + std::sort(Frags.begin(), Frags.end(), + [](const DebugVariable &Next, const DebugVariable &Elmt) { + return Elmt.getFragmentOrDefault().SizeInBits > + Next.getFragmentOrDefault().SizeInBits; + }); // Check for duplicates. assert(std::adjacent_find(Frags.begin(), Frags.end()) == Frags.end()); } diff --git a/llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp b/llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp index 386daa5b9042..1cde094d78e2 100644 --- a/llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp +++ b/llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp @@ -1056,9 +1056,9 @@ void llvm::extractInstructionFeatures( // frequency vector, mapping each instruction to its associated MBB. // Start off by sorting the segments based on the beginning slot index. - llvm::sort(LRPosInfo, [](LRStartEndInfo A, LRStartEndInfo B) { - return A.Begin < B.Begin; - }); + std::sort( + LRPosInfo.begin(), LRPosInfo.end(), + [](LRStartEndInfo A, LRStartEndInfo B) { return A.Begin < B.Begin; }); size_t InstructionIndex = 0; size_t CurrentSegmentIndex = 0; SlotIndex CurrentIndex = LRPosInfo[0].Begin; diff --git a/llvm/lib/DWARFLinker/Parallel/ArrayList.h b/llvm/lib/DWARFLinker/Parallel/ArrayList.h index 98d1fe0eb1b2..d99fdcc8c60c 100644 --- a/llvm/lib/DWARFLinker/Parallel/ArrayList.h +++ b/llvm/lib/DWARFLinker/Parallel/ArrayList.h @@ -82,7 +82,7 @@ public: forEach([&](T &Item) { SortedItems.push_back(Item); }); if (SortedItems.size()) { - llvm::sort(SortedItems, Comparator); + std::sort(SortedItems.begin(), SortedItems.end(), Comparator); size_t SortedItemIdx = 0; forEach([&](T &Item) { Item = SortedItems[SortedItemIdx++]; }); diff --git a/llvm/lib/ExecutionEngine/Orc/Core.cpp b/llvm/lib/ExecutionEngine/Orc/Core.cpp index 66fca7cf74bd..cbed057950ae 100644 --- a/llvm/lib/ExecutionEngine/Orc/Core.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Core.cpp @@ -1142,9 +1142,8 @@ void JITDylib::dump(raw_ostream &OS) { std::vector> SymbolsSorted; for (auto &KV : Symbols) SymbolsSorted.emplace_back(KV.first, &KV.second); - llvm::sort(SymbolsSorted, [](const auto &L, const auto &R) { - return *L.first < *R.first; - }); + std::sort(SymbolsSorted.begin(), SymbolsSorted.end(), + [](const auto &L, const auto &R) { return *L.first < *R.first; }); for (auto &KV : SymbolsSorted) { OS << " \"" << *KV.first << "\": "; diff --git a/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp b/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp index 3b68d55b089a..9b842180fa7a 100644 --- a/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp +++ b/llvm/lib/ExecutionEngine/Orc/Debugging/DebugInfoSupport.cpp @@ -49,7 +49,7 @@ static void preserveDWARFSection(LinkGraph &G, Section &Sec) { static SmallVector getSectionData(Section &Sec) { SmallVector SecData; SmallVector SecBlocks(Sec.blocks().begin(), Sec.blocks().end()); - llvm::sort(SecBlocks, [](Block *LHS, Block *RHS) { + std::sort(SecBlocks.begin(), SecBlocks.end(), [](Block *LHS, Block *RHS) { return LHS->getAddress() < RHS->getAddress(); }); // Convert back to what object file would have, one blob of section content diff --git a/llvm/lib/ProfileData/InstrProfReader.cpp b/llvm/lib/ProfileData/InstrProfReader.cpp index 7518f46bd234..a1eb08362087 100644 --- a/llvm/lib/ProfileData/InstrProfReader.cpp +++ b/llvm/lib/ProfileData/InstrProfReader.cpp @@ -488,7 +488,7 @@ RawInstrProfReader::getTemporalProfTraces( return TemporalProfTraces; } // Sort functions by their timestamps to build the trace. - llvm::sort(TemporalProfTimestamps); + std::sort(TemporalProfTimestamps.begin(), TemporalProfTimestamps.end()); TemporalProfTraceTy Trace; if (Weight) Trace.Weight = *Weight; diff --git a/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp b/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp index 0b5868fc4873..dbe74b1b08f8 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp @@ -589,7 +589,7 @@ void PipelineSolver::populateReadyList( } if (UseCostHeur) - llvm::sort(ReadyList, llvm::less_second()); + std::sort(ReadyList.begin(), ReadyList.end(), llvm::less_second()); assert(ReadyList.size() == CurrSU.second.size()); } diff --git a/llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp b/llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp index d0bea0585c24..5027705ef61d 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPUPreloadKernelArguments.cpp @@ -224,7 +224,7 @@ public: // Allocate loads in order of offset. We need to be sure that the implicit // argument can actually be preloaded. - llvm::sort(ImplicitArgLoads, less_second()); + std::sort(ImplicitArgLoads.begin(), ImplicitArgLoads.end(), less_second()); // If we fail to preload any implicit argument we know we don't have SGPRs // to preload any subsequent ones with larger offsets. Find the first diff --git a/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp b/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp index e83ae43a325e..69bc84a6733c 100644 --- a/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp +++ b/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp @@ -6844,8 +6844,8 @@ bool ARMPipelinerLoopInfo::tooMuchRegisterPressure(SwingSchedulerDAG &SSD, ++Stage) { std::deque Instrs = SMS.getInstructions(Cycle + Stage * SMS.getInitiationInterval()); - llvm::sort(Instrs, - [](SUnit *A, SUnit *B) { return A->NodeNum > B->NodeNum; }); + std::sort(Instrs.begin(), Instrs.end(), + [](SUnit *A, SUnit *B) { return A->NodeNum > B->NodeNum; }); llvm::append_range(ProposedSchedule, Instrs); } diff --git a/llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp b/llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp index 27c37339d670..e6cb8cee66a6 100644 --- a/llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp +++ b/llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp @@ -106,7 +106,7 @@ bool SPIRVExtensionsParser::parse(cl::Option &O, StringRef ArgName, std::set &Vals) { SmallVector Tokens; ArgValue.split(Tokens, ",", -1, false); - llvm::sort(Tokens); + std::sort(Tokens.begin(), Tokens.end()); std::set EnabledExtensions; diff --git a/llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp b/llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp index 5d18729363ec..68448acf45c3 100644 --- a/llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp +++ b/llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp @@ -660,14 +660,14 @@ class SPIRVStructurizer : public FunctionPass { Instruction *InsertionPoint = *MergeInstructions.begin(); PartialOrderingVisitor Visitor(F); - llvm::sort(MergeInstructions, - [&Visitor](Instruction *Left, Instruction *Right) { - if (Left == Right) - return false; - BasicBlock *RightMerge = getDesignatedMergeBlock(Right); - BasicBlock *LeftMerge = getDesignatedMergeBlock(Left); - return !Visitor.compare(RightMerge, LeftMerge); - }); + std::sort(MergeInstructions.begin(), MergeInstructions.end(), + [&Visitor](Instruction *Left, Instruction *Right) { + if (Left == Right) + return false; + BasicBlock *RightMerge = getDesignatedMergeBlock(Right); + BasicBlock *LeftMerge = getDesignatedMergeBlock(Left); + return !Visitor.compare(RightMerge, LeftMerge); + }); for (Instruction *I : MergeInstructions) { I->moveBefore(InsertionPoint->getIterator()); diff --git a/llvm/lib/Target/SPIRV/SPIRVUtils.cpp b/llvm/lib/Target/SPIRV/SPIRVUtils.cpp index 48bacaa2d5c4..f38794afab43 100644 --- a/llvm/lib/Target/SPIRV/SPIRVUtils.cpp +++ b/llvm/lib/Target/SPIRV/SPIRVUtils.cpp @@ -662,7 +662,7 @@ PartialOrderingVisitor::PartialOrderingVisitor(Function &F) { for (auto &[BB, Info] : BlockToOrder) Order.emplace_back(BB); - llvm::sort(Order, [&](const auto &LHS, const auto &RHS) { + std::sort(Order.begin(), Order.end(), [&](const auto &LHS, const auto &RHS) { return compare(LHS, RHS); }); } diff --git a/llvm/lib/TargetParser/AArch64TargetParser.cpp b/llvm/lib/TargetParser/AArch64TargetParser.cpp index 04da2f3e9acb..e13c6e6d28c2 100644 --- a/llvm/lib/TargetParser/AArch64TargetParser.cpp +++ b/llvm/lib/TargetParser/AArch64TargetParser.cpp @@ -227,10 +227,10 @@ AArch64::printEnabledExtensions(const std::set &EnabledFeatureNames) EnabledExtensionsInfo.push_back(*ExtInfo); } - llvm::sort(EnabledExtensionsInfo, - [](const ExtensionInfo &Lhs, const ExtensionInfo &Rhs) { - return Lhs.ArchFeatureName < Rhs.ArchFeatureName; - }); + std::sort(EnabledExtensionsInfo.begin(), EnabledExtensionsInfo.end(), + [](const ExtensionInfo &Lhs, const ExtensionInfo &Rhs) { + return Lhs.ArchFeatureName < Rhs.ArchFeatureName; + }); for (const auto &Ext : EnabledExtensionsInfo) { outs() << " " diff --git a/llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp b/llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp index 37121faecc77..5b4350845b72 100644 --- a/llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp +++ b/llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp @@ -2945,7 +2945,7 @@ void CallsiteContextGraph::ContextNode::print( // Make a copy of the computed context ids that we can sort for stability. auto ContextIds = getContextIds(); std::vector SortedIds(ContextIds.begin(), ContextIds.end()); - llvm::sort(SortedIds); + std::sort(SortedIds.begin(), SortedIds.end()); for (auto Id : SortedIds) OS << " " << Id; OS << "\n"; @@ -2977,7 +2977,7 @@ void CallsiteContextGraph::ContextEdge::print( << " AllocTypes: " << getAllocTypeString(AllocTypes); OS << " ContextIds:"; std::vector SortedIds(ContextIds.begin(), ContextIds.end()); - llvm::sort(SortedIds); + std::sort(SortedIds.begin(), SortedIds.end()); for (auto Id : SortedIds) OS << " " << Id; } @@ -3012,7 +3012,7 @@ void CallsiteContextGraph::printTotalSizes( DenseSet ContextIds = Node->getContextIds(); auto AllocTypeFromCall = getAllocationCallType(Node->Call); std::vector SortedIds(ContextIds.begin(), ContextIds.end()); - llvm::sort(SortedIds); + std::sort(SortedIds.begin(), SortedIds.end()); for (auto Id : SortedIds) { auto TypeI = ContextIdToAllocationType.find(Id); assert(TypeI != ContextIdToAllocationType.end()); @@ -3211,7 +3211,7 @@ private: std::string IdString = "ContextIds:"; if (ContextIds.size() < 100) { std::vector SortedIds(ContextIds.begin(), ContextIds.end()); - llvm::sort(SortedIds); + std::sort(SortedIds.begin(), SortedIds.end()); for (auto Id : SortedIds) IdString += (" " + Twine(Id)).str(); } else { diff --git a/llvm/lib/Transforms/Utils/CodeLayout.cpp b/llvm/lib/Transforms/Utils/CodeLayout.cpp index d5ddd20ee45a..c76b3afef50c 100644 --- a/llvm/lib/Transforms/Utils/CodeLayout.cpp +++ b/llvm/lib/Transforms/Utils/CodeLayout.cpp @@ -986,15 +986,16 @@ private: } // Sorting chains by density in the decreasing order. - llvm::sort(SortedChains, [&](const ChainT *L, const ChainT *R) { - // Place the entry point at the beginning of the order. - if (L->isEntry() != R->isEntry()) - return L->isEntry(); + std::sort(SortedChains.begin(), SortedChains.end(), + [&](const ChainT *L, const ChainT *R) { + // Place the entry point at the beginning of the order. + if (L->isEntry() != R->isEntry()) + return L->isEntry(); - // Compare by density and break ties by chain identifiers. - return std::make_tuple(-L->density(), L->Id) < - std::make_tuple(-R->density(), R->Id); - }); + // Compare by density and break ties by chain identifiers. + return std::make_tuple(-L->density(), L->Id) < + std::make_tuple(-R->density(), R->Id); + }); // Collect the nodes in the order specified by their chains. std::vector Order; @@ -1354,12 +1355,14 @@ private: } // Sort chains by density in the decreasing order. - llvm::sort(SortedChains, [&](const ChainT *L, const ChainT *R) { - const double DL = ChainDensity[L]; - const double DR = ChainDensity[R]; - // Compare by density and break ties by chain identifiers. - return std::make_tuple(-DL, L->Id) < std::make_tuple(-DR, R->Id); - }); + std::sort(SortedChains.begin(), SortedChains.end(), + [&](const ChainT *L, const ChainT *R) { + const double DL = ChainDensity[L]; + const double DR = ChainDensity[R]; + // Compare by density and break ties by chain identifiers. + return std::make_tuple(-DL, L->Id) < + std::make_tuple(-DR, R->Id); + }); // Collect the nodes in the order specified by their chains. std::vector Order; diff --git a/llvm/tools/llvm-jitlink/llvm-jitlink.cpp b/llvm/tools/llvm-jitlink/llvm-jitlink.cpp index 2e98f44f5159..ab2f685b4fc1 100644 --- a/llvm/tools/llvm-jitlink/llvm-jitlink.cpp +++ b/llvm/tools/llvm-jitlink/llvm-jitlink.cpp @@ -1459,9 +1459,10 @@ Error Session::FileInfo::registerMultiStubEntry( Sym.getTargetFlags()); // Let's keep stubs ordered by ascending address. - llvm::sort(Entry, [](const MemoryRegionInfo &L, const MemoryRegionInfo &R) { - return L.getTargetAddress() < R.getTargetAddress(); - }); + std::sort(Entry.begin(), Entry.end(), + [](const MemoryRegionInfo &L, const MemoryRegionInfo &R) { + return L.getTargetAddress() < R.getTargetAddress(); + }); return Error::success(); } diff --git a/llvm/utils/TableGen/ExegesisEmitter.cpp b/llvm/utils/TableGen/ExegesisEmitter.cpp index 30cac66786e4..1b4b0729a5fc 100644 --- a/llvm/utils/TableGen/ExegesisEmitter.cpp +++ b/llvm/utils/TableGen/ExegesisEmitter.cpp @@ -141,7 +141,8 @@ void ExegesisEmitter::emitPfmCountersInfo(const Record &Def, ValidationCounter->getValueAsDef("EventType")->getName(), getPfmCounterId(ValidationCounter->getValueAsString("Counter"))}); } - llvm::sort(ValidationCounters, EventNumberLess); + std::sort(ValidationCounters.begin(), ValidationCounters.end(), + EventNumberLess); OS << "\nstatic const std::pair " << Target << Def.getName() << "ValidationCounters[] = {\n"; for (const ValidationCounterInfo &VCI : ValidationCounters) {