[llvm] [AMDGPU] Remove redundant S_WAIT_XCNT after inserting S_SET_VGPR_MSB (PR #188527)
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 25 13:57:45 PDT 2026
================
@@ -1010,3 +1010,36 @@ body: |
; ASM: NumVgprs: 514
...
+
+# ASM-LABEL: {{^}}redundant_xcnt:
+# DIS-LABEL: <redundant_xcnt>:
+---
+name: redundant_xcnt
+tracksRegLiveness: true
+body: |
+ bb.0:
+ ; ASM: %bb.0:
+
+ liveins: $vgpr0_vgpr1, $vgpr2_vgpr3, $vgpr256, $vgpr257
+
+ ; GCN-NEXT: global_load_b32 v5, v[0:1], off
+ $vgpr5 = GLOBAL_LOAD_DWORD $vgpr0_vgpr1, 0, 0, implicit $exec
+
+ ; GCN-NEXT: global_load_b32 v5, v[2:3], off
+ $vgpr5 = GLOBAL_LOAD_DWORD $vgpr2_vgpr3, 0, 0, implicit $exec
+
+ S_WAIT_XCNT 1
+
+ ; GCN-NEXT: s_set_vgpr_msb 4
+ ; ASM-SAME: ; msbs: dst=0 src0=0 src1=1 src2=0
+ ; GCN-NEXT: v_add_f32_e32 v0, 1, v0 /*v256*/
+ $vgpr0 = V_ADD_F32_e32 1, $vgpr256, implicit $mode, implicit $exec
+
+ S_WAIT_XCNT 0
----------------
jayfoad wrote:
Yes!
https://github.com/llvm/llvm-project/pull/188527
More information about the llvm-commits
mailing list