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.
- Block
Context πGeneral information needed to emit SPIR-V for Naga statements. - Cached
Expressions πA map from evaluatedExpression
s to their SPIR-V ids. - Entry
Point πContext - Tracks the expressions for which the backend emits the following instructions:
- Function π
- Function
Argument π - Global
Variable πThe SPIR-V representation of acrate::GlobalVariable
. - IdGenerator π
- Flags corresponding to the boolean(-ish) parameters to OpTypeImage.
- Instruction π
- Local
Image πType Characteristics of a SPIR-VOpTypeImage
type. - Local
Variable π - Logical
Layout π - Lookup
Function πType - Physical
Layout π - Result
Member π - Terminated
Block πA SPIR-V block that ends with a termination instruction.
Enums§
- Cached
Constant π - SPIR-V operand kind: Capability
- Dimension π
- Local
Type πA SPIR-V type constructed during code generation. - Lookup
Type πA type encountered during SPIR-V generation. - Numeric
Type πA numeric type, for use inLocalType
. - SPIR-V operand kind: SourceLanguage
Constants§
- BITS_
PER_ πBYTE