95 lines · plain
1// RUN: llvm-mc -triple=amdgcn -mcpu=gfx908 -show-encoding %s | FileCheck --check-prefix=CHECK-MI %s2// RUN: llvm-mc -triple=amdgcn -mcpu=gfx90a -show-encoding %s | FileCheck --check-prefix=CHECK-MI %s3// RUN: llvm-mc -triple=amdgcn -mcpu=gfx942 -show-encoding %s | FileCheck --check-prefix=CHECK-MI %s4// RUN: llvm-mc -triple=amdgcn -mcpu=gfx950 -show-encoding %s | FileCheck --check-prefix=CHECK-MI %s5 6v_pk_fmac_f16 v5, v1, v27// CHECK-MI: [0x01,0x05,0x0a,0x78]8 9v_pk_fmac_f16 v5, v1, v2 quad_perm:[0,1,2,3]10// CHECK-MI: [0xfa,0x04,0x0a,0x78,0x01,0xe4,0x00,0xff]11 12v_pk_fmac_f16 v5, v1, v2 quad_perm:[0,1,2,3] row_mask:0x0 bank_mask:0x013// CHECK-MI: [0xfa,0x04,0x0a,0x78,0x01,0xe4,0x00,0x00]14 15v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD16// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x06]17 18v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD19// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x06]20 21v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:BYTE_0 dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD22// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x00,0x06,0x06]23 24v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:BYTE_1 dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD25// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x01,0x06,0x06]26 27v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:BYTE_2 dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD28// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x02,0x06,0x06]29 30v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:BYTE_3 dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD31// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x03,0x06,0x06]32 33v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:WORD_0 dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD34// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x04,0x06,0x06]35 36v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:WORD_1 dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD37// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x05,0x06,0x06]38 39v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_SEXT src0_sel:DWORD src1_sel:DWORD40// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x0e,0x06,0x06]41 42v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD src1_sel:DWORD43// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x16,0x06,0x06]44 45v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PRESERVE src0_sel:DWORD src1_sel:DWORD46// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x16,0x06,0x06]47 48v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD49// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x06]50 51v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:BYTE_0 src1_sel:DWORD52// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x00,0x06]53 54v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:BYTE_1 src1_sel:DWORD55// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x01,0x06]56 57v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:BYTE_2 src1_sel:DWORD58// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x02,0x06]59 60v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:BYTE_3 src1_sel:DWORD61// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x03,0x06]62 63v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_0 src1_sel:DWORD64// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x04,0x06]65 66v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:WORD_1 src1_sel:DWORD67// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x05,0x06]68 69v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD70// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x06]71 72v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:BYTE_073// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x00]74 75v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:BYTE_176// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x01]77 78v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:BYTE_279// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x02]80 81v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:BYTE_382// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x03]83 84v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_085// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x04]86 87v_pk_fmac_f16_sdwa v5, v1, v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:WORD_188// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x05]89 90v_pk_fmac_f16_sdwa v5, v1, sext(v2) dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD91// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x06]92 93v_pk_fmac_f16_sdwa v5, v1, -v2 dst_sel:DWORD dst_unused:UNUSED_PAD src0_sel:DWORD src1_sel:DWORD94// CHECK-MI: [0xf9,0x04,0x0a,0x78,0x01,0x06,0x06,0x16]95