Expand description
Backend for SPIR-V (Standard Portable Intermediate Representation).
Modules§
- block πImplementations for
BlockContext
methods. - helpers π
- image πGenerating SPIR-V for image operations.
- index πBounds-checking for SPIR-V output.
- instructions π
- layout π
- ray πGenerating SPIR-V for ray query operations.
- recyclable πReusing collectionsβ previous allocations.
- selection πGenerate SPIR-V conditional structures.
- subgroup π
- writer π
Structs§
- Block πA SPIR-V block to which we are still adding instructions.
- BlockContext πGeneral information needed to emit SPIR-V for Naga statements.
- CachedExpressions πA map from evaluated
Expression
s to their SPIR-V ids. - EntryPointContext π
- Tracks the expressions for which the backend emits the following instructions:
- Function π
- FunctionArgument π
- GlobalVariable πThe SPIR-V representation of a
crate::GlobalVariable
. - IdGenerator π
- Flags corresponding to the boolean(-ish) parameters to OpTypeImage.
- Instruction π
- LocalImageType πCharacteristics of a SPIR-V
OpTypeImage
type. - LocalVariable π
- LogicalLayout π
- LookupFunctionType π
- PhysicalLayout π
- ResultMember π
- TerminatedBlock πA SPIR-V block that ends with a termination instruction.
Enums§
- CachedConstant π
- SPIR-V operand kind: Capability
- Dimension π
- LocalType πA SPIR-V type constructed during code generation.
- LookupType πA type encountered during SPIR-V generation.
- NumericType πA numeric type, for use in
LocalType
. - SPIR-V operand kind: SourceLanguage
Constants§
- BITS_PER_BYTE π