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