@@ -9,44 +9,34 @@ define amdgpu_kernel void @blender_no_live_segment_at_def_error(<4 x float> %ext
99; CHECK-NEXT: s_addc_u32 s13, s13, 0
1010; CHECK-NEXT: s_setreg_b32 hwreg(HW_REG_FLAT_SCR_LO), s12
1111; CHECK-NEXT: s_setreg_b32 hwreg(HW_REG_FLAT_SCR_HI), s13
12- ; CHECK-NEXT: s_load_dwordx8 s[36:43 ], s[8:9], 0x0
12+ ; CHECK-NEXT: s_load_dwordx8 s[20:27 ], s[8:9], 0x0
1313; CHECK-NEXT: s_add_u32 s0, s0, s17
1414; CHECK-NEXT: s_addc_u32 s1, s1, 0
15- ; CHECK-NEXT: s_mov_b32 s12, 0
16- ; CHECK-NEXT: s_waitcnt lgkmcnt(0)
17- ; CHECK-NEXT: s_cmp_lg_u32 s40, 0
18- ; CHECK-NEXT: s_cbranch_scc1 .LBB0_8
19- ; CHECK-NEXT: ; %bb.1: ; %if.end13.i.i
20- ; CHECK-NEXT: s_cmp_eq_u32 s42, 0
21- ; CHECK-NEXT: s_cbranch_scc1 .LBB0_4
22- ; CHECK-NEXT: ; %bb.2: ; %if.else251.i.i
23- ; CHECK-NEXT: s_cmp_lg_u32 s43, 0
24- ; CHECK-NEXT: s_mov_b32 s17, 0
25- ; CHECK-NEXT: s_cselect_b32 s12, -1, 0
26- ; CHECK-NEXT: s_and_b32 vcc_lo, exec_lo, s12
27- ; CHECK-NEXT: s_cbranch_vccz .LBB0_5
28- ; CHECK-NEXT: ; %bb.3:
2915; CHECK-NEXT: s_mov_b32 s36, 0
30- ; CHECK-NEXT: s_andn2_b32 vcc_lo, exec_lo, s12
31- ; CHECK-NEXT: s_cbranch_vccz .LBB0_6
32- ; CHECK-NEXT: s_branch .LBB0_7
33- ; CHECK-NEXT: .LBB0_4:
34- ; CHECK-NEXT: s_mov_b32 s14, s12
35- ; CHECK-NEXT: s_mov_b32 s15, s12
36- ; CHECK-NEXT: s_mov_b32 s13, s12
37- ; CHECK-NEXT: s_mov_b64 s[38:39], s[14:15]
38- ; CHECK-NEXT: s_mov_b64 s[36:37], s[12:13]
16+ ; CHECK-NEXT: s_waitcnt lgkmcnt(0)
17+ ; CHECK-NEXT: s_cmp_lg_u32 s24, 0
18+ ; CHECK-NEXT: s_cbranch_scc0 .LBB0_2
19+ ; CHECK-NEXT: ; %bb.1:
20+ ; CHECK-NEXT: s_mov_b64 s[38:39], s[22:23]
21+ ; CHECK-NEXT: s_mov_b64 s[36:37], s[20:21]
3922; CHECK-NEXT: s_branch .LBB0_7
40- ; CHECK-NEXT: .LBB0_5: ; %if.then263.i.i
41- ; CHECK-NEXT: v_cmp_lt_f32_e64 s12, s41, 0
42- ; CHECK-NEXT: s_mov_b32 s36, 1.0
43- ; CHECK-NEXT: s_mov_b32 s17, 0x7fc00000
23+ ; CHECK-NEXT: .LBB0_2: ; %if.end13.i.i
4424; CHECK-NEXT: s_mov_b32 s37, s36
4525; CHECK-NEXT: s_mov_b32 s38, s36
26+ ; CHECK-NEXT: s_cmp_eq_u32 s26, 0
4627; CHECK-NEXT: s_mov_b32 s39, s36
28+ ; CHECK-NEXT: s_cbranch_scc1 .LBB0_6
29+ ; CHECK-NEXT: ; %bb.3: ; %if.else251.i.i
30+ ; CHECK-NEXT: s_cmp_lg_u32 s27, 0
31+ ; CHECK-NEXT: s_mov_b32 s17, 0
32+ ; CHECK-NEXT: s_cselect_b32 s12, -1, 0
33+ ; CHECK-NEXT: s_and_b32 vcc_lo, exec_lo, s12
34+ ; CHECK-NEXT: s_cbranch_vccz .LBB0_8
35+ ; CHECK-NEXT: ; %bb.4:
36+ ; CHECK-NEXT: s_mov_b32 s36, 0
4737; CHECK-NEXT: s_andn2_b32 vcc_lo, exec_lo, s12
48- ; CHECK-NEXT: s_cbranch_vccnz .LBB0_7
49- ; CHECK-NEXT: .LBB0_6 : ; %if.end273.i.i
38+ ; CHECK-NEXT: s_cbranch_vccnz .LBB0_6
39+ ; CHECK-NEXT: .LBB0_5 : ; %if.end273.i.i
5040; CHECK-NEXT: s_add_u32 s12, s8, 40
5141; CHECK-NEXT: s_addc_u32 s13, s9, 0
5242; CHECK-NEXT: s_getpc_b64 s[18:19]
@@ -72,13 +62,13 @@ define amdgpu_kernel void @blender_no_live_segment_at_def_error(<4 x float> %ext
7262; CHECK-NEXT: s_mov_b32 s37, s36
7363; CHECK-NEXT: s_mov_b32 s38, s36
7464; CHECK-NEXT: s_mov_b32 s39, s36
75- ; CHECK-NEXT: .LBB0_7 : ; %if.end294.i.i
65+ ; CHECK-NEXT: .LBB0_6 : ; %if.end294.i.i
7666; CHECK-NEXT: v_mov_b32_e32 v0, 0
7767; CHECK-NEXT: buffer_store_dword v0, off, s[0:3], 0 offset:12
7868; CHECK-NEXT: buffer_store_dword v0, off, s[0:3], 0 offset:8
7969; CHECK-NEXT: buffer_store_dword v0, off, s[0:3], 0 offset:4
8070; CHECK-NEXT: buffer_store_dword v0, off, s[0:3], 0
81- ; CHECK-NEXT: .LBB0_8 : ; %kernel_direct_lighting.exit
71+ ; CHECK-NEXT: .LBB0_7 : ; %kernel_direct_lighting.exit
8272; CHECK-NEXT: s_load_dwordx2 s[4:5], s[8:9], 0x20
8373; CHECK-NEXT: v_mov_b32_e32 v0, s36
8474; CHECK-NEXT: v_mov_b32_e32 v4, 0
@@ -88,6 +78,16 @@ define amdgpu_kernel void @blender_no_live_segment_at_def_error(<4 x float> %ext
8878; CHECK-NEXT: s_waitcnt lgkmcnt(0)
8979; CHECK-NEXT: global_store_dwordx4 v4, v[0:3], s[4:5]
9080; CHECK-NEXT: s_endpgm
81+ ; CHECK-NEXT: .LBB0_8: ; %if.then263.i.i
82+ ; CHECK-NEXT: v_cmp_lt_f32_e64 s12, s25, 0
83+ ; CHECK-NEXT: s_mov_b32 s36, 1.0
84+ ; CHECK-NEXT: s_mov_b32 s17, 0x7fc00000
85+ ; CHECK-NEXT: s_mov_b32 s37, s36
86+ ; CHECK-NEXT: s_mov_b32 s38, s36
87+ ; CHECK-NEXT: s_mov_b32 s39, s36
88+ ; CHECK-NEXT: s_andn2_b32 vcc_lo, exec_lo, s12
89+ ; CHECK-NEXT: s_cbranch_vccz .LBB0_5
90+ ; CHECK-NEXT: s_branch .LBB0_6
9191entry:
9292 %cmp5.i.i = icmp eq i32 %cmp5.i.i.arg , 0
9393 br i1 %cmp5.i.i , label %if.end13.i.i , label %kernel_direct_lighting.exit
0 commit comments