[llvm] 0876c11 - [AMDGPU] Parse wwm filter flag for regalloc fast (#119347)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Dec 12 00:21:07 PST 2024
Author: Akshat Oke
Date: 2024-12-12T13:51:02+05:30
New Revision: 0876c11ceeb093904decc4d89bef213d483a5656
URL: https://github.com/llvm/llvm-project/commit/0876c11ceeb093904decc4d89bef213d483a5656
DIFF: https://github.com/llvm/llvm-project/commit/0876c11ceeb093904decc4d89bef213d483a5656.diff
LOG: [AMDGPU] Parse wwm filter flag for regalloc fast (#119347)
Added:
Modified:
llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
llvm/test/tools/llc/new-pm/regalloc-amdgpu.mir
Removed:
################################################################################
diff --git a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
index 3f21d5a00ab7d5..7256eec89008a5 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
@@ -879,6 +879,8 @@ void AMDGPUTargetMachine::registerPassBuilderCallbacks(PassBuilder &PB) {
return onlyAllocateSGPRs;
if (FilterName == "vgpr")
return onlyAllocateVGPRs;
+ if (FilterName == "wwm")
+ return onlyAllocateWWMRegs;
return nullptr;
});
}
diff --git a/llvm/test/tools/llc/new-pm/regalloc-amdgpu.mir b/llvm/test/tools/llc/new-pm/regalloc-amdgpu.mir
index f75db964e2d6e9..07f2d350ffd9c0 100644
--- a/llvm/test/tools/llc/new-pm/regalloc-amdgpu.mir
+++ b/llvm/test/tools/llc/new-pm/regalloc-amdgpu.mir
@@ -1,8 +1,10 @@
# REQUIRES: amdgpu-registered-target
-# RUN: llc -mtriple=amdgcn --passes='regallocfast<filter=sgpr>' --print-pipeline-passes --filetype=null %s | FileCheck %s --check-prefix=PASS
+# RUN: llc -mtriple=amdgcn --passes='regallocfast<filter=sgpr>,regallocfast<filter=wwm>,regallocfast<filter=vgpr>' --print-pipeline-passes --filetype=null %s | FileCheck %s --check-prefix=PASS
# RUN: not llc -mtriple=amdgcn --passes='regallocfast<filter=bad-filter>' --print-pipeline-passes --filetype=null %s 2>&1 | FileCheck %s --check-prefix=BAD-FILTER
# PASS: regallocfast<filter=sgpr>
+# PASS: regallocfast<filter=wwm>
+# PASS: regallocfast<filter=vgpr>
# BAD-FILTER: invalid regallocfast register filter 'bad-filter'
---
More information about the llvm-commits
mailing list