Skip to content
Open
20 changes: 20 additions & 0 deletions include/flydsl-c/FlyROCDLDialect.h
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,26 @@ MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomCDNA3_MFMATypeGetElemTyA(MlirType
MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomCDNA3_MFMATypeGetElemTyB(MlirType type);
MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomCDNA3_MFMATypeGetElemTyAcc(MlirType type);

//===----------------------------------------------------------------------===//
// MmaAtomGFX1250_WMMAType
//===----------------------------------------------------------------------===//

MLIR_CAPI_EXPORTED bool mlirTypeIsAFlyROCDLMmaAtomGFX1250_WMMAType(MlirType type);
MLIR_CAPI_EXPORTED MlirTypeID mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetTypeID(void);

// Constructor
MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomGFX1250_WMMATypeGet(int32_t m, int32_t n, int32_t k,
MlirType elemTyA, MlirType elemTyB,
MlirType elemTyAcc);

// Accessors
MLIR_CAPI_EXPORTED int32_t mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetM(MlirType type);
MLIR_CAPI_EXPORTED int32_t mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetN(MlirType type);
MLIR_CAPI_EXPORTED int32_t mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetK(MlirType type);
MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetElemTyA(MlirType type);
MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetElemTyB(MlirType type);
MLIR_CAPI_EXPORTED MlirType mlirFlyROCDLMmaAtomGFX1250_WMMATypeGetElemTyAcc(MlirType type);

//===----------------------------------------------------------------------===//
// CopyOpCDNA3BufferLDSTType
//===----------------------------------------------------------------------===//
Expand Down
1 change: 0 additions & 1 deletion include/flydsl/Dialect/Fly/IR/FlyDialect.td
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ def Fly_Dialect : Dialect {

let useDefaultTypePrinterParser = 1;
let useDefaultAttributePrinterParser = 1;
let usePropertiesForAttributes = 1;
}

class Fly_Type<string typeName, string typeMnemonic, list<Trait> traits = []>
Expand Down
1 change: 0 additions & 1 deletion include/flydsl/Dialect/FlyROCDL/IR/Dialect.td
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ def FlyROCDL_Dialect : Dialect {
];

let useDefaultTypePrinterParser = 1;
let usePropertiesForAttributes = 1;
}

class FlyxROCL_MmaAtom<string typeName, string typeMnemonic, list<Trait> traits = []>
Expand Down
25 changes: 25 additions & 0 deletions include/flydsl/Dialect/FlyROCDL/IR/MmaAtom.td
Original file line number Diff line number Diff line change
Expand Up @@ -30,4 +30,29 @@ def FlyROCDL_MmaAtomCDNA3_MFMA : FlyxROCL_MmaAtom<"MmaAtomCDNA3_MFMA", "atom.cdn
// MmaAtom CDNA4
//===----------------------------------------------------------------------===//



//===----------------------------------------------------------------------===//
// MmaAtom GFX1250 — WMMA wave32
//===----------------------------------------------------------------------===//

def FlyROCDL_MmaAtomGFX1250_WMMA : FlyxROCL_MmaAtom<"MmaAtomGFX1250_WMMA", "atom.gfx1250.wmma", []> {
let parameters = (ins
"int32_t":$m,
"int32_t":$n,
"int32_t":$k,
"Type":$elemTyA,
"Type":$elemTyB,
"Type":$elemTyAcc
);
let assemblyFormat = "`<` custom<MNKDimensionList>($m, $n, $k) `,` `(` $elemTyA `,` $elemTyB `)` `->` $elemTyAcc `>`";

let builders = [
TypeBuilderWithInferredContext<(ins "int32_t":$m, "int32_t":$n, "int32_t":$k, "Type":$elemTyA, "Type":$elemTyB, "Type":$elemTyAcc), [{
return $_get(elemTyA.getContext(), m, n, k, elemTyA, elemTyB, elemTyAcc);
}]>
];
let genVerifyDecl = 1;
}

#endif // FLYROCDL_MMAATOM
Loading
Loading