[llvm] AMDGPU: Add NextUseAnalysis Pass (PR #178873)
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 10 10:15:07 PDT 2026
================
@@ -0,0 +1,3165 @@
+# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 \
+# RUN: -run-pass=amdgpu-next-use-printer \
+# RUN: -amdgpu-next-use-analysis-config=graphics \
+# RUN: -amdgpu-next-use-analysis-dump-distance-as-json=- \
+# RUN: -amdgpu-next-use-analysis-dump-distance-verbose \
+# RUN: -o /dev/null \
+# RUN: %s | FileCheck --check-prefix=CHECK-GX-JSON %s
+
+# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 \
+# RUN: -run-pass=amdgpu-next-use-printer \
+# RUN: -amdgpu-next-use-analysis-config=compute \
+# RUN: -amdgpu-next-use-analysis-dump-distance-as-json=- \
+# RUN: -amdgpu-next-use-analysis-dump-distance-verbose \
+# RUN: -o /dev/null \
+# RUN: %s | FileCheck --check-prefix=CHECK-CP-JSON %s
+
+# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 \
+# RUN: "-passes=require<amdgpu-next-use-analysis>,print<amdgpu-next-use-analysis>" \
+# RUN: -amdgpu-next-use-analysis-config=compute \
+# RUN: -amdgpu-next-use-analysis-dump-distance-as-json=- \
+# RUN: -amdgpu-next-use-analysis-dump-distance-verbose \
+# RUN: -o /dev/null \
+# RUN: %s | FileCheck --check-prefix=CHECK-CP-JSON %s
+
+# Generated scaling benchmark: 4 modules, 14 BBs, 61 instructions
+
+--- |
+ define amdgpu_ps i32 @acyclic_014bb(ptr addrspace(1) %p1, ptr addrspace(1) %p2, ptr addrspace(1) %p3, i1 %cond, i32 %TC1, i32 %TC2, i32 %TC3) {
+ entry:
+ br label %bb1
+ bb1:
+ br label %bb2
+ bb2:
+ br label %bb3
+ bb3:
+ br label %bb4
+ bb4:
+ br label %bb5
+ bb5:
+ br label %bb6
+ bb6:
+ br label %bb7
+ bb7:
+ br label %bb8
+ bb8:
+ br label %bb9
+ bb9:
+ br label %bb10
+ bb10:
+ br label %bb11
+ bb11:
+ br label %bb12
+ bb12:
+ br label %bb13
+ bb13:
+ ret i32 0
+ }
+...
+
+---
+name: acyclic_014bb
+alignment: 1
+tracksRegLiveness: true
+isSSA: true
+machineFunctionInfo: {}
+registers:
----------------
arsenm wrote:
Shouldn't need any registers sections
https://github.com/llvm/llvm-project/pull/178873
More information about the llvm-commits
mailing list