[clang] [llvm] [AMDGPU] Change CF intrinsics lowering to reconverge on predecessors (PR #108596)

via cfe-commits cfe-commits at lists.llvm.org
Wed Oct 16 03:21:42 PDT 2024


================
@@ -936,19 +978,20 @@ define amdgpu_kernel void @add_i32_varying_vdata(ptr addrspace(1) %out, ptr addr
 ; GFX12W32-NEXT:    s_cbranch_scc1 .LBB2_1
 ; GFX12W32-NEXT:  ; %bb.2: ; %ComputeEnd
 ; GFX12W32-NEXT:    v_mbcnt_lo_u32_b32 v1, exec_lo, 0
-; GFX12W32-NEXT:    s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(SALU_CYCLE_1)
+; GFX12W32-NEXT:    s_delay_alu instid0(VALU_DEP_1)
 ; GFX12W32-NEXT:    v_cmp_eq_u32_e32 vcc_lo, 0, v1
 ; GFX12W32-NEXT:    ; implicit-def: $vgpr1
-; GFX12W32-NEXT:    s_and_saveexec_b32 s1, vcc_lo
-; GFX12W32-NEXT:    s_xor_b32 s1, exec_lo, s1
-; GFX12W32-NEXT:    s_cbranch_execz .LBB2_4
+; GFX12W32-NEXT:    s_xor_b32 s1, vcc_lo, exec_lo
+; GFX12W32-NEXT:    s_cmp_lg_u32 vcc_lo, 0
+; GFX12W32-NEXT:    s_cmov_b32 exec_lo, vcc_lo
+; GFX12W32-NEXT:    s_cbranch_scc0 .LBB2_4
----------------
alex-t wrote:

Won't work for same reason as above :(

https://github.com/llvm/llvm-project/pull/108596


More information about the cfe-commits mailing list