Skip to content

Commit 8a36e07

Browse files
broxigarchengithub-actions[bot]
authored andcommitted
Automerge: [AMDGPU][True16][CodeGen] fix test for true16 codegen valu op (#128905)
This is a NFC change. Update the test file and fix the build llvm/llvm-project#124797 is causing a build issue
2 parents 52580b4 + dfda75f commit 8a36e07

File tree

1 file changed

+28
-37
lines changed
  • llvm/test/CodeGen/AMDGPU/GlobalISel

1 file changed

+28
-37
lines changed

llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll

+28-37
Original file line numberDiff line numberDiff line change
@@ -492,21 +492,18 @@ define <2 x half> @v_pow_v2f16(<2 x half> %x, <2 x half> %y) {
492492
; GFX11-TRUE16-LABEL: v_pow_v2f16:
493493
; GFX11-TRUE16: ; %bb.0:
494494
; GFX11-TRUE16-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
495-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v0
496495
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.l, v0.l
497-
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1)
498-
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v2.l
499-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v1
500-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.l
496+
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v0.h
497+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v1.l
498+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.h
501499
; GFX11-TRUE16-NEXT: s_waitcnt_depctr 0xfff
502500
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v3, v0.l
503-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v2.l
504501
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v0, v0.h
505502
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
506-
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v1, v3, v1 :: v_dual_mul_dx9_zero_f32 v2, v0, v2
507-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v1
503+
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v2, v3, v2 :: v_dual_mul_dx9_zero_f32 v1, v0, v1
504+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v2
508505
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
509-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v2
506+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v1
510507
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.l, v0.l
511508
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1)
512509
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.h, v0.h
@@ -639,21 +636,19 @@ define <2 x half> @v_pow_v2f16_fneg_lhs(<2 x half> %x, <2 x half> %y) {
639636
; GFX11-TRUE16: ; %bb.0:
640637
; GFX11-TRUE16-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
641638
; GFX11-TRUE16-NEXT: v_xor_b32_e32 v0, 0x80008000, v0
642-
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(SKIP_1) | instid1(VALU_DEP_1)
643-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v0
639+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v1.l
640+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.h
641+
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_3) | instskip(NEXT) | instid1(VALU_DEP_3)
644642
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.l, v0.l
645-
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v2.l
646-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v1
647-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.l
643+
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v0.h
648644
; GFX11-TRUE16-NEXT: s_waitcnt_depctr 0xfff
649645
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v3, v0.l
650-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v2.l
651646
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v0, v0.h
652647
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
653-
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v1, v3, v1 :: v_dual_mul_dx9_zero_f32 v2, v0, v2
654-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v1
648+
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v2, v3, v2 :: v_dual_mul_dx9_zero_f32 v1, v0, v1
649+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v2
655650
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
656-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v2
651+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v1
657652
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.l, v0.l
658653
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1)
659654
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.h, v0.h
@@ -788,22 +783,20 @@ define <2 x half> @v_pow_v2f16_fneg_rhs(<2 x half> %x, <2 x half> %y) {
788783
; GFX11-TRUE16-LABEL: v_pow_v2f16_fneg_rhs:
789784
; GFX11-TRUE16: ; %bb.0:
790785
; GFX11-TRUE16-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
791-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v0
792786
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.l, v0.l
787+
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v0.h
793788
; GFX11-TRUE16-NEXT: v_xor_b32_e32 v1, 0x80008000, v1
794-
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_1)
795-
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v2.l
796-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v1
797-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.l
789+
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
790+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v1.l
791+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.h
798792
; GFX11-TRUE16-NEXT: s_waitcnt_depctr 0xfff
799793
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v3, v0.l
800-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v2.l
801794
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v0, v0.h
802795
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
803-
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v1, v3, v1 :: v_dual_mul_dx9_zero_f32 v2, v0, v2
804-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v1
796+
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v2, v3, v2 :: v_dual_mul_dx9_zero_f32 v1, v0, v1
797+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v2
805798
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
806-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v2
799+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v1
807800
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.l, v0.l
808801
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1)
809802
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.h, v0.h
@@ -947,22 +940,20 @@ define <2 x half> @v_pow_v2f16_fneg_lhs_rhs(<2 x half> %x, <2 x half> %y) {
947940
; GFX11-TRUE16-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
948941
; GFX11-TRUE16-NEXT: v_xor_b32_e32 v0, 0x80008000, v0
949942
; GFX11-TRUE16-NEXT: v_xor_b32_e32 v1, 0x80008000, v1
950-
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(SKIP_1) | instid1(VALU_DEP_1)
951-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v0
943+
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
952944
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.l, v0.l
953-
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v2.l
954-
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2)
955-
; GFX11-TRUE16-NEXT: v_lshrrev_b32_e32 v2, 16, v1
956-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.l
945+
; GFX11-TRUE16-NEXT: v_log_f16_e32 v0.h, v0.h
946+
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_2)
947+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v1.l
948+
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v1, v1.h
957949
; GFX11-TRUE16-NEXT: s_waitcnt_depctr 0xfff
958950
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v3, v0.l
959-
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v2, v2.l
960951
; GFX11-TRUE16-NEXT: v_cvt_f32_f16_e32 v0, v0.h
961952
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1) | instskip(NEXT) | instid1(VALU_DEP_1)
962-
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v1, v3, v1 :: v_dual_mul_dx9_zero_f32 v2, v0, v2
963-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v1
953+
; GFX11-TRUE16-NEXT: v_dual_mul_dx9_zero_f32 v2, v3, v2 :: v_dual_mul_dx9_zero_f32 v1, v0, v1
954+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.l, v2
964955
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_2) | instskip(NEXT) | instid1(VALU_DEP_2)
965-
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v2
956+
; GFX11-TRUE16-NEXT: v_cvt_f16_f32_e32 v0.h, v1
966957
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.l, v0.l
967958
; GFX11-TRUE16-NEXT: s_delay_alu instid0(VALU_DEP_1)
968959
; GFX11-TRUE16-NEXT: v_exp_f16_e32 v0.h, v0.h

0 commit comments

Comments
 (0)