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