MLIR-AIE 1.4.5.dev
Passes.h File Reference
#include "mlir/Pass/Pass.h"
#include "mlir/Pass/PassOptions.h"
Include dependency graph for Passes.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  xilinx::aievec::CanonicalizeVectorForAIEVecOptions
 Options for the "canonicalize-vector-for-aievec" pipeline. More...
struct  xilinx::aievec::LowerVectorToAIEVecOptions
 Options for the "lower-vector-to-aievec" pipeline. More...
struct  xilinx::aievec::OptimizeAIEVecOptions
 Options for the "optimize-aievec" pipeline. More...
struct  xilinx::aievec::ConvertVectorToAIEVecOptions
 Options for the "convert-vector-to-aievec" pipeline. More...

Namespaces

namespace  xilinx
namespace  xilinx::aievec

Enumerations

enum class  xilinx::AIEArch { xilinx::AIE , xilinx::AIE2 , xilinx::AIE2P , xilinx::UNKNOWN }

Functions

void xilinx::aievec::buildConvertVectorToAIEVec (mlir::OpPassManager &pm, const ConvertVectorToAIEVecOptions &options)
 Adds the "convert-vector-to-aievec" pipeline to the OpPassManager.
void xilinx::aievec::buildCanonicalizeVectorForAIEVec (mlir::OpPassManager &pm, const CanonicalizeVectorForAIEVecOptions &options)
void xilinx::aievec::buildLowerVectorToAIEVec (mlir::OpPassManager &pm, const LowerVectorToAIEVecOptions &options)
void xilinx::aievec::buildOptimizeAIEVec (mlir::OpPassManager &pm, const OptimizeAIEVecOptions &options)
void xilinx::aievec::registerAIEVecPipelines ()
 Register all pipelines for the AIE Vector dialect.
std::unique_ptr<::mlir::Pass > xilinx::aievec::createCopyRemovalPass ()
 Create a pass that removes unnecessary Copy operations.
std::unique_ptr<::mlir::Pass > xilinx::aievec::createDynamicSizeNoImplicitBroadcastPass ()
void xilinx::aievec::buildDynamicSizeNoImplicitBroadcastPass (mlir::OpPassManager &pm)
std::unique_ptr<::mlir::Pass > xilinx::aievec::createSplitVectorLoadUpsChainsPass ()
 Create a pass that splits vector.load + aievec.ups chains to reduce shuffle operations for AIE2p targets.
std::unique_ptr<::mlir::Pass > xilinx::aievec::createBF16EmulationPass ()
 Create a pass that runs f32 vector arithmetic on the bf16 datapath: multiplies and transcendentals take inputs rounded to bf16, sums stay f32.