13#include "mlir/Dialect/MemRef/IR/MemRef.h"
14#include "mlir/IR/BuiltinOps.h"
15#include "mlir/IR/Value.h"
16#include "llvm/ADT/DenseMap.h"
18#include "llvm/Support/raw_ostream.h"
35 memref::GlobalOp
getOrCreate(OpBuilder &builder, mlir::Location loc,
36 ArrayRef<uint32_t> words);
43 llvm::DenseMap<mlir::Attribute, memref::GlobalOp> byValue;
81 BaseMemRefType bufType,
82 uint64_t registerAddr);
92 BaseMemRefType bufType, int64_t lengthUnit,
103 SmallVectorImpl<DMAConfigureTaskOp> &configures);
memref::GlobalOp getOrCreate(OpBuilder &builder, mlir::Location loc, ArrayRef< uint32_t > words)
BlockwriteData(AIE::DeviceOp dev, llvm::StringRef prefix)
AIE::DeviceOp getDevice() const
unsigned getHostBufferCount(Block &block)
DMAConfigureTaskOp getUniqueReachableConfigure(Value task)
std::optional< SubviewTraceResult > traceSubviewToBlockArgument(Value value)
std::string scratchpadCommandName(AIE::RuntimeSequenceOp seq)
void emitScratchpadParamsFile(mlir::ModuleOp moduleOp, llvm::raw_ostream &os)
bool getReachableConfigures(Value task, SmallVectorImpl< DMAConfigureTaskOp > &configures)
LogicalResult emitUpdateBdAddressFromOffsetParameter(OpBuilder &builder, Operation *bdOp, BaseMemRefType bufType, uint64_t registerAddr)
LogicalResult emitUpdateBdLengthFromParameter(OpBuilder &builder, Operation *bdOp, BaseMemRefType bufType, int64_t lengthUnit, const AIE::AIETargetModel &targetModel, int col, int row, int bdId)
std::optional< unsigned > getHostBufferArgIndex(BlockArgument arg)