blob: 8a3b496da96248fbfade3fc545cdbd6db9129e45 [file] [log] [blame]
John Kessenich7bfaab92018-01-03 16:43:17 -07001-- Copyright (c) 2014-2018 The Khronos Group Inc.
2--
3-- Permission is hereby granted, free of charge, to any person obtaining a copy
4-- of this software and/or associated documentation files (the "Materials"),
5-- to deal in the Materials without restriction, including without limitation
6-- the rights to use, copy, modify, merge, publish, distribute, sublicense,
7-- and/or sell copies of the Materials, and to permit persons to whom the
8-- Materials are furnished to do so, subject to the following conditions:
9--
10-- The above copyright notice and this permission notice shall be included in
11-- all copies or substantial portions of the Materials.
12--
13-- MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
14-- STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
15-- HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/
16--
17-- THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19-- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20-- THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21-- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
22-- FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
23-- IN THE MATERIALS.
24
25-- This header is automatically generated by the same tool that creates
26-- the Binary Section of the SPIR-V specification.
27
28-- Enumeration tokens for SPIR-V, in various styles:
29-- C, C++, C++11, JSON, Lua, Python
30--
31-- - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
32-- - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
33-- - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL
34-- - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
35-- - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
36--
37-- Some tokens act like mask values, which can be OR'd together,
38-- while others are mutually exclusive. The mask-like ones have
39-- "Mask" in their name, and a parallel enum that has the shift
40-- amount (1 << x) for each corresponding enumerant.
41
42spv = {
43 MagicNumber = 0x07230203,
John Kessenich02ffc712018-03-06 20:49:00 -070044 Version = 0x00010300,
45 Revision = 1,
John Kessenich7bfaab92018-01-03 16:43:17 -070046 OpCodeMask = 0xffff,
47 WordCountShift = 16,
48
49 SourceLanguage = {
50 Unknown = 0,
51 ESSL = 1,
52 GLSL = 2,
53 OpenCL_C = 3,
54 OpenCL_CPP = 4,
55 HLSL = 5,
56 },
57
58 ExecutionModel = {
59 Vertex = 0,
60 TessellationControl = 1,
61 TessellationEvaluation = 2,
62 Geometry = 3,
63 Fragment = 4,
64 GLCompute = 5,
65 Kernel = 6,
66 },
67
68 AddressingModel = {
69 Logical = 0,
70 Physical32 = 1,
71 Physical64 = 2,
72 },
73
74 MemoryModel = {
75 Simple = 0,
76 GLSL450 = 1,
77 OpenCL = 2,
78 },
79
80 ExecutionMode = {
81 Invocations = 0,
82 SpacingEqual = 1,
83 SpacingFractionalEven = 2,
84 SpacingFractionalOdd = 3,
85 VertexOrderCw = 4,
86 VertexOrderCcw = 5,
87 PixelCenterInteger = 6,
88 OriginUpperLeft = 7,
89 OriginLowerLeft = 8,
90 EarlyFragmentTests = 9,
91 PointMode = 10,
92 Xfb = 11,
93 DepthReplacing = 12,
94 DepthGreater = 14,
95 DepthLess = 15,
96 DepthUnchanged = 16,
97 LocalSize = 17,
98 LocalSizeHint = 18,
99 InputPoints = 19,
100 InputLines = 20,
101 InputLinesAdjacency = 21,
102 Triangles = 22,
103 InputTrianglesAdjacency = 23,
104 Quads = 24,
105 Isolines = 25,
106 OutputVertices = 26,
107 OutputPoints = 27,
108 OutputLineStrip = 28,
109 OutputTriangleStrip = 29,
110 VecTypeHint = 30,
111 ContractionOff = 31,
112 Initializer = 33,
113 Finalizer = 34,
114 SubgroupSize = 35,
115 SubgroupsPerWorkgroup = 36,
116 SubgroupsPerWorkgroupId = 37,
117 LocalSizeId = 38,
118 LocalSizeHintId = 39,
119 PostDepthCoverage = 4446,
120 StencilRefReplacingEXT = 5027,
121 },
122
123 StorageClass = {
124 UniformConstant = 0,
125 Input = 1,
126 Uniform = 2,
127 Output = 3,
128 Workgroup = 4,
129 CrossWorkgroup = 5,
130 Private = 6,
131 Function = 7,
132 Generic = 8,
133 PushConstant = 9,
134 AtomicCounter = 10,
135 Image = 11,
136 StorageBuffer = 12,
137 },
138
139 Dim = {
140 Dim1D = 0,
141 Dim2D = 1,
142 Dim3D = 2,
143 Cube = 3,
144 Rect = 4,
145 Buffer = 5,
146 SubpassData = 6,
147 },
148
149 SamplerAddressingMode = {
150 None = 0,
151 ClampToEdge = 1,
152 Clamp = 2,
153 Repeat = 3,
154 RepeatMirrored = 4,
155 },
156
157 SamplerFilterMode = {
158 Nearest = 0,
159 Linear = 1,
160 },
161
162 ImageFormat = {
163 Unknown = 0,
164 Rgba32f = 1,
165 Rgba16f = 2,
166 R32f = 3,
167 Rgba8 = 4,
168 Rgba8Snorm = 5,
169 Rg32f = 6,
170 Rg16f = 7,
171 R11fG11fB10f = 8,
172 R16f = 9,
173 Rgba16 = 10,
174 Rgb10A2 = 11,
175 Rg16 = 12,
176 Rg8 = 13,
177 R16 = 14,
178 R8 = 15,
179 Rgba16Snorm = 16,
180 Rg16Snorm = 17,
181 Rg8Snorm = 18,
182 R16Snorm = 19,
183 R8Snorm = 20,
184 Rgba32i = 21,
185 Rgba16i = 22,
186 Rgba8i = 23,
187 R32i = 24,
188 Rg32i = 25,
189 Rg16i = 26,
190 Rg8i = 27,
191 R16i = 28,
192 R8i = 29,
193 Rgba32ui = 30,
194 Rgba16ui = 31,
195 Rgba8ui = 32,
196 R32ui = 33,
197 Rgb10a2ui = 34,
198 Rg32ui = 35,
199 Rg16ui = 36,
200 Rg8ui = 37,
201 R16ui = 38,
202 R8ui = 39,
203 },
204
205 ImageChannelOrder = {
206 R = 0,
207 A = 1,
208 RG = 2,
209 RA = 3,
210 RGB = 4,
211 RGBA = 5,
212 BGRA = 6,
213 ARGB = 7,
214 Intensity = 8,
215 Luminance = 9,
216 Rx = 10,
217 RGx = 11,
218 RGBx = 12,
219 Depth = 13,
220 DepthStencil = 14,
221 sRGB = 15,
222 sRGBx = 16,
223 sRGBA = 17,
224 sBGRA = 18,
225 ABGR = 19,
226 },
227
228 ImageChannelDataType = {
229 SnormInt8 = 0,
230 SnormInt16 = 1,
231 UnormInt8 = 2,
232 UnormInt16 = 3,
233 UnormShort565 = 4,
234 UnormShort555 = 5,
235 UnormInt101010 = 6,
236 SignedInt8 = 7,
237 SignedInt16 = 8,
238 SignedInt32 = 9,
239 UnsignedInt8 = 10,
240 UnsignedInt16 = 11,
241 UnsignedInt32 = 12,
242 HalfFloat = 13,
243 Float = 14,
244 UnormInt24 = 15,
245 UnormInt101010_2 = 16,
246 },
247
248 ImageOperandsShift = {
249 Bias = 0,
250 Lod = 1,
251 Grad = 2,
252 ConstOffset = 3,
253 Offset = 4,
254 ConstOffsets = 5,
255 Sample = 6,
256 MinLod = 7,
257 },
258
259 ImageOperandsMask = {
260 MaskNone = 0,
261 Bias = 0x00000001,
262 Lod = 0x00000002,
263 Grad = 0x00000004,
264 ConstOffset = 0x00000008,
265 Offset = 0x00000010,
266 ConstOffsets = 0x00000020,
267 Sample = 0x00000040,
268 MinLod = 0x00000080,
269 },
270
271 FPFastMathModeShift = {
272 NotNaN = 0,
273 NotInf = 1,
274 NSZ = 2,
275 AllowRecip = 3,
276 Fast = 4,
277 },
278
279 FPFastMathModeMask = {
280 MaskNone = 0,
281 NotNaN = 0x00000001,
282 NotInf = 0x00000002,
283 NSZ = 0x00000004,
284 AllowRecip = 0x00000008,
285 Fast = 0x00000010,
286 },
287
288 FPRoundingMode = {
289 RTE = 0,
290 RTZ = 1,
291 RTP = 2,
292 RTN = 3,
293 },
294
295 LinkageType = {
296 Export = 0,
297 Import = 1,
298 },
299
300 AccessQualifier = {
301 ReadOnly = 0,
302 WriteOnly = 1,
303 ReadWrite = 2,
304 },
305
306 FunctionParameterAttribute = {
307 Zext = 0,
308 Sext = 1,
309 ByVal = 2,
310 Sret = 3,
311 NoAlias = 4,
312 NoCapture = 5,
313 NoWrite = 6,
314 NoReadWrite = 7,
315 },
316
317 Decoration = {
318 RelaxedPrecision = 0,
319 SpecId = 1,
320 Block = 2,
321 BufferBlock = 3,
322 RowMajor = 4,
323 ColMajor = 5,
324 ArrayStride = 6,
325 MatrixStride = 7,
326 GLSLShared = 8,
327 GLSLPacked = 9,
328 CPacked = 10,
329 BuiltIn = 11,
330 NoPerspective = 13,
331 Flat = 14,
332 Patch = 15,
333 Centroid = 16,
334 Sample = 17,
335 Invariant = 18,
336 Restrict = 19,
337 Aliased = 20,
338 Volatile = 21,
339 Constant = 22,
340 Coherent = 23,
341 NonWritable = 24,
342 NonReadable = 25,
343 Uniform = 26,
344 SaturatedConversion = 28,
345 Stream = 29,
346 Location = 30,
347 Component = 31,
348 Index = 32,
349 Binding = 33,
350 DescriptorSet = 34,
351 Offset = 35,
352 XfbBuffer = 36,
353 XfbStride = 37,
354 FuncParamAttr = 38,
355 FPRoundingMode = 39,
356 FPFastMathMode = 40,
357 LinkageAttributes = 41,
358 NoContraction = 42,
359 InputAttachmentIndex = 43,
360 Alignment = 44,
361 MaxByteOffset = 45,
362 AlignmentId = 46,
363 MaxByteOffsetId = 47,
364 ExplicitInterpAMD = 4999,
365 OverrideCoverageNV = 5248,
366 PassthroughNV = 5250,
367 ViewportRelativeNV = 5252,
368 SecondaryViewportRelativeNV = 5256,
John Kessenich12f8de92018-04-05 10:42:47 -0600369 NonUniformEXT = 5300,
Lei Zhangfa2319e2018-03-01 16:24:21 -0500370 HlslCounterBufferGOOGLE = 5634,
371 HlslSemanticGOOGLE = 5635,
John Kessenich7bfaab92018-01-03 16:43:17 -0700372 },
373
374 BuiltIn = {
375 Position = 0,
376 PointSize = 1,
377 ClipDistance = 3,
378 CullDistance = 4,
379 VertexId = 5,
380 InstanceId = 6,
381 PrimitiveId = 7,
382 InvocationId = 8,
383 Layer = 9,
384 ViewportIndex = 10,
385 TessLevelOuter = 11,
386 TessLevelInner = 12,
387 TessCoord = 13,
388 PatchVertices = 14,
389 FragCoord = 15,
390 PointCoord = 16,
391 FrontFacing = 17,
392 SampleId = 18,
393 SamplePosition = 19,
394 SampleMask = 20,
395 FragDepth = 22,
396 HelperInvocation = 23,
397 NumWorkgroups = 24,
398 WorkgroupSize = 25,
399 WorkgroupId = 26,
400 LocalInvocationId = 27,
401 GlobalInvocationId = 28,
402 LocalInvocationIndex = 29,
403 WorkDim = 30,
404 GlobalSize = 31,
405 EnqueuedWorkgroupSize = 32,
406 GlobalOffset = 33,
407 GlobalLinearId = 34,
408 SubgroupSize = 36,
409 SubgroupMaxSize = 37,
410 NumSubgroups = 38,
411 NumEnqueuedSubgroups = 39,
412 SubgroupId = 40,
413 SubgroupLocalInvocationId = 41,
414 VertexIndex = 42,
415 InstanceIndex = 43,
John Kessenich02ffc712018-03-06 20:49:00 -0700416 SubgroupEqMask = 4416,
John Kessenich7bfaab92018-01-03 16:43:17 -0700417 SubgroupEqMaskKHR = 4416,
John Kessenich02ffc712018-03-06 20:49:00 -0700418 SubgroupGeMask = 4417,
John Kessenich7bfaab92018-01-03 16:43:17 -0700419 SubgroupGeMaskKHR = 4417,
John Kessenich02ffc712018-03-06 20:49:00 -0700420 SubgroupGtMask = 4418,
John Kessenich7bfaab92018-01-03 16:43:17 -0700421 SubgroupGtMaskKHR = 4418,
John Kessenich02ffc712018-03-06 20:49:00 -0700422 SubgroupLeMask = 4419,
John Kessenich7bfaab92018-01-03 16:43:17 -0700423 SubgroupLeMaskKHR = 4419,
John Kessenich02ffc712018-03-06 20:49:00 -0700424 SubgroupLtMask = 4420,
John Kessenich7bfaab92018-01-03 16:43:17 -0700425 SubgroupLtMaskKHR = 4420,
426 BaseVertex = 4424,
427 BaseInstance = 4425,
428 DrawIndex = 4426,
429 DeviceIndex = 4438,
430 ViewIndex = 4440,
431 BaryCoordNoPerspAMD = 4992,
432 BaryCoordNoPerspCentroidAMD = 4993,
433 BaryCoordNoPerspSampleAMD = 4994,
434 BaryCoordSmoothAMD = 4995,
435 BaryCoordSmoothCentroidAMD = 4996,
436 BaryCoordSmoothSampleAMD = 4997,
437 BaryCoordPullModelAMD = 4998,
438 FragStencilRefEXT = 5014,
439 ViewportMaskNV = 5253,
440 SecondaryPositionNV = 5257,
441 SecondaryViewportMaskNV = 5258,
442 PositionPerViewNV = 5261,
443 ViewportMaskPerViewNV = 5262,
444 FullyCoveredEXT = 5264,
445 },
446
447 SelectionControlShift = {
448 Flatten = 0,
449 DontFlatten = 1,
450 },
451
452 SelectionControlMask = {
453 MaskNone = 0,
454 Flatten = 0x00000001,
455 DontFlatten = 0x00000002,
456 },
457
458 LoopControlShift = {
459 Unroll = 0,
460 DontUnroll = 1,
461 DependencyInfinite = 2,
462 DependencyLength = 3,
463 },
464
465 LoopControlMask = {
466 MaskNone = 0,
467 Unroll = 0x00000001,
468 DontUnroll = 0x00000002,
469 DependencyInfinite = 0x00000004,
470 DependencyLength = 0x00000008,
471 },
472
473 FunctionControlShift = {
474 Inline = 0,
475 DontInline = 1,
476 Pure = 2,
477 Const = 3,
478 },
479
480 FunctionControlMask = {
481 MaskNone = 0,
482 Inline = 0x00000001,
483 DontInline = 0x00000002,
484 Pure = 0x00000004,
485 Const = 0x00000008,
486 },
487
488 MemorySemanticsShift = {
489 Acquire = 1,
490 Release = 2,
491 AcquireRelease = 3,
492 SequentiallyConsistent = 4,
493 UniformMemory = 6,
494 SubgroupMemory = 7,
495 WorkgroupMemory = 8,
496 CrossWorkgroupMemory = 9,
497 AtomicCounterMemory = 10,
498 ImageMemory = 11,
499 },
500
501 MemorySemanticsMask = {
502 MaskNone = 0,
503 Acquire = 0x00000002,
504 Release = 0x00000004,
505 AcquireRelease = 0x00000008,
506 SequentiallyConsistent = 0x00000010,
507 UniformMemory = 0x00000040,
508 SubgroupMemory = 0x00000080,
509 WorkgroupMemory = 0x00000100,
510 CrossWorkgroupMemory = 0x00000200,
511 AtomicCounterMemory = 0x00000400,
512 ImageMemory = 0x00000800,
513 },
514
515 MemoryAccessShift = {
516 Volatile = 0,
517 Aligned = 1,
518 Nontemporal = 2,
519 },
520
521 MemoryAccessMask = {
522 MaskNone = 0,
523 Volatile = 0x00000001,
524 Aligned = 0x00000002,
525 Nontemporal = 0x00000004,
526 },
527
528 Scope = {
529 CrossDevice = 0,
530 Device = 1,
531 Workgroup = 2,
532 Subgroup = 3,
533 Invocation = 4,
534 },
535
536 GroupOperation = {
537 Reduce = 0,
538 InclusiveScan = 1,
539 ExclusiveScan = 2,
John Kessenich02ffc712018-03-06 20:49:00 -0700540 ClusteredReduce = 3,
John Kessenich567cf2f2018-03-30 11:58:42 -0600541 PartitionedReduceNV = 6,
542 PartitionedInclusiveScanNV = 7,
543 PartitionedExclusiveScanNV = 8,
John Kessenich7bfaab92018-01-03 16:43:17 -0700544 },
545
546 KernelEnqueueFlags = {
547 NoWait = 0,
548 WaitKernel = 1,
549 WaitWorkGroup = 2,
550 },
551
552 KernelProfilingInfoShift = {
553 CmdExecTime = 0,
554 },
555
556 KernelProfilingInfoMask = {
557 MaskNone = 0,
558 CmdExecTime = 0x00000001,
559 },
560
561 Capability = {
562 Matrix = 0,
563 Shader = 1,
564 Geometry = 2,
565 Tessellation = 3,
566 Addresses = 4,
567 Linkage = 5,
568 Kernel = 6,
569 Vector16 = 7,
570 Float16Buffer = 8,
571 Float16 = 9,
572 Float64 = 10,
573 Int64 = 11,
574 Int64Atomics = 12,
575 ImageBasic = 13,
576 ImageReadWrite = 14,
577 ImageMipmap = 15,
578 Pipes = 17,
579 Groups = 18,
580 DeviceEnqueue = 19,
581 LiteralSampler = 20,
582 AtomicStorage = 21,
583 Int16 = 22,
584 TessellationPointSize = 23,
585 GeometryPointSize = 24,
586 ImageGatherExtended = 25,
587 StorageImageMultisample = 27,
588 UniformBufferArrayDynamicIndexing = 28,
589 SampledImageArrayDynamicIndexing = 29,
590 StorageBufferArrayDynamicIndexing = 30,
591 StorageImageArrayDynamicIndexing = 31,
592 ClipDistance = 32,
593 CullDistance = 33,
594 ImageCubeArray = 34,
595 SampleRateShading = 35,
596 ImageRect = 36,
597 SampledRect = 37,
598 GenericPointer = 38,
599 Int8 = 39,
600 InputAttachment = 40,
601 SparseResidency = 41,
602 MinLod = 42,
603 Sampled1D = 43,
604 Image1D = 44,
605 SampledCubeArray = 45,
606 SampledBuffer = 46,
607 ImageBuffer = 47,
608 ImageMSArray = 48,
609 StorageImageExtendedFormats = 49,
610 ImageQuery = 50,
611 DerivativeControl = 51,
612 InterpolationFunction = 52,
613 TransformFeedback = 53,
614 GeometryStreams = 54,
615 StorageImageReadWithoutFormat = 55,
616 StorageImageWriteWithoutFormat = 56,
617 MultiViewport = 57,
618 SubgroupDispatch = 58,
619 NamedBarrier = 59,
620 PipeStorage = 60,
John Kessenich02ffc712018-03-06 20:49:00 -0700621 GroupNonUniform = 61,
622 GroupNonUniformVote = 62,
623 GroupNonUniformArithmetic = 63,
624 GroupNonUniformBallot = 64,
625 GroupNonUniformShuffle = 65,
626 GroupNonUniformShuffleRelative = 66,
627 GroupNonUniformClustered = 67,
628 GroupNonUniformQuad = 68,
John Kessenich7bfaab92018-01-03 16:43:17 -0700629 SubgroupBallotKHR = 4423,
630 DrawParameters = 4427,
631 SubgroupVoteKHR = 4431,
632 StorageBuffer16BitAccess = 4433,
633 StorageUniformBufferBlock16 = 4433,
634 StorageUniform16 = 4434,
635 UniformAndStorageBuffer16BitAccess = 4434,
636 StoragePushConstant16 = 4435,
637 StorageInputOutput16 = 4436,
638 DeviceGroup = 4437,
639 MultiView = 4439,
640 VariablePointersStorageBuffer = 4441,
641 VariablePointers = 4442,
642 AtomicStorageOps = 4445,
643 SampleMaskPostDepthCoverage = 4447,
John Kessenichc8bc6cf2018-03-02 09:35:52 -0700644 Float16ImageAMD = 5008,
John Kessenich7bfaab92018-01-03 16:43:17 -0700645 ImageGatherBiasLodAMD = 5009,
646 FragmentMaskAMD = 5010,
647 StencilExportEXT = 5013,
648 ImageReadWriteLodAMD = 5015,
649 SampleMaskOverrideCoverageNV = 5249,
650 GeometryShaderPassthroughNV = 5251,
651 ShaderViewportIndexLayerEXT = 5254,
652 ShaderViewportIndexLayerNV = 5254,
653 ShaderViewportMaskNV = 5255,
654 ShaderStereoViewNV = 5259,
655 PerViewAttributesNV = 5260,
656 FragmentFullyCoveredEXT = 5265,
John Kessenich567cf2f2018-03-30 11:58:42 -0600657 GroupNonUniformPartitionedNV = 5297,
John Kessenich12f8de92018-04-05 10:42:47 -0600658 ShaderNonUniformEXT = 5301,
659 RuntimeDescriptorArrayEXT = 5302,
660 InputAttachmentArrayDynamicIndexingEXT = 5303,
661 UniformTexelBufferArrayDynamicIndexingEXT = 5304,
662 StorageTexelBufferArrayDynamicIndexingEXT = 5305,
663 UniformBufferArrayNonUniformIndexingEXT = 5306,
664 SampledImageArrayNonUniformIndexingEXT = 5307,
665 StorageBufferArrayNonUniformIndexingEXT = 5308,
666 StorageImageArrayNonUniformIndexingEXT = 5309,
667 InputAttachmentArrayNonUniformIndexingEXT = 5310,
668 UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
669 StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
John Kessenich7bfaab92018-01-03 16:43:17 -0700670 SubgroupShuffleINTEL = 5568,
671 SubgroupBufferBlockIOINTEL = 5569,
672 SubgroupImageBlockIOINTEL = 5570,
673 },
674
675 Op = {
676 OpNop = 0,
677 OpUndef = 1,
678 OpSourceContinued = 2,
679 OpSource = 3,
680 OpSourceExtension = 4,
681 OpName = 5,
682 OpMemberName = 6,
683 OpString = 7,
684 OpLine = 8,
685 OpExtension = 10,
686 OpExtInstImport = 11,
687 OpExtInst = 12,
688 OpMemoryModel = 14,
689 OpEntryPoint = 15,
690 OpExecutionMode = 16,
691 OpCapability = 17,
692 OpTypeVoid = 19,
693 OpTypeBool = 20,
694 OpTypeInt = 21,
695 OpTypeFloat = 22,
696 OpTypeVector = 23,
697 OpTypeMatrix = 24,
698 OpTypeImage = 25,
699 OpTypeSampler = 26,
700 OpTypeSampledImage = 27,
701 OpTypeArray = 28,
702 OpTypeRuntimeArray = 29,
703 OpTypeStruct = 30,
704 OpTypeOpaque = 31,
705 OpTypePointer = 32,
706 OpTypeFunction = 33,
707 OpTypeEvent = 34,
708 OpTypeDeviceEvent = 35,
709 OpTypeReserveId = 36,
710 OpTypeQueue = 37,
711 OpTypePipe = 38,
712 OpTypeForwardPointer = 39,
713 OpConstantTrue = 41,
714 OpConstantFalse = 42,
715 OpConstant = 43,
716 OpConstantComposite = 44,
717 OpConstantSampler = 45,
718 OpConstantNull = 46,
719 OpSpecConstantTrue = 48,
720 OpSpecConstantFalse = 49,
721 OpSpecConstant = 50,
722 OpSpecConstantComposite = 51,
723 OpSpecConstantOp = 52,
724 OpFunction = 54,
725 OpFunctionParameter = 55,
726 OpFunctionEnd = 56,
727 OpFunctionCall = 57,
728 OpVariable = 59,
729 OpImageTexelPointer = 60,
730 OpLoad = 61,
731 OpStore = 62,
732 OpCopyMemory = 63,
733 OpCopyMemorySized = 64,
734 OpAccessChain = 65,
735 OpInBoundsAccessChain = 66,
736 OpPtrAccessChain = 67,
737 OpArrayLength = 68,
738 OpGenericPtrMemSemantics = 69,
739 OpInBoundsPtrAccessChain = 70,
740 OpDecorate = 71,
741 OpMemberDecorate = 72,
742 OpDecorationGroup = 73,
743 OpGroupDecorate = 74,
744 OpGroupMemberDecorate = 75,
745 OpVectorExtractDynamic = 77,
746 OpVectorInsertDynamic = 78,
747 OpVectorShuffle = 79,
748 OpCompositeConstruct = 80,
749 OpCompositeExtract = 81,
750 OpCompositeInsert = 82,
751 OpCopyObject = 83,
752 OpTranspose = 84,
753 OpSampledImage = 86,
754 OpImageSampleImplicitLod = 87,
755 OpImageSampleExplicitLod = 88,
756 OpImageSampleDrefImplicitLod = 89,
757 OpImageSampleDrefExplicitLod = 90,
758 OpImageSampleProjImplicitLod = 91,
759 OpImageSampleProjExplicitLod = 92,
760 OpImageSampleProjDrefImplicitLod = 93,
761 OpImageSampleProjDrefExplicitLod = 94,
762 OpImageFetch = 95,
763 OpImageGather = 96,
764 OpImageDrefGather = 97,
765 OpImageRead = 98,
766 OpImageWrite = 99,
767 OpImage = 100,
768 OpImageQueryFormat = 101,
769 OpImageQueryOrder = 102,
770 OpImageQuerySizeLod = 103,
771 OpImageQuerySize = 104,
772 OpImageQueryLod = 105,
773 OpImageQueryLevels = 106,
774 OpImageQuerySamples = 107,
775 OpConvertFToU = 109,
776 OpConvertFToS = 110,
777 OpConvertSToF = 111,
778 OpConvertUToF = 112,
779 OpUConvert = 113,
780 OpSConvert = 114,
781 OpFConvert = 115,
782 OpQuantizeToF16 = 116,
783 OpConvertPtrToU = 117,
784 OpSatConvertSToU = 118,
785 OpSatConvertUToS = 119,
786 OpConvertUToPtr = 120,
787 OpPtrCastToGeneric = 121,
788 OpGenericCastToPtr = 122,
789 OpGenericCastToPtrExplicit = 123,
790 OpBitcast = 124,
791 OpSNegate = 126,
792 OpFNegate = 127,
793 OpIAdd = 128,
794 OpFAdd = 129,
795 OpISub = 130,
796 OpFSub = 131,
797 OpIMul = 132,
798 OpFMul = 133,
799 OpUDiv = 134,
800 OpSDiv = 135,
801 OpFDiv = 136,
802 OpUMod = 137,
803 OpSRem = 138,
804 OpSMod = 139,
805 OpFRem = 140,
806 OpFMod = 141,
807 OpVectorTimesScalar = 142,
808 OpMatrixTimesScalar = 143,
809 OpVectorTimesMatrix = 144,
810 OpMatrixTimesVector = 145,
811 OpMatrixTimesMatrix = 146,
812 OpOuterProduct = 147,
813 OpDot = 148,
814 OpIAddCarry = 149,
815 OpISubBorrow = 150,
816 OpUMulExtended = 151,
817 OpSMulExtended = 152,
818 OpAny = 154,
819 OpAll = 155,
820 OpIsNan = 156,
821 OpIsInf = 157,
822 OpIsFinite = 158,
823 OpIsNormal = 159,
824 OpSignBitSet = 160,
825 OpLessOrGreater = 161,
826 OpOrdered = 162,
827 OpUnordered = 163,
828 OpLogicalEqual = 164,
829 OpLogicalNotEqual = 165,
830 OpLogicalOr = 166,
831 OpLogicalAnd = 167,
832 OpLogicalNot = 168,
833 OpSelect = 169,
834 OpIEqual = 170,
835 OpINotEqual = 171,
836 OpUGreaterThan = 172,
837 OpSGreaterThan = 173,
838 OpUGreaterThanEqual = 174,
839 OpSGreaterThanEqual = 175,
840 OpULessThan = 176,
841 OpSLessThan = 177,
842 OpULessThanEqual = 178,
843 OpSLessThanEqual = 179,
844 OpFOrdEqual = 180,
845 OpFUnordEqual = 181,
846 OpFOrdNotEqual = 182,
847 OpFUnordNotEqual = 183,
848 OpFOrdLessThan = 184,
849 OpFUnordLessThan = 185,
850 OpFOrdGreaterThan = 186,
851 OpFUnordGreaterThan = 187,
852 OpFOrdLessThanEqual = 188,
853 OpFUnordLessThanEqual = 189,
854 OpFOrdGreaterThanEqual = 190,
855 OpFUnordGreaterThanEqual = 191,
856 OpShiftRightLogical = 194,
857 OpShiftRightArithmetic = 195,
858 OpShiftLeftLogical = 196,
859 OpBitwiseOr = 197,
860 OpBitwiseXor = 198,
861 OpBitwiseAnd = 199,
862 OpNot = 200,
863 OpBitFieldInsert = 201,
864 OpBitFieldSExtract = 202,
865 OpBitFieldUExtract = 203,
866 OpBitReverse = 204,
867 OpBitCount = 205,
868 OpDPdx = 207,
869 OpDPdy = 208,
870 OpFwidth = 209,
871 OpDPdxFine = 210,
872 OpDPdyFine = 211,
873 OpFwidthFine = 212,
874 OpDPdxCoarse = 213,
875 OpDPdyCoarse = 214,
876 OpFwidthCoarse = 215,
877 OpEmitVertex = 218,
878 OpEndPrimitive = 219,
879 OpEmitStreamVertex = 220,
880 OpEndStreamPrimitive = 221,
881 OpControlBarrier = 224,
882 OpMemoryBarrier = 225,
883 OpAtomicLoad = 227,
884 OpAtomicStore = 228,
885 OpAtomicExchange = 229,
886 OpAtomicCompareExchange = 230,
887 OpAtomicCompareExchangeWeak = 231,
888 OpAtomicIIncrement = 232,
889 OpAtomicIDecrement = 233,
890 OpAtomicIAdd = 234,
891 OpAtomicISub = 235,
892 OpAtomicSMin = 236,
893 OpAtomicUMin = 237,
894 OpAtomicSMax = 238,
895 OpAtomicUMax = 239,
896 OpAtomicAnd = 240,
897 OpAtomicOr = 241,
898 OpAtomicXor = 242,
899 OpPhi = 245,
900 OpLoopMerge = 246,
901 OpSelectionMerge = 247,
902 OpLabel = 248,
903 OpBranch = 249,
904 OpBranchConditional = 250,
905 OpSwitch = 251,
906 OpKill = 252,
907 OpReturn = 253,
908 OpReturnValue = 254,
909 OpUnreachable = 255,
910 OpLifetimeStart = 256,
911 OpLifetimeStop = 257,
912 OpGroupAsyncCopy = 259,
913 OpGroupWaitEvents = 260,
914 OpGroupAll = 261,
915 OpGroupAny = 262,
916 OpGroupBroadcast = 263,
917 OpGroupIAdd = 264,
918 OpGroupFAdd = 265,
919 OpGroupFMin = 266,
920 OpGroupUMin = 267,
921 OpGroupSMin = 268,
922 OpGroupFMax = 269,
923 OpGroupUMax = 270,
924 OpGroupSMax = 271,
925 OpReadPipe = 274,
926 OpWritePipe = 275,
927 OpReservedReadPipe = 276,
928 OpReservedWritePipe = 277,
929 OpReserveReadPipePackets = 278,
930 OpReserveWritePipePackets = 279,
931 OpCommitReadPipe = 280,
932 OpCommitWritePipe = 281,
933 OpIsValidReserveId = 282,
934 OpGetNumPipePackets = 283,
935 OpGetMaxPipePackets = 284,
936 OpGroupReserveReadPipePackets = 285,
937 OpGroupReserveWritePipePackets = 286,
938 OpGroupCommitReadPipe = 287,
939 OpGroupCommitWritePipe = 288,
940 OpEnqueueMarker = 291,
941 OpEnqueueKernel = 292,
942 OpGetKernelNDrangeSubGroupCount = 293,
943 OpGetKernelNDrangeMaxSubGroupSize = 294,
944 OpGetKernelWorkGroupSize = 295,
945 OpGetKernelPreferredWorkGroupSizeMultiple = 296,
946 OpRetainEvent = 297,
947 OpReleaseEvent = 298,
948 OpCreateUserEvent = 299,
949 OpIsValidEvent = 300,
950 OpSetUserEventStatus = 301,
951 OpCaptureEventProfilingInfo = 302,
952 OpGetDefaultQueue = 303,
953 OpBuildNDRange = 304,
954 OpImageSparseSampleImplicitLod = 305,
955 OpImageSparseSampleExplicitLod = 306,
956 OpImageSparseSampleDrefImplicitLod = 307,
957 OpImageSparseSampleDrefExplicitLod = 308,
958 OpImageSparseSampleProjImplicitLod = 309,
959 OpImageSparseSampleProjExplicitLod = 310,
960 OpImageSparseSampleProjDrefImplicitLod = 311,
961 OpImageSparseSampleProjDrefExplicitLod = 312,
962 OpImageSparseFetch = 313,
963 OpImageSparseGather = 314,
964 OpImageSparseDrefGather = 315,
965 OpImageSparseTexelsResident = 316,
966 OpNoLine = 317,
967 OpAtomicFlagTestAndSet = 318,
968 OpAtomicFlagClear = 319,
969 OpImageSparseRead = 320,
970 OpSizeOf = 321,
971 OpTypePipeStorage = 322,
972 OpConstantPipeStorage = 323,
973 OpCreatePipeFromPipeStorage = 324,
974 OpGetKernelLocalSizeForSubgroupCount = 325,
975 OpGetKernelMaxNumSubgroups = 326,
976 OpTypeNamedBarrier = 327,
977 OpNamedBarrierInitialize = 328,
978 OpMemoryNamedBarrier = 329,
979 OpModuleProcessed = 330,
980 OpExecutionModeId = 331,
981 OpDecorateId = 332,
John Kessenich02ffc712018-03-06 20:49:00 -0700982 OpGroupNonUniformElect = 333,
983 OpGroupNonUniformAll = 334,
984 OpGroupNonUniformAny = 335,
985 OpGroupNonUniformAllEqual = 336,
986 OpGroupNonUniformBroadcast = 337,
987 OpGroupNonUniformBroadcastFirst = 338,
988 OpGroupNonUniformBallot = 339,
989 OpGroupNonUniformInverseBallot = 340,
990 OpGroupNonUniformBallotBitExtract = 341,
991 OpGroupNonUniformBallotBitCount = 342,
992 OpGroupNonUniformBallotFindLSB = 343,
993 OpGroupNonUniformBallotFindMSB = 344,
994 OpGroupNonUniformShuffle = 345,
995 OpGroupNonUniformShuffleXor = 346,
996 OpGroupNonUniformShuffleUp = 347,
997 OpGroupNonUniformShuffleDown = 348,
998 OpGroupNonUniformIAdd = 349,
999 OpGroupNonUniformFAdd = 350,
1000 OpGroupNonUniformIMul = 351,
1001 OpGroupNonUniformFMul = 352,
1002 OpGroupNonUniformSMin = 353,
1003 OpGroupNonUniformUMin = 354,
1004 OpGroupNonUniformFMin = 355,
1005 OpGroupNonUniformSMax = 356,
1006 OpGroupNonUniformUMax = 357,
1007 OpGroupNonUniformFMax = 358,
1008 OpGroupNonUniformBitwiseAnd = 359,
1009 OpGroupNonUniformBitwiseOr = 360,
1010 OpGroupNonUniformBitwiseXor = 361,
1011 OpGroupNonUniformLogicalAnd = 362,
1012 OpGroupNonUniformLogicalOr = 363,
1013 OpGroupNonUniformLogicalXor = 364,
1014 OpGroupNonUniformQuadBroadcast = 365,
1015 OpGroupNonUniformQuadSwap = 366,
John Kessenich7bfaab92018-01-03 16:43:17 -07001016 OpSubgroupBallotKHR = 4421,
1017 OpSubgroupFirstInvocationKHR = 4422,
1018 OpSubgroupAllKHR = 4428,
1019 OpSubgroupAnyKHR = 4429,
1020 OpSubgroupAllEqualKHR = 4430,
1021 OpSubgroupReadInvocationKHR = 4432,
1022 OpGroupIAddNonUniformAMD = 5000,
1023 OpGroupFAddNonUniformAMD = 5001,
1024 OpGroupFMinNonUniformAMD = 5002,
1025 OpGroupUMinNonUniformAMD = 5003,
1026 OpGroupSMinNonUniformAMD = 5004,
1027 OpGroupFMaxNonUniformAMD = 5005,
1028 OpGroupUMaxNonUniformAMD = 5006,
1029 OpGroupSMaxNonUniformAMD = 5007,
1030 OpFragmentMaskFetchAMD = 5011,
1031 OpFragmentFetchAMD = 5012,
John Kessenich567cf2f2018-03-30 11:58:42 -06001032 OpGroupNonUniformPartitionNV = 5296,
John Kessenich7bfaab92018-01-03 16:43:17 -07001033 OpSubgroupShuffleINTEL = 5571,
1034 OpSubgroupShuffleDownINTEL = 5572,
1035 OpSubgroupShuffleUpINTEL = 5573,
1036 OpSubgroupShuffleXorINTEL = 5574,
1037 OpSubgroupBlockReadINTEL = 5575,
1038 OpSubgroupBlockWriteINTEL = 5576,
1039 OpSubgroupImageBlockReadINTEL = 5577,
1040 OpSubgroupImageBlockWriteINTEL = 5578,
Lei Zhangfa2319e2018-03-01 16:24:21 -05001041 OpDecorateStringGOOGLE = 5632,
1042 OpMemberDecorateStringGOOGLE = 5633,
John Kessenich7bfaab92018-01-03 16:43:17 -07001043 },
1044
1045}
1046