MLIR 22.0.0git
DeserializeOps.cpp File Reference
#include "Deserializer.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVEnums.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVOps.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/Location.h"
#include "mlir/Target/SPIRV/SPIRVBinaryUtils.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/Support/Debug.h"
#include <optional>
#include "mlir/Dialect/SPIRV/IR/SPIRVSerialization.inc"

Go to the source code of this file.

Namespaces

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

Macros

#define DEBUG_TYPE   "spirv-deserialization"
#define GET_DESERIALIZATION_FNS

Functions

static spirv::Opcode extractOpcode (uint32_t word)
 Extracts the opcode from the given first word of a SPIR-V instruction.
template<>
LogicalResult mlir::spirv::Deserializer::processOp< spirv::EntryPointOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp< spirv::ExecutionModeOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp< spirv::FunctionCallOp > (ArrayRef< uint32_t > operands)
template<>
LogicalResult mlir::spirv::Deserializer::processOp< spirv::CopyMemoryOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp< spirv::GenericCastToPtrExplicitOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AccessChainOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicAndOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicCompareExchangeOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicCompareExchangeWeakOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicExchangeOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicIAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicIDecrementOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicIIncrementOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicISubOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicOrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicSMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicSMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicUMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicUMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::AtomicXorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitCountOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitFieldInsertOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitFieldSExtractOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitFieldUExtractOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitReverseOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitcastOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitwiseAndOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitwiseOrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::BitwiseXorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAcosOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAcoshOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAsinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAsinhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAtan2Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAtanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLAtanhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLCeilOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLCosOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLCoshOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLErfOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLExpOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLFAbsOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLFMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLFMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLFloorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLFmaOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLLogOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLMixOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLPowOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLPrintfOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLRintOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLRoundOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLRsqrtOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLSAbsOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLSMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLSMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLSinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLSinhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLSqrtOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLTanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLTanhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLUMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CLUMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CompositeConstructOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CompositeExtractOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::CompositeInsertOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ControlBarrierOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ConvertFToSOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ConvertFToUOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ConvertPtrToUOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ConvertSToFOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ConvertUToFOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ConvertUToPtrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::DotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::EXTAtomicFAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::EXTEmitMeshTasksOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::EXTSetMeshOutputsOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::EmitVertexOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::EndPrimitiveOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FConvertOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FDivOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FModOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FMulOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FNegateOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FOrdEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FOrdGreaterThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FOrdGreaterThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FOrdLessThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FOrdLessThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FOrdNotEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FRemOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FSubOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FUnordEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FUnordGreaterThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FUnordGreaterThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FUnordLessThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FUnordLessThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::FUnordNotEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLAcosOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLAcoshOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLAsinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLAsinhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLAtanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLAtanhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLCeilOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLCosOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLCoshOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLCrossOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLDistanceOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLExp2Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLExpOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFAbsOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFClampOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFMixOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFSignOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFindILsbOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFindSMsbOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFindUMsbOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFloorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFmaOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFractOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLFrexpStructOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLInverseSqrtOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLLdexpOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLLengthOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLLog2Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLLogOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLNormalizeOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLPackHalf2x16Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLPowOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLReflectOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLRoundEvenOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLRoundOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSAbsOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSClampOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSSignOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSinhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLSqrtOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLTanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLTanhOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLUClampOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLUMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLUMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GLUnpackHalf2x16Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GenericCastToPtrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupBroadcastOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupFAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupFMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupFMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupFMulKHROp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupIAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupIMulKHROp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformAllEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformAllOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformAnyOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBallotBitCountOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBallotFindLSBOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBallotFindMSBOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBallotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBitwiseAndOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBitwiseOrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBitwiseXorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformBroadcastOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformElectOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformFAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformFMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformFMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformFMulOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformIAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformIMulOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformLogicalAndOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformLogicalOrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformLogicalXorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformRotateKHROp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformSMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformSMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformShuffleDownOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformShuffleOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformShuffleUpOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformShuffleXorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformUMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupNonUniformUMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupSMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupSMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupUMaxOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::GroupUMinOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IAddCarryOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IMulOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELControlBarrierArriveOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELControlBarrierWaitOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELConvertBF16ToFOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELConvertFToBF16Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELRoundFToTF32Op > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELSubgroupBlockReadOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INTELSubgroupBlockWriteOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::INotEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ISubBorrowOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ISubOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageDrefGatherOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageFetchOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageQuerySizeOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageReadOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageSampleExplicitLodOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageSampleImplicitLodOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageSampleProjDrefImplicitLodOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ImageWriteOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::InBoundsPtrAccessChainOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IsFiniteOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IsInfOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::IsNanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KHRAssumeTrueOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KHRCooperativeMatrixLengthOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KHRCooperativeMatrixLoadOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KHRCooperativeMatrixMulAddOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KHRCooperativeMatrixStoreOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KHRSubgroupBallotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::KillOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::LoadOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::LogicalAndOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::LogicalEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::LogicalNotEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::LogicalNotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::LogicalOrOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::MatrixTimesMatrixOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::MatrixTimesScalarOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::MatrixTimesVectorOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::MemoryBarrierOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::NotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::OrderedOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::PtrAccessChainOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::PtrCastToGenericOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ReturnOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ReturnValueOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SConvertOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SDivOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SDotAccSatOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SDotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SGreaterThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SGreaterThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SLessThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SLessThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SModOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SMulExtendedOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SNegateOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SRemOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SUDotAccSatOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SUDotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::SelectOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ShiftLeftLogicalOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ShiftRightArithmeticOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ShiftRightLogicalOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::StoreOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::TransposeOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UConvertOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UDivOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UDotAccSatOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UDotOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UGreaterThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UGreaterThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ULessThanEqualOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::ULessThanOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UModOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UMulExtendedOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UnorderedOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::UnreachableOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::VariableOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::VectorExtractDynamicOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::VectorInsertDynamicOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::VectorShuffleOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::VectorTimesMatrixOp > (ArrayRef< uint32_t > words)
template<>
LogicalResult mlir::spirv::Deserializer::processOp<::mlir::spirv::VectorTimesScalarOp > (ArrayRef< uint32_t > words)

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "spirv-deserialization"

Definition at line 27 of file DeserializeOps.cpp.

◆ GET_DESERIALIZATION_FNS

#define GET_DESERIALIZATION_FNS

Definition at line 604 of file DeserializeOps.cpp.

Function Documentation

◆ extractOpcode()

spirv::Opcode extractOpcode ( uint32_t word)
inlinestatic

Extracts the opcode from the given first word of a SPIR-V instruction.

Definition at line 34 of file DeserializeOps.cpp.

Referenced by mlir::spirv::Deserializer::sliceInstruction().