MLIR 22.0.0git
Deserializer.cpp File Reference
#include "Deserializer.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVAttributes.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVEnums.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVOps.h"
#include "mlir/Dialect/SPIRV/IR/SPIRVTypes.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/IRMapping.h"
#include "mlir/IR/Location.h"
#include "mlir/Target/SPIRV/SPIRVBinaryUtils.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/Sequence.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/bit.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/SaveAndRestore.h"
#include "llvm/Support/raw_ostream.h"
#include <optional>

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "spirv-deserialization"
#define MIN_VERSION_CASE(v)

Functions

static bool isFnEntryBlock (Block *block)
 Returns true if the given block is a function entry block.
template<typename AttrTy, typename EnumAttrTy, typename EnumTy>
static LogicalResult deserializeCacheControlDecoration (Location loc, OpBuilder &opBuilder, DenseMap< uint32_t, NamedAttrList > &decorations, ArrayRef< uint32_t > words, StringAttr symbol, StringRef decorationName, StringRef cacheControlKind)

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "spirv-deserialization"

Definition at line 35 of file Deserializer.cpp.

◆ MIN_VERSION_CASE

#define MIN_VERSION_CASE ( v)
Value:
case v: \
version = spirv::Version::V_1_##v; \
break

Function Documentation

◆ deserializeCacheControlDecoration()

template<typename AttrTy, typename EnumAttrTy, typename EnumTy>
LogicalResult deserializeCacheControlDecoration ( Location loc,
OpBuilder & opBuilder,
DenseMap< uint32_t, NamedAttrList > & decorations,
ArrayRef< uint32_t > words,
StringAttr symbol,
StringRef decorationName,
StringRef cacheControlKind )
static

◆ isFnEntryBlock()

bool isFnEntryBlock ( Block * block)
inlinestatic

Returns true if the given block is a function entry block.

Definition at line 42 of file Deserializer.cpp.

References mlir::Block::getParentOp(), and mlir::Block::isEntryBlock().