@@ -1634,12 +1634,12 @@ define amdgpu_kernel void @multiple_uses_fneg_select_f64(double %x, double %y, i
1634
1634
; GFX7-NEXT: v_mov_b32_e32 v0, s3
1635
1635
; GFX7-NEXT: v_mov_b32_e32 v1, s1
1636
1636
; GFX7-NEXT: s_cselect_b32 s1, s1, s3
1637
- ; GFX7-NEXT: v_cndmask_b32_e64 v0, - v0, - v1, vcc
1637
+ ; GFX7-NEXT: v_cndmask_b32_e32 v0, v0, v1, vcc
1638
1638
; GFX7-NEXT: s_cselect_b32 s0, s0, s2
1639
1639
; GFX7-NEXT: v_mov_b32_e32 v1, s1
1640
1640
; GFX7-NEXT: v_mov_b32_e32 v2, s4
1641
1641
; GFX7-NEXT: s_mov_b32 flat_scratch_lo, s13
1642
- ; GFX7-NEXT: v_cndmask_b32_e32 v1, v1, v0, vcc
1642
+ ; GFX7-NEXT: v_cndmask_b32_e64 v1, v1, - v0, vcc
1643
1643
; GFX7-NEXT: v_mov_b32_e32 v0, s0
1644
1644
; GFX7-NEXT: v_mov_b32_e32 v3, s5
1645
1645
; GFX7-NEXT: flat_store_dwordx2 v[2:3], v[0:1]
@@ -1658,10 +1658,10 @@ define amdgpu_kernel void @multiple_uses_fneg_select_f64(double %x, double %y, i
1658
1658
; GFX9-NEXT: v_mov_b32_e32 v0, s3
1659
1659
; GFX9-NEXT: v_mov_b32_e32 v1, s1
1660
1660
; GFX9-NEXT: s_cselect_b32 s1, s1, s3
1661
- ; GFX9-NEXT: v_cndmask_b32_e64 v0, - v0, - v1, vcc
1661
+ ; GFX9-NEXT: v_cndmask_b32_e32 v0, v0, v1, vcc
1662
1662
; GFX9-NEXT: s_cselect_b32 s0, s0, s2
1663
1663
; GFX9-NEXT: v_mov_b32_e32 v1, s1
1664
- ; GFX9-NEXT: v_cndmask_b32_e32 v1, v1, v0, vcc
1664
+ ; GFX9-NEXT: v_cndmask_b32_e64 v1, v1, - v0, vcc
1665
1665
; GFX9-NEXT: v_mov_b32_e32 v0, s0
1666
1666
; GFX9-NEXT: global_store_dwordx2 v2, v[0:1], s[4:5]
1667
1667
; GFX9-NEXT: s_endpgm
@@ -1672,17 +1672,17 @@ define amdgpu_kernel void @multiple_uses_fneg_select_f64(double %x, double %y, i
1672
1672
; GFX11-NEXT: s_load_b128 s[0:3], s[4:5], 0x0
1673
1673
; GFX11-NEXT: s_load_b32 s6, s[4:5], 0x10
1674
1674
; GFX11-NEXT: s_load_b64 s[4:5], s[4:5], 0x18
1675
+ ; GFX11-NEXT: v_mov_b32_e32 v2, 0
1675
1676
; GFX11-NEXT: s_waitcnt lgkmcnt(0)
1676
1677
; GFX11-NEXT: v_mov_b32_e32 v0, s1
1677
1678
; GFX11-NEXT: s_bitcmp1_b32 s6, 0
1678
1679
; GFX11-NEXT: s_cselect_b32 vcc_lo, -1, 0
1679
- ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) | instid1(SALU_CYCLE_1 )
1680
- ; GFX11-NEXT: v_cndmask_b32_e64 v0, - s3, - v0, vcc_lo
1680
+ ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_3) | instid1(VALU_DEP_1 )
1681
+ ; GFX11-NEXT: v_cndmask_b32_e32 v0, s3, v0, vcc_lo
1681
1682
; GFX11-NEXT: s_and_b32 s6, vcc_lo, exec_lo
1682
1683
; GFX11-NEXT: s_cselect_b32 s1, s1, s3
1683
1684
; GFX11-NEXT: s_cselect_b32 s0, s0, s2
1684
- ; GFX11-NEXT: s_delay_alu instid0(VALU_DEP_1)
1685
- ; GFX11-NEXT: v_dual_mov_b32 v2, 0 :: v_dual_cndmask_b32 v1, s1, v0
1685
+ ; GFX11-NEXT: v_cndmask_b32_e64 v1, s1, -v0, vcc_lo
1686
1686
; GFX11-NEXT: v_mov_b32_e32 v0, s0
1687
1687
; GFX11-NEXT: global_store_b64 v2, v[0:1], s[4:5]
1688
1688
; GFX11-NEXT: s_endpgm
0 commit comments