MLIR 24.0.0git
LLVMOps.h File Reference
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include <optional>
#include "mlir/Dialect/LLVMIR/LLVMAllOps.h.inc"

Go to the source code of this file.

Namespaces

namespace  mlir
 Include the generated interface declarations.
namespace  mlir::LLVM

Functions

mlir::Type mlir::LLVM::getI1SameShape (mlir::Type type)
 Returns a boolean type that has the same shape as type.
mlir::LLVM::LLVMStructType mlir::LLVM::getValAndBoolStructType (mlir::Type valType)
 Returns an LLVM struct type that contains a value type and a boolean type.
mlir::ParseResult mlir::LLVM::parseCmpPredicate (mlir::OpAsmParser &parser, mlir::LLVM::ICmpPredicateAttr &predicate)
mlir::ParseResult mlir::LLVM::parseCmpPredicate (mlir::OpAsmParser &parser, mlir::LLVM::FCmpPredicateAttr &predicate)
void mlir::LLVM::printCmpPredicate (mlir::OpAsmPrinter &printer, mlir::Operation *, mlir::LLVM::ICmpPredicateAttr predicate)
void mlir::LLVM::printCmpPredicate (mlir::OpAsmPrinter &printer, mlir::Operation *, mlir::LLVM::FCmpPredicateAttr predicate)
void mlir::LLVM::printLLVMLinkage (mlir::OpAsmPrinter &p, mlir::Operation *, mlir::LLVM::LinkageAttr val)
mlir::ParseResult mlir::LLVM::parseLLVMLinkage (mlir::OpAsmParser &p, mlir::LLVM::LinkageAttr &val)
void mlir::LLVM::printOpBundles (mlir::OpAsmPrinter &p, mlir::Operation *op, mlir::OperandRangeRange opBundleOperands, mlir::TypeRangeRange opBundleOperandTypes, std::optional< mlir::ArrayAttr > opBundleTags)
std::optional< mlir::ParseResult > mlir::LLVM::parseOpBundles (mlir::OpAsmParser &p, mlir::SmallVector< mlir::SmallVector< mlir::OpAsmParser::UnresolvedOperand > > &opBundleOperands, mlir::SmallVector< mlir::SmallVector< mlir::Type > > &opBundleOperandTypes, mlir::ArrayAttr &opBundleTags)
mlir::ParseResult mlir::LLVM::parseSwitchOpCases (mlir::OpAsmParser &parser, mlir::Type flagType, mlir::DenseIntElementsAttr &caseValues, mlir::SmallVectorImpl< mlir::Block * > &caseDestinations, mlir::SmallVectorImpl< mlir::SmallVector< mlir::OpAsmParser::UnresolvedOperand > > &caseOperands, mlir::SmallVectorImpl< mlir::SmallVector< mlir::Type > > &caseOperandTypes)
 <cases> ::= [ (case (, case )* )?
void mlir::LLVM::printSwitchOpCases (mlir::OpAsmPrinter &p, mlir::LLVM::SwitchOp op, mlir::Type flagType, mlir::DenseIntElementsAttr caseValues, mlir::SuccessorRange caseDestinations, mlir::OperandRangeRange caseOperands, const mlir::TypeRangeRange &caseOperandTypes)
mlir::ParseResult mlir::LLVM::parseGEPIndices (mlir::OpAsmParser &parser, mlir::SmallVectorImpl< mlir::OpAsmParser::UnresolvedOperand > &indices, mlir::DenseI32ArrayAttr &rawConstantIndices)
void mlir::LLVM::printGEPIndices (mlir::OpAsmPrinter &printer, mlir::LLVM::GEPOp gepOp, mlir::OperandRange indices, mlir::DenseI32ArrayAttr rawConstantIndices)
mlir::ParseResult mlir::LLVM::parseInsertExtractValueElementType (mlir::AsmParser &parser, mlir::Type &valueType, mlir::Type containerType, mlir::DenseI64ArrayAttr position)
 Infer the value type from the container type and position.
void mlir::LLVM::printInsertExtractValueElementType (mlir::AsmPrinter &printer, mlir::Operation *op, mlir::Type valueType, mlir::Type containerType, mlir::DenseI64ArrayAttr position)
 Nothing to print for an inferred type.
mlir::ParseResult mlir::LLVM::parseShuffleType (mlir::AsmParser &parser, mlir::Type v1Type, mlir::Type &resType, mlir::DenseI32ArrayAttr mask)
 Build the result type of a shuffle vector operation.
void mlir::LLVM::printShuffleType (mlir::AsmPrinter &printer, mlir::Operation *op, mlir::Type v1Type, mlir::Type resType, mlir::DenseI32ArrayAttr mask)
 Nothing to do when the result type is inferred.
mlir::ParseResult mlir::LLVM::parseIndirectBrOpSucessors (mlir::OpAsmParser &parser, mlir::Type &flagType, mlir::SmallVectorImpl< mlir::Block * > &succOperandBlocks, mlir::SmallVectorImpl< mlir::SmallVector< mlir::OpAsmParser::UnresolvedOperand > > &succOperands, mlir::SmallVectorImpl< mlir::SmallVector< mlir::Type > > &succOperandsTypes)
void mlir::LLVM::printIndirectBrOpSucessors (mlir::OpAsmPrinter &p, mlir::LLVM::IndirectBrOp op, mlir::Type flagType, mlir::SuccessorRange succs, mlir::OperandRangeRange succOperands, const mlir::TypeRangeRange &succOperandsTypes)