MLIR-AIE 1.4.5.dev
AIEPasses.h File Reference
#include "aie/Dialect/AIE/IR/AIEDialect.h"
#include "aie/Dialect/AIE/Transforms/AIEPlacer.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include "mlir/Dialect/SCF/IR/SCF.h"
#include "mlir/Pass/Pass.h"
#include "aie/Dialect/AIE/Transforms/AIEPasses.h.inc"
Include dependency graph for AIEPasses.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  xilinx
namespace  xilinx::AIE

Macros

#define GEN_PASS_DECL
#define GEN_PASS_REGISTRATION
 Generate the code for registering passes.

Functions

bool xilinx::AIE::isForeverLoop (mlir::scf::WhileOp whileOp)
 Whether whileOp repeats forever: its condition is a constant true, and its condition region does nothing but forward its arguments to the body.
bool xilinx::AIE::isObjectFifoLoop (mlir::Operation *op)
 Whether op is a loop that objectFifo lowering unrolls by the rotation period of the objectFifos accessed in it: an scf.for, or an scf.while that repeats forever.
mlir::Operation * xilinx::AIE::getObjectFifoLoopParent (mlir::Operation *op)
 The innermost loop around op that isObjectFifoLoop accepts, or null.
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEPlaceTilesPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEPlaceTilesPass (const AIEPlaceTilesOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEPrepareBuffersPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignBufferAddressesPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignBufferAddressesPass (const AIEAssignBufferAddressesOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignCoreLinkFilesPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignLockIDsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIENormalizeDmaBdDimsPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIECanonicalizeDevicePass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIECoreToStandardPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIECoreToStandardPass (const AIECoreToStandardOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEFindFlowsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIESplitFlowViasPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIELocalizeLocksPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIENormalizeAddressSpacesPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIERouteFlowsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEVectorToPointerLoopsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEVectorTransferLoweringPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIEHoistVectorTransferPointersPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIECoreIntRangeNarrowingPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEPathfinderPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEPathfinderPass (const AIERoutePathfinderFlowsOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoUnrollPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoUnrollPass (const AIEObjectFifoUnrollOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoSplitPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoVerifyPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignPacketIdsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignPacketIdsPass (bool packetSwitched)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoAllocatePass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoLowerDMAsPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIECheckAgainstImagePass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIECheckAgainstImagePass (const AIECheckAgainstImageOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoLowerCoresPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoErasePoolsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIELowerCascadeFlowsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignBufferDescriptorIDsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEObjectFifoLivenessPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIEGenerateColumnControlOverlayPass ()
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > xilinx::AIE::createAIEGenerateColumnControlOverlayPass (const AIEGenerateColumnControlOverlayOptions &options)
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEAssignTileCtrlIDsPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIETraceToConfigPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIETraceRegPackWritesPass ()
std::unique_ptr< mlir::OperationPass< DeviceOp > > xilinx::AIE::createAIEInsertTraceFlowsPass ()
void xilinx::AIE::addObjectFifoLoweringPasses (mlir::OpPassManager &pm, bool packetSwitched, bool skipVerify)
 Adds the passes of aie-objectFifo-stateful-transform to pm, which anchors on DeviceOp.
void xilinx::AIE::registerAIEObjectFifoPipeline ()
 Register aie-objectFifo-stateful-transform as a pipeline over the passes that lower aie.objectfifo.

Variables

constexpr llvm::StringLiteral xilinx::AIE::kObjectFifoUnrollHintAttrName
 Discardable attribute set by --aie-objectfifo-lower-cores on scf.for and forever scf.while loops containing ObjectFifo accesses – the loop unroll factor (the least common multiple of the depths of the objectFifos accessed within the loop) consumed by the AIEObjectFifoUnroll pass.
constexpr llvm::StringLiteral xilinx::AIE::kObjectFifoObjectSlotAttrName
 Discardable attribute set by --aie-objectfifo-lower-cores on the rank-0 memref.allocas that hold a core's objects of an objectFifo in rotation order.

Macro Definition Documentation

◆ GEN_PASS_DECL

#define GEN_PASS_DECL

Definition at line 51 of file AIEPasses.h.

◆ GEN_PASS_REGISTRATION

#define GEN_PASS_REGISTRATION

Generate the code for registering passes.

Definition at line 128 of file AIEPasses.h.