group Misc; 0 Nop; 1 Undef result-type result-id; group Debug; 2 SourceContinued src:string; 3 Source src-lang version:num file:value-id? src:string?; 4 SourceExtension extension:string; 5 Name id name:string; 6 MemberName type-id member:num name:string; 7 String result-id string; 8 Line file:value-id line:num col:num; 317 NoLine; group Annotation; 71 Decorate target:id decoration; 72 MemberDecorate target:type-id member:num decoration; 73 DecorationGroup result-id; 74 GroupDecorate grp:value-id targets:[id]; 75 GroupMemberDecorate grp:value-id targets:[type-id num]; group Extension; 10 Extension name:string; 11 ExtInstImport result-id name:string; 12 ExtInst result-type result-id set:value-id instruction:num operands:[id]; group Mode; 14 MemoryModel addressing-model memory-model; 15 EntryPoint execution-model func:value-id name:string interface:[id]; 16 ExecutionMode execution-mode; 17 Capability capability; group Type; 19 TypeVoid result-type; 20 TypeBool result-type; 21 TypeInt result-type width:num signed:bool; 22 TypeFloat result-type width:num; 23 TypeVector result-type type-id len:num; 24 TypeMatrix result-type type-id cols:num; 25 TypeImage result-type type-id dim depth:num arrayed:bool multisampled:bool sampled:num image-format access-qualifier?; 26 TypeSampler result-type; 27 TypeSampledImage result-type image:type-id; 28 TypeArray result-type element:type-id len:value-id; 29 TypeRuntimeArray result-type element:type-id; 30 TypeStruct result-type fields:[type-id]; 31 TypeOpaque result-type name:string; 32 TypePointer result-type storage-class pointee:type-id; 33 TypeFunction result-type return-ty:type-id params:[type-id]; 34 TypeEvent result-type; 35 TypeDeviceEvent result-type; 36 TypeReserveId result-type; 37 TypeQueue result-type; 38 TypePipe result-type; 39 TypeForwardPointer type-id storage-class; group Constant; 41 ConstantTrue result-type result-id; 42 ConstantFalse result-type result-id; 43 Constant result-type result-id val:[num]; 44 ConstantComposite result-type result-id flds:[value-id]; 45 ConstantSampler result-type result-id sampler-addressing-mode normalized:bool sampler-filter-mode; 46 ConstantNull result-type result-id; 48 SpecConstantTrue result-type result-id; 49 SpecConstantFalse result-type result-id; 50 SpecConstant result-type result-id val:[num]; 51 SpecConstantComposite result-type result-id flds:[value-id]; 52 SpecConstantOp result-type result-id num operands:[value-id]; group Memory; 59 Variable result-type result-id storage-class init:value-id?; 60 ImageTexelPointer result-type result-id image:value-id coord:value-id sample:value-id; 61 Load result-type result-id value-id memory-access; 62 Store ptr:value-id obj:value-id memory-access; 63 CopyMemory target:value-id src:value-id memory-access; 64 CopyMemorySized target:value-id src:value-id size:value-id memory-access; 65 AccessChain result-type result-id base:value-id indices:[value-id]; 66 InBoundsAccessChain result-type result-id base:value-id indices:[value-id]; 67 PtrAccessChain result-type result-id base:value-id element:value-id indices:[value-id]; 68 ArrayLength result-type result-id obj:value-id member:num; 69 GenericPtrMemSemantics result-type result-id ptr:value-id; 70 InBoundsPtrAccessChain result-type result-id base:value-id element:value-id indices:[value-id]; group Function; 54 Function result-type result-id function-control fn-ty:type-id; 55 FunctionParameter result-type result-id; 56 FunctionEnd; 57 FunctionCall result-type result-id func:value-id args:[value-id]; group Image; 86 SampledImage result-type result-id image:value-id sampler:value-id; 87 ImageSampleImplicitLod result-type result-id image:value-id coord:value-id image-operands?; 88 ImageSampleExplicitLod result-type result-id image:value-id coord:value-id image-operands; 89 ImageSampleDrefImplicitLod result-type result-id image:value-id coord:value-id d-ref:value-id image-operands?; 90 ImageSampleDrefExplicitLod result-type result-id image:value-id coord:value-id d-ref:value-id image-operands; 91 ImageSampleProjImplicitLod result-type result-id image:value-id coord:value-id image-operands?; 92 ImageSampleProjExplicitLod result-type result-id image:value-id coord:value-id image-operands; 93 ImageSampleProjDrefImplicitLod result-type result-id image:value-id coord:value-id d-ref:value-id image-operands?; 94 ImageSampleProjDrefExplicitLod result-type result-id image:value-id coord:value-id d-ref:value-id image-operands; 95 ImageFetch result-type result-id image:value-id coord:value-id image-operands?; 96 ImageGather result-type result-id image:value-id coord:value-id component:value-id image-operands?; 97 ImageDrefGather result-type result-id image:value-id coord:value-id d-ref:value-id image-operands?; 98 ImageRead result-type result-id image:value-id coord:value-id image-operands?; 99 ImageWrite image:value-id coord:value-id texel:value-id image-operands?; 100 Image result-type result-id image:value-id; 101 ImageQueryFormat result-type result-id image:value-id; 102 ImageQueryOrder result-type result-id image:value-id; 103 ImageQuerySizeLod result-type result-id image:value-id lod:value-id; 104 ImageQuerySize result-type result-id image:value-id; 105 ImageQueryLod result-type result-id image:value-id coord:value-id; 106 ImageQueryLevels result-type result-id image:value-id; 107 ImageQuerySamples result-type result-id image:value-id; 305 ImageSparseSampleImplicitLod result-type result-id image:value-id coord:value-id image-operands?; 306 ImageSparseSampleExplicitLod result-type result-id image:value-id coord:value-id image-operands; 307 ImageSparseSampleDrefImplicitLod result-type result-id image:value-id coord:value-id d-ref:value-id image-operands?; 308 ImageSparseSampleDrefExplicitLod result-type result-id image:value-id coord:value-id d-ref:value-id image-operands; 313 ImageSparseFetch result-type result-id image:value-id coord:value-id image-operands?; 314 ImageSparseGather result-type result-id image:value-id coord:value-id component:value-id image-operands?; 315 ImageSparseDrefGather result-type result-id image:value-id coord:value-id d-ref:value-id image-operands?; 316 ImageSparseTexelsResident result-type result-id resident-code:value-id; 317 ImageSparseRead result-type result-id image:value-id coord:value-id image-operands?; group Conversion; 109 ConvertFToU result-type result-id value-id; 110 ConvertFToS result-type result-id value-id; 111 ConvertSToF result-type result-id value-id; 112 ConvertUToF result-type result-id value-id; 113 UConvert result-type result-id value-id; 114 SConvert result-type result-id value-id; 115 FConvert result-type result-id value-id; 116 QuantizeToF16 result-type result-id value-id; 117 ConvertPtrToU result-type result-id value-id; 118 SatConvertSToU result-type result-id value-id; 119 SatConvertUToS result-type result-id value-id; 120 ConvertUToPtr result-type result-id value-id; 121 PtrCastToGeneric result-type result-id value-id; 122 GenericCastToPtr result-type result-id value-id; 123 GenericCastToPtrExplicit result-type result-id value-id storage-class; 124 Bitcast result-type result-id value-id; group Composite; 77 VectorExtractDynamic result-type result-id vector:value-id index:value-id; 78 VectorInsertDynamic result-type result-id vector:value-id component:value-id index:value-id; 79 VectorShuffle result-type result-id vector-1:value-id vector-2:value-id components:[num]; 80 CompositeConstruct result-type result-id fields:[value-id]; 81 CompositeExtract result-type result-id obj:value-id indices:[num]; 82 CompositeInsert result-type result-id obj:value-id composite:value-id indices:[num]; 83 CopyObject result-type result-id value-id; 84 Transpose result-type result-id value-id; group Arithmetic; 126 SNegate result-type result-id value-id; 127 FNegate result-type result-id value-id; 128 IAdd result-type result-id lhs:value-id rhs:value-id; 129 FAdd result-type result-id lhs:value-id rhs:value-id; 130 ISub result-type result-id lhs:value-id rhs:value-id; 131 FSub result-type result-id lhs:value-id rhs:value-id; 132 IMul result-type result-id lhs:value-id rhs:value-id; 133 FMul result-type result-id lhs:value-id rhs:value-id; 134 UDiv result-type result-id lhs:value-id rhs:value-id; 135 SDiv result-type result-id lhs:value-id rhs:value-id; 136 FDiv result-type result-id lhs:value-id rhs:value-id; 137 UMod result-type result-id lhs:value-id rhs:value-id; 138 SRem result-type result-id lhs:value-id rhs:value-id; 139 SMod result-type result-id lhs:value-id rhs:value-id; 140 FRem result-type result-id lhs:value-id rhs:value-id; 141 FMod result-type result-id lhs:value-id rhs:value-id; 142 VectorTimesScalar result-type result-id vector:value-id scalar:value-id; 143 MatrixTimesScalar result-type result-id matrix:value-id scalar:value-id; 144 VectorTimesMatrix result-type result-id vector:value-id matrix:value-id; 145 MatrixTimesVector result-type result-id matrix:value-id vector:value-id; 146 MatrixTimesMatrix result-type result-id lhs:value-id rhs:value-id; 147 OuterProduct result-type result-id lhs:value-id rhs:value-id; 148 Dot result-type result-id lhs:value-id rhs:value-id; 149 IAddCarry result-type result-id lhs:value-id rhs:value-id; 150 ISubBorrow result-type result-id lhs:value-id rhs:value-id; 151 UMulExtended result-type result-id lhs:value-id rhs:value-id; 152 SMulExtended result-type result-id lhs:value-id rhs:value-id; group Bit; 194 ShiftRightLogical result-type result-id base:value-id shift:value-id; 195 ShiftRightArithmetic result-type result-id base:value-id shift:value-id; 196 ShiftLeftLogical result-type result-id base:value-id shift:value-id; 197 BitwiseOr result-type result-id lhs:value-id rhs:value-id; 198 BitwiseXor result-type result-id lhs:value-id rhs:value-id; 199 BitwiseAnd result-type result-id lhs:value-id rhs:value-id; 200 Not result-type result-id value-id; 201 BitFieldInsert result-type result-id base:value-id insert:value-id offset:value-id count:value-id; 202 BitFieldSExtract result-type result-id base:value-id offset:value-id count:value-id; 203 BitFieldUExtract result-type result-id base:value-id offset:value-id count:value-id; 204 BitReverse result-type result-id base:value-id; 205 BitCount result-type result-id base:value-id; group Relational; 154 Any result-type result-id value-id; 155 All result-type result-id value-id; 156 IsNan result-type result-id value-id; 157 IsInf result-type result-id value-id; 158 IsFinite result-type result-id value-id; 159 IsNormal result-type result-id value-id; 160 SignBitSet result-type result-id value-id; 161 LessOrGreater result-type result-id x:value-id y:value-id; 162 Ordered result-type result-id x:value-id y:value-id; 163 Unordered result-type result-id x:value-id y:value-id; 164 LogicalEqual result-type result-id lhs:value-id rhs:value-id; 165 LogicalNotEqual result-type result-id lhs:value-id rhs:value-id; 166 LogicalOr result-type result-id lhs:value-id rhs:value-id; 167 LogicalAnd result-type result-id lhs:value-id rhs:value-id; 168 LogicalNot result-type result-id value-id; 169 Select result-type result-id condition:value-id obj-1:value-id obj-2:value-id; 170 IEqual result-type result-id lhs:value-id rhs:value-id; 171 INotEqual result-type result-id lhs:value-id rhs:value-id; 172 UGreaterThan result-type result-id lhs:value-id rhs:value-id; 173 SGreaterThan result-type result-id lhs:value-id rhs:value-id; 174 UGreaterThanEqual result-type result-id lhs:value-id rhs:value-id; 175 SGreaterThanEqual result-type result-id lhs:value-id rhs:value-id; 176 ULessThan result-type result-id lhs:value-id rhs:value-id; 177 SLessThan result-type result-id lhs:value-id rhs:value-id; 178 ULessThanEqual result-type result-id lhs:value-id rhs:value-id; 179 SLessThanEqual result-type result-id lhs:value-id rhs:value-id; 180 FOrdEqual result-type result-id lhs:value-id rhs:value-id; 181 FUnordEqual result-type result-id lhs:value-id rhs:value-id; 182 FOrdNotEqual result-type result-id lhs:value-id rhs:value-id; 183 FUnordNotEqual result-type result-id lhs:value-id rhs:value-id; 184 FOrdLessThan result-type result-id lhs:value-id rhs:value-id; 185 FUnordLessThan result-type result-id lhs:value-id rhs:value-id; 186 FOrdGreaterThan result-type result-id lhs:value-id rhs:value-id; 187 FUnordGreaterThan result-type result-id lhs:value-id rhs:value-id; 188 FOrdLessThanEqual result-type result-id lhs:value-id rhs:value-id; 189 FUnordLessThanEqual result-type result-id lhs:value-id rhs:value-id; 190 FOrdGreaterThanEqual result-type result-id lhs:value-id rhs:value-id; 191 FUnordGreaterThanEqual result-type result-id lhs:value-id rhs:value-id; group Derivative; 207 DPdx result-type result-id p:value-id; 208 DPdy result-type result-id p:value-id; 209 Fwidth result-type result-id p:value-id; 210 DPdxFine result-type result-id p:value-id; 211 DPdyFine result-type result-id p:value-id; 212 FwidthFine result-type result-id p:value-id; 213 DPdxCoarse result-type result-id p:value-id; 214 DPdyCoarse result-type result-id p:value-id; 215 FwidthCoarse result-type result-id p:value-id; group ControlFlow; 245 Phi result-type result-id values:[value-id value-id]; 246 LoopMerge merge:value-id cont:value-id loop-control; 247 SelectionMerge merge:value-id selection-control; 248 Label result-id; 249 Branch target:value-id; 250 BranchConditional cond:value-id then:value-id els:value-id true-weight:num? false-weight:num?; 251 Switch selector:value-id default:value-id targets:[num]; 252 Kill; 253 Return; 254 ReturnValue value-id; 255 Unreachable; 256 LifetimeStart ptr:value-id size:num; 257 LifetimeStop ptr:value-id size:num; group Atomic; 227 AtomicLoad result-type result-id ptr:value-id scope:value-id semantics:value-id; 228 AtomicStore ptr:value-id scope:value-id semantics:value-id value-id; 229 AtomicExchange result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 230 AtomicCompareExchange result-type result-id ptr:value-id scope:value-id eq-semantics:value-id not-eq-semantics:value-id value-id comparator:value-id; 231 AtomicCompareExchangeWeak result-type result-id ptr:value-id scope:value-id eq-semantics:value-id not-eq-semantics:value-id value-id comparator:value-id; 232 AtomicIIncrement result-type result-id ptr:value-id scope:value-id semantics:value-id; 233 AtomicIDecrement result-type result-id ptr:value-id scope:value-id semantics:value-id; 234 AtomicIAdd result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 235 AtomicISub result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 236 AtomicSMin result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 237 AtomicUMin result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 238 AtomicSMax result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 239 AtomicUMax result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 240 AtomicAnd result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 241 AtomicOr result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 242 AtomicXor result-type result-id ptr:value-id scope:value-id semantics:value-id value-id; 318 AtomicFlagTestAndSet result-type result-id ptr:value-id scope:value-id semantics:value-id; 319 AtomicFlagClear ptr:value-id scope:value-id semantics:value-id; group Primitive; 218 EmitVertex; 219 EndPrimitive; 220 EmitStreamVertex stream:value-id; 221 EndStreamPrimitive stream:value-id; group Barrier; 224 ControlBarrier execution:value-id memory:value-id semantics:value-id; 225 MemoryBarrier memory:value-id semantics:value-id; group Group; 259 GroupAsyncCopy result-type result-id execution:value-id dest:value-id src:value-id num-elements:value-id stride:value-id event:value-id; 260 GroupWaitEvents execution:value-id num-events:value-id events:value-id; 261 GroupAll result-type result-id execution:value-id predicate:value-id; 262 GroupAny result-type result-id execution:value-id predicate:value-id; 263 GroupBroadcast result-type result-id execution:value-id value:value-id local-id:value-id; 264 GroupIAdd result-type result-id execution:value-id group-operation x:value-id; 265 GroupFAdd result-type result-id execution:value-id group-operation x:value-id; 266 GroupFMin result-type result-id execution:value-id group-operation x:value-id; 267 GroupUMin result-type result-id execution:value-id group-operation x:value-id; 268 GroupSMin result-type result-id execution:value-id group-operation x:value-id; 269 GroupFMax result-type result-id execution:value-id group-operation x:value-id; 270 GroupUMax result-type result-id execution:value-id group-operation x:value-id; 271 GroupSMax result-type result-id execution:value-id group-operation x:value-id; group Enqueue; 291 EnqueueMarker result-type result-id queue:value-id num-events:value-id wait-events:value-id ret-event:value-id; 292 EnqueueKernel result-type result-id queue:value-id flags:value-id range:value-id num-events:value-id wait-event:value-id ret-event:value-id invoke:value-id param:value-id param-size:value-id param-align:value-id local-size:[value-id]; 293 GetKernelNDrangeSubGroupCount result-type result-id range:value-id invoke:value-id param:value-id param-size:value-id param-align:value-id; 294 GetKernelNDrangeMaxSubGroupSize result-type result-id range:value-id invoke:value-id param:value-id param-size:value-id param-align:value-id; 295 GetKernelWorkGroupSize result-type result-id invoke:value-id param:value-id param-size:value-id param-align:value-id; 296 GetKernelPreferredWorkGroupSizeMultiple result-type result-id invoke:value-id param:value-id param-size:value-id param-align:value-id; 297 RetainEvent event:value-id; 298 ReleaseEvent event:value-id; 299 CreateUserEvent result-type result-id; 300 IsValidEvent result-type result-id event:value-id; 301 SetUserEventStatus event:value-id status:value-id; 302 CaptureEventProfilingInfo event:value-id profiling-info:value-id value:value-id; 303 GetDefaultQueue result-type result-id; 304 BuildNDRange result-type result-id global-work-size:value-id local-work-size:value-id global-work-offset:value-id; group Pipe; 274 ReadPipe result-type result-id pipe:value-id ptr:value-id packet-size:value-id packet-alignment:value-id; 275 WritePipe result-type result-id pipe:value-id ptr:value-id packet-size:value-id packet-alignment:value-id; 276 ReservedReadPipe result-type result-id pipe:value-id reserve-id:value-id index:value-id ptr:value-id packet-size:value-id packet-alignment:value-id; 277 ReservedWritePipe result-type result-id pipe:value-id reserve-id:value-id index:value-id ptr:value-id packet-size:value-id packet-alignment:value-id; 278 ReserveReadPipePackets result-type result-id pipe:value-id num-packets:value-id packet-size:value-id packet-alignment:value-id; 279 ReserveWritePipePackets result-type result-id pipe:value-id num-packets:value-id packet-size:value-id packet-alignment:value-id; 280 CommitReadPipe pipe:value-id reserve-id:value-id packet-size:value-id packet-alignment:value-id; 281 CommitWritePipe pipe:value-id reserve-id:value-id packet-size:value-id packet-alignment:value-id; 282 IsValidReserveId result-type result-id reserve-id:value-id; 283 GetNumPipePackets result-type result-id pipe:value-id packet-size:value-id packet-alignment:value-id; 284 GetMaxPipePackets result-type result-id pipe:value-id packet-size:value-id packet-alignment:value-id; 285 GroupReserveReadPipePackets result-type result-id execution:value-id pipe:value-id num-packets:value-id packet-size:value-id packet-alignment:value-id; 286 GroupReserveWritePipePackets result-type result-id execution:value-id pipe:value-id num-packets:value-id packet-size:value-id packet-alignment:value-id; 287 GroupCommitReadPipe execution:value-id pipe:value-id reserve-id:value-id packet-size:value-id packet-alignment:value-id; 288 GroupCommitWritePipe execution:value-id pipe:value-id reserve-id:value-id packet-size:value-id packet-alignment:value-id;