[llvm] [llvm] Use llvm::less_first and llvm::less_second (NFC) (PR #136272)
via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 18 00:07:04 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-backend-amdgpu
Author: Kazu Hirata (kazutakahirata)
<details>
<summary>Changes</summary>
---
Full diff: https://github.com/llvm/llvm-project/pull/136272.diff
3 Files Affected:
- (modified) llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp (+2-6)
- (modified) llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp (+2-7)
- (modified) llvm/tools/llvm-gpu-loader/nvptx.cpp (+2-2)
``````````diff
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp b/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
index 153b14ce60507..815715604bc96 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
@@ -588,12 +588,8 @@ void PipelineSolver::populateReadyList(
ReadyList.push_back(std::pair(*I, -1));
}
- if (UseCostHeur) {
- std::sort(ReadyList.begin(), ReadyList.end(),
- [](std::pair<int, int> A, std::pair<int, int> B) {
- return A.second < B.second;
- });
- }
+ if (UseCostHeur)
+ llvm::sort(ReadyList, llvm::less_second());
assert(ReadyList.size() == CurrSU.second.size());
}
diff --git a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
index 13c1eb572ef92..4301bc7d0d68b 100644
--- a/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+++ b/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
@@ -6466,10 +6466,7 @@ static bool clusterSortPtrAccesses(ArrayRef<Value *> VL,
for (auto &Base : Bases) {
for (auto &Vec : Base.second) {
if (Vec.size() > 1) {
- stable_sort(Vec, [](const std::tuple<Value *, int, unsigned> &X,
- const std::tuple<Value *, int, unsigned> &Y) {
- return std::get<1>(X) < std::get<1>(Y);
- });
+ stable_sort(Vec, llvm::less_second());
int InitialOffset = std::get<1>(Vec[0]);
bool AnyConsecutive =
all_of(enumerate(Vec), [InitialOffset](const auto &P) {
@@ -7986,9 +7983,7 @@ bool BoUpSLP::canFormVector(ArrayRef<StoreInst *> StoresVec,
// Check if the stores are consecutive by checking if their difference is 1.
if (StoreOffsetVec.size() != StoresVec.size())
return false;
- sort(StoreOffsetVec,
- [](const std::pair<int, unsigned> &L,
- const std::pair<int, unsigned> &R) { return L.first < R.first; });
+ sort(StoreOffsetVec, llvm::less_first());
unsigned Idx = 0;
int PrevDist = 0;
for (const auto &P : StoreOffsetVec) {
diff --git a/llvm/tools/llvm-gpu-loader/nvptx.cpp b/llvm/tools/llvm-gpu-loader/nvptx.cpp
index 13c62d50e6077..781a045e71a94 100644
--- a/llvm/tools/llvm-gpu-loader/nvptx.cpp
+++ b/llvm/tools/llvm-gpu-loader/nvptx.cpp
@@ -84,8 +84,8 @@ Expected<void *> get_ctor_dtor_array(const void *image, const size_t size,
}
// Lower priority constructors are run before higher ones. The reverse is true
// for destructors.
- llvm::sort(ctors, [](auto x, auto y) { return x.second < y.second; });
- llvm::sort(dtors, [](auto x, auto y) { return x.second < y.second; });
+ llvm::sort(ctors, llvm::less_second());
+ llvm::sort(dtors, llvm::less_second());
// Allocate host pinned memory to make these arrays visible to the GPU.
CUdeviceptr *dev_memory = reinterpret_cast<CUdeviceptr *>(allocator(
``````````
</details>
https://github.com/llvm/llvm-project/pull/136272
More information about the llvm-commits
mailing list