@@ -757,10 +757,12 @@ let Predicates = [isGFX90APlus] in {
757757let SubtargetPredicate = isGFX940Plus, is_gfx940_xdl = 1 in {
758758 defm V_MFMA_I32_32X32X16I8 : MAIInst<"v_mfma_i32_32x32x16i8", "I32_I64_X32", int_amdgcn_mfma_i32_32x32x16_i8>;
759759 defm V_MFMA_I32_16X16X32I8 : MAIInst<"v_mfma_i32_16x16x32i8", "I32_I64_X16", int_amdgcn_mfma_i32_16x16x32_i8>;
760+ } // End SubtargetPredicate = isGFX940Plus, is_gfx940_xdl = 1
761+
762+ let SubtargetPredicate = HasXF32Insts, is_gfx940_xdl = 1 in {
760763 defm V_MFMA_F32_16X16X8XF32 : MAIInst<"v_mfma_f32_16x16x8xf32", "F32_V2F32_X16", int_amdgcn_mfma_f32_16x16x8_xf32>;
761764 defm V_MFMA_F32_32X32X4XF32 : MAIInst<"v_mfma_f32_32x32x4xf32", "F32_V2F32_X32", int_amdgcn_mfma_f32_32x32x4_xf32>;
762-
763- } // End SubtargetPredicate = isGFX940Plus, is_gfx940_xdl = 1
765+ } // End SubtargetPredicate = HasXF32Insts, is_gfx940_xdl = 1
764766
765767let SubtargetPredicate = HasFP8Insts, is_gfx940_xdl = 1 in {
766768 defm V_MFMA_F32_16X16X32_BF8_BF8 : MAIInst<"v_mfma_f32_16x16x32_bf8_bf8", "F32_I64_X32", int_amdgcn_mfma_f32_16x16x32_bf8_bf8>;
@@ -1764,8 +1766,10 @@ defm V_MFMA_F64_4X4X4F64 : VOP3P_Real_MFMA_gfx90a <0x6f>;
17641766
17651767defm V_MFMA_I32_32X32X16I8 : VOP3P_Real_MFMA_gfx940 <0x56, "v_mfma_i32_32x32x16_i8">;
17661768defm V_MFMA_I32_16X16X32I8 : VOP3P_Real_MFMA_gfx940 <0x57, "v_mfma_i32_16x16x32_i8">;
1769+ let SubtargetPredicate = HasXF32Insts in {
17671770defm V_MFMA_F32_16X16X8XF32 : VOP3P_Real_MFMA_gfx940 <0x3e, "v_mfma_f32_16x16x8_xf32">;
17681771defm V_MFMA_F32_32X32X4XF32 : VOP3P_Real_MFMA_gfx940 <0x3f, "v_mfma_f32_32x32x4_xf32">;
1772+ } // End SubtargetPredicate = HasXF32Insts
17691773let SubtargetPredicate = HasFP8Insts in {
17701774defm V_MFMA_F32_16X16X32_BF8_BF8 : VOP3P_Real_MFMA_gfx940 <0x70>;
17711775defm V_MFMA_F32_16X16X32_BF8_FP8 : VOP3P_Real_MFMA_gfx940 <0x71>;
0 commit comments