|
MLIR 22.0.0git
|
#include "mlir/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.h"#include "mlir/Dialect/LLVMIR/VCIXDialect.h"#include "mlir/IR/BuiltinAttributes.h"#include "mlir/IR/Operation.h"#include "mlir/Target/LLVMIR/ModuleTranslation.h"#include "llvm/IR/IRBuilder.h"#include "llvm/IR/IntrinsicsRISCV.h"#include "mlir/Dialect/LLVMIR/VCIXConversions.inc"Go to the source code of this file.
Functions | |
| static llvm::Type * | getXlenType (Attribute opcodeAttr, LLVM::ModuleTranslation &moduleTranslation) |
| Infer XLen type from opcode's type. | |
| static llvm::Value * | createVL (llvm::IRBuilderBase &builder, llvm::Value *vl, VectorType vtype, llvm::Type *xlen, Location loc, LLVM::ModuleTranslation &moduleTranslation) |
| Return VL for VCIX intrinsic. | |
| llvm::CallInst * | createIntrinsicCall (llvm::IRBuilderBase &builder, llvm::Intrinsic::ID intrinsic, ArrayRef< llvm::Value * > args={}, ArrayRef< llvm::Type * > tys={}) |
| Creates a call to an LLVM IR intrinsic function with the given arguments. | |
| llvm::CallInst * mlir::LLVM::detail::createIntrinsicCall | ( | llvm::IRBuilderBase & | builder, |
| llvm::Intrinsic::ID | intrinsic, | ||
| ArrayRef< llvm::Value * > | args = {}, | ||
| ArrayRef< llvm::Type * > | tys = {} ) |
Creates a call to an LLVM IR intrinsic function with the given arguments.
Definition at line 510 of file ModuleTranslation.cpp.
|
static |
Return VL for VCIX intrinsic.
If vl was previously set, return it, otherwise construct a constant using fixed vector type.
Definition at line 38 of file VCIXToLLVMIRTranslation.cpp.
References mlir::LLVM::ModuleTranslation::getContext(), and mlir::LLVM::detail::getLLVMConstant().
|
static |
Infer XLen type from opcode's type.
This is done to avoid passing target option around.
Definition at line 29 of file VCIXToLLVMIRTranslation.cpp.
References mlir::LLVM::ModuleTranslation::getLLVMContext().