11#ifndef MLIR_AIEX_DIALECT_H
12#define MLIR_AIEX_DIALECT_H
17#include "aie/Dialect/AIEX/IR/AIEXDialect.h.inc"
21#include "aie/Dialect/AIEX/IR/AIEX.h.inc"
23#define GET_TYPEDEF_CLASSES
24#include "aie/Dialect/AIEX/IR/AIEXTypes.h.inc"
30 const AIE::AIETargetModel &tm,
unsigned bd_id,
unsigned col,
unsigned row);
32 mlir::BaseMemRefType referencedBufType,
33 llvm::SmallVector<int64_t, 4> inputSizes,
34 llvm::SmallVector<int64_t, 4> inputStrides,
35 llvm::SmallVector<int64_t, 4> &sizes,
36 llvm::SmallVector<int64_t, 4> &strides);
39 mlir::BaseMemRefType referencedBufType,
int tileCol,
40 int tileRow, llvm::SmallVector<int64_t, 4> inputSizes,
41 llvm::SmallVector<int64_t, 4> inputStrides,
42 llvm::SmallVector<int64_t, 4> hardwareSizes,
43 llvm::SmallVector<int64_t, 4> hardwareStrides,
44 bool skipTransformationChecks =
false);
void getHardwareStridesWraps(const AIE::AIETargetModel &targetModel, mlir::BaseMemRefType referencedBufType, llvm::SmallVector< int64_t, 4 > inputSizes, llvm::SmallVector< int64_t, 4 > inputStrides, llvm::SmallVector< int64_t, 4 > &sizes, llvm::SmallVector< int64_t, 4 > &strides)
uint64_t getBufferDescriptorAddressRegisterAddress(const AIE::AIETargetModel &tm, unsigned bd_id, unsigned col, unsigned row)
mlir::LogicalResult verifyStridesWraps(mlir::Operation *forOp, mlir::BaseMemRefType referencedBufType, int tileCol, int tileRow, llvm::SmallVector< int64_t, 4 > inputSizes, llvm::SmallVector< int64_t, 4 > inputStrides, llvm::SmallVector< int64_t, 4 > hardwareSizes, llvm::SmallVector< int64_t, 4 > hardwareStrides, bool skipTransformationChecks=false)