11#ifndef AIE_CONVERSION_AIEVECTOLLVM_AIEVECTOLLVM_H
12#define AIE_CONVERSION_AIEVECTOLLVM_AIEVECTOLLVM_H
14#include "mlir/IR/BuiltinOps.h"
15#include "mlir/Pass/Pass.h"
19class LLVMTypeConverter;
20class RewritePatternSet;
27enum class Aie2Fp32Emulation : uint32_t;
30 mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns,
31 Aie2Fp32Emulation aie2Fp32EmulationOption, llvm::StringRef aieTarget);
34 mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns);
37 mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns);
40 mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns);
42std::unique_ptr<mlir::OperationPass<mlir::ModuleOp>>
47struct ConvertAIEVecToLLVMOptions;
50std::unique_ptr<mlir::OperationPass<mlir::ModuleOp>>
52 const xilinx::ConvertAIEVecToLLVMOptions &options);
void populateAIEVecToLLVMCommonConversionPatterns(mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns)
void populateAIEVecToLLVMAIE2ConversionPatterns(mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns)
void populateAIEVecToLLVMAIE2pConversionPatterns(mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns)
std::unique_ptr< mlir::OperationPass< mlir::ModuleOp > > createConvertAIEVecToLLVMPass()
void populateAIEVecToLLVMConversionPatterns(mlir::LLVMTypeConverter &converter, mlir::RewritePatternSet &patterns, Aie2Fp32Emulation aie2Fp32EmulationOption, llvm::StringRef aieTarget)