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 <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 187 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(), and parseVarPtrType().
|
static |
Definition at line 213 of file SPIRVOps.cpp.
References getElementType().
Definition at line 238 of file SPIRVOps.cpp.
References mlir::emitError(), and getElementType().
|
static |
Definition at line 245 of file SPIRVOps.cpp.
References mlir::AsmParser::emitError(), and getElementType().
|
static |
Definition at line 268 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 121 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 150 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 254 of file SPIRVOps.cpp.
References mlir::getType().
|
static |
Definition at line 170 of file SPIRVOps.cpp.
References mlir::Value::getType().
|
static |
Definition at line 558 of file SPIRVOps.cpp.
|
static |
Definition at line 300 of file SPIRVOps.cpp.
References mlir::Operation::emitError(), mlir::Operation::getOperand(), mlir::Operation::getResult(), and mlir::Value::getType().