2022-04-28 18:51:31 +08:00
|
|
|
#include "triton/Dialect/TritonGPU/IR/Dialect.h"
|
2022-05-01 22:06:54 +08:00
|
|
|
#include "mlir/IR/DialectImplementation.h"
|
|
|
|
#include "llvm/ADT/TypeSwitch.h"
|
|
|
|
#include <llvm-6.0/llvm/Support/ErrorHandling.h>
|
2022-04-28 18:51:31 +08:00
|
|
|
|
|
|
|
#include "triton/Dialect/TritonGPU/IR/Dialect.cpp.inc"
|
|
|
|
|
|
|
|
using namespace mlir::triton::gpu;
|
|
|
|
|
2022-05-01 22:06:54 +08:00
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
// Attribute methods
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#define GET_ATTRDEF_CLASSES
|
|
|
|
#include "triton/Dialect/TritonGPU/IR/TritonGPUAttrDefs.cpp.inc"
|
|
|
|
|
|
|
|
mlir::Attribute
|
|
|
|
TritonGPUDistributedEncodingAttr::parse(mlir::AsmParser &parser, mlir::Type type) {
|
|
|
|
llvm_unreachable("Not implemented");
|
|
|
|
}
|
|
|
|
|
|
|
|
void TritonGPUDistributedEncodingAttr::print(mlir::AsmPrinter &printer) const {
|
2022-05-04 12:50:02 +08:00
|
|
|
printer << "<"
|
|
|
|
<< "threadTileSize = " << getThreadTileSize()
|
|
|
|
<< ", blockTileSize = " << getBlockTileSize()
|
|
|
|
<< ", order = " << getOrder()
|
|
|
|
<< ">";
|
2022-05-01 22:06:54 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
mlir::Attribute
|
|
|
|
TritonGPUMmaEncodingAttr::parse(mlir::AsmParser &parser, ::mlir::Type type) {
|
|
|
|
llvm_unreachable("Not implemented");
|
|
|
|
}
|
|
|
|
|
|
|
|
void TritonGPUMmaEncodingAttr::print(mlir::AsmPrinter &printer) const {
|
|
|
|
llvm_unreachable("Not implemented");
|
|
|
|
}
|
|
|
|
|
|
|
|
mlir::Attribute
|
|
|
|
TritonGPUSharedEncodingAttr::parse(mlir::AsmParser &parser, ::mlir::Type type) {
|
|
|
|
llvm_unreachable("Not implemented");
|
|
|
|
}
|
|
|
|
|
|
|
|
void TritonGPUSharedEncodingAttr::print(mlir::AsmPrinter &printer) const {
|
2022-05-09 21:19:53 +08:00
|
|
|
printer << "<"
|
|
|
|
// << "threadTileSize = " << getThreadTileSize()
|
|
|
|
// << ", blockTileSize = " << getBlockTileSize()
|
|
|
|
// << ", order = " << getOrder()
|
|
|
|
<< ">";
|
2022-05-01 22:06:54 +08:00
|
|
|
}
|
|
|
|
|
2022-04-28 18:51:31 +08:00
|
|
|
void TritonGPUDialect::initialize() {
|
2022-05-02 21:51:00 +08:00
|
|
|
addAttributes<
|
|
|
|
#define GET_ATTRDEF_LIST
|
|
|
|
#include "triton/Dialect/TritonGPU/IR/TritonGPUAttrDefs.cpp.inc"
|
|
|
|
>();
|
2022-04-28 18:51:31 +08:00
|
|
|
addOperations<
|
|
|
|
#define GET_OP_LIST
|
|
|
|
#include "triton/Dialect/TritonGPU/IR/Ops.cpp.inc"
|
|
|
|
>();
|
|
|
|
}
|
2022-05-01 22:06:54 +08:00
|
|
|
|
|
|
|
|
|
|
|
#define GET_OP_CLASSES
|
|
|
|
#include "triton/Dialect/TritonGPU/IR/Ops.cpp.inc"
|