@@ -1486,7 +1486,7 @@ define amdgpu_ps i24 @s_fshl_i24(i24 inreg %lhs, i24 inreg %rhs, i24 inreg %amt)
14861486; GFX6: ; %bb.0:
14871487; GFX6-NEXT: v_cvt_f32_ubyte0_e32 v0, 24
14881488; GFX6-NEXT: v_rcp_iflag_f32_e32 v0, v0
1489- ; GFX6-NEXT: v_mov_b32_e32 v1, 0xffffffe8
1489+ ; GFX6-NEXT: v_not_b32_e32 v1, 23
14901490; GFX6-NEXT: s_and_b32 s2, s2, 0xffffff
14911491; GFX6-NEXT: s_bfe_u32 s1, s1, 0x170001
14921492; GFX6-NEXT: v_mul_f32_e32 v0, 0x4f7ffffe, v0
@@ -1516,7 +1516,7 @@ define amdgpu_ps i24 @s_fshl_i24(i24 inreg %lhs, i24 inreg %rhs, i24 inreg %amt)
15161516; GFX8: ; %bb.0:
15171517; GFX8-NEXT: v_cvt_f32_ubyte0_e32 v0, 24
15181518; GFX8-NEXT: v_rcp_iflag_f32_e32 v0, v0
1519- ; GFX8-NEXT: v_mov_b32_e32 v1, 0xffffffe8
1519+ ; GFX8-NEXT: v_not_b32_e32 v1, 23
15201520; GFX8-NEXT: s_and_b32 s2, s2, 0xffffff
15211521; GFX8-NEXT: s_bfe_u32 s1, s1, 0x170001
15221522; GFX8-NEXT: v_mul_f32_e32 v0, 0x4f7ffffe, v0
@@ -1546,7 +1546,7 @@ define amdgpu_ps i24 @s_fshl_i24(i24 inreg %lhs, i24 inreg %rhs, i24 inreg %amt)
15461546; GFX9: ; %bb.0:
15471547; GFX9-NEXT: v_cvt_f32_ubyte0_e32 v0, 24
15481548; GFX9-NEXT: v_rcp_iflag_f32_e32 v0, v0
1549- ; GFX9-NEXT: v_mov_b32_e32 v1, 0xffffffe8
1549+ ; GFX9-NEXT: v_not_b32_e32 v1, 23
15501550; GFX9-NEXT: s_and_b32 s2, s2, 0xffffff
15511551; GFX9-NEXT: s_bfe_u32 s1, s1, 0x170001
15521552; GFX9-NEXT: v_mul_f32_e32 v0, 0x4f7ffffe, v0
@@ -1646,7 +1646,7 @@ define i24 @v_fshl_i24(i24 %lhs, i24 %rhs, i24 %amt) {
16461646; GFX6-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
16471647; GFX6-NEXT: v_cvt_f32_ubyte0_e32 v3, 24
16481648; GFX6-NEXT: v_rcp_iflag_f32_e32 v3, v3
1649- ; GFX6-NEXT: v_mov_b32_e32 v4, 0xffffffe8
1649+ ; GFX6-NEXT: v_not_b32_e32 v4, 23
16501650; GFX6-NEXT: v_and_b32_e32 v2, 0xffffff, v2
16511651; GFX6-NEXT: v_bfe_u32 v1, v1, 1, 23
16521652; GFX6-NEXT: v_mul_f32_e32 v3, 0x4f7ffffe, v3
@@ -1676,7 +1676,7 @@ define i24 @v_fshl_i24(i24 %lhs, i24 %rhs, i24 %amt) {
16761676; GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
16771677; GFX8-NEXT: v_cvt_f32_ubyte0_e32 v3, 24
16781678; GFX8-NEXT: v_rcp_iflag_f32_e32 v3, v3
1679- ; GFX8-NEXT: v_mov_b32_e32 v4, 0xffffffe8
1679+ ; GFX8-NEXT: v_not_b32_e32 v4, 23
16801680; GFX8-NEXT: v_and_b32_e32 v2, 0xffffff, v2
16811681; GFX8-NEXT: v_bfe_u32 v1, v1, 1, 23
16821682; GFX8-NEXT: v_mul_f32_e32 v3, 0x4f7ffffe, v3
@@ -1706,7 +1706,7 @@ define i24 @v_fshl_i24(i24 %lhs, i24 %rhs, i24 %amt) {
17061706; GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
17071707; GFX9-NEXT: v_cvt_f32_ubyte0_e32 v3, 24
17081708; GFX9-NEXT: v_rcp_iflag_f32_e32 v3, v3
1709- ; GFX9-NEXT: v_mov_b32_e32 v4, 0xffffffe8
1709+ ; GFX9-NEXT: v_not_b32_e32 v4, 23
17101710; GFX9-NEXT: v_and_b32_e32 v2, 0xffffff, v2
17111711; GFX9-NEXT: v_bfe_u32 v1, v1, 1, 23
17121712; GFX9-NEXT: v_mul_f32_e32 v3, 0x4f7ffffe, v3
@@ -1822,7 +1822,7 @@ define amdgpu_ps i48 @s_fshl_v2i24(i48 inreg %lhs.arg, i48 inreg %rhs.arg, i48 i
18221822; GFX6-NEXT: s_lshl_b32 s6, s6, 16
18231823; GFX6-NEXT: v_and_b32_e32 v0, 0xffff, v0
18241824; GFX6-NEXT: s_lshl_b32 s0, s0, 16
1825- ; GFX6-NEXT: v_mov_b32_e32 v3, 0xffffffe8
1825+ ; GFX6-NEXT: v_not_b32_e32 v3, 23
18261826; GFX6-NEXT: s_or_b32 s6, s8, s6
18271827; GFX6-NEXT: v_or_b32_e32 v0, s0, v0
18281828; GFX6-NEXT: s_lshr_b32 s0, s2, 16
@@ -1959,7 +1959,7 @@ define amdgpu_ps i48 @s_fshl_v2i24(i48 inreg %lhs.arg, i48 inreg %rhs.arg, i48 i
19591959; GFX8-NEXT: s_or_b32 s2, s2, s6
19601960; GFX8-NEXT: s_lshl_b32 s3, s3, 8
19611961; GFX8-NEXT: s_and_b32 s6, s9, 0xff
1962- ; GFX8-NEXT: v_mov_b32_e32 v1, 0xffffffe8
1962+ ; GFX8-NEXT: v_not_b32_e32 v1, 23
19631963; GFX8-NEXT: s_or_b32 s3, s8, s3
19641964; GFX8-NEXT: s_and_b32 s6, 0xffff, s6
19651965; GFX8-NEXT: v_mul_lo_u32 v1, v0, v1
@@ -2079,7 +2079,7 @@ define amdgpu_ps i48 @s_fshl_v2i24(i48 inreg %lhs.arg, i48 inreg %rhs.arg, i48 i
20792079; GFX9-NEXT: s_or_b32 s2, s2, s6
20802080; GFX9-NEXT: s_lshl_b32 s3, s3, 8
20812081; GFX9-NEXT: s_and_b32 s6, s9, 0xff
2082- ; GFX9-NEXT: v_mov_b32_e32 v1, 0xffffffe8
2082+ ; GFX9-NEXT: v_not_b32_e32 v1, 23
20832083; GFX9-NEXT: s_or_b32 s3, s8, s3
20842084; GFX9-NEXT: s_and_b32 s6, 0xffff, s6
20852085; GFX9-NEXT: v_mul_lo_u32 v1, v0, v1
@@ -2414,7 +2414,7 @@ define <2 x i24> @v_fshl_v2i24(<2 x i24> %lhs, <2 x i24> %rhs, <2 x i24> %amt) {
24142414; GFX6-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
24152415; GFX6-NEXT: v_cvt_f32_ubyte0_e32 v6, 24
24162416; GFX6-NEXT: v_rcp_iflag_f32_e32 v6, v6
2417- ; GFX6-NEXT: v_mov_b32_e32 v7, 0xffffffe8
2417+ ; GFX6-NEXT: v_not_b32_e32 v7, 23
24182418; GFX6-NEXT: v_and_b32_e32 v4, 0xffffff, v4
24192419; GFX6-NEXT: v_and_b32_e32 v5, 0xffffff, v5
24202420; GFX6-NEXT: v_mul_f32_e32 v6, 0x4f7ffffe, v6
@@ -2461,7 +2461,7 @@ define <2 x i24> @v_fshl_v2i24(<2 x i24> %lhs, <2 x i24> %rhs, <2 x i24> %amt) {
24612461; GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
24622462; GFX8-NEXT: v_cvt_f32_ubyte0_e32 v6, 24
24632463; GFX8-NEXT: v_rcp_iflag_f32_e32 v6, v6
2464- ; GFX8-NEXT: v_mov_b32_e32 v7, 0xffffffe8
2464+ ; GFX8-NEXT: v_not_b32_e32 v7, 23
24652465; GFX8-NEXT: v_and_b32_e32 v4, 0xffffff, v4
24662466; GFX8-NEXT: v_and_b32_e32 v5, 0xffffff, v5
24672467; GFX8-NEXT: v_mul_f32_e32 v6, 0x4f7ffffe, v6
@@ -2508,7 +2508,7 @@ define <2 x i24> @v_fshl_v2i24(<2 x i24> %lhs, <2 x i24> %rhs, <2 x i24> %amt) {
25082508; GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
25092509; GFX9-NEXT: v_cvt_f32_ubyte0_e32 v6, 24
25102510; GFX9-NEXT: v_rcp_iflag_f32_e32 v6, v6
2511- ; GFX9-NEXT: v_mov_b32_e32 v7, 0xffffffe8
2511+ ; GFX9-NEXT: v_not_b32_e32 v7, 23
25122512; GFX9-NEXT: v_and_b32_e32 v4, 0xffffff, v4
25132513; GFX9-NEXT: v_and_b32_e32 v5, 0xffffff, v5
25142514; GFX9-NEXT: v_mul_f32_e32 v6, 0x4f7ffffe, v6
0 commit comments