|
| mlir::Value | cir::direct::lowerCirAttrAsValue (mlir::Location parentLoc, mlir::ModuleOp parentModule, const mlir::Attribute attr, mlir::ConversionPatternRewriter &rewriter, mlir::SymbolTableCollection &symbolTables, const mlir::TypeConverter *converter, const CIRPreConversionTypeMap &preConversionTypes, LLVMBlockAddressInfo *blockInfoAddr) |
| | Switches on the type of attribute and calls the appropriate conversion.
|
| mlir::LLVM::Linkage | cir::direct::convertLinkage (cir::GlobalLinkageKind linkage) |
| void | cir::direct::createLLVMFuncOpIfNotExist (mlir::ConversionPatternRewriter &rewriter, mlir::SymbolTableCollection &symbolTables, mlir::Operation *srcOp, llvm::StringRef fnName, mlir::Type fnTy, mlir::ArrayAttr argAttrs=nullptr, mlir::ArrayAttr resAttrs=nullptr) |
| | Declare fnName with type fnTy before the function enclosing srcOp, unless the module already has a symbol of that name.
|
| mlir::LogicalResult | cir::direct::lowerToConstrainedFPIntrinsic (mlir::Operation *op, mlir::ValueRange operands, cir::FenvAttr fenv, mlir::Type llvmResTy, mlir::ConversionPatternRewriter &rewriter, llvm::StringRef constrainedMnemonic, bool hasRoundingMode, mlir::LLVM::FastmathFlags fastmathFlags) |
| template<typename LLVMOp> |
| mlir::LogicalResult | cir::direct::lowerConstrainableFPOp (mlir::Operation *op, mlir::ValueRange operands, cir::FenvAttr fenv, cir::FastMathFlagsAttr fastmath, const mlir::TypeConverter &typeConverter, mlir::ConversionPatternRewriter &rewriter, llvm::StringRef constrainedMnemonic, bool hasRoundingMode) |
| mlir::LLVM::IntegerOverflowFlags | cir::direct::convertToLLVMProperty (mlir::MLIRContext *, cir::OverflowFlags flags) |
| mlir::LLVM::FastmathFlagsAttr | cir::direct::convertToLLVMProperty (mlir::MLIRContext *ctx, std::optional< cir::FastMathFlags > flags) |
| mlir::IntegerAttr | cir::direct::convertToLLVMProperty (mlir::MLIRContext *ctx, cir::FPClassTest flags) |
| mlir::IntegerAttr | cir::direct::convertToLLVMProperty (mlir::MLIRContext *ctx, bool flag) |