|
MLIR-AIE 1.4.5.dev
|
Public Member Functions | |
| bool | shouldSkipBlock (Block &block) |
| LogicalResult | verifyBdInBlock (Block &block) |
| void | hoistScalarOpsOutOfBdBlocks (DMAConfigureTaskOp op) |
| LogicalResult | verifyNoUnsupportedOpsInBlock (Block &block) |
| AIE::DMABDOp | getBdForBlock (Block &block) |
| LogicalResult | setAddressForSingleBD (OpBuilder &builder, AIE::DMABDOp &bd_op, AIE::TileOp &tile, OpFoldResult bdId={}) |
| FailureOr< BdTemplateFields > | gatherBdTemplateFields (OpBuilder &builder, Block &block, AIE::DMABDOp bd_op, AIE::TileOp &tile, const AIE::AIETargetModel &target_model, std::optional< xilinx::AIE::PacketInfoAttr > packet, bool outOfOrder=false) |
| LogicalResult | rewriteSingleBDDynamic (OpBuilder &builder, Block &block, AIE::DMABDOp bd_op, AIE::TileOp &tile, std::optional< xilinx::AIE::PacketInfoAttr > packet, Value runtimeBdId=nullptr, bool outOfOrder=false) |
| LogicalResult | rewriteSingleBD (OpBuilder &builder, Block &block, AIE::TileOp &tile, AIE::DMAChannelDir channelDir, std::optional< xilinx::AIE::PacketInfoAttr > packet, bool outOfOrder=false) |
| LogicalResult | hoistNextBdOpsIntoAttrs (DMAConfigureTaskOp op) |
| LogicalResult | emitOutOfOrderChannelEnable (OpBuilder &builder, DMAConfigureTaskOp op, AIE::TileOp tile) |
| LogicalResult | rewriteSingleDMAConfigureTaskOp (DMAConfigureTaskOp op, const llvm::DenseMap< Operation *, bool > &onlyPushedOnce) |
| LogicalResult | rewriteDMAConfigureTaskOp (AIE::DeviceOp device, const llvm::DenseMap< Operation *, bool > &onlyPushedOnce) |
| LogicalResult | dropDeadTaskCarries (AIE::DeviceOp device) |
| void | runOnOperation () override |
Public Attributes | |
| llvm::DenseMap< AIE::DMABDOp, Value > | runtimeNextBdId |
Definition at line 179 of file AIEDMATasksToNPU.cpp.
|
inline |
Definition at line 1270 of file AIEDMATasksToNPU.cpp.
Referenced by runOnOperation().
|
inline |
Definition at line 1097 of file AIEDMATasksToNPU.cpp.
References xilinx::AIEX::createConstantI32(), xilinx::AIE::AIETargetModel::encodeFieldValue(), xilinx::AIE::RegisterInfo::getField(), xilinx::AIE::AIETargetModel::getFieldMask(), xilinx::AIE::AIETargetModel::getLocalDmaControlAddress(), xilinx::AIE::getTargetModel(), and xilinx::AIE::AIETargetModel::lookupRegister().
Referenced by rewriteSingleDMAConfigureTaskOp().
|
inline |
Definition at line 486 of file AIEDMATasksToNPU.cpp.
References xilinx::AIEX::createConstantI32(), xilinx::AIEX::emitRuntimeCheck(), xilinx::AIEX::BdTemplateFields::enable_packet, xilinx::AIE::AIETargetModel::getLockLocalBaseIndex(), xilinx::AIE::AIETargetModel::getMaxLockValue(), xilinx::AIE::AIETargetModel::isMemTile(), xilinx::AIEX::BdTemplateFields::iteration_current, xilinx::AIEX::BdTemplateFields::lock_acq_enable, xilinx::AIEX::BdTemplateFields::lock_acq_id, xilinx::AIEX::BdTemplateFields::lock_acq_val, xilinx::AIEX::BdTemplateFields::lock_acq_val_val, xilinx::AIEX::BdTemplateFields::lock_rel_id, xilinx::AIEX::BdTemplateFields::lock_rel_val, xilinx::AIEX::BdTemplateFields::lock_rel_val_val, xilinx::AIEX::BdTemplateFields::next_bd_id, xilinx::AIEX::BdTemplateFields::next_bd_id_val, xilinx::AIEX::BdTemplateFields::out_of_order_id, xilinx::AIEX::BdTemplateFields::packet_id, xilinx::AIEX::BdTemplateFields::packet_type, runtimeNextBdId, xilinx::AIEX::BdTemplateFields::use_next_bd, and xilinx::AIE::verifyBdLockPair().
Referenced by rewriteSingleBD(), and rewriteSingleBDDynamic().
|
inline |
Definition at line 281 of file AIEDMATasksToNPU.cpp.
Referenced by hoistNextBdOpsIntoAttrs(), and rewriteSingleBD().
|
inline |
Definition at line 1064 of file AIEDMATasksToNPU.cpp.
References getBdForBlock(), runtimeNextBdId, and shouldSkipBlock().
Referenced by rewriteSingleDMAConfigureTaskOp().
|
inline |
Definition at line 240 of file AIEDMATasksToNPU.cpp.
Referenced by rewriteSingleDMAConfigureTaskOp().
|
inline |
Definition at line 1237 of file AIEDMATasksToNPU.cpp.
References rewriteSingleDMAConfigureTaskOp().
Referenced by runOnOperation().
|
inline |
Definition at line 749 of file AIEDMATasksToNPU.cpp.
References xilinx::AIEX::emitUpdateBdLengthFromParameter(), xilinx::AIEX::BdTemplateFields::enable_packet, gatherBdTemplateFields(), xilinx::AIE::AIETargetModel::getAddressGenGranularity(), getBdForBlock(), xilinx::AIEX::getHardwareStridesWraps(), xilinx::AIE::getTargetModel(), xilinx::AIE::AIETargetModel::isCoreTile(), xilinx::AIEX::isLinearModeTransfer(), xilinx::AIE::AIETargetModel::isMemTile(), xilinx::AIE::AIETargetModel::isShimNOCTile(), xilinx::AIEX::BdTemplateFields::iteration_current, xilinx::AIEX::BdTemplateFields::lock_acq_enable, xilinx::AIEX::BdTemplateFields::lock_acq_id, xilinx::AIEX::BdTemplateFields::lock_acq_val, xilinx::AIEX::BdTemplateFields::lock_rel_id, xilinx::AIEX::BdTemplateFields::lock_rel_val, xilinx::AIEX::BdTemplateFields::next_bd_id, xilinx::AIEX::BdTemplateFields::out_of_order_id, xilinx::AIEX::BdTemplateFields::packet_id, xilinx::AIEX::BdTemplateFields::packet_type, xilinx::AIE::placeRuntimeLengthDimension(), rewriteSingleBDDynamic(), runtimeNextBdId, setAddressForSingleBD(), xilinx::AIEX::BdTemplateFields::use_next_bd, xilinx::AIEX::verifyConstBdRealizability(), and xilinx::AIEX::verifyStridesWraps().
Referenced by rewriteSingleDMAConfigureTaskOp().
|
inline |
Definition at line 595 of file AIEDMATasksToNPU.cpp.
References xilinx::AIEX::buildBdWords(), gatherBdTemplateFields(), xilinx::AIEX::getBdRegisterBase(), xilinx::AIE::getTargetModel(), xilinx::AIEX::guardWithinHostBuffer(), setAddressForSingleBD(), and xilinx::AIEX::traceSubviewToBlockArgument().
Referenced by rewriteSingleBD().
|
inline |
Definition at line 1145 of file AIEDMATasksToNPU.cpp.
References emitOutOfOrderChannelEnable(), hoistNextBdOpsIntoAttrs(), hoistScalarOpsOutOfBdBlocks(), rewriteSingleBD(), runtimeNextBdId, shouldSkipBlock(), verifyBdInBlock(), xilinx::AIE::verifyBdLockPair(), and verifyNoUnsupportedOpsInBlock().
Referenced by rewriteDMAConfigureTaskOp().
|
inlineoverride |
Definition at line 1295 of file AIEDMATasksToNPU.cpp.
References dropDeadTaskCarries(), xilinx::AIEX::eraseDeadArith(), and rewriteDMAConfigureTaskOp().
|
inline |
Definition at line 288 of file AIEDMATasksToNPU.cpp.
Referenced by rewriteSingleBD(), and rewriteSingleBDDynamic().
|
inline |
Definition at line 187 of file AIEDMATasksToNPU.cpp.
Referenced by hoistNextBdOpsIntoAttrs(), and rewriteSingleDMAConfigureTaskOp().
|
inline |
Definition at line 195 of file AIEDMATasksToNPU.cpp.
Referenced by rewriteSingleDMAConfigureTaskOp().
|
inline |
Definition at line 253 of file AIEDMATasksToNPU.cpp.
Referenced by rewriteSingleDMAConfigureTaskOp().
| llvm::DenseMap<AIE::DMABDOp, Value> AIEDMATasksToNPUPass::runtimeNextBdId |
Definition at line 185 of file AIEDMATasksToNPU.cpp.
Referenced by gatherBdTemplateFields(), hoistNextBdOpsIntoAttrs(), rewriteSingleBD(), and rewriteSingleDMAConfigureTaskOp().