My Project
|
Namespaces | |
detail | |
TypeKind | |
Classes | |
class | ArrayType |
class | CompositeType |
class | ImageType |
class | PointerType |
class | RuntimeArrayType |
class | SPIRVDialect |
class | StructType |
Functions | |
std::unique_ptr< OpPassBase< mlir::ModuleOp > > | createDecorateSPIRVCompositeTypeLayoutPass () |
std::unique_ptr< OpPassBase< spirv::ModuleOp > > | createLowerABIAttributesPass () |
LogicalResult | serialize (ModuleOp module, SmallVectorImpl< uint32_t > &binary) |
Optional< ModuleOp > | deserialize (ArrayRef< uint32_t > binary, MLIRContext *context) |
void | appendModuleHeader (SmallVectorImpl< uint32_t > &header, uint32_t idBound) |
Appends a SPRI-V module header to header with the given idBound . More... | |
uint32_t | getPrefixedOpcode (uint32_t wordCount, spirv::Opcode opcode) |
Returns the word-count-prefixed opcode for an SPIR-V instruction. More... | |
LogicalResult | encodeStringLiteralInto (SmallVectorImpl< uint32_t > &binary, StringRef literal) |
Encodes an SPIR-V literal string into the given binary vector. More... | |
enum BuiltIn uint32_t Value | getBuiltinVariableValue (Operation *op, BuiltIn builtin, OpBuilder &builder) |
LogicalResult | setABIAttrs (FuncOp funcOp, EntryPointABIAttr entryPointInfo, ArrayRef< InterfaceVarABIAttr > argABIInfo) |
enum StorageClass uint32_t StringRef | getInterfaceVarABIAttrName () |
Attribute name for specifying argument ABI information. More... | |
InterfaceVarABIAttr | getInterfaceVarABIAttr (unsigned descriptorSet, unsigned binding, StorageClass storageClass, MLIRContext *context) |
Get the InterfaceVarABIAttr given its fields. More... | |
StringRef | getEntryPointABIAttrName () |
Attribute name for specifying entry point information. More... | |
EntryPointABIAttr | getEntryPointABIAttr (ArrayRef< int32_t > localSize, MLIRContext *context) |
Get the EntryPointABIAttr given its fields. More... | |
Variables | |
constexpr unsigned | kHeaderWordCount = 5 |
SPIR-V binary header word count. More... | |
constexpr uint32_t | kMagicNumber = 0x07230203 |
SPIR-V magic number. More... | |
constexpr uint32_t | kGeneratorNumber = 22 |
The serializer tool ID registered to the Khronos Group. More... | |
void mlir::spirv::appendModuleHeader | ( | SmallVectorImpl< uint32_t > & | header, |
uint32_t | idBound | ||
) |
Appends a SPRI-V module header to header
with the given idBound
.
std::unique_ptr< OpPassBase< ModuleOp > > mlir::spirv::createDecorateSPIRVCompositeTypeLayoutPass | ( | ) |
Creates a module pass that converts composite types used by objects in the StorageBuffer, PhysicalStorageBuffer, Uniform, and PushConstant storage classes with layout information. Right now this pass only supports Vulkan layout rules.
std::unique_ptr< OpPassBase< spirv::ModuleOp > > mlir::spirv::createLowerABIAttributesPass | ( | ) |
Creates a module pass that lowers the ABI attributes specified during SPIR-V Lowering. Specifically, 1) Creates the global variables for arguments of entry point function using the specification in the ABI attributes for each argument. 2) Inserts the EntryPointOp and the ExecutionModeOp for entry point functions using the specification in the EntryPointAttr.
Optional< spirv::ModuleOp > mlir::spirv::deserialize | ( | ArrayRef< uint32_t > | binary, |
MLIRContext * | context | ||
) |
LogicalResult mlir::spirv::encodeStringLiteralInto | ( | SmallVectorImpl< uint32_t > & | binary, |
StringRef | literal | ||
) |
Encodes an SPIR-V literal
string into the given binary
vector.
|
strong |
Returns a value that represents a builtin variable value within the SPIR-V module.
mlir::spirv::EntryPointABIAttr mlir::spirv::getEntryPointABIAttr | ( | ArrayRef< int32_t > | localSize, |
MLIRContext * | context | ||
) |
Get the EntryPointABIAttr given its fields.
StringRef mlir::spirv::getEntryPointABIAttrName | ( | ) |
Attribute name for specifying entry point information.
InterfaceVarABIAttr mlir::spirv::getInterfaceVarABIAttr | ( | unsigned | descriptorSet, |
unsigned | binding, | ||
StorageClass | storageClass, | ||
MLIRContext * | context | ||
) |
Get the InterfaceVarABIAttr given its fields.
|
strong |
Attribute name for specifying argument ABI information.
uint32_t mlir::spirv::getPrefixedOpcode | ( | uint32_t | wordCount, |
spirv::Opcode | opcode | ||
) |
Returns the word-count-prefixed opcode for an SPIR-V instruction.
LogicalResult mlir::spirv::serialize | ( | ModuleOp | module, |
SmallVectorImpl< uint32_t > & | binary | ||
) |
Serializes the given SPIR-V module
and writes to binary
. On failure, reports errors to the error handler registered with the MLIR context for module
.
LogicalResult mlir::spirv::setABIAttrs | ( | FuncOp | funcOp, |
EntryPointABIAttr | entryPointInfo, | ||
ArrayRef< InterfaceVarABIAttr > | argABIInfo | ||
) |
Sets the InterfaceVarABIAttr and EntryPointABIAttr for a function and its arguments.
constexpr uint32_t mlir::spirv::kGeneratorNumber = 22 |
The serializer tool ID registered to the Khronos Group.
constexpr unsigned mlir::spirv::kHeaderWordCount = 5 |
SPIR-V binary header word count.
constexpr uint32_t mlir::spirv::kMagicNumber = 0x07230203 |
SPIR-V magic number.