Enum spirv_utils::instruction::Instruction
[−]
[src]
pub enum Instruction { Nop, Undef(TypeId, ResultId), SourceContinued(String), Source(SrcLang, u32, ValueId, Option<String>), SourceExtension(String), Name(Id, String), MemberName(TypeId, u32, String), String(ResultId, String), Line(ValueId, u32, u32), Extension(String), ExtInstImport(ResultId, String), ExtInst(TypeId, ResultId, ValueId, u32, Box<[Id]>), MemoryModel(AddressingModel, MemoryModel), EntryPoint(ExecutionModel, ValueId, String, Box<[ValueId]>), ExecutionMode(ValueId, ExecutionMode), Capability(Capability), TypeVoid(ResultId), TypeBool(ResultId), TypeInt(ResultId, u32, bool), TypeFloat(ResultId, u32), TypeVector(ResultId, TypeId, u32), TypeMatrix(ResultId, TypeId, u32), TypeImage(ResultId, TypeId, Dim, u32, bool, bool, u32, ImageFormat, Option<AccessQualifier>), TypeSampler(ResultId), TypeSampledImage(ResultId, TypeId), TypeArray(ResultId, TypeId, ValueId), TypeRuntimeArray(ResultId, TypeId), TypeStruct(ResultId, Box<[TypeId]>), TypeOpaque(ResultId, String), TypePointer(ResultId, StorageClass, TypeId), TypeFunction(ResultId, TypeId, Box<[TypeId]>), TypeEvent(ResultId), TypeDeviceEvent(ResultId), TypeReserveId(ResultId), TypeQueue(ResultId), TypePipe(ResultId), TypeForwardPointer(ResultId, StorageClass), ConstantTrue(TypeId, ResultId), ConstantFalse(TypeId, ResultId), Constant(TypeId, ResultId, Box<[u32]>), ConstantComposite(TypeId, ResultId, Box<[ValueId]>), ConstantSampler(TypeId, ResultId, SamplerAddressingMode, bool, SamplerFilterMode), ConstantNull(TypeId, ResultId), SpecConstantTrue(TypeId, ResultId), SpecConstantFalse(TypeId, ResultId), SpecConstant(TypeId, ResultId, Box<[u32]>), SpecConstantComposite(TypeId, ResultId, Box<[ValueId]>), SpecConstantOp(TypeId, ResultId, u32, Box<[ValueId]>), Function(TypeId, ResultId, FunctionControl, TypeId), FunctionParameter(TypeId, ResultId), FunctionEnd, FunctionCall(TypeId, ResultId, ValueId, Box<[ValueId]>), Variable(TypeId, ResultId, StorageClass, ValueId), ImageTexelPointer(TypeId, ResultId, ValueId, ValueId, ValueId), Load(TypeId, ResultId, ValueId, MemoryAccess), Store(ValueId, ValueId, MemoryAccess), CopyMemory(ValueId, ValueId, MemoryAccess), CopyMemorySized(ValueId, ValueId, ValueId, MemoryAccess), AccessChain(TypeId, ResultId, ValueId, Box<[ValueId]>), InBoundsAccessChain(TypeId, ResultId, ValueId, Box<[ValueId]>), PtrAccessChain(TypeId, ResultId, ValueId, ValueId, Box<[ValueId]>), ArrayLength(TypeId, ResultId, ValueId, u32), GenericPtrMemSemantics(TypeId, ResultId, ValueId), InBoundsPtrAccessChain(TypeId, ResultId, ValueId, ValueId, Box<[ValueId]>), Decorate(Id, Decoration), MemberDecorate(TypeId, u32, Decoration), DecorationGroup(ResultId), GroupDecorate(ValueId, Box<[Id]>), GroupMemberDecorate(ValueId, Box<[(TypeId, u32)]>), VectorExtractDynamic(TypeId, ResultId, ValueId, ValueId), VectorInsertDynamic(TypeId, ResultId, ValueId, ValueId, ValueId), VectorShuffle(TypeId, ResultId, ValueId, ValueId, Box<[u32]>), CompositeConstruct(TypeId, ResultId, Box<[ValueId]>), CompositeExtract(TypeId, ResultId, ValueId, Box<[u32]>), CompositeInsert(TypeId, ResultId, ValueId, ValueId, Box<[u32]>), CopyObject(TypeId, ResultId, ValueId), Transpose(TypeId, ResultId, ValueId), SampledImage, ImageSampleImplicitLod, ImageSampleExplicitLod, ImageSampleDrefImplicitLod, ImageSampleDrefExplicitLod, ImageSampleProjImplicitLod, ImageSampleProjExplicitLod, ImageSampleProjDrefImplicitLod, ImageSampleProjDrefExplicitLod, ImageFetch, ImageGather, ImageDrefGather, ImageRead, ImageWrite, Image, ImageQueryFormat, ImageQueryOrder, ImageQuerySizeLod, ImageQuerySize, ImageQueryLod, ImageQueryLevels, ImageQuerySamples, ConvertFToU, ConvertFToS, ConvertSToF, ConvertUToF, UConvert, SConvert, FConvert, QuantizeToF16, ConvertPtrToU, SatConvertSToU, SatConvertUToS, ConvertUToPtr, PtrCastToGeneric, GenericCastToPtr, GenericCastToPtrExplicit, Bitcast, SNegate, FNegate, IAdd, FAdd, ISub, FSub, IMul, FMul, UDiv, SDiv, FDiv, UMod, SRem, SMod, FRem, FMod, VectorTimesScalar, MatrixTimesScalar, VectorTimesMatrix, MatrixTimesVector, MatrixTimesMatrix, OuterProduct, Dot, IAddCarry, ISubBorrow, UMulExtended, SMulExtended, Any, All, IsNan, IsInf, IsFinite, IsNormal, SignBitSet, LessOrGreater, Ordered, Unordered, LogicalEqual, LogicalNotEqual, LogicalOr, LogicalAnd, LogicalNot, Select, IEqual, INotEqual, UGreaterThan, SGreaterThan, UGreaterThanEqual, SGreaterThanEqual, ULessThan, SLessThan, ULessThanEqual, SLessThanEqual, FOrdEqual, FUnordEqual, FOrdNotEqual, FUnordNotEqual, FOrdLessThan, FUnordLessThan, FOrdGreaterThan, FUnordGreaterThan, FOrdLessThanEqual, FUnordLessThanEqual, FOrdGreaterThanEqual, FUnordGreaterThanEqual, ShiftRightLogical, ShiftRightArithmetic, ShiftLeftLogical, BitwiseOr, BitwiseXor, BitwiseAnd, Not, BitFieldInsert, BitFieldSExtract, BitFieldUExtract, BitReverse, BitCount, DPdx, DPdy, Fwidth, DPdxFine, DPdyFine, FwidthFine, DPdxCoarse, DPdyCoarse, FwidthCoarse, EmitVertex, EndPrimitive, EmitStreamVertex, EndStreamPrimitive, ControlBarrier, MemoryBarrier, AtomicLoad, AtomicStore, AtomicExchange, AtomicCompareExchange, AtomicCompareExchangeWeak, AtomicIIncrement, AtomicIDecrement, AtomicIAdd, AtomicISub, AtomicSMin, AtomicUMin, AtomicSMax, AtomicUMax, AtomicAnd, AtomicOr, AtomicXor, Phi, LoopMerge, SelectionMerge, Label, Branch, BranchConditional, Switch, Kill, Return, ReturnValue, Unreachable, LifetimeStart, LifetimeStop, GroupAsyncCopy, GroupWaitEvents, GroupAll, GroupAny, GroupBroadcast, GroupIAdd, GroupFAdd, GroupFMin, GroupUMin, GroupSMin, GroupFMax, GroupUMax, GroupSMax, ReadPipe, WritePipe, ReservedReadPipe, ReservedWritePipe, ReserveReadPipePackets, ReserveWritePipePackets, CommitReadPipe, CommitWritePipe, IsValidReserveId, GetNumPipePackets, GetMaxPipePackets, GroupReserveReadPipePackets, GroupReserveWritePipePackets, GroupCommitReadPipe, GroupCommitWritePipe, EnqueueMarker, EnqueueKernel, GetKernelNDrangeSubGroupCount, GetKernelNDrangeMaxSubGroupSize, GetKernelWorkGroupSize, GetKernelPreferredWorkGroupSizeMultiple, RetainEvent, ReleaseEvent, CreateUserEvent, IsValidEvent, SetUserEventStatus, CaptureEventProfilingInfo, GetDefaultQueue, BuildNDRange, ImageSparseSampleImplicitLod, ImageSparseSampleExplicitLod, ImageSparseSampleDrefImplicitLod, ImageSparseSampleDrefExplicitLod, ImageSparseSampleProjImplicitLod, ImageSparseSampleProjExplicitLod, ImageSparseSampleProjDrefImplicitLod, ImageSparseSampleProjDrefExplicitLod, ImageSparseFetch, ImageSparseGather, ImageSparseDrefGather, ImageSparseTexelsResident, NoLine, AtomicFlagTestAndSet, AtomicFlagClear, ImageSparseRead, Unknown(u16, Box<[u32]>), }
Variants
Nop
Undef(TypeId, ResultId)
SourceContinued(String)
Source(SrcLang, u32, ValueId, Option<String>)
SourceExtension(String)
Name(Id, String)
MemberName(TypeId, u32, String)
String(ResultId, String)
Line(ValueId, u32, u32)
Extension(String)
ExtInstImport(ResultId, String)
ExtInst(TypeId, ResultId, ValueId, u32, Box<[Id]>)
MemoryModel(AddressingModel, MemoryModel)
EntryPoint(ExecutionModel, ValueId, String, Box<[ValueId]>)
ExecutionMode(ValueId, ExecutionMode)
Capability(Capability)
TypeVoid(ResultId)
TypeBool(ResultId)
TypeInt(ResultId, u32, bool)
TypeFloat(ResultId, u32)
TypeVector(ResultId, TypeId, u32)
TypeMatrix(ResultId, TypeId, u32)
TypeImage(ResultId, TypeId, Dim, u32, bool, bool, u32, ImageFormat, Option<AccessQualifier>)
TypeSampler(ResultId)
TypeSampledImage(ResultId, TypeId)
TypeArray(ResultId, TypeId, ValueId)
TypeRuntimeArray(ResultId, TypeId)
TypeStruct(ResultId, Box<[TypeId]>)
TypeOpaque(ResultId, String)
TypePointer(ResultId, StorageClass, TypeId)
TypeFunction(ResultId, TypeId, Box<[TypeId]>)
TypeEvent(ResultId)
TypeDeviceEvent(ResultId)
TypeReserveId(ResultId)
TypeQueue(ResultId)
TypePipe(ResultId)
TypeForwardPointer(ResultId, StorageClass)
ConstantTrue(TypeId, ResultId)
ConstantFalse(TypeId, ResultId)
Constant(TypeId, ResultId, Box<[u32]>)
ConstantComposite(TypeId, ResultId, Box<[ValueId]>)
ConstantSampler(TypeId, ResultId, SamplerAddressingMode, bool, SamplerFilterMode)
ConstantNull(TypeId, ResultId)
SpecConstantTrue(TypeId, ResultId)
SpecConstantFalse(TypeId, ResultId)
SpecConstant(TypeId, ResultId, Box<[u32]>)
SpecConstantComposite(TypeId, ResultId, Box<[ValueId]>)
SpecConstantOp(TypeId, ResultId, u32, Box<[ValueId]>)
Function(TypeId, ResultId, FunctionControl, TypeId)
FunctionParameter(TypeId, ResultId)
FunctionEnd
FunctionCall(TypeId, ResultId, ValueId, Box<[ValueId]>)
Variable(TypeId, ResultId, StorageClass, ValueId)
ImageTexelPointer(TypeId, ResultId, ValueId, ValueId, ValueId)
Load(TypeId, ResultId, ValueId, MemoryAccess)
Store(ValueId, ValueId, MemoryAccess)
CopyMemory(ValueId, ValueId, MemoryAccess)
CopyMemorySized(ValueId, ValueId, ValueId, MemoryAccess)
AccessChain(TypeId, ResultId, ValueId, Box<[ValueId]>)
InBoundsAccessChain(TypeId, ResultId, ValueId, Box<[ValueId]>)
PtrAccessChain(TypeId, ResultId, ValueId, ValueId, Box<[ValueId]>)
ArrayLength(TypeId, ResultId, ValueId, u32)
GenericPtrMemSemantics(TypeId, ResultId, ValueId)
InBoundsPtrAccessChain(TypeId, ResultId, ValueId, ValueId, Box<[ValueId]>)
Decorate(Id, Decoration)
MemberDecorate(TypeId, u32, Decoration)
DecorationGroup(ResultId)
GroupDecorate(ValueId, Box<[Id]>)
GroupMemberDecorate(ValueId, Box<[(TypeId, u32)]>)
VectorExtractDynamic(TypeId, ResultId, ValueId, ValueId)
VectorInsertDynamic(TypeId, ResultId, ValueId, ValueId, ValueId)
VectorShuffle(TypeId, ResultId, ValueId, ValueId, Box<[u32]>)
CompositeConstruct(TypeId, ResultId, Box<[ValueId]>)
CompositeExtract(TypeId, ResultId, ValueId, Box<[u32]>)
CompositeInsert(TypeId, ResultId, ValueId, ValueId, Box<[u32]>)
CopyObject(TypeId, ResultId, ValueId)
Transpose(TypeId, ResultId, ValueId)
SampledImage
ImageSampleImplicitLod
ImageSampleExplicitLod
ImageSampleDrefImplicitLod
ImageSampleDrefExplicitLod
ImageSampleProjImplicitLod
ImageSampleProjExplicitLod
ImageSampleProjDrefImplicitLod
ImageSampleProjDrefExplicitLod
ImageFetch
ImageGather
ImageDrefGather
ImageRead
ImageWrite
Image
ImageQueryFormat
ImageQueryOrder
ImageQuerySizeLod
ImageQuerySize
ImageQueryLod
ImageQueryLevels
ImageQuerySamples
ConvertFToU
ConvertFToS
ConvertSToF
ConvertUToF
UConvert
SConvert
FConvert
QuantizeToF16
ConvertPtrToU
SatConvertSToU
SatConvertUToS
ConvertUToPtr
PtrCastToGeneric
GenericCastToPtr
GenericCastToPtrExplicit
Bitcast
SNegate
FNegate
IAdd
FAdd
ISub
FSub
IMul
FMul
UDiv
SDiv
FDiv
UMod
SRem
SMod
FRem
FMod
VectorTimesScalar
MatrixTimesScalar
VectorTimesMatrix
MatrixTimesVector
MatrixTimesMatrix
OuterProduct
Dot
IAddCarry
ISubBorrow
UMulExtended
SMulExtended
Any
All
IsNan
IsInf
IsFinite
IsNormal
SignBitSet
LessOrGreater
Ordered
Unordered
LogicalEqual
LogicalNotEqual
LogicalOr
LogicalAnd
LogicalNot
Select
IEqual
INotEqual
UGreaterThan
SGreaterThan
UGreaterThanEqual
SGreaterThanEqual
ULessThan
SLessThan
ULessThanEqual
SLessThanEqual
FOrdEqual
FUnordEqual
FOrdNotEqual
FUnordNotEqual
FOrdLessThan
FUnordLessThan
FOrdGreaterThan
FUnordGreaterThan
FOrdLessThanEqual
FUnordLessThanEqual
FOrdGreaterThanEqual
FUnordGreaterThanEqual
ShiftRightLogical
ShiftRightArithmetic
ShiftLeftLogical
BitwiseOr
BitwiseXor
BitwiseAnd
Not
BitFieldInsert
BitFieldSExtract
BitFieldUExtract
BitReverse
BitCount
DPdx
DPdy
Fwidth
DPdxFine
DPdyFine
FwidthFine
DPdxCoarse
DPdyCoarse
FwidthCoarse
EmitVertex
EndPrimitive
EmitStreamVertex
EndStreamPrimitive
ControlBarrier
MemoryBarrier
AtomicLoad
AtomicStore
AtomicExchange
AtomicCompareExchange
AtomicCompareExchangeWeak
AtomicIIncrement
AtomicIDecrement
AtomicIAdd
AtomicISub
AtomicSMin
AtomicUMin
AtomicSMax
AtomicUMax
AtomicAnd
AtomicOr
AtomicXor
Phi
LoopMerge
SelectionMerge
Label
Branch
BranchConditional
Switch
Kill
Return
ReturnValue
Unreachable
LifetimeStart
LifetimeStop
GroupAsyncCopy
GroupWaitEvents
GroupAll
GroupAny
GroupBroadcast
GroupIAdd
GroupFAdd
GroupFMin
GroupUMin
GroupSMin
GroupFMax
GroupUMax
GroupSMax
ReadPipe
WritePipe
ReservedReadPipe
ReservedWritePipe
ReserveReadPipePackets
ReserveWritePipePackets
CommitReadPipe
CommitWritePipe
IsValidReserveId
GetNumPipePackets
GetMaxPipePackets
GroupReserveReadPipePackets
GroupReserveWritePipePackets
GroupCommitReadPipe
GroupCommitWritePipe
EnqueueMarker
EnqueueKernel
GetKernelNDrangeSubGroupCount
GetKernelNDrangeMaxSubGroupSize
GetKernelWorkGroupSize
GetKernelPreferredWorkGroupSizeMultiple
RetainEvent
ReleaseEvent
CreateUserEvent
IsValidEvent
SetUserEventStatus
CaptureEventProfilingInfo
GetDefaultQueue
BuildNDRange
ImageSparseSampleImplicitLod
ImageSparseSampleExplicitLod
ImageSparseSampleDrefImplicitLod
ImageSparseSampleDrefExplicitLod
ImageSparseSampleProjImplicitLod
ImageSparseSampleProjExplicitLod
ImageSparseSampleProjDrefImplicitLod
ImageSparseSampleProjDrefExplicitLod
ImageSparseFetch
ImageSparseGather
ImageSparseDrefGather
ImageSparseTexelsResident
NoLine
AtomicFlagTestAndSet
AtomicFlagClear
ImageSparseRead
Unknown(u16, Box<[u32]>)
Trait Implementations
impl Debug for Instruction
[src]
impl Clone for Instruction
[src]
fn clone(&self) -> Instruction
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more