Please use GitHub pull requests for new patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll
Show First 20 Lines • Show All 154 Lines • ▼ Show 20 Lines | |||||
; GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ; GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ||||
; GFX9-NEXT: v_pk_mul_f16 v0, v0, v2 neg_lo:[1,0] neg_hi:[1,0] | ; GFX9-NEXT: v_pk_mul_f16 v0, v0, v2 neg_lo:[1,0] neg_hi:[1,0] | ||||
; GFX9-NEXT: v_pk_mul_f16 v1, v1, v3 neg_lo:[1,0] neg_hi:[1,0] | ; GFX9-NEXT: v_pk_mul_f16 v1, v1, v3 neg_lo:[1,0] neg_hi:[1,0] | ||||
; GFX9-NEXT: s_setpc_b64 s[30:31] | ; GFX9-NEXT: s_setpc_b64 s[30:31] | ||||
; | ; | ||||
; GFX8-LABEL: v_fmul_v3f16_fneg_lhs: | ; GFX8-LABEL: v_fmul_v3f16_fneg_lhs: | ||||
; GFX8: ; %bb.0: | ; GFX8: ; %bb.0: | ||||
; GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ; GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ||||
; GFX8-NEXT: v_lshrrev_b32_e32 v4, 16, v0 | |||||
; GFX8-NEXT: v_lshlrev_b32_e32 v4, 16, v4 | |||||
; GFX8-NEXT: v_or_b32_sdwa v0, v0, v4 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_0 src1_sel:DWORD | |||||
; GFX8-NEXT: v_xor_b32_e32 v0, 0x80008000, v0 | ; GFX8-NEXT: v_xor_b32_e32 v0, 0x80008000, v0 | ||||
; GFX8-NEXT: v_mov_b32_e32 v4, 0x80008000 | ; GFX8-NEXT: v_mov_b32_e32 v4, 0x80008000 | ||||
; GFX8-NEXT: v_xor_b32_sdwa v1, v4, v1 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ; GFX8-NEXT: v_xor_b32_sdwa v1, v4, v1 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ||||
; GFX8-NEXT: v_mul_f16_e32 v4, v0, v2 | ; GFX8-NEXT: v_mul_f16_e32 v4, v0, v2 | ||||
; GFX8-NEXT: v_mul_f16_sdwa v0, v0, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_sel:WORD_1 | ; GFX8-NEXT: v_mul_f16_sdwa v0, v0, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_sel:WORD_1 | ||||
; GFX8-NEXT: v_mov_b32_e32 v2, 16 | ; GFX8-NEXT: v_mov_b32_e32 v2, 16 | ||||
; GFX8-NEXT: v_mul_f16_e32 v1, v1, v3 | ; GFX8-NEXT: v_mul_f16_e32 v1, v1, v3 | ||||
; GFX8-NEXT: v_lshlrev_b32_sdwa v0, v2, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ; GFX8-NEXT: v_lshlrev_b32_sdwa v0, v2, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ||||
Show All 19 Lines | |||||
; GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ; GFX9-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ||||
; GFX9-NEXT: v_pk_mul_f16 v0, v0, v2 neg_lo:[0,1] neg_hi:[0,1] | ; GFX9-NEXT: v_pk_mul_f16 v0, v0, v2 neg_lo:[0,1] neg_hi:[0,1] | ||||
; GFX9-NEXT: v_pk_mul_f16 v1, v1, v3 neg_lo:[0,1] neg_hi:[0,1] | ; GFX9-NEXT: v_pk_mul_f16 v1, v1, v3 neg_lo:[0,1] neg_hi:[0,1] | ||||
; GFX9-NEXT: s_setpc_b64 s[30:31] | ; GFX9-NEXT: s_setpc_b64 s[30:31] | ||||
; | ; | ||||
; GFX8-LABEL: v_fmul_v3f16_fneg_rhs: | ; GFX8-LABEL: v_fmul_v3f16_fneg_rhs: | ||||
; GFX8: ; %bb.0: | ; GFX8: ; %bb.0: | ||||
; GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ; GFX8-NEXT: s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0) | ||||
; GFX8-NEXT: v_lshrrev_b32_e32 v4, 16, v2 | |||||
; GFX8-NEXT: v_lshlrev_b32_e32 v4, 16, v4 | |||||
; GFX8-NEXT: v_or_b32_sdwa v2, v2, v4 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_0 src1_sel:DWORD | |||||
; GFX8-NEXT: v_xor_b32_e32 v2, 0x80008000, v2 | ; GFX8-NEXT: v_xor_b32_e32 v2, 0x80008000, v2 | ||||
; GFX8-NEXT: v_mov_b32_e32 v4, 0x80008000 | ; GFX8-NEXT: v_mov_b32_e32 v4, 0x80008000 | ||||
; GFX8-NEXT: v_xor_b32_sdwa v3, v4, v3 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ; GFX8-NEXT: v_xor_b32_sdwa v3, v4, v3 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ||||
; GFX8-NEXT: v_mul_f16_e32 v4, v0, v2 | ; GFX8-NEXT: v_mul_f16_e32 v4, v0, v2 | ||||
; GFX8-NEXT: v_mul_f16_sdwa v0, v0, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_sel:WORD_1 | ; GFX8-NEXT: v_mul_f16_sdwa v0, v0, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_sel:WORD_1 | ||||
; GFX8-NEXT: v_mov_b32_e32 v2, 16 | ; GFX8-NEXT: v_mov_b32_e32 v2, 16 | ||||
; GFX8-NEXT: v_mul_f16_e32 v1, v1, v3 | ; GFX8-NEXT: v_mul_f16_e32 v1, v1, v3 | ||||
; GFX8-NEXT: v_lshlrev_b32_sdwa v0, v2, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ; GFX8-NEXT: v_lshlrev_b32_sdwa v0, v2, v0 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_0 | ||||
▲ Show 20 Lines • Show All 554 Lines • Show Last 20 Lines |