MLIR
21.0.0git
|
#include "mlir/Dialect/SPIRV/IR/SPIRVOps.h"
#include "SPIRVOpUtils.h"
#include "SPIRVParsingUtils.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVAttributes.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVDialect.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVEnums.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVOpTraits.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVTypes.h"
#include "mlir/Dialect/SPIRV/IR/TargetAndABI.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/BuiltinTypes.h"
#include "mlir/IR/Matchers.h"
#include "mlir/IR/OpDefinition.h"
#include "mlir/IR/OpImplementation.h"
#include "mlir/IR/Operation.h"
#include "mlir/IR/TypeUtilities.h"
#include "mlir/Interfaces/FunctionImplementation.h"
#include "llvm/ADT/APFloat.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/TypeSwitch.h"
#include "llvm/Support/InterleavedRange.h"
#include <cassert>
#include <numeric>
#include <optional>
#include <type_traits>
Go to the source code of this file.
Functions | |
static ParseResult | parseOneResultSameOperandTypeOp (OpAsmParser &parser, OperationState &result) |
static void | printOneResultOp (Operation *op, OpAsmPrinter &p) |
template<typename BlockReadWriteOpTy > | |
static LogicalResult | verifyBlockReadWritePtrAndValTypes (BlockReadWriteOpTy op, Value ptr, Value val) |
static Type | getElementType (Type type, ArrayRef< int32_t > indices, function_ref< InFlightDiagnostic(StringRef)> emitErrorFn) |
Walks the given type hierarchy with the given indices, potentially down to component granularity, to select an element type. More... | |
static Type | getElementType (Type type, Attribute indices, function_ref< InFlightDiagnostic(StringRef)> emitErrorFn) |
static Type | getElementType (Type type, Attribute indices, Location loc) |
static Type | getElementType (Type type, Attribute indices, OpAsmParser &parser, SMLoc loc) |
template<typename ExtendedBinaryOp > | |
static LogicalResult | verifyArithmeticExtendedBinaryOp (ExtendedBinaryOp op) |
static ParseResult | parseArithmeticExtendedBinaryOp (OpAsmParser &parser, OperationState &result) |
static void | printArithmeticExtendedBinaryOp (Operation *op, OpAsmPrinter &printer) |
static LogicalResult | verifyShiftOp (Operation *op) |
static LogicalResult | verifyConstantType (spirv::ConstantOp op, Attribute value, Type opType) |
|
static |
Walks the given type hierarchy with the given indices, potentially down to component granularity, to select an element type.
Returns null type and emits errors with the given loc on failure.
Definition at line 188 of file SPIRVOps.cpp.
Referenced by mlir::convertMMAToLLVMType(), mlir::detail::DenseArrayAttrImpl< T >::get(), mlir::sparse_tensor::SparseTensorType::getCOOType(), getElementType(), mlirComplexTypeGetElementType(), mlirLLVMArrayTypeGetElementType(), mlirPDLRangeTypeGetElementType(), mlirShapedTypeGetElementType(), mlirUnrankedTensorTypeGetElementType(), nonAtomicRMW(), parseShuffleType(), and parseVarPtrType().
|
static |
Definition at line 214 of file SPIRVOps.cpp.
References getElementType().
Definition at line 239 of file SPIRVOps.cpp.
References mlir::emitError(), and getElementType().
|
static |
Definition at line 246 of file SPIRVOps.cpp.
References mlir::AsmParser::emitError(), and getElementType().
|
static |
Definition at line 269 of file SPIRVOps.cpp.
References mlir::OperationState::addTypes(), mlir::OperationState::attributes, mlir::AsmParser::emitError(), mlir::AsmParser::getCurrentLocation(), mlir::OperationState::operands, mlir::AsmParser::parseColon(), mlir::OpAsmParser::parseOperandList(), mlir::AsmParser::parseOptionalAttrDict(), mlir::AsmParser::parseType(), and mlir::OpAsmParser::resolveOperands().
|
static |
Definition at line 122 of file SPIRVOps.cpp.
References mlir::OperationState::addTypes(), mlir::AsmParser::addTypeToList(), mlir::OperationState::attributes, mlir::AsmParser::emitError(), mlir::AsmParser::getCurrentLocation(), mlir::OperationState::operands, mlir::AsmParser::parseColon(), mlir::AsmParser::parseColonType(), mlir::OpAsmParser::parseOperandList(), mlir::AsmParser::parseOptionalAttrDict(), mlir::AsmParser::parseOptionalLParen(), mlir::AsmParser::parseRParen(), mlir::AsmParser::parseType(), mlir::OpAsmParser::resolveOperands(), and mlir::OperationState::types.
|
static |
|
static |
Definition at line 151 of file SPIRVOps.cpp.
References mlir::Operation::getAttrs(), mlir::Operation::getNumResults(), mlir::Operation::getOperands(), mlir::Operation::getOperandTypes(), mlir::Operation::getResult(), mlir::Value::getType(), mlir::OpAsmPrinter::printGenericOp(), mlir::OpAsmPrinter::printOperands(), and mlir::OpAsmPrinter::printOptionalAttrDict().
|
static |
Definition at line 255 of file SPIRVOps.cpp.
References mlir::getType().
|
static |
Definition at line 171 of file SPIRVOps.cpp.
References mlir::Value::getType().
|
static |
Definition at line 559 of file SPIRVOps.cpp.
|
static |
Definition at line 301 of file SPIRVOps.cpp.
References mlir::Operation::emitError(), mlir::Operation::getOperand(), mlir::Operation::getResult(), and mlir::Value::getType().