[llvm] [AMDGPU] Remove redundant s_cmp_* after add X, 1 (PR #176962)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jan 22 05:42:40 PST 2026
================
@@ -2454,3 +2454,160 @@ body: |
S_ENDPGM 0
...
+
+
+---
+# Delete s_cmp after s_add_u32 X, 1
+name: s_add_u32_1_s_cmp_eq_u32_0x00000000
+body: |
+ ; GCN-LABEL: name: s_add_u32_1_s_cmp_eq_u32_0x00000000
+ ; GCN: bb.0:
+ ; GCN-NEXT: successors: %bb.1(0x40000000), %bb.2(0x40000000)
+ ; GCN-NEXT: liveins: $sgpr0_sgpr1, $vgpr0_vgpr1
+ ; GCN-NEXT: {{ $}}
+ ; GCN-NEXT: [[DEF:%[0-9]+]]:vgpr_32 = IMPLICIT_DEF
+ ; GCN-NEXT: [[COPY:%[0-9]+]]:sreg_32 = COPY [[DEF]]
+ ; GCN-NEXT: [[S_ADD_U32_:%[0-9]+]]:sreg_32 = S_ADD_U32 [[COPY]], 1, implicit-def $scc
+ ; GCN-NEXT: S_CBRANCH_SCC0 %bb.2, implicit $scc
+ ; GCN-NEXT: S_BRANCH %bb.1
+ ; GCN-NEXT: {{ $}}
+ ; GCN-NEXT: bb.1:
+ ; GCN-NEXT: successors: %bb.2(0x80000000)
+ ; GCN-NEXT: {{ $}}
+ ; GCN-NEXT: bb.2:
+ ; GCN-NEXT: S_ENDPGM 0
+ bb.0:
+ successors: %bb.1(0x40000000), %bb.2(0x40000000)
+ liveins: $sgpr0_sgpr1, $vgpr0_vgpr1
+ %0:vgpr_32 = IMPLICIT_DEF
+ %2:sreg_32 = COPY %0
----------------
LU-JOHN wrote:
Fixed.
https://github.com/llvm/llvm-project/pull/176962
More information about the llvm-commits
mailing list