xref: /aosp_15_r20/external/angle/third_party/spirv-headers/src/include/spirv/unified1/spirv.core.grammar.json (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1{
2  "copyright" : [
3    "Copyright (c) 2014-2024 The Khronos Group Inc.",
4    "",
5    "Permission is hereby granted, free of charge, to any person obtaining a copy",
6    "of this software and/or associated documentation files (the \"Materials\"),",
7    "to deal in the Materials without restriction, including without limitation",
8    "the rights to use, copy, modify, merge, publish, distribute, sublicense,",
9    "and/or sell copies of the Materials, and to permit persons to whom the",
10    "Materials are furnished to do so, subject to the following conditions:",
11    "",
12    "The above copyright notice and this permission notice shall be included in",
13    "all copies or substantial portions of the Materials.",
14    "",
15    "MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS",
16    "STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND",
17    "HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ ",
18    "",
19    "THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS",
20    "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
21    "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL",
22    "THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
23    "LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING",
24    "FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS",
25    "IN THE MATERIALS."
26  ],
27  "magic_number" : "0x07230203",
28  "major_version" : 1,
29  "minor_version" : 6,
30  "revision" : 4,
31  "instruction_printing_class" : [
32    {
33      "tag"     : "@exclude"
34    },
35    {
36      "tag"     : "Miscellaneous",
37      "heading" : "Miscellaneous Instructions"
38    },
39    {
40      "tag"     : "Debug",
41      "heading" : "Debug Instructions"
42    },
43    {
44      "tag"     : "Annotation",
45      "heading" : "Annotation Instructions"
46    },
47    {
48      "tag"     : "Extension",
49      "heading" : "Extension Instructions"
50    },
51    {
52      "tag"     : "Mode-Setting",
53      "heading" : "Mode-Setting Instructions"
54    },
55    {
56      "tag"     : "Type-Declaration",
57      "heading" : "Type-Declaration Instructions"
58    },
59    {
60      "tag"     : "Constant-Creation",
61      "heading" : "Constant-Creation Instructions"
62    },
63    {
64      "tag"     : "Memory",
65      "heading" : "Memory Instructions"
66    },
67    {
68      "tag"     : "Function",
69      "heading" : "Function Instructions"
70    },
71    {
72      "tag"     : "Image",
73      "heading" : "Image Instructions"
74    },
75    {
76      "tag"     : "Conversion",
77      "heading" : "Conversion Instructions"
78    },
79    {
80      "tag"     : "Composite",
81      "heading" : "Composite Instructions"
82    },
83    {
84      "tag"     : "Arithmetic",
85      "heading" : "Arithmetic Instructions"
86    },
87    {
88      "tag"     : "Bit",
89      "heading" : "Bit Instructions"
90    },
91    {
92      "tag"     : "Relational_and_Logical",
93      "heading" : "Relational and Logical Instructions"
94    },
95    {
96      "tag"     : "Derivative",
97      "heading" : "Derivative Instructions"
98    },
99    {
100      "tag"     : "Control-Flow",
101      "heading" : "Control-Flow Instructions"
102    },
103    {
104      "tag"     : "Atomic",
105      "heading" : "Atomic Instructions"
106    },
107    {
108      "tag"     : "Primitive",
109      "heading" : "Primitive Instructions"
110    },
111    {
112      "tag"     : "Barrier",
113      "heading" : "Barrier Instructions"
114    },
115    {
116      "tag"     : "Group",
117      "heading" : "Group and Subgroup Instructions"
118    },
119    {
120      "tag"     : "Device-Side_Enqueue",
121      "heading" : "Device-Side Enqueue Instructions"
122    },
123    {
124      "tag"     : "Pipe",
125      "heading" : "Pipe Instructions"
126    },
127    {
128      "tag"     : "Non-Uniform",
129      "heading" : "Non-Uniform Instructions"
130    },
131    {
132      "tag"     : "Reserved",
133      "heading" : "Reserved Instructions"
134    }
135  ],
136  "instructions" : [
137    {
138      "opname" : "OpNop",
139      "class"  : "Miscellaneous",
140      "opcode" : 0,
141      "version" : "1.0"
142    },
143    {
144      "opname" : "OpUndef",
145      "class"  : "Miscellaneous",
146      "opcode" : 1,
147      "operands" : [
148        { "kind" : "IdResultType" },
149        { "kind" : "IdResult" }
150      ],
151      "version" : "1.0"
152    },
153    {
154      "opname" : "OpSourceContinued",
155      "class"  : "Debug",
156      "opcode" : 2,
157      "operands" : [
158        { "kind" : "LiteralString", "name" : "'Continued Source'" }
159      ],
160      "version": "1.0"
161    },
162    {
163      "opname" : "OpSource",
164      "class"  : "Debug",
165      "opcode" : 3,
166      "operands" : [
167        { "kind" : "SourceLanguage" },
168        { "kind" : "LiteralInteger",                     "name" : "'Version'" },
169        { "kind" : "IdRef",          "quantifier" : "?", "name" : "'File'" },
170        { "kind" : "LiteralString",  "quantifier" : "?", "name" : "'Source'" }
171      ],
172      "version": "1.0"
173    },
174    {
175      "opname" : "OpSourceExtension",
176      "class"  : "Debug",
177      "opcode" : 4,
178      "operands" : [
179        { "kind" : "LiteralString", "name" : "'Extension'" }
180      ],
181      "version": "1.0"
182    },
183    {
184      "opname" : "OpName",
185      "class"  : "Debug",
186      "opcode" : 5,
187      "operands" : [
188        { "kind" : "IdRef",         "name" : "'Target'" },
189        { "kind" : "LiteralString", "name" : "'Name'" }
190      ],
191      "version": "1.0"
192    },
193    {
194      "opname" : "OpMemberName",
195      "class"  : "Debug",
196      "opcode" : 6,
197      "operands" : [
198        { "kind" : "IdRef",          "name" : "'Type'" },
199        { "kind" : "LiteralInteger", "name" : "'Member'" },
200        { "kind" : "LiteralString",  "name" : "'Name'" }
201      ],
202      "version": "1.0"
203    },
204    {
205      "opname" : "OpString",
206      "class"  : "Debug",
207      "opcode" : 7,
208      "operands" : [
209        { "kind" : "IdResult" },
210        { "kind" : "LiteralString", "name" : "'String'" }
211      ],
212      "version": "1.0"
213    },
214    {
215      "opname" : "OpLine",
216      "class"  : "Debug",
217      "opcode" : 8,
218      "operands" : [
219        { "kind" : "IdRef",          "name" : "'File'" },
220        { "kind" : "LiteralInteger", "name" : "'Line'" },
221        { "kind" : "LiteralInteger", "name" : "'Column'" }
222      ],
223      "version": "1.0"
224    },
225    {
226      "opname" : "OpExtension",
227      "class"  : "Extension",
228      "opcode" : 10,
229      "operands" : [
230        { "kind" : "LiteralString", "name" : "'Name'" }
231      ],
232      "version": "1.0"
233    },
234    {
235      "opname" : "OpExtInstImport",
236      "class"  : "Extension",
237      "opcode" : 11,
238      "operands" : [
239        { "kind" : "IdResult" },
240        { "kind" : "LiteralString", "name" : "'Name'" }
241      ],
242      "version": "1.0"
243    },
244    {
245      "opname" : "OpExtInst",
246      "class"  : "Extension",
247      "opcode" : 12,
248      "operands" : [
249        { "kind" : "IdResultType" },
250        { "kind" : "IdResult" },
251        { "kind" : "IdRef",                                     "name" : "'Set'" },
252        { "kind" : "LiteralExtInstInteger",                     "name" : "'Instruction'" },
253        { "kind" : "IdRef",                 "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." }
254      ],
255      "version": "1.0"
256    },
257    {
258      "opname" : "OpMemoryModel",
259      "class"  : "Mode-Setting",
260      "opcode" : 14,
261      "operands" : [
262        { "kind" : "AddressingModel" },
263        { "kind" : "MemoryModel" }
264      ],
265      "version": "1.0"
266    },
267    {
268      "opname" : "OpEntryPoint",
269      "class"  : "Mode-Setting",
270      "opcode" : 15,
271      "operands" : [
272        { "kind" : "ExecutionModel" },
273        { "kind" : "IdRef",                              "name" : "'Entry Point'" },
274        { "kind" : "LiteralString",                      "name" : "'Name'" },
275        { "kind" : "IdRef",          "quantifier" : "*", "name" : "'Interface'" }
276      ],
277      "version": "1.0"
278    },
279    {
280      "opname" : "OpExecutionMode",
281      "class"  : "Mode-Setting",
282      "opcode" : 16,
283      "operands" : [
284        { "kind" : "IdRef",         "name" : "'Entry Point'" },
285        { "kind" : "ExecutionMode", "name" : "'Mode'" }
286      ],
287      "version": "1.0"
288    },
289    {
290      "opname" : "OpCapability",
291      "class"  : "Mode-Setting",
292      "opcode" : 17,
293      "operands" : [
294        { "kind" : "Capability", "name" : "'Capability'" }
295      ],
296      "version": "1.0"
297    },
298    {
299      "opname" : "OpTypeVoid",
300      "class"  : "Type-Declaration",
301      "opcode" : 19,
302      "operands" : [
303        { "kind" : "IdResult" }
304      ],
305      "version": "1.0"
306    },
307    {
308      "opname" : "OpTypeBool",
309      "class"  : "Type-Declaration",
310      "opcode" : 20,
311      "operands" : [
312        { "kind" : "IdResult" }
313      ],
314      "version": "1.0"
315    },
316    {
317      "opname" : "OpTypeInt",
318      "class"  : "Type-Declaration",
319      "opcode" : 21,
320      "operands" : [
321        { "kind" : "IdResult" },
322        { "kind" : "LiteralInteger", "name" : "'Width'" },
323        { "kind" : "LiteralInteger", "name" : "'Signedness'" }
324      ],
325      "version": "1.0"
326    },
327    {
328      "opname" : "OpTypeFloat",
329      "class"  : "Type-Declaration",
330      "opcode" : 22,
331      "operands" : [
332        { "kind" : "IdResult" },
333        { "kind" : "LiteralInteger", "name" : "'Width'" },
334        { "kind" : "FPEncoding", "quantifier" : "?", "name" : "'Floating Point Encoding'" }
335      ],
336      "version": "1.0"
337    },
338    {
339      "opname" : "OpTypeVector",
340      "class"  : "Type-Declaration",
341      "opcode" : 23,
342      "operands" : [
343        { "kind" : "IdResult" },
344        { "kind" : "IdRef",          "name" : "'Component Type'" },
345        { "kind" : "LiteralInteger", "name" : "'Component Count'" }
346      ],
347      "version": "1.0"
348    },
349    {
350      "opname" : "OpTypeMatrix",
351      "class"  : "Type-Declaration",
352      "opcode" : 24,
353      "operands" : [
354        { "kind" : "IdResult" },
355        { "kind" : "IdRef",          "name" : "'Column Type'" },
356        { "kind" : "LiteralInteger", "name" : "'Column Count'" }
357      ],
358      "capabilities" : [ "Matrix" ],
359      "version": "1.0"
360    },
361    {
362      "opname" : "OpTypeImage",
363      "class"  : "Type-Declaration",
364      "opcode" : 25,
365      "operands" : [
366        { "kind" : "IdResult" },
367        { "kind" : "IdRef",                               "name" : "'Sampled Type'" },
368        { "kind" : "Dim" },
369        { "kind" : "LiteralInteger",                      "name" : "'Depth'" },
370        { "kind" : "LiteralInteger",                      "name" : "'Arrayed'" },
371        { "kind" : "LiteralInteger",                      "name" : "'MS'" },
372        { "kind" : "LiteralInteger",                      "name" : "'Sampled'" },
373        { "kind" : "ImageFormat" },
374        { "kind" : "AccessQualifier", "quantifier" : "?" }
375      ],
376      "version": "1.0"
377    },
378    {
379      "opname" : "OpTypeSampler",
380      "class"  : "Type-Declaration",
381      "opcode" : 26,
382      "operands" : [
383        { "kind" : "IdResult" }
384      ],
385      "version": "1.0"
386    },
387    {
388      "opname" : "OpTypeSampledImage",
389      "class"  : "Type-Declaration",
390      "opcode" : 27,
391      "operands" : [
392        { "kind" : "IdResult" },
393        { "kind" : "IdRef",    "name" : "'Image Type'" }
394      ],
395      "version": "1.0"
396    },
397    {
398      "opname" : "OpTypeArray",
399      "class"  : "Type-Declaration",
400      "opcode" : 28,
401      "operands" : [
402        { "kind" : "IdResult" },
403        { "kind" : "IdRef",    "name" : "'Element Type'" },
404        { "kind" : "IdRef",    "name" : "'Length'" }
405      ],
406      "version": "1.0"
407    },
408    {
409      "opname" : "OpTypeRuntimeArray",
410      "class"  : "Type-Declaration",
411      "opcode" : 29,
412      "operands" : [
413        { "kind" : "IdResult" },
414        { "kind" : "IdRef",    "name" : "'Element Type'" }
415      ],
416      "capabilities" : [ "Shader" ],
417      "version": "1.0"
418    },
419    {
420      "opname" : "OpTypeStruct",
421      "class"  : "Type-Declaration",
422      "opcode" : 30,
423      "operands" : [
424        { "kind" : "IdResult" },
425        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
426      ],
427      "version": "1.0"
428    },
429    {
430      "opname" : "OpTypeOpaque",
431      "class"  : "Type-Declaration",
432      "opcode" : 31,
433      "operands" : [
434        { "kind" : "IdResult" },
435        { "kind" : "LiteralString", "name" : "The name of the opaque type." }
436      ],
437      "capabilities" : [ "Kernel" ],
438      "version": "1.0"
439    },
440    {
441      "opname" : "OpTypePointer",
442      "class"  : "Type-Declaration",
443      "opcode" : 32,
444      "operands" : [
445        { "kind" : "IdResult" },
446        { "kind" : "StorageClass" },
447        { "kind" : "IdRef",        "name" : "'Type'" }
448      ],
449      "version": "1.0"
450    },
451    {
452      "opname" : "OpTypeFunction",
453      "class"  : "Type-Declaration",
454      "opcode" : 33,
455      "operands" : [
456        { "kind" : "IdResult" },
457        { "kind" : "IdRef",                        "name" : "'Return Type'" },
458        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." }
459      ],
460      "version": "1.0"
461    },
462    {
463      "opname" : "OpTypeEvent",
464      "class"  : "Type-Declaration",
465      "opcode" : 34,
466      "operands" : [
467        { "kind" : "IdResult" }
468      ],
469      "capabilities" : [ "Kernel" ],
470      "version": "1.0"
471    },
472    {
473      "opname" : "OpTypeDeviceEvent",
474      "class"  : "Type-Declaration",
475      "opcode" : 35,
476      "operands" : [
477        { "kind" : "IdResult" }
478      ],
479      "capabilities" : [ "DeviceEnqueue" ],
480      "version": "1.0"
481    },
482    {
483      "opname" : "OpTypeReserveId",
484      "class"  : "Type-Declaration",
485      "opcode" : 36,
486      "operands" : [
487        { "kind" : "IdResult" }
488      ],
489      "capabilities" : [ "Pipes" ],
490      "version": "1.0"
491    },
492    {
493      "opname" : "OpTypeQueue",
494      "class"  : "Type-Declaration",
495      "opcode" : 37,
496      "operands" : [
497        { "kind" : "IdResult" }
498      ],
499      "capabilities" : [ "DeviceEnqueue" ],
500      "version": "1.0"
501    },
502    {
503      "opname" : "OpTypePipe",
504      "class"  : "Type-Declaration",
505      "opcode" : 38,
506      "operands" : [
507        { "kind" : "IdResult" },
508        { "kind" : "AccessQualifier", "name" : "'Qualifier'" }
509      ],
510      "capabilities" : [ "Pipes" ],
511      "version": "1.0"
512    },
513    {
514      "opname" : "OpTypeForwardPointer",
515      "class"  : "Type-Declaration",
516      "opcode" : 39,
517      "operands" : [
518        { "kind" : "IdRef",        "name" : "'Pointer Type'" },
519        { "kind" : "StorageClass" }
520      ],
521      "capabilities" : [
522        "Addresses",
523        "PhysicalStorageBufferAddresses"
524      ],
525      "version": "1.0"
526    },
527    {
528      "opname" : "OpConstantTrue",
529      "class"  : "Constant-Creation",
530      "opcode" : 41,
531      "operands" : [
532        { "kind" : "IdResultType" },
533        { "kind" : "IdResult" }
534      ],
535      "version": "1.0"
536    },
537    {
538      "opname" : "OpConstantFalse",
539      "class"  : "Constant-Creation",
540      "opcode" : 42,
541      "operands" : [
542        { "kind" : "IdResultType" },
543        { "kind" : "IdResult" }
544      ],
545      "version": "1.0"
546    },
547    {
548      "opname" : "OpConstant",
549      "class"  : "Constant-Creation",
550      "opcode" : 43,
551      "operands" : [
552        { "kind" : "IdResultType" },
553        { "kind" : "IdResult" },
554        { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
555      ],
556      "version": "1.0"
557    },
558    {
559      "opname" : "OpConstantComposite",
560      "class"  : "Constant-Creation",
561      "opcode" : 44,
562      "operands" : [
563        { "kind" : "IdResultType" },
564        { "kind" : "IdResult" },
565        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
566      ],
567      "version": "1.0"
568    },
569    {
570      "opname" : "OpConstantSampler",
571      "class"  : "Constant-Creation",
572      "opcode" : 45,
573      "operands" : [
574        { "kind" : "IdResultType" },
575        { "kind" : "IdResult" },
576        { "kind" : "SamplerAddressingMode" },
577        { "kind" : "LiteralInteger",        "name" : "'Param'" },
578        { "kind" : "SamplerFilterMode" }
579      ],
580      "capabilities" : [ "LiteralSampler" ],
581      "version": "1.0"
582    },
583    {
584      "opname" : "OpConstantNull",
585      "class"  : "Constant-Creation",
586      "opcode" : 46,
587      "operands" : [
588        { "kind" : "IdResultType" },
589        { "kind" : "IdResult" }
590      ],
591      "version": "1.0"
592    },
593    {
594      "opname" : "OpSpecConstantTrue",
595      "class"  : "Constant-Creation",
596      "opcode" : 48,
597      "operands" : [
598        { "kind" : "IdResultType" },
599        { "kind" : "IdResult" }
600      ],
601      "version": "1.0"
602    },
603    {
604      "opname" : "OpSpecConstantFalse",
605      "class"  : "Constant-Creation",
606      "opcode" : 49,
607      "operands" : [
608        { "kind" : "IdResultType" },
609        { "kind" : "IdResult" }
610      ],
611      "version": "1.0"
612    },
613    {
614      "opname" : "OpSpecConstant",
615      "class"  : "Constant-Creation",
616      "opcode" : 50,
617      "operands" : [
618        { "kind" : "IdResultType" },
619        { "kind" : "IdResult" },
620        { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
621      ],
622      "version": "1.0"
623    },
624    {
625      "opname" : "OpSpecConstantComposite",
626      "class"  : "Constant-Creation",
627      "opcode" : 51,
628      "operands" : [
629        { "kind" : "IdResultType" },
630        { "kind" : "IdResult" },
631        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
632      ],
633      "version": "1.0"
634    },
635    {
636      "opname" : "OpSpecConstantOp",
637      "class"  : "Constant-Creation",
638      "opcode" : 52,
639      "operands" : [
640        { "kind" : "IdResultType" },
641        { "kind" : "IdResult" },
642        { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" }
643      ],
644      "version": "1.0"
645    },
646    {
647      "opname" : "OpFunction",
648      "class"  : "Function",
649      "opcode" : 54,
650      "operands" : [
651        { "kind" : "IdResultType" },
652        { "kind" : "IdResult" },
653        { "kind" : "FunctionControl" },
654        { "kind" : "IdRef",           "name" : "'Function Type'" }
655      ],
656      "version": "1.0"
657    },
658    {
659      "opname" : "OpFunctionParameter",
660      "class"  : "Function",
661      "opcode" : 55,
662      "operands" : [
663        { "kind" : "IdResultType" },
664        { "kind" : "IdResult" }
665      ],
666      "version": "1.0"
667    },
668    {
669      "opname" : "OpFunctionEnd",
670      "class"  : "Function",
671      "opcode" : 56,
672      "version" : "1.0"
673    },
674    {
675      "opname" : "OpFunctionCall",
676      "class"  : "Function",
677      "opcode" : 57,
678      "operands" : [
679        { "kind" : "IdResultType" },
680        { "kind" : "IdResult" },
681        { "kind" : "IdRef",                            "name" : "'Function'" },
682        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." }
683      ],
684      "version": "1.0"
685    },
686    {
687      "opname" : "OpVariable",
688      "class"  : "Memory",
689      "opcode" : 59,
690      "operands" : [
691        { "kind" : "IdResultType" },
692        { "kind" : "IdResult" },
693        { "kind" : "StorageClass" },
694        { "kind" : "IdRef",        "quantifier" : "?", "name" : "'Initializer'" }
695      ],
696      "version": "1.0"
697    },
698    {
699      "opname" : "OpImageTexelPointer",
700      "class"  : "Memory",
701      "opcode" : 60,
702      "operands" : [
703        { "kind" : "IdResultType" },
704        { "kind" : "IdResult" },
705        { "kind" : "IdRef",        "name" : "'Image'" },
706        { "kind" : "IdRef",        "name" : "'Coordinate'" },
707        { "kind" : "IdRef",        "name" : "'Sample'" }
708      ],
709      "version": "1.0"
710    },
711    {
712      "opname" : "OpLoad",
713      "class"  : "Memory",
714      "opcode" : 61,
715      "operands" : [
716        { "kind" : "IdResultType" },
717        { "kind" : "IdResult" },
718        { "kind" : "IdRef",                            "name" : "'Pointer'" },
719        { "kind" : "MemoryAccess", "quantifier" : "?" }
720      ],
721      "version": "1.0"
722    },
723    {
724      "opname" : "OpStore",
725      "class"  : "Memory",
726      "opcode" : 62,
727      "operands" : [
728        { "kind" : "IdRef",                            "name" : "'Pointer'" },
729        { "kind" : "IdRef",                            "name" : "'Object'" },
730        { "kind" : "MemoryAccess", "quantifier" : "?" }
731      ],
732      "version": "1.0"
733    },
734    {
735      "opname" : "OpCopyMemory",
736      "class"  : "Memory",
737      "opcode" : 63,
738      "operands" : [
739        { "kind" : "IdRef",                            "name" : "'Target'" },
740        { "kind" : "IdRef",                            "name" : "'Source'" },
741        { "kind" : "MemoryAccess", "quantifier" : "?" },
742        { "kind" : "MemoryAccess", "quantifier" : "?" }
743      ],
744      "version": "1.0"
745    },
746    {
747      "opname" : "OpCopyMemorySized",
748      "class"  : "Memory",
749      "opcode" : 64,
750      "operands" : [
751        { "kind" : "IdRef",                            "name" : "'Target'" },
752        { "kind" : "IdRef",                            "name" : "'Source'" },
753        { "kind" : "IdRef",                            "name" : "'Size'" },
754        { "kind" : "MemoryAccess", "quantifier" : "?" },
755        { "kind" : "MemoryAccess", "quantifier" : "?" }
756      ],
757      "capabilities" : [
758        "Addresses",
759        "UntypedPointersKHR"
760      ],
761      "version": "1.0"
762    },
763    {
764      "opname" : "OpAccessChain",
765      "class"  : "Memory",
766      "opcode" : 65,
767      "operands" : [
768        { "kind" : "IdResultType" },
769        { "kind" : "IdResult" },
770        { "kind" : "IdRef",                            "name" : "'Base'" },
771        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
772      ],
773      "version": "1.0"
774    },
775    {
776      "opname" : "OpInBoundsAccessChain",
777      "class"  : "Memory",
778      "opcode" : 66,
779      "operands" : [
780        { "kind" : "IdResultType" },
781        { "kind" : "IdResult" },
782        { "kind" : "IdRef",                            "name" : "'Base'" },
783        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
784      ],
785      "version": "1.0"
786    },
787    {
788      "opname" : "OpPtrAccessChain",
789      "class"  : "Memory",
790      "opcode" : 67,
791      "operands" : [
792        { "kind" : "IdResultType" },
793        { "kind" : "IdResult" },
794        { "kind" : "IdRef",                            "name" : "'Base'" },
795        { "kind" : "IdRef",                            "name" : "'Element'" },
796        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
797      ],
798      "capabilities" : [
799        "Addresses",
800        "VariablePointers",
801        "VariablePointersStorageBuffer",
802        "PhysicalStorageBufferAddresses"
803      ],
804      "version": "1.0"
805    },
806    {
807      "opname" : "OpArrayLength",
808      "class"  : "Memory",
809      "opcode" : 68,
810      "operands" : [
811        { "kind" : "IdResultType" },
812        { "kind" : "IdResult" },
813        { "kind" : "IdRef",          "name" : "'Structure'" },
814        { "kind" : "LiteralInteger", "name" : "'Array member'" }
815      ],
816      "capabilities" : [ "Shader" ],
817      "version": "1.0"
818    },
819    {
820      "opname" : "OpGenericPtrMemSemantics",
821      "class"  : "Memory",
822      "opcode" : 69,
823      "operands" : [
824        { "kind" : "IdResultType" },
825        { "kind" : "IdResult" },
826        { "kind" : "IdRef",        "name" : "'Pointer'" }
827      ],
828      "capabilities" : [ "Kernel" ],
829      "version": "1.0"
830    },
831    {
832      "opname" : "OpInBoundsPtrAccessChain",
833      "class"  : "Memory",
834      "opcode" : 70,
835      "operands" : [
836        { "kind" : "IdResultType" },
837        { "kind" : "IdResult" },
838        { "kind" : "IdRef",                            "name" : "'Base'" },
839        { "kind" : "IdRef",                            "name" : "'Element'" },
840        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
841      ],
842      "capabilities" : [ "Addresses" ],
843      "version": "1.0"
844    },
845    {
846      "opname" : "OpDecorate",
847      "class"  : "Annotation",
848      "opcode" : 71,
849      "operands" : [
850        { "kind" : "IdRef",      "name" : "'Target'" },
851        { "kind" : "Decoration" }
852      ],
853      "version": "1.0"
854    },
855    {
856      "opname" : "OpMemberDecorate",
857      "class"  : "Annotation",
858      "opcode" : 72,
859      "operands" : [
860        { "kind" : "IdRef",          "name" : "'Structure Type'" },
861        { "kind" : "LiteralInteger", "name" : "'Member'" },
862        { "kind" : "Decoration" }
863      ],
864      "version": "1.0"
865    },
866    {
867      "opname" : "OpDecorationGroup",
868      "class"  : "Annotation",
869      "opcode" : 73,
870      "operands" : [
871        { "kind" : "IdResult" }
872      ],
873      "version": "1.0"
874    },
875    {
876      "opname" : "OpGroupDecorate",
877      "class"  : "Annotation",
878      "opcode" : 74,
879      "operands" : [
880        { "kind" : "IdRef",                     "name" : "'Decoration Group'" },
881        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" }
882      ],
883      "version": "1.0"
884    },
885    {
886      "opname" : "OpGroupMemberDecorate",
887      "class"  : "Annotation",
888      "opcode" : 75,
889      "operands" : [
890        { "kind" : "IdRef",                                       "name" : "'Decoration Group'" },
891        { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" }
892      ],
893      "version": "1.0"
894    },
895    {
896      "opname" : "OpVectorExtractDynamic",
897      "class"  : "Composite",
898      "opcode" : 77,
899      "operands" : [
900        { "kind" : "IdResultType" },
901        { "kind" : "IdResult" },
902        { "kind" : "IdRef",        "name" : "'Vector'" },
903        { "kind" : "IdRef",        "name" : "'Index'" }
904      ],
905      "version": "1.0"
906    },
907    {
908      "opname" : "OpVectorInsertDynamic",
909      "class"  : "Composite",
910      "opcode" : 78,
911      "operands" : [
912        { "kind" : "IdResultType" },
913        { "kind" : "IdResult" },
914        { "kind" : "IdRef",        "name" : "'Vector'" },
915        { "kind" : "IdRef",        "name" : "'Component'" },
916        { "kind" : "IdRef",        "name" : "'Index'" }
917      ],
918      "version": "1.0"
919    },
920    {
921      "opname" : "OpVectorShuffle",
922      "class"  : "Composite",
923      "opcode" : 79,
924      "operands" : [
925        { "kind" : "IdResultType" },
926        { "kind" : "IdResult" },
927        { "kind" : "IdRef",                              "name" : "'Vector 1'" },
928        { "kind" : "IdRef",                              "name" : "'Vector 2'" },
929        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" }
930      ],
931      "version": "1.0"
932    },
933    {
934      "opname" : "OpCompositeConstruct",
935      "class"  : "Composite",
936      "opcode" : 80,
937      "operands" : [
938        { "kind" : "IdResultType" },
939        { "kind" : "IdResult" },
940        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
941      ],
942      "version": "1.0"
943    },
944    {
945      "opname" : "OpCompositeExtract",
946      "class"  : "Composite",
947      "opcode" : 81,
948      "operands" : [
949        { "kind" : "IdResultType" },
950        { "kind" : "IdResult" },
951        { "kind" : "IdRef",                              "name" : "'Composite'" },
952        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
953      ],
954      "version": "1.0"
955    },
956    {
957      "opname" : "OpCompositeInsert",
958      "class"  : "Composite",
959      "opcode" : 82,
960      "operands" : [
961        { "kind" : "IdResultType" },
962        { "kind" : "IdResult" },
963        { "kind" : "IdRef",                              "name" : "'Object'" },
964        { "kind" : "IdRef",                              "name" : "'Composite'" },
965        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
966      ],
967      "version": "1.0"
968    },
969    {
970      "opname" : "OpCopyObject",
971      "class"  : "Composite",
972      "opcode" : 83,
973      "operands" : [
974        { "kind" : "IdResultType" },
975        { "kind" : "IdResult" },
976        { "kind" : "IdRef",        "name" : "'Operand'" }
977      ],
978      "version": "1.0"
979    },
980    {
981      "opname" : "OpTranspose",
982      "class"  : "Composite",
983      "opcode" : 84,
984      "operands" : [
985        { "kind" : "IdResultType" },
986        { "kind" : "IdResult" },
987        { "kind" : "IdRef",        "name" : "'Matrix'" }
988      ],
989      "capabilities" : [ "Matrix" ],
990      "version": "1.0"
991    },
992    {
993      "opname" : "OpSampledImage",
994      "class"  : "Image",
995      "opcode" : 86,
996      "operands" : [
997        { "kind" : "IdResultType" },
998        { "kind" : "IdResult" },
999        { "kind" : "IdRef",        "name" : "'Image'" },
1000        { "kind" : "IdRef",        "name" : "'Sampler'" }
1001      ],
1002      "version": "1.0"
1003    },
1004    {
1005      "opname" : "OpImageSampleImplicitLod",
1006      "class"  : "Image",
1007      "opcode" : 87,
1008      "operands" : [
1009        { "kind" : "IdResultType" },
1010        { "kind" : "IdResult" },
1011        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1012        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1013        { "kind" : "ImageOperands", "quantifier" : "?" }
1014      ],
1015      "capabilities" : [ "Shader" ],
1016      "version": "1.0"
1017    },
1018    {
1019      "opname" : "OpImageSampleExplicitLod",
1020      "class"  : "Image",
1021      "opcode" : 88,
1022      "operands" : [
1023        { "kind" : "IdResultType" },
1024        { "kind" : "IdResult" },
1025        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
1026        { "kind" : "IdRef",         "name" : "'Coordinate'" },
1027        { "kind" : "ImageOperands" }
1028      ],
1029      "version": "1.0"
1030    },
1031    {
1032      "opname" : "OpImageSampleDrefImplicitLod",
1033      "class"  : "Image",
1034      "opcode" : 89,
1035      "operands" : [
1036        { "kind" : "IdResultType" },
1037        { "kind" : "IdResult" },
1038        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1039        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1040        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
1041        { "kind" : "ImageOperands", "quantifier" : "?" }
1042      ],
1043      "capabilities" : [ "Shader" ],
1044      "version": "1.0"
1045    },
1046    {
1047      "opname" : "OpImageSampleDrefExplicitLod",
1048      "class"  : "Image",
1049      "opcode" : 90,
1050      "operands" : [
1051        { "kind" : "IdResultType" },
1052        { "kind" : "IdResult" },
1053        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
1054        { "kind" : "IdRef",         "name" : "'Coordinate'" },
1055        { "kind" : "IdRef",         "name" : "'D~ref~'" },
1056        { "kind" : "ImageOperands" }
1057      ],
1058      "capabilities" : [ "Shader" ],
1059      "version": "1.0"
1060    },
1061    {
1062      "opname" : "OpImageSampleProjImplicitLod",
1063      "class"  : "Image",
1064      "opcode" : 91,
1065      "operands" : [
1066        { "kind" : "IdResultType" },
1067        { "kind" : "IdResult" },
1068        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1069        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1070        { "kind" : "ImageOperands", "quantifier" : "?" }
1071      ],
1072      "capabilities" : [ "Shader" ],
1073      "version": "1.0"
1074    },
1075    {
1076      "opname" : "OpImageSampleProjExplicitLod",
1077      "class"  : "Image",
1078      "opcode" : 92,
1079      "operands" : [
1080        { "kind" : "IdResultType" },
1081        { "kind" : "IdResult" },
1082        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
1083        { "kind" : "IdRef",         "name" : "'Coordinate'" },
1084        { "kind" : "ImageOperands" }
1085      ],
1086      "capabilities" : [ "Shader" ],
1087      "version": "1.0"
1088    },
1089    {
1090      "opname" : "OpImageSampleProjDrefImplicitLod",
1091      "class"  : "Image",
1092      "opcode" : 93,
1093      "operands" : [
1094        { "kind" : "IdResultType" },
1095        { "kind" : "IdResult" },
1096        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1097        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1098        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
1099        { "kind" : "ImageOperands", "quantifier" : "?" }
1100      ],
1101      "capabilities" : [ "Shader" ],
1102      "version": "1.0"
1103    },
1104    {
1105      "opname" : "OpImageSampleProjDrefExplicitLod",
1106      "class"  : "Image",
1107      "opcode" : 94,
1108      "operands" : [
1109        { "kind" : "IdResultType" },
1110        { "kind" : "IdResult" },
1111        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
1112        { "kind" : "IdRef",         "name" : "'Coordinate'" },
1113        { "kind" : "IdRef",         "name" : "'D~ref~'" },
1114        { "kind" : "ImageOperands" }
1115      ],
1116      "capabilities" : [ "Shader" ],
1117      "version": "1.0"
1118    },
1119    {
1120      "opname" : "OpImageFetch",
1121      "class"  : "Image",
1122      "opcode" : 95,
1123      "operands" : [
1124        { "kind" : "IdResultType" },
1125        { "kind" : "IdResult" },
1126        { "kind" : "IdRef",                             "name" : "'Image'" },
1127        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1128        { "kind" : "ImageOperands", "quantifier" : "?" }
1129      ],
1130      "version": "1.0"
1131    },
1132    {
1133      "opname" : "OpImageGather",
1134      "class"  : "Image",
1135      "opcode" : 96,
1136      "operands" : [
1137        { "kind" : "IdResultType" },
1138        { "kind" : "IdResult" },
1139        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1140        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1141        { "kind" : "IdRef",                             "name" : "'Component'" },
1142        { "kind" : "ImageOperands", "quantifier" : "?" }
1143      ],
1144      "capabilities" : [ "Shader" ],
1145      "version": "1.0"
1146    },
1147    {
1148      "opname" : "OpImageDrefGather",
1149      "class"  : "Image",
1150      "opcode" : 97,
1151      "operands" : [
1152        { "kind" : "IdResultType" },
1153        { "kind" : "IdResult" },
1154        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1155        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1156        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
1157        { "kind" : "ImageOperands", "quantifier" : "?" }
1158      ],
1159      "capabilities" : [ "Shader" ],
1160      "version": "1.0"
1161    },
1162    {
1163      "opname" : "OpImageRead",
1164      "class"  : "Image",
1165      "opcode" : 98,
1166      "operands" : [
1167        { "kind" : "IdResultType" },
1168        { "kind" : "IdResult" },
1169        { "kind" : "IdRef",                             "name" : "'Image'" },
1170        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1171        { "kind" : "ImageOperands", "quantifier" : "?" }
1172      ],
1173      "version": "1.0"
1174    },
1175    {
1176      "opname" : "OpImageWrite",
1177      "class"  : "Image",
1178      "opcode" : 99,
1179      "operands" : [
1180        { "kind" : "IdRef",                             "name" : "'Image'" },
1181        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1182        { "kind" : "IdRef",                             "name" : "'Texel'" },
1183        { "kind" : "ImageOperands", "quantifier" : "?" }
1184      ],
1185      "version": "1.0"
1186    },
1187    {
1188      "opname" : "OpImage",
1189      "class"  : "Image",
1190      "opcode" : 100,
1191      "operands" : [
1192        { "kind" : "IdResultType" },
1193        { "kind" : "IdResult" },
1194        { "kind" : "IdRef",        "name" : "'Sampled Image'" }
1195      ],
1196      "version": "1.0"
1197    },
1198    {
1199      "opname" : "OpImageQueryFormat",
1200      "class"  : "Image",
1201      "opcode" : 101,
1202      "operands" : [
1203        { "kind" : "IdResultType" },
1204        { "kind" : "IdResult" },
1205        { "kind" : "IdRef",        "name" : "'Image'" }
1206      ],
1207      "capabilities" : [ "Kernel" ],
1208      "version": "1.0"
1209    },
1210    {
1211      "opname" : "OpImageQueryOrder",
1212      "class"  : "Image",
1213      "opcode" : 102,
1214      "operands" : [
1215        { "kind" : "IdResultType" },
1216        { "kind" : "IdResult" },
1217        { "kind" : "IdRef",        "name" : "'Image'" }
1218      ],
1219      "capabilities" : [ "Kernel" ],
1220      "version": "1.0"
1221    },
1222    {
1223      "opname" : "OpImageQuerySizeLod",
1224      "class"  : "Image",
1225      "opcode" : 103,
1226      "operands" : [
1227        { "kind" : "IdResultType" },
1228        { "kind" : "IdResult" },
1229        { "kind" : "IdRef",        "name" : "'Image'" },
1230        { "kind" : "IdRef",        "name" : "'Level of Detail'" }
1231      ],
1232      "capabilities" : [ "Kernel", "ImageQuery" ],
1233      "version": "1.0"
1234    },
1235    {
1236      "opname" : "OpImageQuerySize",
1237      "class"  : "Image",
1238      "opcode" : 104,
1239      "operands" : [
1240        { "kind" : "IdResultType" },
1241        { "kind" : "IdResult" },
1242        { "kind" : "IdRef",        "name" : "'Image'" }
1243      ],
1244      "capabilities" : [ "Kernel", "ImageQuery" ],
1245      "version": "1.0"
1246    },
1247    {
1248      "opname" : "OpImageQueryLod",
1249      "class"  : "Image",
1250      "opcode" : 105,
1251      "operands" : [
1252        { "kind" : "IdResultType" },
1253        { "kind" : "IdResult" },
1254        { "kind" : "IdRef",        "name" : "'Sampled Image'" },
1255        { "kind" : "IdRef",        "name" : "'Coordinate'" }
1256      ],
1257      "capabilities" : [ "ImageQuery" ],
1258      "version": "1.0"
1259    },
1260    {
1261      "opname" : "OpImageQueryLevels",
1262      "class"  : "Image",
1263      "opcode" : 106,
1264      "operands" : [
1265        { "kind" : "IdResultType" },
1266        { "kind" : "IdResult" },
1267        { "kind" : "IdRef",        "name" : "'Image'" }
1268      ],
1269      "capabilities" : [ "Kernel", "ImageQuery" ],
1270      "version": "1.0"
1271    },
1272    {
1273      "opname" : "OpImageQuerySamples",
1274      "class"  : "Image",
1275      "opcode" : 107,
1276      "operands" : [
1277        { "kind" : "IdResultType" },
1278        { "kind" : "IdResult" },
1279        { "kind" : "IdRef",        "name" : "'Image'" }
1280      ],
1281      "capabilities" : [ "Kernel", "ImageQuery" ],
1282      "version": "1.0"
1283    },
1284    {
1285      "opname" : "OpConvertFToU",
1286      "class"  : "Conversion",
1287      "opcode" : 109,
1288      "operands" : [
1289        { "kind" : "IdResultType" },
1290        { "kind" : "IdResult" },
1291        { "kind" : "IdRef",        "name" : "'Float Value'" }
1292      ],
1293      "version": "1.0"
1294    },
1295    {
1296      "opname" : "OpConvertFToS",
1297      "class"  : "Conversion",
1298      "opcode" : 110,
1299      "operands" : [
1300        { "kind" : "IdResultType" },
1301        { "kind" : "IdResult" },
1302        { "kind" : "IdRef",        "name" : "'Float Value'" }
1303      ],
1304      "version": "1.0"
1305    },
1306    {
1307      "opname" : "OpConvertSToF",
1308      "class"  : "Conversion",
1309      "opcode" : 111,
1310      "operands" : [
1311        { "kind" : "IdResultType" },
1312        { "kind" : "IdResult" },
1313        { "kind" : "IdRef",        "name" : "'Signed Value'" }
1314      ],
1315      "version": "1.0"
1316    },
1317    {
1318      "opname" : "OpConvertUToF",
1319      "class"  : "Conversion",
1320      "opcode" : 112,
1321      "operands" : [
1322        { "kind" : "IdResultType" },
1323        { "kind" : "IdResult" },
1324        { "kind" : "IdRef",        "name" : "'Unsigned Value'" }
1325      ],
1326      "version": "1.0"
1327    },
1328    {
1329      "opname" : "OpUConvert",
1330      "class"  : "Conversion",
1331      "opcode" : 113,
1332      "operands" : [
1333        { "kind" : "IdResultType" },
1334        { "kind" : "IdResult" },
1335        { "kind" : "IdRef",        "name" : "'Unsigned Value'" }
1336      ],
1337      "version": "1.0"
1338    },
1339    {
1340      "opname" : "OpSConvert",
1341      "class"  : "Conversion",
1342      "opcode" : 114,
1343      "operands" : [
1344        { "kind" : "IdResultType" },
1345        { "kind" : "IdResult" },
1346        { "kind" : "IdRef",        "name" : "'Signed Value'" }
1347      ],
1348      "version": "1.0"
1349    },
1350    {
1351      "opname" : "OpFConvert",
1352      "class"  : "Conversion",
1353      "opcode" : 115,
1354      "operands" : [
1355        { "kind" : "IdResultType" },
1356        { "kind" : "IdResult" },
1357        { "kind" : "IdRef",        "name" : "'Float Value'" }
1358      ],
1359      "version": "1.0"
1360    },
1361    {
1362      "opname" : "OpQuantizeToF16",
1363      "class"  : "Conversion",
1364      "opcode" : 116,
1365      "operands" : [
1366        { "kind" : "IdResultType" },
1367        { "kind" : "IdResult" },
1368        { "kind" : "IdRef",        "name" : "'Value'" }
1369      ],
1370      "version": "1.0"
1371    },
1372    {
1373      "opname" : "OpConvertPtrToU",
1374      "class"  : "Conversion",
1375      "opcode" : 117,
1376      "operands" : [
1377        { "kind" : "IdResultType" },
1378        { "kind" : "IdResult" },
1379        { "kind" : "IdRef",        "name" : "'Pointer'" }
1380      ],
1381      "capabilities" : [
1382        "Addresses",
1383        "PhysicalStorageBufferAddresses"
1384      ],
1385      "version": "1.0"
1386    },
1387    {
1388      "opname" : "OpSatConvertSToU",
1389      "class"  : "Conversion",
1390      "opcode" : 118,
1391      "operands" : [
1392        { "kind" : "IdResultType" },
1393        { "kind" : "IdResult" },
1394        { "kind" : "IdRef",        "name" : "'Signed Value'" }
1395      ],
1396      "capabilities" : [ "Kernel" ],
1397      "version": "1.0"
1398    },
1399    {
1400      "opname" : "OpSatConvertUToS",
1401      "class"  : "Conversion",
1402      "opcode" : 119,
1403      "operands" : [
1404        { "kind" : "IdResultType" },
1405        { "kind" : "IdResult" },
1406        { "kind" : "IdRef",        "name" : "'Unsigned Value'" }
1407      ],
1408      "capabilities" : [ "Kernel" ],
1409      "version": "1.0"
1410    },
1411    {
1412      "opname" : "OpConvertUToPtr",
1413      "class"  : "Conversion",
1414      "opcode" : 120,
1415      "operands" : [
1416        { "kind" : "IdResultType" },
1417        { "kind" : "IdResult" },
1418        { "kind" : "IdRef",        "name" : "'Integer Value'" }
1419      ],
1420      "capabilities" : [
1421        "Addresses",
1422        "PhysicalStorageBufferAddresses"
1423      ],
1424      "version": "1.0"
1425    },
1426    {
1427      "opname" : "OpPtrCastToGeneric",
1428      "class"  : "Conversion",
1429      "opcode" : 121,
1430      "operands" : [
1431        { "kind" : "IdResultType" },
1432        { "kind" : "IdResult" },
1433        { "kind" : "IdRef",        "name" : "'Pointer'" }
1434      ],
1435      "capabilities" : [ "Kernel" ],
1436      "version": "1.0"
1437    },
1438    {
1439      "opname" : "OpGenericCastToPtr",
1440      "class"  : "Conversion",
1441      "opcode" : 122,
1442      "operands" : [
1443        { "kind" : "IdResultType" },
1444        { "kind" : "IdResult" },
1445        { "kind" : "IdRef",        "name" : "'Pointer'" }
1446      ],
1447      "capabilities" : [ "Kernel" ],
1448      "version": "1.0"
1449    },
1450    {
1451      "opname" : "OpGenericCastToPtrExplicit",
1452      "class"  : "Conversion",
1453      "opcode" : 123,
1454      "operands" : [
1455        { "kind" : "IdResultType" },
1456        { "kind" : "IdResult" },
1457        { "kind" : "IdRef",        "name" : "'Pointer'" },
1458        { "kind" : "StorageClass", "name" : "'Storage'" }
1459      ],
1460      "capabilities" : [ "Kernel" ],
1461      "version": "1.0"
1462    },
1463    {
1464      "opname" : "OpBitcast",
1465      "class"  : "Conversion",
1466      "opcode" : 124,
1467      "operands" : [
1468        { "kind" : "IdResultType" },
1469        { "kind" : "IdResult" },
1470        { "kind" : "IdRef",        "name" : "'Operand'" }
1471      ],
1472      "version": "1.0"
1473    },
1474    {
1475      "opname" : "OpSNegate",
1476      "class"  : "Arithmetic",
1477      "opcode" : 126,
1478      "operands" : [
1479        { "kind" : "IdResultType" },
1480        { "kind" : "IdResult" },
1481        { "kind" : "IdRef",        "name" : "'Operand'" }
1482      ],
1483      "version": "1.0"
1484    },
1485    {
1486      "opname" : "OpFNegate",
1487      "class"  : "Arithmetic",
1488      "opcode" : 127,
1489      "operands" : [
1490        { "kind" : "IdResultType" },
1491        { "kind" : "IdResult" },
1492        { "kind" : "IdRef",        "name" : "'Operand'" }
1493      ],
1494      "version": "1.0"
1495    },
1496    {
1497      "opname" : "OpIAdd",
1498      "class"  : "Arithmetic",
1499      "opcode" : 128,
1500      "operands" : [
1501        { "kind" : "IdResultType" },
1502        { "kind" : "IdResult" },
1503        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1504        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1505      ],
1506      "version": "1.0"
1507    },
1508    {
1509      "opname" : "OpFAdd",
1510      "class"  : "Arithmetic",
1511      "opcode" : 129,
1512      "operands" : [
1513        { "kind" : "IdResultType" },
1514        { "kind" : "IdResult" },
1515        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1516        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1517      ],
1518      "version": "1.0"
1519    },
1520    {
1521      "opname" : "OpISub",
1522      "class"  : "Arithmetic",
1523      "opcode" : 130,
1524      "operands" : [
1525        { "kind" : "IdResultType" },
1526        { "kind" : "IdResult" },
1527        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1528        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1529      ],
1530      "version": "1.0"
1531    },
1532    {
1533      "opname" : "OpFSub",
1534      "class"  : "Arithmetic",
1535      "opcode" : 131,
1536      "operands" : [
1537        { "kind" : "IdResultType" },
1538        { "kind" : "IdResult" },
1539        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1540        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1541      ],
1542      "version": "1.0"
1543    },
1544    {
1545      "opname" : "OpIMul",
1546      "class"  : "Arithmetic",
1547      "opcode" : 132,
1548      "operands" : [
1549        { "kind" : "IdResultType" },
1550        { "kind" : "IdResult" },
1551        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1552        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1553      ],
1554      "version": "1.0"
1555    },
1556    {
1557      "opname" : "OpFMul",
1558      "class"  : "Arithmetic",
1559      "opcode" : 133,
1560      "operands" : [
1561        { "kind" : "IdResultType" },
1562        { "kind" : "IdResult" },
1563        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1564        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1565      ],
1566      "version": "1.0"
1567    },
1568    {
1569      "opname" : "OpUDiv",
1570      "class"  : "Arithmetic",
1571      "opcode" : 134,
1572      "operands" : [
1573        { "kind" : "IdResultType" },
1574        { "kind" : "IdResult" },
1575        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1576        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1577      ],
1578      "version": "1.0"
1579    },
1580    {
1581      "opname" : "OpSDiv",
1582      "class"  : "Arithmetic",
1583      "opcode" : 135,
1584      "operands" : [
1585        { "kind" : "IdResultType" },
1586        { "kind" : "IdResult" },
1587        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1588        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1589      ],
1590      "version": "1.0"
1591    },
1592    {
1593      "opname" : "OpFDiv",
1594      "class"  : "Arithmetic",
1595      "opcode" : 136,
1596      "operands" : [
1597        { "kind" : "IdResultType" },
1598        { "kind" : "IdResult" },
1599        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1600        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1601      ],
1602      "version": "1.0"
1603    },
1604    {
1605      "opname" : "OpUMod",
1606      "class"  : "Arithmetic",
1607      "opcode" : 137,
1608      "operands" : [
1609        { "kind" : "IdResultType" },
1610        { "kind" : "IdResult" },
1611        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1612        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1613      ],
1614      "version": "1.0"
1615    },
1616    {
1617      "opname" : "OpSRem",
1618      "class"  : "Arithmetic",
1619      "opcode" : 138,
1620      "operands" : [
1621        { "kind" : "IdResultType" },
1622        { "kind" : "IdResult" },
1623        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1624        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1625      ],
1626      "version": "1.0"
1627    },
1628    {
1629      "opname" : "OpSMod",
1630      "class"  : "Arithmetic",
1631      "opcode" : 139,
1632      "operands" : [
1633        { "kind" : "IdResultType" },
1634        { "kind" : "IdResult" },
1635        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1636        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1637      ],
1638      "version": "1.0"
1639    },
1640    {
1641      "opname" : "OpFRem",
1642      "class"  : "Arithmetic",
1643      "opcode" : 140,
1644      "operands" : [
1645        { "kind" : "IdResultType" },
1646        { "kind" : "IdResult" },
1647        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1648        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1649      ],
1650      "version": "1.0"
1651    },
1652    {
1653      "opname" : "OpFMod",
1654      "class"  : "Arithmetic",
1655      "opcode" : 141,
1656      "operands" : [
1657        { "kind" : "IdResultType" },
1658        { "kind" : "IdResult" },
1659        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1660        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1661      ],
1662      "version": "1.0"
1663    },
1664    {
1665      "opname" : "OpVectorTimesScalar",
1666      "class"  : "Arithmetic",
1667      "opcode" : 142,
1668      "operands" : [
1669        { "kind" : "IdResultType" },
1670        { "kind" : "IdResult" },
1671        { "kind" : "IdRef",        "name" : "'Vector'" },
1672        { "kind" : "IdRef",        "name" : "'Scalar'" }
1673      ],
1674      "version": "1.0"
1675    },
1676    {
1677      "opname" : "OpMatrixTimesScalar",
1678      "class"  : "Arithmetic",
1679      "opcode" : 143,
1680      "operands" : [
1681        { "kind" : "IdResultType" },
1682        { "kind" : "IdResult" },
1683        { "kind" : "IdRef",        "name" : "'Matrix'" },
1684        { "kind" : "IdRef",        "name" : "'Scalar'" }
1685      ],
1686      "capabilities" : [ "Matrix" ],
1687      "version": "1.0"
1688    },
1689    {
1690      "opname" : "OpVectorTimesMatrix",
1691      "class"  : "Arithmetic",
1692      "opcode" : 144,
1693      "operands" : [
1694        { "kind" : "IdResultType" },
1695        { "kind" : "IdResult" },
1696        { "kind" : "IdRef",        "name" : "'Vector'" },
1697        { "kind" : "IdRef",        "name" : "'Matrix'" }
1698      ],
1699      "capabilities" : [ "Matrix" ],
1700      "version": "1.0"
1701    },
1702    {
1703      "opname" : "OpMatrixTimesVector",
1704      "class"  : "Arithmetic",
1705      "opcode" : 145,
1706      "operands" : [
1707        { "kind" : "IdResultType" },
1708        { "kind" : "IdResult" },
1709        { "kind" : "IdRef",        "name" : "'Matrix'" },
1710        { "kind" : "IdRef",        "name" : "'Vector'" }
1711      ],
1712      "capabilities" : [ "Matrix" ],
1713      "version": "1.0"
1714    },
1715    {
1716      "opname" : "OpMatrixTimesMatrix",
1717      "class"  : "Arithmetic",
1718      "opcode" : 146,
1719      "operands" : [
1720        { "kind" : "IdResultType" },
1721        { "kind" : "IdResult" },
1722        { "kind" : "IdRef",        "name" : "'LeftMatrix'" },
1723        { "kind" : "IdRef",        "name" : "'RightMatrix'" }
1724      ],
1725      "capabilities" : [ "Matrix" ],
1726      "version": "1.0"
1727    },
1728    {
1729      "opname" : "OpOuterProduct",
1730      "class"  : "Arithmetic",
1731      "opcode" : 147,
1732      "operands" : [
1733        { "kind" : "IdResultType" },
1734        { "kind" : "IdResult" },
1735        { "kind" : "IdRef",        "name" : "'Vector 1'" },
1736        { "kind" : "IdRef",        "name" : "'Vector 2'" }
1737      ],
1738      "capabilities" : [ "Matrix" ],
1739      "version": "1.0"
1740    },
1741    {
1742      "opname" : "OpDot",
1743      "class"  : "Arithmetic",
1744      "opcode" : 148,
1745      "operands" : [
1746        { "kind" : "IdResultType" },
1747        { "kind" : "IdResult" },
1748        { "kind" : "IdRef",        "name" : "'Vector 1'" },
1749        { "kind" : "IdRef",        "name" : "'Vector 2'" }
1750      ],
1751      "version": "1.0"
1752    },
1753    {
1754      "opname" : "OpIAddCarry",
1755      "class"  : "Arithmetic",
1756      "opcode" : 149,
1757      "operands" : [
1758        { "kind" : "IdResultType" },
1759        { "kind" : "IdResult" },
1760        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1761        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1762      ],
1763      "version": "1.0"
1764    },
1765    {
1766      "opname" : "OpISubBorrow",
1767      "class"  : "Arithmetic",
1768      "opcode" : 150,
1769      "operands" : [
1770        { "kind" : "IdResultType" },
1771        { "kind" : "IdResult" },
1772        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1773        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1774      ],
1775      "version": "1.0"
1776    },
1777    {
1778      "opname" : "OpUMulExtended",
1779      "class"  : "Arithmetic",
1780      "opcode" : 151,
1781      "operands" : [
1782        { "kind" : "IdResultType" },
1783        { "kind" : "IdResult" },
1784        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1785        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1786      ],
1787      "version": "1.0"
1788    },
1789    {
1790      "opname" : "OpSMulExtended",
1791      "class"  : "Arithmetic",
1792      "opcode" : 152,
1793      "operands" : [
1794        { "kind" : "IdResultType" },
1795        { "kind" : "IdResult" },
1796        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1797        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1798      ],
1799      "version": "1.0"
1800    },
1801    {
1802      "opname" : "OpAny",
1803      "class"  : "Relational_and_Logical",
1804      "opcode" : 154,
1805      "operands" : [
1806        { "kind" : "IdResultType" },
1807        { "kind" : "IdResult" },
1808        { "kind" : "IdRef",        "name" : "'Vector'" }
1809      ],
1810      "version": "1.0"
1811    },
1812    {
1813      "opname" : "OpAll",
1814      "class"  : "Relational_and_Logical",
1815      "opcode" : 155,
1816      "operands" : [
1817        { "kind" : "IdResultType" },
1818        { "kind" : "IdResult" },
1819        { "kind" : "IdRef",        "name" : "'Vector'" }
1820      ],
1821      "version": "1.0"
1822    },
1823    {
1824      "opname" : "OpIsNan",
1825      "class"  : "Relational_and_Logical",
1826      "opcode" : 156,
1827      "operands" : [
1828        { "kind" : "IdResultType" },
1829        { "kind" : "IdResult" },
1830        { "kind" : "IdRef",        "name" : "'x'" }
1831      ],
1832      "version": "1.0"
1833    },
1834    {
1835      "opname" : "OpIsInf",
1836      "class"  : "Relational_and_Logical",
1837      "opcode" : 157,
1838      "operands" : [
1839        { "kind" : "IdResultType" },
1840        { "kind" : "IdResult" },
1841        { "kind" : "IdRef",        "name" : "'x'" }
1842      ],
1843      "version": "1.0"
1844    },
1845    {
1846      "opname" : "OpIsFinite",
1847      "class"  : "Relational_and_Logical",
1848      "opcode" : 158,
1849      "operands" : [
1850        { "kind" : "IdResultType" },
1851        { "kind" : "IdResult" },
1852        { "kind" : "IdRef",        "name" : "'x'" }
1853      ],
1854      "capabilities" : [ "Kernel" ],
1855      "version": "1.0"
1856    },
1857    {
1858      "opname" : "OpIsNormal",
1859      "class"  : "Relational_and_Logical",
1860      "opcode" : 159,
1861      "operands" : [
1862        { "kind" : "IdResultType" },
1863        { "kind" : "IdResult" },
1864        { "kind" : "IdRef",        "name" : "'x'" }
1865      ],
1866      "capabilities" : [ "Kernel" ],
1867      "version": "1.0"
1868    },
1869    {
1870      "opname" : "OpSignBitSet",
1871      "class"  : "Relational_and_Logical",
1872      "opcode" : 160,
1873      "operands" : [
1874        { "kind" : "IdResultType" },
1875        { "kind" : "IdResult" },
1876        { "kind" : "IdRef",        "name" : "'x'" }
1877      ],
1878      "capabilities" : [ "Kernel" ],
1879      "version": "1.0"
1880    },
1881    {
1882      "opname" : "OpLessOrGreater",
1883      "class"  : "Relational_and_Logical",
1884      "opcode" : 161,
1885      "operands" : [
1886        { "kind" : "IdResultType" },
1887        { "kind" : "IdResult" },
1888        { "kind" : "IdRef",        "name" : "'x'" },
1889        { "kind" : "IdRef",        "name" : "'y'" }
1890      ],
1891      "capabilities" : [ "Kernel" ],
1892      "version" : "1.0",
1893      "lastVersion" : "1.5"
1894    },
1895    {
1896      "opname" : "OpOrdered",
1897      "class"  : "Relational_and_Logical",
1898      "opcode" : 162,
1899      "operands" : [
1900        { "kind" : "IdResultType" },
1901        { "kind" : "IdResult" },
1902        { "kind" : "IdRef",        "name" : "'x'" },
1903        { "kind" : "IdRef",        "name" : "'y'" }
1904      ],
1905      "capabilities" : [ "Kernel" ],
1906      "version": "1.0"
1907    },
1908    {
1909      "opname" : "OpUnordered",
1910      "class"  : "Relational_and_Logical",
1911      "opcode" : 163,
1912      "operands" : [
1913        { "kind" : "IdResultType" },
1914        { "kind" : "IdResult" },
1915        { "kind" : "IdRef",        "name" : "'x'" },
1916        { "kind" : "IdRef",        "name" : "'y'" }
1917      ],
1918      "capabilities" : [ "Kernel" ],
1919      "version": "1.0"
1920    },
1921    {
1922      "opname" : "OpLogicalEqual",
1923      "class"  : "Relational_and_Logical",
1924      "opcode" : 164,
1925      "operands" : [
1926        { "kind" : "IdResultType" },
1927        { "kind" : "IdResult" },
1928        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1929        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1930      ],
1931      "version": "1.0"
1932    },
1933    {
1934      "opname" : "OpLogicalNotEqual",
1935      "class"  : "Relational_and_Logical",
1936      "opcode" : 165,
1937      "operands" : [
1938        { "kind" : "IdResultType" },
1939        { "kind" : "IdResult" },
1940        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1941        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1942      ],
1943      "version": "1.0"
1944    },
1945    {
1946      "opname" : "OpLogicalOr",
1947      "class"  : "Relational_and_Logical",
1948      "opcode" : 166,
1949      "operands" : [
1950        { "kind" : "IdResultType" },
1951        { "kind" : "IdResult" },
1952        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1953        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1954      ],
1955      "version": "1.0"
1956    },
1957    {
1958      "opname" : "OpLogicalAnd",
1959      "class"  : "Relational_and_Logical",
1960      "opcode" : 167,
1961      "operands" : [
1962        { "kind" : "IdResultType" },
1963        { "kind" : "IdResult" },
1964        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1965        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1966      ],
1967      "version" : "1.0"
1968    },
1969    {
1970      "opname" : "OpLogicalNot",
1971      "class"  : "Relational_and_Logical",
1972      "opcode" : 168,
1973      "operands" : [
1974        { "kind" : "IdResultType" },
1975        { "kind" : "IdResult" },
1976        { "kind" : "IdRef",        "name" : "'Operand'" }
1977      ],
1978      "version": "1.0"
1979    },
1980    {
1981      "opname" : "OpSelect",
1982      "class"  : "Relational_and_Logical",
1983      "opcode" : 169,
1984      "operands" : [
1985        { "kind" : "IdResultType" },
1986        { "kind" : "IdResult" },
1987        { "kind" : "IdRef",        "name" : "'Condition'" },
1988        { "kind" : "IdRef",        "name" : "'Object 1'" },
1989        { "kind" : "IdRef",        "name" : "'Object 2'" }
1990      ],
1991      "version": "1.0"
1992    },
1993    {
1994      "opname" : "OpIEqual",
1995      "class"  : "Relational_and_Logical",
1996      "opcode" : 170,
1997      "operands" : [
1998        { "kind" : "IdResultType" },
1999        { "kind" : "IdResult" },
2000        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2001        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2002      ],
2003      "version": "1.0"
2004    },
2005    {
2006      "opname" : "OpINotEqual",
2007      "class"  : "Relational_and_Logical",
2008      "opcode" : 171,
2009      "operands" : [
2010        { "kind" : "IdResultType" },
2011        { "kind" : "IdResult" },
2012        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2013        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2014      ],
2015      "version": "1.0"
2016    },
2017    {
2018      "opname" : "OpUGreaterThan",
2019      "class"  : "Relational_and_Logical",
2020      "opcode" : 172,
2021      "operands" : [
2022        { "kind" : "IdResultType" },
2023        { "kind" : "IdResult" },
2024        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2025        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2026      ],
2027      "version": "1.0"
2028    },
2029    {
2030      "opname" : "OpSGreaterThan",
2031      "class"  : "Relational_and_Logical",
2032      "opcode" : 173,
2033      "operands" : [
2034        { "kind" : "IdResultType" },
2035        { "kind" : "IdResult" },
2036        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2037        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2038      ],
2039      "version": "1.0"
2040    },
2041    {
2042      "opname" : "OpUGreaterThanEqual",
2043      "class"  : "Relational_and_Logical",
2044      "opcode" : 174,
2045      "operands" : [
2046        { "kind" : "IdResultType" },
2047        { "kind" : "IdResult" },
2048        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2049        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2050      ],
2051      "version": "1.0"
2052    },
2053    {
2054      "opname" : "OpSGreaterThanEqual",
2055      "class"  : "Relational_and_Logical",
2056      "opcode" : 175,
2057      "operands" : [
2058        { "kind" : "IdResultType" },
2059        { "kind" : "IdResult" },
2060        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2061        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2062      ],
2063      "version": "1.0"
2064    },
2065    {
2066      "opname" : "OpULessThan",
2067      "class"  : "Relational_and_Logical",
2068      "opcode" : 176,
2069      "operands" : [
2070        { "kind" : "IdResultType" },
2071        { "kind" : "IdResult" },
2072        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2073        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2074      ],
2075      "version": "1.0"
2076    },
2077    {
2078      "opname" : "OpSLessThan",
2079      "class"  : "Relational_and_Logical",
2080      "opcode" : 177,
2081      "operands" : [
2082        { "kind" : "IdResultType" },
2083        { "kind" : "IdResult" },
2084        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2085        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2086      ],
2087      "version": "1.0"
2088    },
2089    {
2090      "opname" : "OpULessThanEqual",
2091      "class"  : "Relational_and_Logical",
2092      "opcode" : 178,
2093      "operands" : [
2094        { "kind" : "IdResultType" },
2095        { "kind" : "IdResult" },
2096        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2097        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2098      ],
2099      "version": "1.0"
2100    },
2101    {
2102      "opname" : "OpSLessThanEqual",
2103      "class"  : "Relational_and_Logical",
2104      "opcode" : 179,
2105      "operands" : [
2106        { "kind" : "IdResultType" },
2107        { "kind" : "IdResult" },
2108        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2109        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2110      ],
2111      "version": "1.0"
2112    },
2113    {
2114      "opname" : "OpFOrdEqual",
2115      "class"  : "Relational_and_Logical",
2116      "opcode" : 180,
2117      "operands" : [
2118        { "kind" : "IdResultType" },
2119        { "kind" : "IdResult" },
2120        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2121        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2122      ],
2123      "version": "1.0"
2124    },
2125    {
2126      "opname" : "OpFUnordEqual",
2127      "class"  : "Relational_and_Logical",
2128      "opcode" : 181,
2129      "operands" : [
2130        { "kind" : "IdResultType" },
2131        { "kind" : "IdResult" },
2132        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2133        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2134      ],
2135      "version": "1.0"
2136    },
2137    {
2138      "opname" : "OpFOrdNotEqual",
2139      "class"  : "Relational_and_Logical",
2140      "opcode" : 182,
2141      "operands" : [
2142        { "kind" : "IdResultType" },
2143        { "kind" : "IdResult" },
2144        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2145        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2146      ],
2147      "version": "1.0"
2148    },
2149    {
2150      "opname" : "OpFUnordNotEqual",
2151      "class"  : "Relational_and_Logical",
2152      "opcode" : 183,
2153      "operands" : [
2154        { "kind" : "IdResultType" },
2155        { "kind" : "IdResult" },
2156        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2157        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2158      ],
2159      "version": "1.0"
2160    },
2161    {
2162      "opname" : "OpFOrdLessThan",
2163      "class"  : "Relational_and_Logical",
2164      "opcode" : 184,
2165      "operands" : [
2166        { "kind" : "IdResultType" },
2167        { "kind" : "IdResult" },
2168        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2169        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2170      ],
2171      "version": "1.0"
2172    },
2173    {
2174      "opname" : "OpFUnordLessThan",
2175      "class"  : "Relational_and_Logical",
2176      "opcode" : 185,
2177      "operands" : [
2178        { "kind" : "IdResultType" },
2179        { "kind" : "IdResult" },
2180        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2181        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2182      ],
2183      "version": "1.0"
2184    },
2185    {
2186      "opname" : "OpFOrdGreaterThan",
2187      "class"  : "Relational_and_Logical",
2188      "opcode" : 186,
2189      "operands" : [
2190        { "kind" : "IdResultType" },
2191        { "kind" : "IdResult" },
2192        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2193        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2194      ],
2195      "version": "1.0"
2196    },
2197    {
2198      "opname" : "OpFUnordGreaterThan",
2199      "class"  : "Relational_and_Logical",
2200      "opcode" : 187,
2201      "operands" : [
2202        { "kind" : "IdResultType" },
2203        { "kind" : "IdResult" },
2204        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2205        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2206      ],
2207      "version": "1.0"
2208    },
2209    {
2210      "opname" : "OpFOrdLessThanEqual",
2211      "class"  : "Relational_and_Logical",
2212      "opcode" : 188,
2213      "operands" : [
2214        { "kind" : "IdResultType" },
2215        { "kind" : "IdResult" },
2216        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2217        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2218      ],
2219      "version": "1.0"
2220    },
2221    {
2222      "opname" : "OpFUnordLessThanEqual",
2223      "class"  : "Relational_and_Logical",
2224      "opcode" : 189,
2225      "operands" : [
2226        { "kind" : "IdResultType" },
2227        { "kind" : "IdResult" },
2228        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2229        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2230      ],
2231      "version": "1.0"
2232    },
2233    {
2234      "opname" : "OpFOrdGreaterThanEqual",
2235      "class"  : "Relational_and_Logical",
2236      "opcode" : 190,
2237      "operands" : [
2238        { "kind" : "IdResultType" },
2239        { "kind" : "IdResult" },
2240        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2241        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2242      ],
2243      "version": "1.0"
2244    },
2245    {
2246      "opname" : "OpFUnordGreaterThanEqual",
2247      "class"  : "Relational_and_Logical",
2248      "opcode" : 191,
2249      "operands" : [
2250        { "kind" : "IdResultType" },
2251        { "kind" : "IdResult" },
2252        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2253        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2254      ],
2255      "version": "1.0"
2256    },
2257    {
2258      "opname" : "OpShiftRightLogical",
2259      "class"  : "Bit",
2260      "opcode" : 194,
2261      "operands" : [
2262        { "kind" : "IdResultType" },
2263        { "kind" : "IdResult" },
2264        { "kind" : "IdRef",        "name" : "'Base'" },
2265        { "kind" : "IdRef",        "name" : "'Shift'" }
2266      ],
2267      "version": "1.0"
2268    },
2269    {
2270      "opname" : "OpShiftRightArithmetic",
2271      "class"  : "Bit",
2272      "opcode" : 195,
2273      "operands" : [
2274        { "kind" : "IdResultType" },
2275        { "kind" : "IdResult" },
2276        { "kind" : "IdRef",        "name" : "'Base'" },
2277        { "kind" : "IdRef",        "name" : "'Shift'" }
2278      ],
2279      "version": "1.0"
2280    },
2281    {
2282      "opname" : "OpShiftLeftLogical",
2283      "class"  : "Bit",
2284      "opcode" : 196,
2285      "operands" : [
2286        { "kind" : "IdResultType" },
2287        { "kind" : "IdResult" },
2288        { "kind" : "IdRef",        "name" : "'Base'" },
2289        { "kind" : "IdRef",        "name" : "'Shift'" }
2290      ],
2291      "version": "1.0"
2292    },
2293    {
2294      "opname" : "OpBitwiseOr",
2295      "class"  : "Bit",
2296      "opcode" : 197,
2297      "operands" : [
2298        { "kind" : "IdResultType" },
2299        { "kind" : "IdResult" },
2300        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2301        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2302      ],
2303      "version": "1.0"
2304    },
2305    {
2306      "opname" : "OpBitwiseXor",
2307      "class"  : "Bit",
2308      "opcode" : 198,
2309      "operands" : [
2310        { "kind" : "IdResultType" },
2311        { "kind" : "IdResult" },
2312        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2313        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2314      ],
2315      "version": "1.0"
2316    },
2317    {
2318      "opname" : "OpBitwiseAnd",
2319      "class"  : "Bit",
2320      "opcode" : 199,
2321      "operands" : [
2322        { "kind" : "IdResultType" },
2323        { "kind" : "IdResult" },
2324        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2325        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2326      ],
2327      "version": "1.0"
2328    },
2329    {
2330      "opname" : "OpNot",
2331      "class"  : "Bit",
2332      "opcode" : 200,
2333      "operands" : [
2334        { "kind" : "IdResultType" },
2335        { "kind" : "IdResult" },
2336        { "kind" : "IdRef",        "name" : "'Operand'" }
2337      ],
2338      "version": "1.0"
2339    },
2340    {
2341      "opname" : "OpBitFieldInsert",
2342      "class"  : "Bit",
2343      "opcode" : 201,
2344      "operands" : [
2345        { "kind" : "IdResultType" },
2346        { "kind" : "IdResult" },
2347        { "kind" : "IdRef",        "name" : "'Base'" },
2348        { "kind" : "IdRef",        "name" : "'Insert'" },
2349        { "kind" : "IdRef",        "name" : "'Offset'" },
2350        { "kind" : "IdRef",        "name" : "'Count'" }
2351      ],
2352      "capabilities" : [ "Shader", "BitInstructions" ],
2353      "version": "1.0"
2354    },
2355    {
2356      "opname" : "OpBitFieldSExtract",
2357      "class"  : "Bit",
2358      "opcode" : 202,
2359      "operands" : [
2360        { "kind" : "IdResultType" },
2361        { "kind" : "IdResult" },
2362        { "kind" : "IdRef",        "name" : "'Base'" },
2363        { "kind" : "IdRef",        "name" : "'Offset'" },
2364        { "kind" : "IdRef",        "name" : "'Count'" }
2365      ],
2366      "capabilities" : [ "Shader", "BitInstructions" ],
2367      "version": "1.0"
2368    },
2369    {
2370      "opname" : "OpBitFieldUExtract",
2371      "class"  : "Bit",
2372      "opcode" : 203,
2373      "operands" : [
2374        { "kind" : "IdResultType" },
2375        { "kind" : "IdResult" },
2376        { "kind" : "IdRef",        "name" : "'Base'" },
2377        { "kind" : "IdRef",        "name" : "'Offset'" },
2378        { "kind" : "IdRef",        "name" : "'Count'" }
2379      ],
2380      "capabilities" : [ "Shader", "BitInstructions" ],
2381      "version": "1.0"
2382    },
2383    {
2384      "opname" : "OpBitReverse",
2385      "class"  : "Bit",
2386      "opcode" : 204,
2387      "operands" : [
2388        { "kind" : "IdResultType" },
2389        { "kind" : "IdResult" },
2390        { "kind" : "IdRef",        "name" : "'Base'" }
2391      ],
2392      "capabilities" : [ "Shader", "BitInstructions" ],
2393      "version": "1.0"
2394    },
2395    {
2396      "opname" : "OpBitCount",
2397      "class"  : "Bit",
2398      "opcode" : 205,
2399      "operands" : [
2400        { "kind" : "IdResultType" },
2401        { "kind" : "IdResult" },
2402        { "kind" : "IdRef",        "name" : "'Base'" }
2403      ],
2404      "version": "1.0"
2405    },
2406    {
2407      "opname" : "OpDPdx",
2408      "class"  : "Derivative",
2409      "opcode" : 207,
2410      "operands" : [
2411        { "kind" : "IdResultType" },
2412        { "kind" : "IdResult" },
2413        { "kind" : "IdRef",        "name" : "'P'" }
2414      ],
2415      "capabilities" : [ "Shader" ],
2416      "version": "1.0"
2417    },
2418    {
2419      "opname" : "OpDPdy",
2420      "class"  : "Derivative",
2421      "opcode" : 208,
2422      "operands" : [
2423        { "kind" : "IdResultType" },
2424        { "kind" : "IdResult" },
2425        { "kind" : "IdRef",        "name" : "'P'" }
2426      ],
2427      "capabilities" : [ "Shader" ],
2428      "version": "1.0"
2429    },
2430    {
2431      "opname" : "OpFwidth",
2432      "class"  : "Derivative",
2433      "opcode" : 209,
2434      "operands" : [
2435        { "kind" : "IdResultType" },
2436        { "kind" : "IdResult" },
2437        { "kind" : "IdRef",        "name" : "'P'" }
2438      ],
2439      "capabilities" : [ "Shader" ],
2440      "version": "1.0"
2441    },
2442    {
2443      "opname" : "OpDPdxFine",
2444      "class"  : "Derivative",
2445      "opcode" : 210,
2446      "operands" : [
2447        { "kind" : "IdResultType" },
2448        { "kind" : "IdResult" },
2449        { "kind" : "IdRef",        "name" : "'P'" }
2450      ],
2451      "capabilities" : [ "DerivativeControl" ],
2452      "version": "1.0"
2453    },
2454    {
2455      "opname" : "OpDPdyFine",
2456      "class"  : "Derivative",
2457      "opcode" : 211,
2458      "operands" : [
2459        { "kind" : "IdResultType" },
2460        { "kind" : "IdResult" },
2461        { "kind" : "IdRef",        "name" : "'P'" }
2462      ],
2463      "capabilities" : [ "DerivativeControl" ],
2464      "version": "1.0"
2465    },
2466    {
2467      "opname" : "OpFwidthFine",
2468      "class"  : "Derivative",
2469      "opcode" : 212,
2470      "operands" : [
2471        { "kind" : "IdResultType" },
2472        { "kind" : "IdResult" },
2473        { "kind" : "IdRef",        "name" : "'P'" }
2474      ],
2475      "capabilities" : [ "DerivativeControl" ],
2476      "version": "1.0"
2477    },
2478    {
2479      "opname" : "OpDPdxCoarse",
2480      "class"  : "Derivative",
2481      "opcode" : 213,
2482      "operands" : [
2483        { "kind" : "IdResultType" },
2484        { "kind" : "IdResult" },
2485        { "kind" : "IdRef",        "name" : "'P'" }
2486      ],
2487      "capabilities" : [ "DerivativeControl" ],
2488      "version": "1.0"
2489    },
2490    {
2491      "opname" : "OpDPdyCoarse",
2492      "class"  : "Derivative",
2493      "opcode" : 214,
2494      "operands" : [
2495        { "kind" : "IdResultType" },
2496        { "kind" : "IdResult" },
2497        { "kind" : "IdRef",        "name" : "'P'" }
2498      ],
2499      "capabilities" : [ "DerivativeControl" ],
2500      "version": "1.0"
2501    },
2502    {
2503      "opname" : "OpFwidthCoarse",
2504      "class"  : "Derivative",
2505      "opcode" : 215,
2506      "operands" : [
2507        { "kind" : "IdResultType" },
2508        { "kind" : "IdResult" },
2509        { "kind" : "IdRef",        "name" : "'P'" }
2510      ],
2511      "capabilities" : [ "DerivativeControl" ],
2512      "version": "1.0"
2513    },
2514    {
2515      "opname" : "OpEmitVertex",
2516      "class"  : "Primitive",
2517      "opcode" : 218,
2518      "capabilities" : [ "Geometry" ],
2519      "version": "1.0"
2520    },
2521    {
2522      "opname" : "OpEndPrimitive",
2523      "class"  : "Primitive",
2524      "opcode" : 219,
2525      "capabilities" : [ "Geometry" ],
2526      "version": "1.0"
2527    },
2528    {
2529      "opname" : "OpEmitStreamVertex",
2530      "class"  : "Primitive",
2531      "opcode" : 220,
2532      "operands" : [
2533        { "kind" : "IdRef", "name" : "'Stream'" }
2534      ],
2535      "capabilities" : [ "GeometryStreams" ],
2536      "version": "1.0"
2537    },
2538    {
2539      "opname" : "OpEndStreamPrimitive",
2540      "class"  : "Primitive",
2541      "opcode" : 221,
2542      "operands" : [
2543        { "kind" : "IdRef", "name" : "'Stream'" }
2544      ],
2545      "capabilities" : [ "GeometryStreams" ],
2546      "version": "1.0"
2547    },
2548    {
2549      "opname" : "OpControlBarrier",
2550      "class"  : "Barrier",
2551      "opcode" : 224,
2552      "operands" : [
2553        { "kind" : "IdScope",           "name" : "'Execution'" },
2554        { "kind" : "IdScope",           "name" : "'Memory'" },
2555        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2556      ],
2557      "version": "1.0"
2558    },
2559    {
2560      "opname" : "OpMemoryBarrier",
2561      "class"  : "Barrier",
2562      "opcode" : 225,
2563      "operands" : [
2564        { "kind" : "IdScope",           "name" : "'Memory'" },
2565        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2566      ],
2567      "version": "1.0"
2568    },
2569    {
2570      "opname" : "OpAtomicLoad",
2571      "class"  : "Atomic",
2572      "opcode" : 227,
2573      "operands" : [
2574        { "kind" : "IdResultType" },
2575        { "kind" : "IdResult" },
2576        { "kind" : "IdRef",             "name" : "'Pointer'" },
2577        { "kind" : "IdScope",           "name" : "'Memory'" },
2578        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2579      ],
2580      "version": "1.0"
2581    },
2582    {
2583      "opname" : "OpAtomicStore",
2584      "class"  : "Atomic",
2585      "opcode" : 228,
2586      "operands" : [
2587        { "kind" : "IdRef",             "name" : "'Pointer'" },
2588        { "kind" : "IdScope",           "name" : "'Memory'" },
2589        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2590        { "kind" : "IdRef",             "name" : "'Value'" }
2591      ],
2592      "version": "1.0"
2593    },
2594    {
2595      "opname" : "OpAtomicExchange",
2596      "class"  : "Atomic",
2597      "opcode" : 229,
2598      "operands" : [
2599        { "kind" : "IdResultType" },
2600        { "kind" : "IdResult" },
2601        { "kind" : "IdRef",             "name" : "'Pointer'" },
2602        { "kind" : "IdScope",           "name" : "'Memory'" },
2603        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2604        { "kind" : "IdRef",             "name" : "'Value'" }
2605      ],
2606      "version": "1.0"
2607    },
2608    {
2609      "opname" : "OpAtomicCompareExchange",
2610      "class"  : "Atomic",
2611      "opcode" : 230,
2612      "operands" : [
2613        { "kind" : "IdResultType" },
2614        { "kind" : "IdResult" },
2615        { "kind" : "IdRef",             "name" : "'Pointer'" },
2616        { "kind" : "IdScope",           "name" : "'Memory'" },
2617        { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2618        { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2619        { "kind" : "IdRef",             "name" : "'Value'" },
2620        { "kind" : "IdRef",             "name" : "'Comparator'" }
2621      ],
2622      "version": "1.0"
2623    },
2624    {
2625      "opname" : "OpAtomicCompareExchangeWeak",
2626      "class"  : "Atomic",
2627      "opcode" : 231,
2628      "operands" : [
2629        { "kind" : "IdResultType" },
2630        { "kind" : "IdResult" },
2631        { "kind" : "IdRef",             "name" : "'Pointer'" },
2632        { "kind" : "IdScope",           "name" : "'Memory'" },
2633        { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2634        { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2635        { "kind" : "IdRef",             "name" : "'Value'" },
2636        { "kind" : "IdRef",             "name" : "'Comparator'" }
2637      ],
2638      "capabilities" : [ "Kernel" ],
2639      "version" : "1.0",
2640      "lastVersion" : "1.3"
2641    },
2642    {
2643      "opname" : "OpAtomicIIncrement",
2644      "class"  : "Atomic",
2645      "opcode" : 232,
2646      "operands" : [
2647        { "kind" : "IdResultType" },
2648        { "kind" : "IdResult" },
2649        { "kind" : "IdRef",             "name" : "'Pointer'" },
2650        { "kind" : "IdScope",           "name" : "'Memory'" },
2651        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2652      ],
2653      "version": "1.0"
2654    },
2655    {
2656      "opname" : "OpAtomicIDecrement",
2657      "class"  : "Atomic",
2658      "opcode" : 233,
2659      "operands" : [
2660        { "kind" : "IdResultType" },
2661        { "kind" : "IdResult" },
2662        { "kind" : "IdRef",             "name" : "'Pointer'" },
2663        { "kind" : "IdScope",           "name" : "'Memory'" },
2664        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2665      ],
2666      "version": "1.0"
2667    },
2668    {
2669      "opname" : "OpAtomicIAdd",
2670      "class"  : "Atomic",
2671      "opcode" : 234,
2672      "operands" : [
2673        { "kind" : "IdResultType" },
2674        { "kind" : "IdResult" },
2675        { "kind" : "IdRef",             "name" : "'Pointer'" },
2676        { "kind" : "IdScope",           "name" : "'Memory'" },
2677        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2678        { "kind" : "IdRef",             "name" : "'Value'" }
2679      ],
2680      "version": "1.0"
2681    },
2682    {
2683      "opname" : "OpAtomicISub",
2684      "class"  : "Atomic",
2685      "opcode" : 235,
2686      "operands" : [
2687        { "kind" : "IdResultType" },
2688        { "kind" : "IdResult" },
2689        { "kind" : "IdRef",             "name" : "'Pointer'" },
2690        { "kind" : "IdScope",           "name" : "'Memory'" },
2691        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2692        { "kind" : "IdRef",             "name" : "'Value'" }
2693      ],
2694      "version": "1.0"
2695    },
2696    {
2697      "opname" : "OpAtomicSMin",
2698      "class"  : "Atomic",
2699      "opcode" : 236,
2700      "operands" : [
2701        { "kind" : "IdResultType" },
2702        { "kind" : "IdResult" },
2703        { "kind" : "IdRef",             "name" : "'Pointer'" },
2704        { "kind" : "IdScope",           "name" : "'Memory'" },
2705        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2706        { "kind" : "IdRef",             "name" : "'Value'" }
2707      ],
2708      "version": "1.0"
2709    },
2710    {
2711      "opname" : "OpAtomicUMin",
2712      "class"  : "Atomic",
2713      "opcode" : 237,
2714      "operands" : [
2715        { "kind" : "IdResultType" },
2716        { "kind" : "IdResult" },
2717        { "kind" : "IdRef",             "name" : "'Pointer'" },
2718        { "kind" : "IdScope",           "name" : "'Memory'" },
2719        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2720        { "kind" : "IdRef",             "name" : "'Value'" }
2721      ],
2722      "version": "1.0"
2723    },
2724    {
2725      "opname" : "OpAtomicSMax",
2726      "class"  : "Atomic",
2727      "opcode" : 238,
2728      "operands" : [
2729        { "kind" : "IdResultType" },
2730        { "kind" : "IdResult" },
2731        { "kind" : "IdRef",             "name" : "'Pointer'" },
2732        { "kind" : "IdScope",           "name" : "'Memory'" },
2733        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2734        { "kind" : "IdRef",             "name" : "'Value'" }
2735      ],
2736      "version": "1.0"
2737    },
2738    {
2739      "opname" : "OpAtomicUMax",
2740      "class"  : "Atomic",
2741      "opcode" : 239,
2742      "operands" : [
2743        { "kind" : "IdResultType" },
2744        { "kind" : "IdResult" },
2745        { "kind" : "IdRef",             "name" : "'Pointer'" },
2746        { "kind" : "IdScope",           "name" : "'Memory'" },
2747        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2748        { "kind" : "IdRef",             "name" : "'Value'" }
2749      ],
2750      "version": "1.0"
2751    },
2752    {
2753      "opname" : "OpAtomicAnd",
2754      "class"  : "Atomic",
2755      "opcode" : 240,
2756      "operands" : [
2757        { "kind" : "IdResultType" },
2758        { "kind" : "IdResult" },
2759        { "kind" : "IdRef",             "name" : "'Pointer'" },
2760        { "kind" : "IdScope",           "name" : "'Memory'" },
2761        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2762        { "kind" : "IdRef",             "name" : "'Value'" }
2763      ],
2764      "version": "1.0"
2765    },
2766    {
2767      "opname" : "OpAtomicOr",
2768      "class"  : "Atomic",
2769      "opcode" : 241,
2770      "operands" : [
2771        { "kind" : "IdResultType" },
2772        { "kind" : "IdResult" },
2773        { "kind" : "IdRef",             "name" : "'Pointer'" },
2774        { "kind" : "IdScope",           "name" : "'Memory'" },
2775        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2776        { "kind" : "IdRef",             "name" : "'Value'" }
2777      ],
2778      "version": "1.0"
2779    },
2780    {
2781      "opname" : "OpAtomicXor",
2782      "class"  : "Atomic",
2783      "opcode" : 242,
2784      "operands" : [
2785        { "kind" : "IdResultType" },
2786        { "kind" : "IdResult" },
2787        { "kind" : "IdRef",             "name" : "'Pointer'" },
2788        { "kind" : "IdScope",           "name" : "'Memory'" },
2789        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2790        { "kind" : "IdRef",             "name" : "'Value'" }
2791      ],
2792      "version": "1.0"
2793    },
2794    {
2795      "opname" : "OpPhi",
2796      "class"  : "Control-Flow",
2797      "opcode" : 245,
2798      "operands" : [
2799        { "kind" : "IdResultType" },
2800        { "kind" : "IdResult" },
2801        { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" }
2802      ],
2803      "version": "1.0"
2804    },
2805    {
2806      "opname" : "OpLoopMerge",
2807      "class"  : "Control-Flow",
2808      "opcode" : 246,
2809      "operands" : [
2810        { "kind" : "IdRef",       "name" : "'Merge Block'" },
2811        { "kind" : "IdRef",       "name" : "'Continue Target'" },
2812        { "kind" : "LoopControl" }
2813      ],
2814      "version": "1.0"
2815    },
2816    {
2817      "opname" : "OpSelectionMerge",
2818      "class"  : "Control-Flow",
2819      "opcode" : 247,
2820      "operands" : [
2821        { "kind" : "IdRef",            "name" : "'Merge Block'" },
2822        { "kind" : "SelectionControl" }
2823      ],
2824      "version": "1.0"
2825    },
2826    {
2827      "opname" : "OpLabel",
2828      "class"  : "Control-Flow",
2829      "opcode" : 248,
2830      "operands" : [
2831        { "kind" : "IdResult" }
2832      ],
2833      "version": "1.0"
2834    },
2835    {
2836      "opname" : "OpBranch",
2837      "class"  : "Control-Flow",
2838      "opcode" : 249,
2839      "operands" : [
2840        { "kind" : "IdRef", "name" : "'Target Label'" }
2841      ],
2842      "version": "1.0"
2843    },
2844    {
2845      "opname" : "OpBranchConditional",
2846      "class"  : "Control-Flow",
2847      "opcode" : 250,
2848      "operands" : [
2849        { "kind" : "IdRef",                              "name" : "'Condition'" },
2850        { "kind" : "IdRef",                              "name" : "'True Label'" },
2851        { "kind" : "IdRef",                              "name" : "'False Label'" },
2852        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" }
2853      ],
2854      "version": "1.0"
2855    },
2856    {
2857      "opname" : "OpSwitch",
2858      "class"  : "Control-Flow",
2859      "opcode" : 251,
2860      "operands" : [
2861        { "kind" : "IdRef",                                       "name" : "'Selector'" },
2862        { "kind" : "IdRef",                                       "name" : "'Default'" },
2863        { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" }
2864      ],
2865      "version": "1.0"
2866    },
2867    {
2868      "opname" : "OpKill",
2869      "class"  : "Control-Flow",
2870      "opcode" : 252,
2871      "capabilities" : [ "Shader" ],
2872      "version": "1.0"
2873    },
2874    {
2875      "opname" : "OpReturn",
2876      "class"  : "Control-Flow",
2877      "opcode" : 253,
2878      "version" : "1.0"
2879    },
2880    {
2881      "opname" : "OpReturnValue",
2882      "class"  : "Control-Flow",
2883      "opcode" : 254,
2884      "operands" : [
2885        { "kind" : "IdRef", "name" : "'Value'" }
2886      ],
2887      "version": "1.0"
2888    },
2889    {
2890      "opname" : "OpUnreachable",
2891      "class"  : "Control-Flow",
2892      "opcode" : 255,
2893      "version" : "1.0"
2894    },
2895    {
2896      "opname" : "OpLifetimeStart",
2897      "class"  : "Control-Flow",
2898      "opcode" : 256,
2899      "operands" : [
2900        { "kind" : "IdRef",          "name" : "'Pointer'" },
2901        { "kind" : "LiteralInteger", "name" : "'Size'" }
2902      ],
2903      "capabilities" : [ "Kernel" ],
2904      "version": "1.0"
2905    },
2906    {
2907      "opname" : "OpLifetimeStop",
2908      "class"  : "Control-Flow",
2909      "opcode" : 257,
2910      "operands" : [
2911        { "kind" : "IdRef",          "name" : "'Pointer'" },
2912        { "kind" : "LiteralInteger", "name" : "'Size'" }
2913      ],
2914      "capabilities" : [ "Kernel" ],
2915      "version": "1.0"
2916    },
2917    {
2918      "opname" : "OpGroupAsyncCopy",
2919      "class"  : "Group",
2920      "opcode" : 259,
2921      "operands" : [
2922        { "kind" : "IdResultType" },
2923        { "kind" : "IdResult" },
2924        { "kind" : "IdScope",      "name" : "'Execution'" },
2925        { "kind" : "IdRef",        "name" : "'Destination'" },
2926        { "kind" : "IdRef",        "name" : "'Source'" },
2927        { "kind" : "IdRef",        "name" : "'Num Elements'" },
2928        { "kind" : "IdRef",        "name" : "'Stride'" },
2929        { "kind" : "IdRef",        "name" : "'Event'" }
2930      ],
2931      "capabilities" : [ "Kernel" ],
2932      "version": "1.0"
2933    },
2934    {
2935      "opname" : "OpGroupWaitEvents",
2936      "class"  : "Group",
2937      "opcode" : 260,
2938      "operands" : [
2939        { "kind" : "IdScope", "name" : "'Execution'" },
2940        { "kind" : "IdRef",   "name" : "'Num Events'" },
2941        { "kind" : "IdRef",   "name" : "'Events List'" }
2942      ],
2943      "capabilities" : [ "Kernel" ],
2944      "version": "1.0"
2945    },
2946    {
2947      "opname" : "OpGroupAll",
2948      "class"  : "Group",
2949      "opcode" : 261,
2950      "operands" : [
2951        { "kind" : "IdResultType" },
2952        { "kind" : "IdResult" },
2953        { "kind" : "IdScope",      "name" : "'Execution'" },
2954        { "kind" : "IdRef",        "name" : "'Predicate'" }
2955      ],
2956      "capabilities" : [ "Groups" ],
2957      "version": "1.0"
2958    },
2959    {
2960      "opname" : "OpGroupAny",
2961      "class"  : "Group",
2962      "opcode" : 262,
2963      "operands" : [
2964        { "kind" : "IdResultType" },
2965        { "kind" : "IdResult" },
2966        { "kind" : "IdScope",      "name" : "'Execution'" },
2967        { "kind" : "IdRef",        "name" : "'Predicate'" }
2968      ],
2969      "capabilities" : [ "Groups" ],
2970      "version": "1.0"
2971    },
2972    {
2973      "opname" : "OpGroupBroadcast",
2974      "class"  : "Group",
2975      "opcode" : 263,
2976      "operands" : [
2977        { "kind" : "IdResultType" },
2978        { "kind" : "IdResult" },
2979        { "kind" : "IdScope",      "name" : "'Execution'" },
2980        { "kind" : "IdRef",        "name" : "'Value'" },
2981        { "kind" : "IdRef",        "name" : "'LocalId'" }
2982      ],
2983      "capabilities" : [ "Groups" ],
2984      "version": "1.0"
2985    },
2986    {
2987      "opname" : "OpGroupIAdd",
2988      "class"  : "Group",
2989      "opcode" : 264,
2990      "operands" : [
2991        { "kind" : "IdResultType" },
2992        { "kind" : "IdResult" },
2993        { "kind" : "IdScope",        "name" : "'Execution'" },
2994        { "kind" : "GroupOperation", "name" : "'Operation'" },
2995        { "kind" : "IdRef",          "name" : "'X'" }
2996      ],
2997      "capabilities" : [ "Groups" ],
2998      "version": "1.0"
2999    },
3000    {
3001      "opname" : "OpGroupFAdd",
3002      "class"  : "Group",
3003      "opcode" : 265,
3004      "operands" : [
3005        { "kind" : "IdResultType" },
3006        { "kind" : "IdResult" },
3007        { "kind" : "IdScope",        "name" : "'Execution'" },
3008        { "kind" : "GroupOperation", "name" : "'Operation'" },
3009        { "kind" : "IdRef",          "name" : "'X'" }
3010      ],
3011      "capabilities" : [ "Groups" ],
3012      "version": "1.0"
3013    },
3014    {
3015      "opname" : "OpGroupFMin",
3016      "class"  : "Group",
3017      "opcode" : 266,
3018      "operands" : [
3019        { "kind" : "IdResultType" },
3020        { "kind" : "IdResult" },
3021        { "kind" : "IdScope",        "name" : "'Execution'" },
3022        { "kind" : "GroupOperation", "name" : "'Operation'" },
3023        { "kind" : "IdRef",          "name" : "'X'" }
3024      ],
3025      "capabilities" : [ "Groups" ],
3026      "version": "1.0"
3027    },
3028    {
3029      "opname" : "OpGroupUMin",
3030      "class"  : "Group",
3031      "opcode" : 267,
3032      "operands" : [
3033        { "kind" : "IdResultType" },
3034        { "kind" : "IdResult" },
3035        { "kind" : "IdScope",        "name" : "'Execution'" },
3036        { "kind" : "GroupOperation", "name" : "'Operation'" },
3037        { "kind" : "IdRef",          "name" : "'X'" }
3038      ],
3039      "capabilities" : [ "Groups" ],
3040      "version": "1.0"
3041    },
3042    {
3043      "opname" : "OpGroupSMin",
3044      "class"  : "Group",
3045      "opcode" : 268,
3046      "operands" : [
3047        { "kind" : "IdResultType" },
3048        { "kind" : "IdResult" },
3049        { "kind" : "IdScope",        "name" : "'Execution'" },
3050        { "kind" : "GroupOperation", "name" : "'Operation'" },
3051        { "kind" : "IdRef",          "name" : "'X'" }
3052      ],
3053      "capabilities" : [ "Groups" ],
3054      "version": "1.0"
3055    },
3056    {
3057      "opname" : "OpGroupFMax",
3058      "class"  : "Group",
3059      "opcode" : 269,
3060      "operands" : [
3061        { "kind" : "IdResultType" },
3062        { "kind" : "IdResult" },
3063        { "kind" : "IdScope",        "name" : "'Execution'" },
3064        { "kind" : "GroupOperation", "name" : "'Operation'" },
3065        { "kind" : "IdRef",          "name" : "'X'" }
3066      ],
3067      "capabilities" : [ "Groups" ],
3068      "version": "1.0"
3069    },
3070    {
3071      "opname" : "OpGroupUMax",
3072      "class"  : "Group",
3073      "opcode" : 270,
3074      "operands" : [
3075        { "kind" : "IdResultType" },
3076        { "kind" : "IdResult" },
3077        { "kind" : "IdScope",        "name" : "'Execution'" },
3078        { "kind" : "GroupOperation", "name" : "'Operation'" },
3079        { "kind" : "IdRef",          "name" : "'X'" }
3080      ],
3081      "capabilities" : [ "Groups" ],
3082      "version": "1.0"
3083    },
3084    {
3085      "opname" : "OpGroupSMax",
3086      "class"  : "Group",
3087      "opcode" : 271,
3088      "operands" : [
3089        { "kind" : "IdResultType" },
3090        { "kind" : "IdResult" },
3091        { "kind" : "IdScope",        "name" : "'Execution'" },
3092        { "kind" : "GroupOperation", "name" : "'Operation'" },
3093        { "kind" : "IdRef",          "name" : "'X'" }
3094      ],
3095      "capabilities" : [ "Groups" ],
3096      "version": "1.0"
3097    },
3098    {
3099      "opname" : "OpReadPipe",
3100      "class"  : "Pipe",
3101      "opcode" : 274,
3102      "operands" : [
3103        { "kind" : "IdResultType" },
3104        { "kind" : "IdResult" },
3105        { "kind" : "IdRef",        "name" : "'Pipe'" },
3106        { "kind" : "IdRef",        "name" : "'Pointer'" },
3107        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3108        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3109      ],
3110      "capabilities" : [ "Pipes" ],
3111      "version": "1.0"
3112    },
3113    {
3114      "opname" : "OpWritePipe",
3115      "class"  : "Pipe",
3116      "opcode" : 275,
3117      "operands" : [
3118        { "kind" : "IdResultType" },
3119        { "kind" : "IdResult" },
3120        { "kind" : "IdRef",        "name" : "'Pipe'" },
3121        { "kind" : "IdRef",        "name" : "'Pointer'" },
3122        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3123        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3124      ],
3125      "capabilities" : [ "Pipes" ],
3126      "version": "1.0"
3127    },
3128    {
3129      "opname" : "OpReservedReadPipe",
3130      "class"  : "Pipe",
3131      "opcode" : 276,
3132      "operands" : [
3133        { "kind" : "IdResultType" },
3134        { "kind" : "IdResult" },
3135        { "kind" : "IdRef",        "name" : "'Pipe'" },
3136        { "kind" : "IdRef",        "name" : "'Reserve Id'" },
3137        { "kind" : "IdRef",        "name" : "'Index'" },
3138        { "kind" : "IdRef",        "name" : "'Pointer'" },
3139        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3140        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3141      ],
3142      "capabilities" : [ "Pipes" ],
3143      "version": "1.0"
3144    },
3145    {
3146      "opname" : "OpReservedWritePipe",
3147      "class"  : "Pipe",
3148      "opcode" : 277,
3149      "operands" : [
3150        { "kind" : "IdResultType" },
3151        { "kind" : "IdResult" },
3152        { "kind" : "IdRef",        "name" : "'Pipe'" },
3153        { "kind" : "IdRef",        "name" : "'Reserve Id'" },
3154        { "kind" : "IdRef",        "name" : "'Index'" },
3155        { "kind" : "IdRef",        "name" : "'Pointer'" },
3156        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3157        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3158      ],
3159      "capabilities" : [ "Pipes" ],
3160      "version": "1.0"
3161    },
3162    {
3163      "opname" : "OpReserveReadPipePackets",
3164      "class"  : "Pipe",
3165      "opcode" : 278,
3166      "operands" : [
3167        { "kind" : "IdResultType" },
3168        { "kind" : "IdResult" },
3169        { "kind" : "IdRef",        "name" : "'Pipe'" },
3170        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3171        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3172        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3173      ],
3174      "capabilities" : [ "Pipes" ],
3175      "version": "1.0"
3176    },
3177    {
3178      "opname" : "OpReserveWritePipePackets",
3179      "class"  : "Pipe",
3180      "opcode" : 279,
3181      "operands" : [
3182        { "kind" : "IdResultType" },
3183        { "kind" : "IdResult" },
3184        { "kind" : "IdRef",        "name" : "'Pipe'" },
3185        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3186        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3187        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3188      ],
3189      "capabilities" : [ "Pipes" ],
3190      "version": "1.0"
3191    },
3192    {
3193      "opname" : "OpCommitReadPipe",
3194      "class"  : "Pipe",
3195      "opcode" : 280,
3196      "operands" : [
3197        { "kind" : "IdRef", "name" : "'Pipe'" },
3198        { "kind" : "IdRef", "name" : "'Reserve Id'" },
3199        { "kind" : "IdRef", "name" : "'Packet Size'" },
3200        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
3201      ],
3202      "capabilities" : [ "Pipes" ],
3203      "version": "1.0"
3204    },
3205    {
3206      "opname" : "OpCommitWritePipe",
3207      "class"  : "Pipe",
3208      "opcode" : 281,
3209      "operands" : [
3210        { "kind" : "IdRef", "name" : "'Pipe'" },
3211        { "kind" : "IdRef", "name" : "'Reserve Id'" },
3212        { "kind" : "IdRef", "name" : "'Packet Size'" },
3213        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
3214      ],
3215      "capabilities" : [ "Pipes" ],
3216      "version": "1.0"
3217    },
3218    {
3219      "opname" : "OpIsValidReserveId",
3220      "class"  : "Pipe",
3221      "opcode" : 282,
3222      "operands" : [
3223        { "kind" : "IdResultType" },
3224        { "kind" : "IdResult" },
3225        { "kind" : "IdRef",        "name" : "'Reserve Id'" }
3226      ],
3227      "capabilities" : [ "Pipes" ],
3228      "version": "1.0"
3229    },
3230    {
3231      "opname" : "OpGetNumPipePackets",
3232      "class"  : "Pipe",
3233      "opcode" : 283,
3234      "operands" : [
3235        { "kind" : "IdResultType" },
3236        { "kind" : "IdResult" },
3237        { "kind" : "IdRef",        "name" : "'Pipe'" },
3238        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3239        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3240      ],
3241      "capabilities" : [ "Pipes" ],
3242      "version": "1.0"
3243    },
3244    {
3245      "opname" : "OpGetMaxPipePackets",
3246      "class"  : "Pipe",
3247      "opcode" : 284,
3248      "operands" : [
3249        { "kind" : "IdResultType" },
3250        { "kind" : "IdResult" },
3251        { "kind" : "IdRef",        "name" : "'Pipe'" },
3252        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3253        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3254      ],
3255      "capabilities" : [ "Pipes" ],
3256      "version": "1.0"
3257    },
3258    {
3259      "opname" : "OpGroupReserveReadPipePackets",
3260      "class"  : "Pipe",
3261      "opcode" : 285,
3262      "operands" : [
3263        { "kind" : "IdResultType" },
3264        { "kind" : "IdResult" },
3265        { "kind" : "IdScope",      "name" : "'Execution'" },
3266        { "kind" : "IdRef",        "name" : "'Pipe'" },
3267        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3268        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3269        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3270      ],
3271      "capabilities" : [ "Pipes" ],
3272      "version": "1.0"
3273    },
3274    {
3275      "opname" : "OpGroupReserveWritePipePackets",
3276      "class"  : "Pipe",
3277      "opcode" : 286,
3278      "operands" : [
3279        { "kind" : "IdResultType" },
3280        { "kind" : "IdResult" },
3281        { "kind" : "IdScope",      "name" : "'Execution'" },
3282        { "kind" : "IdRef",        "name" : "'Pipe'" },
3283        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3284        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3285        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3286      ],
3287      "capabilities" : [ "Pipes" ],
3288      "version": "1.0"
3289    },
3290    {
3291      "opname" : "OpGroupCommitReadPipe",
3292      "class"  : "Pipe",
3293      "opcode" : 287,
3294      "operands" : [
3295        { "kind" : "IdScope", "name" : "'Execution'" },
3296        { "kind" : "IdRef",   "name" : "'Pipe'" },
3297        { "kind" : "IdRef",   "name" : "'Reserve Id'" },
3298        { "kind" : "IdRef",   "name" : "'Packet Size'" },
3299        { "kind" : "IdRef",   "name" : "'Packet Alignment'" }
3300      ],
3301      "capabilities" : [ "Pipes" ],
3302      "version": "1.0"
3303    },
3304    {
3305      "opname" : "OpGroupCommitWritePipe",
3306      "class"  : "Pipe",
3307      "opcode" : 288,
3308      "operands" : [
3309        { "kind" : "IdScope", "name" : "'Execution'" },
3310        { "kind" : "IdRef",   "name" : "'Pipe'" },
3311        { "kind" : "IdRef",   "name" : "'Reserve Id'" },
3312        { "kind" : "IdRef",   "name" : "'Packet Size'" },
3313        { "kind" : "IdRef",   "name" : "'Packet Alignment'" }
3314      ],
3315      "capabilities" : [ "Pipes" ],
3316      "version": "1.0"
3317    },
3318    {
3319      "opname" : "OpEnqueueMarker",
3320      "class"  : "Device-Side_Enqueue",
3321      "opcode" : 291,
3322      "operands" : [
3323        { "kind" : "IdResultType" },
3324        { "kind" : "IdResult" },
3325        { "kind" : "IdRef",        "name" : "'Queue'" },
3326        { "kind" : "IdRef",        "name" : "'Num Events'" },
3327        { "kind" : "IdRef",        "name" : "'Wait Events'" },
3328        { "kind" : "IdRef",        "name" : "'Ret Event'" }
3329      ],
3330      "capabilities" : [ "DeviceEnqueue" ],
3331      "version": "1.0"
3332    },
3333    {
3334      "opname" : "OpEnqueueKernel",
3335      "class"  : "Device-Side_Enqueue",
3336      "opcode" : 292,
3337      "operands" : [
3338        { "kind" : "IdResultType" },
3339        { "kind" : "IdResult" },
3340        { "kind" : "IdRef",                            "name" : "'Queue'" },
3341        { "kind" : "IdRef",                            "name" : "'Flags'" },
3342        { "kind" : "IdRef",                            "name" : "'ND Range'" },
3343        { "kind" : "IdRef",                            "name" : "'Num Events'" },
3344        { "kind" : "IdRef",                            "name" : "'Wait Events'" },
3345        { "kind" : "IdRef",                            "name" : "'Ret Event'" },
3346        { "kind" : "IdRef",                            "name" : "'Invoke'" },
3347        { "kind" : "IdRef",                            "name" : "'Param'" },
3348        { "kind" : "IdRef",                            "name" : "'Param Size'" },
3349        { "kind" : "IdRef",                            "name" : "'Param Align'" },
3350        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Local Size'" }
3351      ],
3352      "capabilities" : [ "DeviceEnqueue" ],
3353      "version": "1.0"
3354    },
3355    {
3356      "opname" : "OpGetKernelNDrangeSubGroupCount",
3357      "class"  : "Device-Side_Enqueue",
3358      "opcode" : 293,
3359      "operands" : [
3360        { "kind" : "IdResultType" },
3361        { "kind" : "IdResult" },
3362        { "kind" : "IdRef",        "name" : "'ND Range'" },
3363        { "kind" : "IdRef",        "name" : "'Invoke'" },
3364        { "kind" : "IdRef",        "name" : "'Param'" },
3365        { "kind" : "IdRef",        "name" : "'Param Size'" },
3366        { "kind" : "IdRef",        "name" : "'Param Align'" }
3367      ],
3368      "capabilities" : [ "DeviceEnqueue" ],
3369      "version": "1.0"
3370    },
3371    {
3372      "opname" : "OpGetKernelNDrangeMaxSubGroupSize",
3373      "class"  : "Device-Side_Enqueue",
3374      "opcode" : 294,
3375      "operands" : [
3376        { "kind" : "IdResultType" },
3377        { "kind" : "IdResult" },
3378        { "kind" : "IdRef",        "name" : "'ND Range'" },
3379        { "kind" : "IdRef",        "name" : "'Invoke'" },
3380        { "kind" : "IdRef",        "name" : "'Param'" },
3381        { "kind" : "IdRef",        "name" : "'Param Size'" },
3382        { "kind" : "IdRef",        "name" : "'Param Align'" }
3383      ],
3384      "capabilities" : [ "DeviceEnqueue" ],
3385      "version": "1.0"
3386    },
3387    {
3388      "opname" : "OpGetKernelWorkGroupSize",
3389      "class"  : "Device-Side_Enqueue",
3390      "opcode" : 295,
3391      "operands" : [
3392        { "kind" : "IdResultType" },
3393        { "kind" : "IdResult" },
3394        { "kind" : "IdRef",        "name" : "'Invoke'" },
3395        { "kind" : "IdRef",        "name" : "'Param'" },
3396        { "kind" : "IdRef",        "name" : "'Param Size'" },
3397        { "kind" : "IdRef",        "name" : "'Param Align'" }
3398      ],
3399      "capabilities" : [ "DeviceEnqueue" ],
3400      "version": "1.0"
3401    },
3402    {
3403      "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple",
3404      "class"  : "Device-Side_Enqueue",
3405      "opcode" : 296,
3406      "operands" : [
3407        { "kind" : "IdResultType" },
3408        { "kind" : "IdResult" },
3409        { "kind" : "IdRef",        "name" : "'Invoke'" },
3410        { "kind" : "IdRef",        "name" : "'Param'" },
3411        { "kind" : "IdRef",        "name" : "'Param Size'" },
3412        { "kind" : "IdRef",        "name" : "'Param Align'" }
3413      ],
3414      "capabilities" : [ "DeviceEnqueue" ],
3415      "version": "1.0"
3416    },
3417    {
3418      "opname" : "OpRetainEvent",
3419      "class"  : "Device-Side_Enqueue",
3420      "opcode" : 297,
3421      "operands" : [
3422        { "kind" : "IdRef", "name" : "'Event'" }
3423      ],
3424      "capabilities" : [ "DeviceEnqueue" ],
3425      "version": "1.0"
3426    },
3427    {
3428      "opname" : "OpReleaseEvent",
3429      "class"  : "Device-Side_Enqueue",
3430      "opcode" : 298,
3431      "operands" : [
3432        { "kind" : "IdRef", "name" : "'Event'" }
3433      ],
3434      "capabilities" : [ "DeviceEnqueue" ],
3435      "version": "1.0"
3436    },
3437    {
3438      "opname" : "OpCreateUserEvent",
3439      "class"  : "Device-Side_Enqueue",
3440      "opcode" : 299,
3441      "operands" : [
3442        { "kind" : "IdResultType" },
3443        { "kind" : "IdResult" }
3444      ],
3445      "capabilities" : [ "DeviceEnqueue" ],
3446      "version": "1.0"
3447    },
3448    {
3449      "opname" : "OpIsValidEvent",
3450      "class"  : "Device-Side_Enqueue",
3451      "opcode" : 300,
3452      "operands" : [
3453        { "kind" : "IdResultType" },
3454        { "kind" : "IdResult" },
3455        { "kind" : "IdRef",        "name" : "'Event'" }
3456      ],
3457      "capabilities" : [ "DeviceEnqueue" ],
3458      "version": "1.0"
3459    },
3460    {
3461      "opname" : "OpSetUserEventStatus",
3462      "class"  : "Device-Side_Enqueue",
3463      "opcode" : 301,
3464      "operands" : [
3465        { "kind" : "IdRef", "name" : "'Event'" },
3466        { "kind" : "IdRef", "name" : "'Status'" }
3467      ],
3468      "capabilities" : [ "DeviceEnqueue" ],
3469      "version": "1.0"
3470    },
3471    {
3472      "opname" : "OpCaptureEventProfilingInfo",
3473      "class"  : "Device-Side_Enqueue",
3474      "opcode" : 302,
3475      "operands" : [
3476        { "kind" : "IdRef", "name" : "'Event'" },
3477        { "kind" : "IdRef", "name" : "'Profiling Info'" },
3478        { "kind" : "IdRef", "name" : "'Value'" }
3479      ],
3480      "capabilities" : [ "DeviceEnqueue" ],
3481      "version": "1.0"
3482    },
3483    {
3484      "opname" : "OpGetDefaultQueue",
3485      "class"  : "Device-Side_Enqueue",
3486      "opcode" : 303,
3487      "operands" : [
3488        { "kind" : "IdResultType" },
3489        { "kind" : "IdResult" }
3490      ],
3491      "capabilities" : [ "DeviceEnqueue" ],
3492      "version": "1.0"
3493    },
3494    {
3495      "opname" : "OpBuildNDRange",
3496      "class"  : "Device-Side_Enqueue",
3497      "opcode" : 304,
3498      "operands" : [
3499        { "kind" : "IdResultType" },
3500        { "kind" : "IdResult" },
3501        { "kind" : "IdRef",        "name" : "'GlobalWorkSize'" },
3502        { "kind" : "IdRef",        "name" : "'LocalWorkSize'" },
3503        { "kind" : "IdRef",        "name" : "'GlobalWorkOffset'" }
3504      ],
3505      "capabilities" : [ "DeviceEnqueue" ],
3506      "version": "1.0"
3507    },
3508    {
3509      "opname" : "OpImageSparseSampleImplicitLod",
3510      "class"  : "Image",
3511      "opcode" : 305,
3512      "operands" : [
3513        { "kind" : "IdResultType" },
3514        { "kind" : "IdResult" },
3515        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3516        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3517        { "kind" : "ImageOperands", "quantifier" : "?" }
3518      ],
3519      "capabilities" : [ "SparseResidency" ],
3520      "version": "1.0"
3521    },
3522    {
3523      "opname" : "OpImageSparseSampleExplicitLod",
3524      "class"  : "Image",
3525      "opcode" : 306,
3526      "operands" : [
3527        { "kind" : "IdResultType" },
3528        { "kind" : "IdResult" },
3529        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3530        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3531        { "kind" : "ImageOperands" }
3532      ],
3533      "capabilities" : [ "SparseResidency" ],
3534      "version": "1.0"
3535    },
3536    {
3537      "opname" : "OpImageSparseSampleDrefImplicitLod",
3538      "class"  : "Image",
3539      "opcode" : 307,
3540      "operands" : [
3541        { "kind" : "IdResultType" },
3542        { "kind" : "IdResult" },
3543        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3544        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3545        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3546        { "kind" : "ImageOperands", "quantifier" : "?" }
3547      ],
3548      "capabilities" : [ "SparseResidency" ],
3549      "version": "1.0"
3550    },
3551    {
3552      "opname" : "OpImageSparseSampleDrefExplicitLod",
3553      "class"  : "Image",
3554      "opcode" : 308,
3555      "operands" : [
3556        { "kind" : "IdResultType" },
3557        { "kind" : "IdResult" },
3558        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3559        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3560        { "kind" : "IdRef",         "name" : "'D~ref~'" },
3561        { "kind" : "ImageOperands" }
3562      ],
3563      "capabilities" : [ "SparseResidency" ],
3564      "version": "1.0"
3565    },
3566    {
3567      "opname" : "OpImageSparseSampleProjImplicitLod",
3568      "class"  : "Image",
3569      "opcode" : 309,
3570      "operands" : [
3571        { "kind" : "IdResultType" },
3572        { "kind" : "IdResult" },
3573        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3574        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3575        { "kind" : "ImageOperands", "quantifier" : "?" }
3576      ],
3577      "capabilities" : [ "SparseResidency" ],
3578      "version" : "None"
3579    },
3580    {
3581      "opname" : "OpImageSparseSampleProjExplicitLod",
3582      "class"  : "Image",
3583      "opcode" : 310,
3584      "operands" : [
3585        { "kind" : "IdResultType" },
3586        { "kind" : "IdResult" },
3587        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3588        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3589        { "kind" : "ImageOperands" }
3590      ],
3591      "capabilities" : [ "SparseResidency" ],
3592      "version" : "None"
3593    },
3594    {
3595      "opname" : "OpImageSparseSampleProjDrefImplicitLod",
3596      "class"  : "Image",
3597      "opcode" : 311,
3598      "operands" : [
3599        { "kind" : "IdResultType" },
3600        { "kind" : "IdResult" },
3601        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3602        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3603        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3604        { "kind" : "ImageOperands", "quantifier" : "?" }
3605      ],
3606      "capabilities" : [ "SparseResidency" ],
3607      "version" : "None"
3608    },
3609    {
3610      "opname" : "OpImageSparseSampleProjDrefExplicitLod",
3611      "class"  : "Image",
3612      "opcode" : 312,
3613      "operands" : [
3614        { "kind" : "IdResultType" },
3615        { "kind" : "IdResult" },
3616        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3617        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3618        { "kind" : "IdRef",         "name" : "'D~ref~'" },
3619        { "kind" : "ImageOperands" }
3620      ],
3621      "capabilities" : [ "SparseResidency" ],
3622      "version" : "None"
3623    },
3624    {
3625      "opname" : "OpImageSparseFetch",
3626      "class"  : "Image",
3627      "opcode" : 313,
3628      "operands" : [
3629        { "kind" : "IdResultType" },
3630        { "kind" : "IdResult" },
3631        { "kind" : "IdRef",                             "name" : "'Image'" },
3632        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3633        { "kind" : "ImageOperands", "quantifier" : "?" }
3634      ],
3635      "capabilities" : [ "SparseResidency" ],
3636      "version": "1.0"
3637    },
3638    {
3639      "opname" : "OpImageSparseGather",
3640      "class"  : "Image",
3641      "opcode" : 314,
3642      "operands" : [
3643        { "kind" : "IdResultType" },
3644        { "kind" : "IdResult" },
3645        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3646        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3647        { "kind" : "IdRef",                             "name" : "'Component'" },
3648        { "kind" : "ImageOperands", "quantifier" : "?" }
3649      ],
3650      "capabilities" : [ "SparseResidency" ],
3651      "version": "1.0"
3652    },
3653    {
3654      "opname" : "OpImageSparseDrefGather",
3655      "class"  : "Image",
3656      "opcode" : 315,
3657      "operands" : [
3658        { "kind" : "IdResultType" },
3659        { "kind" : "IdResult" },
3660        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3661        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3662        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3663        { "kind" : "ImageOperands", "quantifier" : "?" }
3664      ],
3665      "capabilities" : [ "SparseResidency" ],
3666      "version": "1.0"
3667    },
3668    {
3669      "opname" : "OpImageSparseTexelsResident",
3670      "class"  : "Image",
3671      "opcode" : 316,
3672      "operands" : [
3673        { "kind" : "IdResultType" },
3674        { "kind" : "IdResult" },
3675        { "kind" : "IdRef",        "name" : "'Resident Code'" }
3676      ],
3677      "capabilities" : [ "SparseResidency" ],
3678      "version": "1.0"
3679    },
3680    {
3681      "opname" : "OpNoLine",
3682      "class"  : "Debug",
3683      "opcode" : 317,
3684      "version" : "1.0"
3685    },
3686    {
3687      "opname" : "OpAtomicFlagTestAndSet",
3688      "class"  : "Atomic",
3689      "opcode" : 318,
3690      "operands" : [
3691        { "kind" : "IdResultType" },
3692        { "kind" : "IdResult" },
3693        { "kind" : "IdRef",             "name" : "'Pointer'" },
3694        { "kind" : "IdScope",           "name" : "'Memory'" },
3695        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3696      ],
3697      "capabilities" : [ "Kernel" ],
3698      "version": "1.0"
3699    },
3700    {
3701      "opname" : "OpAtomicFlagClear",
3702      "class"  : "Atomic",
3703      "opcode" : 319,
3704      "operands" : [
3705        { "kind" : "IdRef",             "name" : "'Pointer'" },
3706        { "kind" : "IdScope",           "name" : "'Memory'" },
3707        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3708      ],
3709      "capabilities" : [ "Kernel" ],
3710      "version": "1.0"
3711    },
3712    {
3713      "opname" : "OpImageSparseRead",
3714      "class"  : "Image",
3715      "opcode" : 320,
3716      "operands" : [
3717        { "kind" : "IdResultType" },
3718        { "kind" : "IdResult" },
3719        { "kind" : "IdRef",                             "name" : "'Image'" },
3720        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3721        { "kind" : "ImageOperands", "quantifier" : "?" }
3722      ],
3723      "capabilities" : [ "SparseResidency" ],
3724      "version": "1.0"
3725    },
3726    {
3727      "opname" : "OpSizeOf",
3728      "class"  : "Miscellaneous",
3729      "opcode" : 321,
3730      "operands" : [
3731        { "kind" : "IdResultType" },
3732        { "kind" : "IdResult" },
3733        { "kind" : "IdRef", "name" : "'Pointer'" }
3734      ],
3735      "capabilities" : [ "Addresses" ],
3736      "version" : "1.1"
3737    },
3738    {
3739      "opname" : "OpTypePipeStorage",
3740      "class"  : "Type-Declaration",
3741      "opcode" : 322,
3742      "operands" : [
3743        { "kind" : "IdResult" }
3744      ],
3745      "capabilities" : [ "PipeStorage" ],
3746      "version" : "1.1"
3747    },
3748    {
3749      "opname" : "OpConstantPipeStorage",
3750      "class"  : "Pipe",
3751      "opcode" : 323,
3752      "operands" : [
3753        { "kind" : "IdResultType" },
3754        { "kind" : "IdResult" },
3755        { "kind" : "LiteralInteger", "name" : "'Packet Size'" },
3756        { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" },
3757        { "kind" : "LiteralInteger", "name" : "'Capacity'" }
3758      ],
3759      "capabilities" : [ "PipeStorage" ],
3760      "version" : "1.1"
3761    },
3762    {
3763      "opname" : "OpCreatePipeFromPipeStorage",
3764      "class"  : "Pipe",
3765      "opcode" : 324,
3766      "operands" : [
3767        { "kind" : "IdResultType" },
3768        { "kind" : "IdResult" },
3769        { "kind" : "IdRef", "name" : "'Pipe Storage'" }
3770      ],
3771      "capabilities" : [ "PipeStorage" ],
3772      "version" : "1.1"
3773    },
3774    {
3775      "opname" : "OpGetKernelLocalSizeForSubgroupCount",
3776      "class"  : "Device-Side_Enqueue",
3777      "opcode" : 325,
3778      "operands" : [
3779        { "kind" : "IdResultType" },
3780        { "kind" : "IdResult" },
3781        { "kind" : "IdRef", "name" : "'Subgroup Count'" },
3782        { "kind" : "IdRef", "name" : "'Invoke'" },
3783        { "kind" : "IdRef", "name" : "'Param'" },
3784        { "kind" : "IdRef", "name" : "'Param Size'" },
3785        { "kind" : "IdRef", "name" : "'Param Align'" }
3786      ],
3787      "capabilities" : [ "SubgroupDispatch" ],
3788      "version" : "1.1"
3789    },
3790    {
3791      "opname" : "OpGetKernelMaxNumSubgroups",
3792      "class"  : "Device-Side_Enqueue",
3793      "opcode" : 326,
3794      "operands" : [
3795        { "kind" : "IdResultType" },
3796        { "kind" : "IdResult" },
3797        { "kind" : "IdRef", "name" : "'Invoke'" },
3798        { "kind" : "IdRef", "name" : "'Param'" },
3799        { "kind" : "IdRef", "name" : "'Param Size'" },
3800        { "kind" : "IdRef", "name" : "'Param Align'" }
3801      ],
3802      "capabilities" : [ "SubgroupDispatch" ],
3803      "version" : "1.1"
3804    },
3805    {
3806      "opname" : "OpTypeNamedBarrier",
3807      "class"  : "Type-Declaration",
3808      "opcode" : 327,
3809      "operands" : [
3810        { "kind" : "IdResult" }
3811      ],
3812      "capabilities" : [ "NamedBarrier" ],
3813      "version" : "1.1"
3814    },
3815    {
3816      "opname" : "OpNamedBarrierInitialize",
3817      "class"  : "Barrier",
3818      "opcode" : 328,
3819      "operands" : [
3820        { "kind" : "IdResultType" },
3821        { "kind" : "IdResult" },
3822        { "kind" : "IdRef", "name" : "'Subgroup Count'" }
3823      ],
3824      "capabilities" : [ "NamedBarrier" ],
3825      "version" : "1.1"
3826    },
3827    {
3828      "opname" : "OpMemoryNamedBarrier",
3829      "class"  : "Barrier",
3830      "opcode" : 329,
3831      "operands" : [
3832        { "kind" : "IdRef", "name" : "'Named Barrier'" },
3833        { "kind" : "IdScope", "name" : "'Memory'" },
3834        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3835      ],
3836      "capabilities" : [ "NamedBarrier" ],
3837      "version" : "1.1"
3838    },
3839    {
3840      "opname" : "OpModuleProcessed",
3841      "class"  : "Debug",
3842      "opcode" : 330,
3843      "operands" : [
3844        { "kind" : "LiteralString", "name" : "'Process'" }
3845      ],
3846      "version" : "1.1"
3847    },
3848    {
3849      "opname" : "OpExecutionModeId",
3850      "class"  : "Mode-Setting",
3851      "opcode" : 331,
3852      "operands" : [
3853        { "kind" : "IdRef", "name" : "'Entry Point'" },
3854        { "kind" : "ExecutionMode", "name" : "'Mode'" }
3855      ],
3856      "version" : "1.2"
3857    },
3858    {
3859      "opname" : "OpDecorateId",
3860      "class"  : "Annotation",
3861      "opcode" : 332,
3862      "operands" : [
3863        { "kind" : "IdRef", "name" : "'Target'" },
3864        { "kind" : "Decoration" }
3865      ],
3866      "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
3867      "version" : "1.2"
3868    },
3869    {
3870      "opname" : "OpGroupNonUniformElect",
3871      "class"  : "Non-Uniform",
3872      "opcode" : 333,
3873      "operands" : [
3874        { "kind" : "IdResultType" },
3875        { "kind" : "IdResult" },
3876        { "kind" : "IdScope", "name" : "'Execution'" }
3877      ],
3878      "capabilities" : [ "GroupNonUniform" ],
3879      "version" : "1.3"
3880    },
3881    {
3882      "opname" : "OpGroupNonUniformAll",
3883      "class"  : "Non-Uniform",
3884      "opcode" : 334,
3885      "operands" : [
3886        { "kind" : "IdResultType" },
3887        { "kind" : "IdResult" },
3888        { "kind" : "IdScope", "name" : "'Execution'" },
3889        { "kind" : "IdRef", "name" : "'Predicate'" }
3890      ],
3891      "capabilities" : [ "GroupNonUniformVote" ],
3892      "version" : "1.3"
3893    },
3894    {
3895      "opname" : "OpGroupNonUniformAny",
3896      "class"  : "Non-Uniform",
3897      "opcode" : 335,
3898      "operands" : [
3899        { "kind" : "IdResultType" },
3900        { "kind" : "IdResult" },
3901        { "kind" : "IdScope", "name" : "'Execution'" },
3902        { "kind" : "IdRef", "name" : "'Predicate'" }
3903      ],
3904      "capabilities" : [ "GroupNonUniformVote" ],
3905      "version" : "1.3"
3906    },
3907    {
3908      "opname" : "OpGroupNonUniformAllEqual",
3909      "class"  : "Non-Uniform",
3910      "opcode" : 336,
3911      "operands" : [
3912        { "kind" : "IdResultType" },
3913        { "kind" : "IdResult" },
3914        { "kind" : "IdScope", "name" : "'Execution'" },
3915        { "kind" : "IdRef", "name" : "'Value'" }
3916      ],
3917      "capabilities" : [ "GroupNonUniformVote" ],
3918      "version" : "1.3"
3919    },
3920    {
3921      "opname" : "OpGroupNonUniformBroadcast",
3922      "class"  : "Non-Uniform",
3923      "opcode" : 337,
3924      "operands" : [
3925        { "kind" : "IdResultType" },
3926        { "kind" : "IdResult" },
3927        { "kind" : "IdScope", "name" : "'Execution'" },
3928        { "kind" : "IdRef", "name" : "'Value'" },
3929        { "kind" : "IdRef", "name" : "'Id'" }
3930      ],
3931      "capabilities" : [ "GroupNonUniformBallot" ],
3932      "version" : "1.3"
3933    },
3934    {
3935      "opname" : "OpGroupNonUniformBroadcastFirst",
3936      "class"  : "Non-Uniform",
3937      "opcode" : 338,
3938      "operands" : [
3939        { "kind" : "IdResultType" },
3940        { "kind" : "IdResult" },
3941        { "kind" : "IdScope", "name" : "'Execution'" },
3942        { "kind" : "IdRef", "name" : "'Value'" }
3943      ],
3944      "capabilities" : [ "GroupNonUniformBallot" ],
3945      "version" : "1.3"
3946    },
3947    {
3948      "opname" : "OpGroupNonUniformBallot",
3949      "class"  : "Non-Uniform",
3950      "opcode" : 339,
3951      "operands" : [
3952        { "kind" : "IdResultType" },
3953        { "kind" : "IdResult" },
3954        { "kind" : "IdScope", "name" : "'Execution'" },
3955        { "kind" : "IdRef", "name" : "'Predicate'" }
3956      ],
3957      "capabilities" : [ "GroupNonUniformBallot" ],
3958      "version" : "1.3"
3959    },
3960    {
3961      "opname" : "OpGroupNonUniformInverseBallot",
3962      "class"  : "Non-Uniform",
3963      "opcode" : 340,
3964      "operands" : [
3965        { "kind" : "IdResultType" },
3966        { "kind" : "IdResult" },
3967        { "kind" : "IdScope", "name" : "'Execution'" },
3968        { "kind" : "IdRef", "name" : "'Value'" }
3969      ],
3970      "capabilities" : [ "GroupNonUniformBallot" ],
3971      "version" : "1.3"
3972    },
3973    {
3974      "opname" : "OpGroupNonUniformBallotBitExtract",
3975      "class"  : "Non-Uniform",
3976      "opcode" : 341,
3977      "operands" : [
3978        { "kind" : "IdResultType" },
3979        { "kind" : "IdResult" },
3980        { "kind" : "IdScope", "name" : "'Execution'" },
3981        { "kind" : "IdRef", "name" : "'Value'" },
3982        { "kind" : "IdRef", "name" : "'Index'" }
3983      ],
3984      "capabilities" : [ "GroupNonUniformBallot" ],
3985      "version" : "1.3"
3986    },
3987    {
3988      "opname" : "OpGroupNonUniformBallotBitCount",
3989      "class"  : "Non-Uniform",
3990      "opcode" : 342,
3991      "operands" : [
3992        { "kind" : "IdResultType" },
3993        { "kind" : "IdResult" },
3994        { "kind" : "IdScope", "name" : "'Execution'" },
3995        { "kind" : "GroupOperation", "name" : "'Operation'" },
3996        { "kind" : "IdRef", "name" : "'Value'" }
3997      ],
3998      "capabilities" : [ "GroupNonUniformBallot" ],
3999      "version" : "1.3"
4000    },
4001    {
4002      "opname" : "OpGroupNonUniformBallotFindLSB",
4003      "class"  : "Non-Uniform",
4004      "opcode" : 343,
4005      "operands" : [
4006        { "kind" : "IdResultType" },
4007        { "kind" : "IdResult" },
4008        { "kind" : "IdScope", "name" : "'Execution'" },
4009        { "kind" : "IdRef", "name" : "'Value'" }
4010      ],
4011      "capabilities" : [ "GroupNonUniformBallot" ],
4012      "version" : "1.3"
4013    },
4014    {
4015      "opname" : "OpGroupNonUniformBallotFindMSB",
4016      "class"  : "Non-Uniform",
4017      "opcode" : 344,
4018      "operands" : [
4019        { "kind" : "IdResultType" },
4020        { "kind" : "IdResult" },
4021        { "kind" : "IdScope", "name" : "'Execution'" },
4022        { "kind" : "IdRef", "name" : "'Value'" }
4023      ],
4024      "capabilities" : [ "GroupNonUniformBallot" ],
4025      "version" : "1.3"
4026    },
4027    {
4028      "opname" : "OpGroupNonUniformShuffle",
4029      "class"  : "Non-Uniform",
4030      "opcode" : 345,
4031      "operands" : [
4032        { "kind" : "IdResultType" },
4033        { "kind" : "IdResult" },
4034        { "kind" : "IdScope", "name" : "'Execution'" },
4035        { "kind" : "IdRef", "name" : "'Value'" },
4036        { "kind" : "IdRef", "name" : "'Id'" }
4037      ],
4038      "capabilities" : [ "GroupNonUniformShuffle" ],
4039      "version" : "1.3"
4040    },
4041    {
4042      "opname" : "OpGroupNonUniformShuffleXor",
4043      "class"  : "Non-Uniform",
4044      "opcode" : 346,
4045      "operands" : [
4046        { "kind" : "IdResultType" },
4047        { "kind" : "IdResult" },
4048        { "kind" : "IdScope", "name" : "'Execution'" },
4049        { "kind" : "IdRef", "name" : "'Value'" },
4050        { "kind" : "IdRef", "name" : "'Mask'" }
4051      ],
4052      "capabilities" : [ "GroupNonUniformShuffle" ],
4053      "version" : "1.3"
4054    },
4055    {
4056      "opname" : "OpGroupNonUniformShuffleUp",
4057      "class"  : "Non-Uniform",
4058      "opcode" : 347,
4059      "operands" : [
4060        { "kind" : "IdResultType" },
4061        { "kind" : "IdResult" },
4062        { "kind" : "IdScope", "name" : "'Execution'" },
4063        { "kind" : "IdRef", "name" : "'Value'" },
4064        { "kind" : "IdRef", "name" : "'Delta'" }
4065      ],
4066      "capabilities" : [ "GroupNonUniformShuffleRelative" ],
4067      "version" : "1.3"
4068    },
4069    {
4070      "opname" : "OpGroupNonUniformShuffleDown",
4071      "class"  : "Non-Uniform",
4072      "opcode" : 348,
4073      "operands" : [
4074        { "kind" : "IdResultType" },
4075        { "kind" : "IdResult" },
4076        { "kind" : "IdScope", "name" : "'Execution'" },
4077        { "kind" : "IdRef", "name" : "'Value'" },
4078        { "kind" : "IdRef", "name" : "'Delta'" }
4079      ],
4080      "capabilities" : [ "GroupNonUniformShuffleRelative" ],
4081      "version" : "1.3"
4082    },
4083    {
4084      "opname" : "OpGroupNonUniformIAdd",
4085      "class"  : "Non-Uniform",
4086      "opcode" : 349,
4087      "operands" : [
4088        { "kind" : "IdResultType" },
4089        { "kind" : "IdResult" },
4090        { "kind" : "IdScope", "name" : "'Execution'" },
4091        { "kind" : "GroupOperation", "name" : "'Operation'" },
4092        { "kind" : "IdRef", "name" : "'Value'" },
4093        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4094      ],
4095      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4096      "version" : "1.3"
4097    },
4098    {
4099      "opname" : "OpGroupNonUniformFAdd",
4100      "class"  : "Non-Uniform",
4101      "opcode" : 350,
4102      "operands" : [
4103        { "kind" : "IdResultType" },
4104        { "kind" : "IdResult" },
4105        { "kind" : "IdScope", "name" : "'Execution'" },
4106        { "kind" : "GroupOperation", "name" : "'Operation'" },
4107        { "kind" : "IdRef", "name" : "'Value'" },
4108        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4109      ],
4110      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4111      "version" : "1.3"
4112    },
4113    {
4114      "opname" : "OpGroupNonUniformIMul",
4115      "class"  : "Non-Uniform",
4116      "opcode" : 351,
4117      "operands" : [
4118        { "kind" : "IdResultType" },
4119        { "kind" : "IdResult" },
4120        { "kind" : "IdScope", "name" : "'Execution'" },
4121        { "kind" : "GroupOperation", "name" : "'Operation'" },
4122        { "kind" : "IdRef", "name" : "'Value'" },
4123        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4124      ],
4125      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4126      "version" : "1.3"
4127    },
4128    {
4129      "opname" : "OpGroupNonUniformFMul",
4130      "class"  : "Non-Uniform",
4131      "opcode" : 352,
4132      "operands" : [
4133        { "kind" : "IdResultType" },
4134        { "kind" : "IdResult" },
4135        { "kind" : "IdScope", "name" : "'Execution'" },
4136        { "kind" : "GroupOperation", "name" : "'Operation'" },
4137        { "kind" : "IdRef", "name" : "'Value'" },
4138        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4139      ],
4140      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4141      "version" : "1.3"
4142    },
4143    {
4144      "opname" : "OpGroupNonUniformSMin",
4145      "class"  : "Non-Uniform",
4146      "opcode" : 353,
4147      "operands" : [
4148        { "kind" : "IdResultType" },
4149        { "kind" : "IdResult" },
4150        { "kind" : "IdScope", "name" : "'Execution'" },
4151        { "kind" : "GroupOperation", "name" : "'Operation'" },
4152        { "kind" : "IdRef", "name" : "'Value'" },
4153        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4154      ],
4155      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4156      "version" : "1.3"
4157    },
4158    {
4159      "opname" : "OpGroupNonUniformUMin",
4160      "class"  : "Non-Uniform",
4161      "opcode" : 354,
4162      "operands" : [
4163        { "kind" : "IdResultType" },
4164        { "kind" : "IdResult" },
4165        { "kind" : "IdScope", "name" : "'Execution'" },
4166        { "kind" : "GroupOperation", "name" : "'Operation'" },
4167        { "kind" : "IdRef", "name" : "'Value'" },
4168        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4169      ],
4170      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4171      "version" : "1.3"
4172    },
4173    {
4174      "opname" : "OpGroupNonUniformFMin",
4175      "class"  : "Non-Uniform",
4176      "opcode" : 355,
4177      "operands" : [
4178        { "kind" : "IdResultType" },
4179        { "kind" : "IdResult" },
4180        { "kind" : "IdScope", "name" : "'Execution'" },
4181        { "kind" : "GroupOperation", "name" : "'Operation'" },
4182        { "kind" : "IdRef", "name" : "'Value'" },
4183        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4184      ],
4185      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4186      "version" : "1.3"
4187    },
4188    {
4189      "opname" : "OpGroupNonUniformSMax",
4190      "class"  : "Non-Uniform",
4191      "opcode" : 356,
4192      "operands" : [
4193        { "kind" : "IdResultType" },
4194        { "kind" : "IdResult" },
4195        { "kind" : "IdScope", "name" : "'Execution'" },
4196        { "kind" : "GroupOperation", "name" : "'Operation'" },
4197        { "kind" : "IdRef", "name" : "'Value'" },
4198        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4199      ],
4200      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4201      "version" : "1.3"
4202    },
4203    {
4204      "opname" : "OpGroupNonUniformUMax",
4205      "class"  : "Non-Uniform",
4206      "opcode" : 357,
4207      "operands" : [
4208        { "kind" : "IdResultType" },
4209        { "kind" : "IdResult" },
4210        { "kind" : "IdScope", "name" : "'Execution'" },
4211        { "kind" : "GroupOperation", "name" : "'Operation'" },
4212        { "kind" : "IdRef", "name" : "'Value'" },
4213        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4214      ],
4215      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4216      "version" : "1.3"
4217    },
4218    {
4219      "opname" : "OpGroupNonUniformFMax",
4220      "class"  : "Non-Uniform",
4221      "opcode" : 358,
4222      "operands" : [
4223        { "kind" : "IdResultType" },
4224        { "kind" : "IdResult" },
4225        { "kind" : "IdScope", "name" : "'Execution'" },
4226        { "kind" : "GroupOperation", "name" : "'Operation'" },
4227        { "kind" : "IdRef", "name" : "'Value'" },
4228        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4229      ],
4230      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4231      "version" : "1.3"
4232    },
4233    {
4234      "opname" : "OpGroupNonUniformBitwiseAnd",
4235      "class"  : "Non-Uniform",
4236      "opcode" : 359,
4237      "operands" : [
4238        { "kind" : "IdResultType" },
4239        { "kind" : "IdResult" },
4240        { "kind" : "IdScope", "name" : "'Execution'" },
4241        { "kind" : "GroupOperation", "name" : "'Operation'" },
4242        { "kind" : "IdRef", "name" : "'Value'" },
4243        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4244      ],
4245      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4246      "version" : "1.3"
4247    },
4248    {
4249      "opname" : "OpGroupNonUniformBitwiseOr",
4250      "class"  : "Non-Uniform",
4251      "opcode" : 360,
4252      "operands" : [
4253        { "kind" : "IdResultType" },
4254        { "kind" : "IdResult" },
4255        { "kind" : "IdScope", "name" : "'Execution'" },
4256        { "kind" : "GroupOperation", "name" : "'Operation'" },
4257        { "kind" : "IdRef", "name" : "'Value'" },
4258        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4259      ],
4260      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4261      "version" : "1.3"
4262    },
4263    {
4264      "opname" : "OpGroupNonUniformBitwiseXor",
4265      "class"  : "Non-Uniform",
4266      "opcode" : 361,
4267      "operands" : [
4268        { "kind" : "IdResultType" },
4269        { "kind" : "IdResult" },
4270        { "kind" : "IdScope", "name" : "'Execution'" },
4271        { "kind" : "GroupOperation", "name" : "'Operation'" },
4272        { "kind" : "IdRef", "name" : "'Value'" },
4273        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4274      ],
4275      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4276      "version" : "1.3"
4277    },
4278    {
4279      "opname" : "OpGroupNonUniformLogicalAnd",
4280      "class"  : "Non-Uniform",
4281      "opcode" : 362,
4282      "operands" : [
4283        { "kind" : "IdResultType" },
4284        { "kind" : "IdResult" },
4285        { "kind" : "IdScope", "name" : "'Execution'" },
4286        { "kind" : "GroupOperation", "name" : "'Operation'" },
4287        { "kind" : "IdRef", "name" : "'Value'" },
4288        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4289      ],
4290      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4291      "version" : "1.3"
4292    },
4293    {
4294      "opname" : "OpGroupNonUniformLogicalOr",
4295      "class"  : "Non-Uniform",
4296      "opcode" : 363,
4297      "operands" : [
4298        { "kind" : "IdResultType" },
4299        { "kind" : "IdResult" },
4300        { "kind" : "IdScope", "name" : "'Execution'" },
4301        { "kind" : "GroupOperation", "name" : "'Operation'" },
4302        { "kind" : "IdRef", "name" : "'Value'" },
4303        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4304      ],
4305      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4306      "version" : "1.3"
4307    },
4308    {
4309      "opname" : "OpGroupNonUniformLogicalXor",
4310      "class"  : "Non-Uniform",
4311      "opcode" : 364,
4312      "operands" : [
4313        { "kind" : "IdResultType" },
4314        { "kind" : "IdResult" },
4315        { "kind" : "IdScope", "name" : "'Execution'" },
4316        { "kind" : "GroupOperation", "name" : "'Operation'" },
4317        { "kind" : "IdRef", "name" : "'Value'" },
4318        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4319      ],
4320      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4321      "version" : "1.3"
4322    },
4323    {
4324      "opname" : "OpGroupNonUniformQuadBroadcast",
4325      "class"  : "Non-Uniform",
4326      "opcode" : 365,
4327      "operands" : [
4328        { "kind" : "IdResultType" },
4329        { "kind" : "IdResult" },
4330        { "kind" : "IdScope", "name" : "'Execution'" },
4331        { "kind" : "IdRef", "name" : "'Value'" },
4332        { "kind" : "IdRef", "name" : "'Index'" }
4333      ],
4334      "capabilities" : [ "GroupNonUniformQuad" ],
4335      "version" : "1.3"
4336    },
4337    {
4338      "opname" : "OpGroupNonUniformQuadSwap",
4339      "class"  : "Non-Uniform",
4340      "opcode" : 366,
4341      "operands" : [
4342        { "kind" : "IdResultType" },
4343        { "kind" : "IdResult" },
4344        { "kind" : "IdScope", "name" : "'Execution'" },
4345        { "kind" : "IdRef", "name" : "'Value'" },
4346        { "kind" : "IdRef", "name" : "'Direction'" }
4347      ],
4348      "capabilities" : [ "GroupNonUniformQuad" ],
4349      "version" : "1.3"
4350    },
4351    {
4352      "opname" : "OpCopyLogical",
4353      "class"  : "Composite",
4354      "opcode" : 400,
4355      "operands" : [
4356        { "kind" : "IdResultType" },
4357        { "kind" : "IdResult" },
4358        { "kind" : "IdRef",        "name" : "'Operand'" }
4359      ],
4360      "version" : "1.4"
4361    },
4362    {
4363      "opname" : "OpPtrEqual",
4364      "class"  : "Memory",
4365      "opcode" : 401,
4366      "operands" : [
4367        { "kind" : "IdResultType" },
4368        { "kind" : "IdResult" },
4369        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4370        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4371      ],
4372      "version" : "1.4"
4373    },
4374    {
4375      "opname" : "OpPtrNotEqual",
4376      "class"  : "Memory",
4377      "opcode" : 402,
4378      "operands" : [
4379        { "kind" : "IdResultType" },
4380        { "kind" : "IdResult" },
4381        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4382        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4383      ],
4384      "version" : "1.4"
4385    },
4386    {
4387      "opname" : "OpPtrDiff",
4388      "class"  : "Memory",
4389      "opcode" : 403,
4390      "operands" : [
4391        { "kind" : "IdResultType" },
4392        { "kind" : "IdResult" },
4393        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4394        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4395      ],
4396      "capabilities" : [ "Addresses", "VariablePointers", "VariablePointersStorageBuffer" ],
4397      "version" : "1.4"
4398    },
4399    {
4400      "opname" : "OpColorAttachmentReadEXT",
4401      "class"  : "Image",
4402      "opcode" : 4160,
4403      "operands" : [
4404        { "kind" : "IdResultType" },
4405        { "kind" : "IdResult" },
4406        { "kind" : "IdRef", "name" : "'Attachment'" },
4407        { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" }
4408      ],
4409      "capabilities": [ "TileImageColorReadAccessEXT" ],
4410      "version" : "None"
4411    },
4412    {
4413      "opname" : "OpDepthAttachmentReadEXT",
4414      "class"  : "Image",
4415      "opcode" : 4161,
4416      "operands" : [
4417        { "kind" : "IdResultType" },
4418        { "kind" : "IdResult" },
4419        { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" }
4420      ],
4421      "capabilities" : [ "TileImageDepthReadAccessEXT" ],
4422      "version" : "None"
4423    },
4424    {
4425      "opname" : "OpStencilAttachmentReadEXT",
4426      "class"  : "Image",
4427      "opcode" : 4162,
4428      "operands" : [
4429        { "kind" : "IdResultType" },
4430        { "kind" : "IdResult" },
4431        { "kind" : "IdRef", "name" : "'Sample'", "quantifier" : "?" }
4432      ],
4433      "capabilities" : [ "TileImageStencilReadAccessEXT" ],
4434      "version" : "None"
4435    },
4436    {
4437      "opname" : "OpTerminateInvocation",
4438      "class"  : "Control-Flow",
4439      "opcode" : 4416,
4440      "extensions" : [
4441        "SPV_KHR_terminate_invocation"
4442      ],
4443      "capabilities" : [ "Shader" ],
4444      "version" : "1.6"
4445    },
4446    {
4447      "opname" : "OpTypeUntypedPointerKHR",
4448      "class" : "Type-Declaration",
4449      "opcode" : 4417,
4450      "capabilities" : [
4451        "UntypedPointersKHR"
4452      ],
4453      "provisional" : true,
4454      "version" : "None",
4455      "operands" : [
4456        { "kind" : "IdResult" },
4457        { "kind" : "StorageClass" }
4458      ]
4459    },
4460    {
4461      "opname" : "OpUntypedVariableKHR",
4462      "class" : "Memory",
4463      "opcode" : 4418,
4464      "capabilities" : [ "UntypedPointersKHR" ],
4465      "provisional" : true,
4466      "version" : "None",
4467      "operands" : [
4468        { "kind" : "IdResultType" },
4469        { "kind" : "IdResult" },
4470        { "kind" : "StorageClass" },
4471        { "kind" : "IdRef", "quantifier" : "?",  "name" : "'Data Type'" },
4472        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" }
4473      ]
4474    },
4475    {
4476      "opname" : "OpUntypedAccessChainKHR",
4477      "class" : "Memory",
4478      "opcode" : 4419,
4479      "capabilities" : [ "UntypedPointersKHR" ],
4480      "provisional" : true,
4481      "version" : "None",
4482      "operands" : [
4483        { "kind" : "IdResultType" },
4484        { "kind" : "IdResult" },
4485        { "kind" : "IdRef",                            "name" : "'Base Type'" },
4486        { "kind" : "IdRef",                            "name" : "'Base'" },
4487        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
4488      ]
4489    },
4490    {
4491      "opname" : "OpUntypedInBoundsAccessChainKHR",
4492      "class" : "Memory",
4493      "opcode" : 4420,
4494      "capabilities" : [ "UntypedPointersKHR" ],
4495      "provisional" : true,
4496      "version" : "None",
4497      "operands" : [
4498        { "kind" : "IdResultType" },
4499        { "kind" : "IdResult" },
4500        { "kind" : "IdRef",                            "name" : "'Base Type'" },
4501        { "kind" : "IdRef",                            "name" : "'Base'" },
4502        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
4503      ]
4504    },
4505    {
4506      "opname" : "OpSubgroupBallotKHR",
4507      "class"  : "Group",
4508      "opcode" : 4421,
4509      "operands" : [
4510        { "kind" : "IdResultType" },
4511        { "kind" : "IdResult" },
4512        { "kind" : "IdRef", "name" : "'Predicate'" }
4513      ],
4514      "capabilities" : [ "SubgroupBallotKHR" ],
4515      "extensions" : [ "SPV_KHR_shader_ballot" ],
4516      "version" : "None"
4517    },
4518    {
4519      "opname" : "OpSubgroupFirstInvocationKHR",
4520      "class"  : "Group",
4521      "opcode" : 4422,
4522      "operands" : [
4523        { "kind" : "IdResultType" },
4524        { "kind" : "IdResult" },
4525        { "kind" : "IdRef", "name" : "'Value'" }
4526      ],
4527      "capabilities" : [ "SubgroupBallotKHR" ],
4528      "extensions" : [ "SPV_KHR_shader_ballot" ],
4529      "version" : "None"
4530    },
4531    {
4532      "opname" : "OpUntypedPtrAccessChainKHR",
4533      "class"  : "Memory",
4534      "opcode" : 4423,
4535      "capabilities" : [ "UntypedPointersKHR" ],
4536      "provisional" : true,
4537      "version" : "None",
4538      "operands" : [
4539        { "kind" : "IdResultType" },
4540        { "kind" : "IdResult" },
4541        { "kind" : "IdRef",                            "name" : "'Base Type'" },
4542        { "kind" : "IdRef",                            "name" : "'Base'" },
4543        { "kind" : "IdRef",                            "name" : "'Element'" },
4544        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
4545      ]
4546    },
4547    {
4548      "opname" : "OpUntypedInBoundsPtrAccessChainKHR",
4549      "class"  : "Memory",
4550      "opcode" : 4424,
4551      "capabilities" : [ "UntypedPointersKHR" ],
4552      "provisional" : true,
4553      "version" : "None",
4554      "operands" : [
4555        { "kind" : "IdResultType" },
4556        { "kind" : "IdResult" },
4557        { "kind" : "IdRef",                            "name" : "'Base Type'" },
4558        { "kind" : "IdRef",                            "name" : "'Base'" },
4559        { "kind" : "IdRef",                            "name" : "'Element'" },
4560        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
4561      ]
4562    },
4563    {
4564      "opname" : "OpUntypedArrayLengthKHR",
4565      "class"  : "Memory",
4566      "opcode" : 4425,
4567      "capabilities" : [ "UntypedPointersKHR" ],
4568      "provisional" : true,
4569      "version" : "None",
4570      "operands" : [
4571        { "kind" : "IdResultType" },
4572        { "kind" : "IdResult" },
4573        { "kind" : "IdRef",                            "name" : "'Structure'" },
4574        { "kind" : "IdRef",                            "name" : "'Pointer'" },
4575        { "kind" : "LiteralInteger",                   "name" : "'Array member'" }
4576      ]
4577    },
4578    {
4579      "opname" : "OpUntypedPrefetchKHR",
4580      "class"  : "Memory",
4581      "opcode" : 4426,
4582      "capabilities" : [ "UntypedPointersKHR" ],
4583      "provisional" : true,
4584      "version" : "None",
4585      "operands" : [
4586        { "kind" : "IdRef",                            "name" : "'Pointer Type'" },
4587        { "kind" : "IdRef",                            "name" : "'Num Bytes'" },
4588        { "kind" : "IdRef",        "quantifier" : "?", "name" : "'RW'" },
4589        { "kind" : "IdRef",        "quantifier" : "?", "name" : "'Locality'" },
4590        { "kind" : "IdRef",        "quantifier" : "?", "name" : "'Cache Type'" }
4591      ]
4592    },
4593    {
4594      "opname" : "OpSubgroupAllKHR",
4595      "class"  : "Group",
4596      "opcode" : 4428,
4597      "operands" : [
4598        { "kind" : "IdResultType" },
4599        { "kind" : "IdResult" },
4600        { "kind" : "IdRef", "name" : "'Predicate'" }
4601      ],
4602      "extensions" : [
4603        "SPV_KHR_subgroup_vote"
4604      ],
4605      "capabilities" : [ "SubgroupVoteKHR" ],
4606      "version" : "None"
4607    },
4608    {
4609      "opname" : "OpSubgroupAnyKHR",
4610      "class"  : "Group",
4611      "opcode" : 4429,
4612      "operands" : [
4613        { "kind" : "IdResultType" },
4614        { "kind" : "IdResult" },
4615        { "kind" : "IdRef", "name" : "'Predicate'" }
4616      ],
4617      "extensions" : [
4618        "SPV_KHR_subgroup_vote"
4619      ],
4620      "capabilities" : [ "SubgroupVoteKHR" ],
4621      "version" : "None"
4622    },
4623    {
4624      "opname" : "OpSubgroupAllEqualKHR",
4625      "class"  : "Group",
4626      "opcode" : 4430,
4627      "operands" : [
4628        { "kind" : "IdResultType" },
4629        { "kind" : "IdResult" },
4630        { "kind" : "IdRef", "name" : "'Predicate'" }
4631      ],
4632      "extensions" : [
4633        "SPV_KHR_subgroup_vote"
4634      ],
4635      "capabilities" : [ "SubgroupVoteKHR" ],
4636      "version" : "None"
4637    },
4638    {
4639      "opname" : "OpGroupNonUniformRotateKHR",
4640      "class"  : "Group",
4641      "opcode" : 4431,
4642      "operands" : [
4643        { "kind" : "IdResultType" },
4644        { "kind" : "IdResult" },
4645        { "kind" : "IdScope", "name" : "'Execution'" },
4646        { "kind" : "IdRef", "name" : "'Value'" },
4647        { "kind" : "IdRef", "name" : "'Delta'" },
4648        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4649      ],
4650      "capabilities" : [ "GroupNonUniformRotateKHR" ],
4651      "version" : "None"
4652    },
4653    {
4654      "opname" : "OpSubgroupReadInvocationKHR",
4655      "class"  : "Group",
4656      "opcode" : 4432,
4657      "operands" : [
4658        { "kind" : "IdResultType" },
4659        { "kind" : "IdResult" },
4660        { "kind" : "IdRef", "name" : "'Value'" },
4661        { "kind" : "IdRef", "name" : "'Index'" }
4662      ],
4663      "capabilities" : [ "SubgroupBallotKHR" ],
4664      "extensions" : [ "SPV_KHR_shader_ballot" ],
4665      "version" : "None"
4666    },
4667    {
4668      "opname" : "OpExtInstWithForwardRefsKHR",
4669      "class"  : "Extension",
4670      "opcode" : 4433,
4671      "operands" : [
4672        { "kind" : "IdResultType" },
4673        { "kind" : "IdResult" },
4674        { "kind" : "IdRef",                                     "name" : "'Set'" },
4675        { "kind" : "LiteralExtInstInteger",                     "name" : "'Instruction'" },
4676        { "kind" : "IdRef",                 "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." }
4677      ],
4678      "extensions" : [ "SPV_KHR_relaxed_extended_instruction" ],
4679      "version": "None"
4680    },
4681    {
4682      "opname" : "OpTraceRayKHR",
4683      "class"  : "Reserved",
4684      "opcode" : 4445,
4685      "operands" : [
4686
4687        { "kind" : "IdRef", "name" : "'Accel'" },
4688        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4689        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4690        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4691        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4692        { "kind" : "IdRef", "name" : "'Miss Index'" },
4693        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4694        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4695        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4696        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4697        { "kind" : "IdRef", "name" : "'Payload'" }
4698      ],
4699      "capabilities" : [ "RayTracingKHR" ],
4700      "extensions" : [ "SPV_KHR_ray_tracing" ],
4701      "version" : "None"
4702    },
4703    {
4704      "opname" : "OpExecuteCallableKHR",
4705      "class"  : "Reserved",
4706      "opcode" : 4446,
4707      "operands" : [
4708
4709        { "kind" : "IdRef", "name" : "'SBT Index'" },
4710        { "kind" : "IdRef", "name" : "'Callable Data'" }
4711      ],
4712      "capabilities" : [ "RayTracingKHR" ],
4713      "extensions" : [ "SPV_KHR_ray_tracing" ],
4714      "version" : "None"
4715    },
4716    {
4717      "opname" : "OpConvertUToAccelerationStructureKHR",
4718      "class"  : "Reserved",
4719      "opcode" : 4447,
4720      "operands" : [
4721        { "kind" : "IdResultType" },
4722        { "kind" : "IdResult" },
4723        { "kind" : "IdRef",        "name" : "'Accel'" }
4724      ],
4725      "capabilities" : [ "RayTracingKHR", "RayQueryKHR" ],
4726      "extensions" : [ "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4727      "version" : "None"
4728    },
4729    {
4730      "opname" : "OpIgnoreIntersectionKHR",
4731      "class"  : "Reserved",
4732      "opcode" : 4448,
4733      "capabilities" : [ "RayTracingKHR" ],
4734      "extensions" : [ "SPV_KHR_ray_tracing" ],
4735      "version" : "None"
4736    },
4737    {
4738      "opname" : "OpTerminateRayKHR",
4739      "class"  : "Reserved",
4740      "opcode" : 4449,
4741      "capabilities" : [ "RayTracingKHR" ],
4742      "extensions" : [ "SPV_KHR_ray_tracing" ],
4743      "version" : "None"
4744    },
4745    {
4746      "opname" : "OpSDot",
4747      "class"  : "Arithmetic",
4748      "aliases" : ["OpSDotKHR"],
4749      "opcode" : 4450,
4750      "operands" : [
4751        { "kind" : "IdResultType" },
4752        { "kind" : "IdResult" },
4753        { "kind" : "IdRef", "name" : "'Vector 1'" },
4754        { "kind" : "IdRef", "name" : "'Vector 2'" },
4755        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4756      ],
4757      "capabilities" : [ "DotProduct" ],
4758      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4759      "version" : "1.6"
4760    },
4761    {
4762      "opname" : "OpUDot",
4763      "class"  : "Arithmetic",
4764      "aliases" : ["OpUDotKHR"],
4765      "opcode" : 4451,
4766      "operands" : [
4767        { "kind" : "IdResultType" },
4768        { "kind" : "IdResult" },
4769        { "kind" : "IdRef", "name" : "'Vector 1'" },
4770        { "kind" : "IdRef", "name" : "'Vector 2'" },
4771        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4772      ],
4773      "capabilities" : [ "DotProduct" ],
4774      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4775      "version" : "1.6"
4776    },
4777    {
4778      "opname" : "OpSUDot",
4779      "class"  : "Arithmetic",
4780      "aliases" : ["OpSUDotKHR"],
4781      "opcode" : 4452,
4782      "operands" : [
4783        { "kind" : "IdResultType" },
4784        { "kind" : "IdResult" },
4785        { "kind" : "IdRef", "name" : "'Vector 1'" },
4786        { "kind" : "IdRef", "name" : "'Vector 2'" },
4787        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4788      ],
4789      "capabilities" : [ "DotProduct" ],
4790      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4791      "version" : "1.6"
4792    },
4793    {
4794      "opname" : "OpSDotAccSat",
4795      "class"  : "Arithmetic",
4796      "aliases" : ["OpSDotAccSatKHR"],
4797      "opcode" : 4453,
4798      "operands" : [
4799        { "kind" : "IdResultType" },
4800        { "kind" : "IdResult" },
4801        { "kind" : "IdRef", "name" : "'Vector 1'" },
4802        { "kind" : "IdRef", "name" : "'Vector 2'" },
4803        { "kind" : "IdRef", "name" : "'Accumulator'" },
4804        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4805      ],
4806      "capabilities" : [ "DotProduct" ],
4807      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4808      "version" : "1.6"
4809    },
4810    {
4811      "opname" : "OpUDotAccSat",
4812      "class"  : "Arithmetic",
4813      "aliases" : ["OpUDotAccSatKHR"],
4814      "opcode" : 4454,
4815      "operands" : [
4816        { "kind" : "IdResultType" },
4817        { "kind" : "IdResult" },
4818        { "kind" : "IdRef", "name" : "'Vector 1'" },
4819        { "kind" : "IdRef", "name" : "'Vector 2'" },
4820        { "kind" : "IdRef", "name" : "'Accumulator'" },
4821        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4822      ],
4823      "capabilities" : [ "DotProduct" ],
4824      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4825      "version" : "1.6"
4826    },
4827    {
4828      "opname" : "OpSUDotAccSat",
4829      "class"  : "Arithmetic",
4830      "aliases" : ["OpSUDotAccSatKHR"],
4831      "opcode" : 4455,
4832      "operands" : [
4833        { "kind" : "IdResultType" },
4834        { "kind" : "IdResult" },
4835        { "kind" : "IdRef", "name" : "'Vector 1'" },
4836        { "kind" : "IdRef", "name" : "'Vector 2'" },
4837        { "kind" : "IdRef", "name" : "'Accumulator'" },
4838        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4839      ],
4840      "capabilities" : [ "DotProduct" ],
4841      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4842      "version" : "1.6"
4843    },
4844    {
4845      "opname" : "OpTypeCooperativeMatrixKHR",
4846      "class"  : "Type-Declaration",
4847      "opcode" : 4456,
4848      "operands" : [
4849        { "kind" : "IdResult" },
4850        { "kind" : "IdRef",        "name" : "'Component Type'" },
4851        { "kind" : "IdScope",      "name" : "'Scope'" },
4852        { "kind" : "IdRef",        "name" : "'Rows'" },
4853        { "kind" : "IdRef",        "name" : "'Columns'" },
4854        { "kind" : "IdRef",        "name" : "'Use'" }
4855      ],
4856      "capabilities" : [ "CooperativeMatrixKHR" ],
4857      "version" : "None"
4858    },
4859    {
4860      "opname" : "OpCooperativeMatrixLoadKHR",
4861      "class"  : "Memory",
4862      "opcode" : 4457,
4863      "operands" : [
4864        { "kind" : "IdResultType" },
4865        { "kind" : "IdResult" },
4866        { "kind" : "IdRef",             "name" : "'Pointer'" },
4867        { "kind" : "IdRef",             "name" : "'MemoryLayout'" },
4868        { "kind" : "IdRef",             "name" : "'Stride'", "quantifier": "?" },
4869        { "kind" : "MemoryAccess",      "name" : "'Memory Operand'", "quantifier" : "?" }
4870      ],
4871      "capabilities" : [ "CooperativeMatrixKHR" ],
4872      "version" : "None"
4873    },
4874    {
4875      "opname" : "OpCooperativeMatrixStoreKHR",
4876      "class"  : "Memory",
4877      "opcode" : 4458,
4878      "operands" : [
4879        { "kind" : "IdRef",             "name" : "'Pointer'" },
4880        { "kind" : "IdRef",             "name" : "'Object'" },
4881        { "kind" : "IdRef",             "name" : "'MemoryLayout'" },
4882        { "kind" : "IdRef",             "name" : "'Stride'", "quantifier": "?" },
4883        { "kind" : "MemoryAccess",      "name" : "'Memory Operand'", "quantifier" : "?" }
4884      ],
4885      "capabilities" : [ "CooperativeMatrixKHR" ],
4886      "version" : "None"
4887    },
4888    {
4889      "opname" : "OpCooperativeMatrixMulAddKHR",
4890      "class"  : "Arithmetic",
4891      "opcode" : 4459,
4892      "operands" : [
4893        { "kind" : "IdResultType" },
4894        { "kind" : "IdResult" },
4895        { "kind" : "IdRef",             "name" : "'A'" },
4896        { "kind" : "IdRef",             "name" : "'B'" },
4897        { "kind" : "IdRef",             "name" : "'C'" },
4898        { "kind" : "CooperativeMatrixOperands", "name" : "'Cooperative Matrix Operands'", "quantifier" : "?" }
4899      ],
4900      "capabilities" : [ "CooperativeMatrixKHR" ],
4901      "version" : "None"
4902    },
4903    {
4904      "opname" : "OpCooperativeMatrixLengthKHR",
4905      "class"  : "Miscellaneous",
4906      "opcode" : 4460,
4907      "operands" : [
4908        { "kind" : "IdResultType" },
4909        { "kind" : "IdResult" },
4910        { "kind" : "IdRef",        "name" : "'Type'" }
4911      ],
4912      "capabilities" : [ "CooperativeMatrixKHR" ],
4913      "version" : "None"
4914    },
4915    {
4916      "opname" : "OpConstantCompositeReplicateEXT",
4917      "class"  : "Constant-Creation",
4918      "opcode" : 4461,
4919      "operands" : [
4920        { "kind" : "IdResultType" },
4921        { "kind" : "IdResult" },
4922        { "kind" : "IdRef",        "name" : "'Value'" }
4923      ],
4924      "capabilities" : [ "ReplicatedCompositesEXT" ],
4925      "version" : "None"
4926    },
4927    {
4928      "opname" : "OpSpecConstantCompositeReplicateEXT",
4929      "class"  : "Constant-Creation",
4930      "opcode" : 4462,
4931      "operands" : [
4932        { "kind" : "IdResultType" },
4933        { "kind" : "IdResult" },
4934        { "kind" : "IdRef",        "name" : "'Value'" }
4935      ],
4936      "capabilities" : [ "ReplicatedCompositesEXT" ],
4937      "version" : "None"
4938    },
4939    {
4940      "opname" : "OpCompositeConstructReplicateEXT",
4941      "class"  : "Composite",
4942      "opcode" : 4463,
4943      "operands" : [
4944        { "kind" : "IdResultType" },
4945        { "kind" : "IdResult" },
4946        { "kind" : "IdRef",        "name" : "'Value'" }
4947      ],
4948      "capabilities" : [ "ReplicatedCompositesEXT" ],
4949      "version" : "None"
4950    },
4951    {
4952        "opname" : "OpTypeRayQueryKHR",
4953        "class" : "Type-Declaration",
4954        "opcode" : 4472,
4955        "operands" : [
4956            { "kind" : "IdResult" }
4957        ],
4958        "capabilities" : [ "RayQueryKHR" ],
4959        "extensions" : [ "SPV_KHR_ray_query" ],
4960        "version" : "None"
4961    },
4962    {
4963        "opname" : "OpRayQueryInitializeKHR",
4964        "class" : "Reserved",
4965        "opcode" : 4473,
4966        "operands" : [
4967            {
4968                "kind" : "IdRef",
4969                "name" : "'RayQuery'"
4970            },
4971            {
4972                "kind" : "IdRef",
4973                "name" : "'Accel'"
4974            },
4975            {
4976                "kind" : "IdRef",
4977                "name" : "'RayFlags'"
4978            },
4979            {
4980                "kind" : "IdRef",
4981                "name" : "'CullMask'"
4982            },
4983            {
4984                "kind" : "IdRef",
4985                "name" : "'RayOrigin'"
4986            },
4987            {
4988                "kind" : "IdRef",
4989                "name" : "'RayTMin'"
4990            },
4991            {
4992                "kind" : "IdRef",
4993                "name" : "'RayDirection'"
4994            },
4995            {
4996                "kind" : "IdRef",
4997                "name" : "'RayTMax'"
4998            }
4999
5000        ],
5001        "capabilities" : [ "RayQueryKHR" ],
5002        "extensions" : [ "SPV_KHR_ray_query" ],
5003        "version" : "None"
5004    },
5005    {
5006        "opname" : "OpRayQueryTerminateKHR",
5007        "class" : "Reserved",
5008        "opcode" : 4474,
5009        "operands" : [
5010            {
5011                "kind" : "IdRef",
5012                "name" : "'RayQuery'"
5013            }
5014        ],
5015        "capabilities" : [ "RayQueryKHR" ],
5016        "extensions" : [ "SPV_KHR_ray_query" ],
5017        "version" : "None"
5018    },
5019    {
5020        "opname" : "OpRayQueryGenerateIntersectionKHR",
5021        "class" : "Reserved",
5022        "opcode" : 4475,
5023        "operands" : [
5024            {
5025                "kind" : "IdRef",
5026                "name" : "'RayQuery'"
5027            },
5028            {
5029                "kind" : "IdRef",
5030                "name" : "'HitT'"
5031            }
5032        ],
5033        "capabilities" : [ "RayQueryKHR" ],
5034        "extensions" : [ "SPV_KHR_ray_query" ],
5035        "version" : "None"
5036    },
5037    {
5038        "opname" : "OpRayQueryConfirmIntersectionKHR",
5039        "class" : "Reserved",
5040        "opcode" : 4476,
5041        "operands" : [
5042            {
5043                "kind" : "IdRef",
5044                "name" : "'RayQuery'"
5045            }
5046        ],
5047        "capabilities" : [ "RayQueryKHR" ],
5048        "extensions" : [ "SPV_KHR_ray_query" ],
5049        "version" : "None"
5050    },
5051    {
5052        "opname" : "OpRayQueryProceedKHR",
5053        "class" : "Reserved",
5054        "opcode" : 4477,
5055        "operands" : [
5056            { "kind" : "IdResultType" },
5057            { "kind" : "IdResult" },
5058            {
5059                "kind" : "IdRef",
5060                "name" : "'RayQuery'"
5061            }
5062        ],
5063        "capabilities" : [ "RayQueryKHR" ],
5064        "extensions" : [ "SPV_KHR_ray_query" ],
5065        "version" : "None"
5066    },
5067    {
5068        "opname" : "OpRayQueryGetIntersectionTypeKHR",
5069        "class" : "Reserved",
5070        "opcode" : 4479,
5071        "operands" : [
5072            { "kind" : "IdResultType" },
5073            { "kind" : "IdResult" },
5074            {
5075                "kind" : "IdRef",
5076                "name" : "'RayQuery'"
5077            },
5078            {
5079                "kind" : "IdRef",
5080                "name" : "'Intersection'"
5081            }
5082        ],
5083        "capabilities" : [ "RayQueryKHR" ],
5084        "extensions" : [ "SPV_KHR_ray_query" ],
5085        "version" : "None"
5086    },
5087    {
5088      "opname" : "OpImageSampleWeightedQCOM",
5089      "class"  : "Image",
5090      "opcode" : 4480,
5091      "operands" : [
5092        { "kind" : "IdResultType" },
5093        { "kind" : "IdResult" },
5094        { "kind" : "IdRef", "name" : "'Texture'" },
5095        { "kind" : "IdRef", "name" : "'Coordinates'" },
5096        { "kind" : "IdRef", "name" : "'Weights'" }
5097      ],
5098      "capabilities" : [ "TextureSampleWeightedQCOM" ],
5099      "version" : "None"
5100    },
5101    {
5102      "opname" : "OpImageBoxFilterQCOM",
5103      "class"  : "Image",
5104      "opcode" : 4481,
5105      "operands" : [
5106        { "kind" : "IdResultType" },
5107        { "kind" : "IdResult" },
5108        { "kind" : "IdRef", "name" : "'Texture'" },
5109        { "kind" : "IdRef", "name" : "'Coordinates'" },
5110        { "kind" : "IdRef", "name" : "'Box Size'" }
5111      ],
5112      "capabilities" : [ "TextureBoxFilterQCOM" ],
5113      "version" : "None"
5114    },
5115    {
5116      "opname" : "OpImageBlockMatchSSDQCOM",
5117      "class"  : "Image",
5118      "opcode" : 4482,
5119      "operands" : [
5120        { "kind" : "IdResultType" },
5121        { "kind" : "IdResult" },
5122        { "kind" : "IdRef", "name" : "'Target'" },
5123        { "kind" : "IdRef", "name" : "'Target Coordinates'" },
5124        { "kind" : "IdRef", "name" : "'Reference'" },
5125        { "kind" : "IdRef", "name" : "'Reference Coordinates'" },
5126        { "kind" : "IdRef", "name" : "'Block Size'" }
5127      ],
5128      "capabilities" : [ "TextureBlockMatchQCOM" ],
5129      "version" : "None"
5130    },
5131    {
5132      "opname" : "OpImageBlockMatchSADQCOM",
5133      "class"  : "Image",
5134      "opcode" : 4483,
5135      "operands" : [
5136        { "kind" : "IdResultType" },
5137        { "kind" : "IdResult" },
5138        { "kind" : "IdRef", "name" : "'Target'" },
5139        { "kind" : "IdRef", "name" : "'Target Coordinates'" },
5140        { "kind" : "IdRef", "name" : "'Reference'" },
5141        { "kind" : "IdRef", "name" : "'Reference Coordinates'" },
5142        { "kind" : "IdRef", "name" : "'Block Size'" }
5143      ],
5144      "capabilities" : [ "TextureBlockMatchQCOM" ],
5145      "version" : "None"
5146    },
5147    {
5148      "opname" : "OpImageBlockMatchWindowSSDQCOM",
5149      "class"  : "Image",
5150      "opcode" : 4500,
5151      "operands" : [
5152        { "kind" : "IdResultType" },
5153        { "kind" : "IdResult" },
5154        { "kind" : "IdRef", "name" : "'Target Sampled Image'" },
5155        { "kind" : "IdRef", "name" : "'Target Coordinates'" },
5156        { "kind" : "IdRef", "name" : "'Reference Sampled Image'" },
5157        { "kind" : "IdRef", "name" : "'Reference Coordinates'" },
5158        { "kind" : "IdRef", "name" : "'Block Size'" }
5159      ],
5160      "capabilities" : [ "TextureBlockMatch2QCOM" ],
5161      "version" : "None"
5162    },
5163    {
5164      "opname" : "OpImageBlockMatchWindowSADQCOM",
5165      "class"  : "Image",
5166      "opcode" : 4501,
5167      "operands" : [
5168        { "kind" : "IdResultType" },
5169        { "kind" : "IdResult" },
5170        { "kind" : "IdRef", "name" : "'Target Sampled Image'" },
5171        { "kind" : "IdRef", "name" : "'Target Coordinates'" },
5172        { "kind" : "IdRef", "name" : "'Reference Sampled Image'" },
5173        { "kind" : "IdRef", "name" : "'Reference Coordinates'" },
5174        { "kind" : "IdRef", "name" : "'Block Size'" }
5175      ],
5176      "capabilities" : [ "TextureBlockMatch2QCOM" ],
5177      "version" : "None"
5178    },
5179    {
5180      "opname" : "OpImageBlockMatchGatherSSDQCOM",
5181      "class"  : "Image",
5182      "opcode" : 4502,
5183      "operands" : [
5184        { "kind" : "IdResultType" },
5185        { "kind" : "IdResult" },
5186        { "kind" : "IdRef", "name" : "'Target Sampled Image'" },
5187        { "kind" : "IdRef", "name" : "'Target Coordinates'" },
5188        { "kind" : "IdRef", "name" : "'Reference Sampled Image'" },
5189        { "kind" : "IdRef", "name" : "'Reference Coordinates'" },
5190        { "kind" : "IdRef", "name" : "'Block Size'" }
5191      ],
5192      "capabilities" : [ "TextureBlockMatch2QCOM" ],
5193      "version" : "None"
5194    },
5195    {
5196      "opname" : "OpImageBlockMatchGatherSADQCOM",
5197      "class"  : "Image",
5198      "opcode" : 4503,
5199      "operands" : [
5200        { "kind" : "IdResultType" },
5201        { "kind" : "IdResult" },
5202        { "kind" : "IdRef", "name" : "'Target Sampled Image'" },
5203        { "kind" : "IdRef", "name" : "'Target Coordinates'" },
5204        { "kind" : "IdRef", "name" : "'Reference Sampled Image'" },
5205        { "kind" : "IdRef", "name" : "'Reference Coordinates'" },
5206        { "kind" : "IdRef", "name" : "'Block Size'" }
5207      ],
5208      "capabilities" : [ "TextureBlockMatch2QCOM" ],
5209      "version" : "None"
5210    },
5211    {
5212      "opname" : "OpGroupIAddNonUniformAMD",
5213      "class"  : "Group",
5214      "opcode" : 5000,
5215      "operands" : [
5216        { "kind" : "IdResultType" },
5217        { "kind" : "IdResult" },
5218        { "kind" : "IdScope",        "name" : "'Execution'" },
5219        { "kind" : "GroupOperation", "name" : "'Operation'" },
5220        { "kind" : "IdRef",          "name" : "'X'" }
5221      ],
5222      "capabilities" : [ "Groups" ],
5223      "extensions" : [ "SPV_AMD_shader_ballot" ],
5224      "version" : "None"
5225    },
5226    {
5227      "opname" : "OpGroupFAddNonUniformAMD",
5228      "class"  : "Group",
5229      "opcode" : 5001,
5230      "operands" : [
5231        { "kind" : "IdResultType" },
5232        { "kind" : "IdResult" },
5233        { "kind" : "IdScope",        "name" : "'Execution'" },
5234        { "kind" : "GroupOperation", "name" : "'Operation'" },
5235        { "kind" : "IdRef",          "name" : "'X'" }
5236      ],
5237      "capabilities" : [ "Groups" ],
5238      "extensions" : [ "SPV_AMD_shader_ballot" ],
5239      "version" : "None"
5240    },
5241    {
5242      "opname" : "OpGroupFMinNonUniformAMD",
5243      "class"  : "Group",
5244      "opcode" : 5002,
5245      "operands" : [
5246        { "kind" : "IdResultType" },
5247        { "kind" : "IdResult" },
5248        { "kind" : "IdScope",        "name" : "'Execution'" },
5249        { "kind" : "GroupOperation", "name" : "'Operation'" },
5250        { "kind" : "IdRef",          "name" : "'X'" }
5251      ],
5252      "capabilities" : [ "Groups" ],
5253      "extensions" : [ "SPV_AMD_shader_ballot" ],
5254      "version" : "None"
5255    },
5256    {
5257      "opname" : "OpGroupUMinNonUniformAMD",
5258      "class"  : "Group",
5259      "opcode" : 5003,
5260      "operands" : [
5261        { "kind" : "IdResultType" },
5262        { "kind" : "IdResult" },
5263        { "kind" : "IdScope",        "name" : "'Execution'" },
5264        { "kind" : "GroupOperation", "name" : "'Operation'" },
5265        { "kind" : "IdRef",          "name" : "'X'" }
5266      ],
5267      "capabilities" : [ "Groups" ],
5268      "extensions" : [ "SPV_AMD_shader_ballot" ],
5269      "version" : "None"
5270    },
5271    {
5272      "opname" : "OpGroupSMinNonUniformAMD",
5273      "class"  : "Group",
5274      "opcode" : 5004,
5275      "operands" : [
5276        { "kind" : "IdResultType" },
5277        { "kind" : "IdResult" },
5278        { "kind" : "IdScope",        "name" : "'Execution'" },
5279        { "kind" : "GroupOperation", "name" : "'Operation'" },
5280        { "kind" : "IdRef",          "name" : "'X'" }
5281      ],
5282      "capabilities" : [ "Groups" ],
5283      "extensions" : [ "SPV_AMD_shader_ballot" ],
5284      "version" : "None"
5285    },
5286    {
5287      "opname" : "OpGroupFMaxNonUniformAMD",
5288      "class"  : "Group",
5289      "opcode" : 5005,
5290      "operands" : [
5291        { "kind" : "IdResultType" },
5292        { "kind" : "IdResult" },
5293        { "kind" : "IdScope",        "name" : "'Execution'" },
5294        { "kind" : "GroupOperation", "name" : "'Operation'" },
5295        { "kind" : "IdRef",          "name" : "'X'" }
5296      ],
5297      "capabilities" : [ "Groups" ],
5298      "extensions" : [ "SPV_AMD_shader_ballot" ],
5299      "version" : "None"
5300    },
5301    {
5302      "opname" : "OpGroupUMaxNonUniformAMD",
5303      "class"  : "Group",
5304      "opcode" : 5006,
5305      "operands" : [
5306        { "kind" : "IdResultType" },
5307        { "kind" : "IdResult" },
5308        { "kind" : "IdScope",        "name" : "'Execution'" },
5309        { "kind" : "GroupOperation", "name" : "'Operation'" },
5310        { "kind" : "IdRef",          "name" : "'X'" }
5311      ],
5312      "capabilities" : [ "Groups" ],
5313      "extensions" : [ "SPV_AMD_shader_ballot" ],
5314      "version" : "None"
5315    },
5316    {
5317      "opname" : "OpGroupSMaxNonUniformAMD",
5318      "class"  : "Group",
5319      "opcode" : 5007,
5320      "operands" : [
5321        { "kind" : "IdResultType" },
5322        { "kind" : "IdResult" },
5323        { "kind" : "IdScope",        "name" : "'Execution'" },
5324        { "kind" : "GroupOperation", "name" : "'Operation'" },
5325        { "kind" : "IdRef",          "name" : "'X'" }
5326      ],
5327      "capabilities" : [ "Groups" ],
5328      "extensions" : [ "SPV_AMD_shader_ballot" ],
5329      "version" : "None"
5330    },
5331    {
5332      "opname" : "OpFragmentMaskFetchAMD",
5333      "class"  : "Reserved",
5334      "opcode" : 5011,
5335      "operands" : [
5336        { "kind" : "IdResultType" },
5337        { "kind" : "IdResult" },
5338        { "kind" : "IdRef", "name" : "'Image'" },
5339        { "kind" : "IdRef", "name" : "'Coordinate'" }
5340      ],
5341      "capabilities" : [ "FragmentMaskAMD" ],
5342      "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
5343      "version" : "None"
5344    },
5345    {
5346      "opname" : "OpFragmentFetchAMD",
5347      "class"  : "Reserved",
5348      "opcode" : 5012,
5349      "operands" : [
5350        { "kind" : "IdResultType" },
5351        { "kind" : "IdResult" },
5352        { "kind" : "IdRef", "name" : "'Image'" },
5353        { "kind" : "IdRef", "name" : "'Coordinate'" },
5354        { "kind" : "IdRef", "name" : "'Fragment Index'" }
5355      ],
5356      "capabilities" : [ "FragmentMaskAMD" ],
5357      "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
5358      "version" : "None"
5359    },
5360    {
5361      "opname" : "OpReadClockKHR",
5362      "class"  : "Reserved",
5363      "opcode" : 5056,
5364      "operands" : [
5365        { "kind" : "IdResultType" },
5366        { "kind" : "IdResult" },
5367        { "kind" : "IdScope", "name" : "'Scope'" }
5368      ],
5369      "capabilities" : [ "ShaderClockKHR" ],
5370      "version" : "None"
5371    },
5372    {
5373      "opname" : "OpAllocateNodePayloadsAMDX",
5374      "class"  : "Reserved",
5375      "opcode" : 5074,
5376      "operands" : [
5377        { "kind" : "IdResultType" },
5378        { "kind" : "IdResult" },
5379        { "kind" : "IdScope", "name" : "'Visibility'" },
5380        { "kind" : "IdRef", "name": "'Payload Count'" },
5381        { "kind" : "IdRef", "name": "'Node Index'" }
5382      ],
5383      "capabilities" : [ "ShaderEnqueueAMDX" ],
5384      "provisional" : true,
5385      "version" : "None"
5386    },
5387    {
5388      "opname" : "OpEnqueueNodePayloadsAMDX",
5389      "class"  : "Reserved",
5390      "opcode" : 5075,
5391      "operands" : [
5392        { "kind" : "IdRef", "name": "'Payload Array'" }
5393      ],
5394      "capabilities" : [ "ShaderEnqueueAMDX" ],
5395      "provisional" : true,
5396      "version" : "None"
5397    },
5398    {
5399      "opname" : "OpTypeNodePayloadArrayAMDX",
5400      "class"  : "Reserved",
5401      "opcode" : 5076,
5402      "operands" : [
5403        { "kind" : "IdResult" },
5404        { "kind" : "IdRef", "name": "'Payload Type'" }
5405      ],
5406      "capabilities" : [ "ShaderEnqueueAMDX" ],
5407      "provisional" : true,
5408      "version" : "None"
5409    },
5410    {
5411      "opname" : "OpFinishWritingNodePayloadAMDX",
5412      "class"  : "Reserved",
5413      "opcode" : 5078,
5414      "operands" : [
5415        { "kind" : "IdResultType" },
5416        { "kind" : "IdResult" },
5417        { "kind" : "IdRef", "name": "'Payload'" }
5418      ],
5419      "capabilities" : [ "ShaderEnqueueAMDX" ],
5420      "provisional" : true,
5421      "version" : "None"
5422    },
5423    {
5424      "opname" : "OpNodePayloadArrayLengthAMDX",
5425      "class"  : "Reserved",
5426      "opcode" : 5090,
5427      "operands" : [
5428        { "kind" : "IdResultType" },
5429        { "kind" : "IdResult" },
5430        { "kind" : "IdRef", "name": "'Payload Array'" }
5431      ],
5432      "capabilities" : [ "ShaderEnqueueAMDX" ],
5433      "provisional" : true,
5434      "version" : "None"
5435    },
5436    {
5437      "opname" : "OpIsNodePayloadValidAMDX",
5438      "class"  : "Reserved",
5439      "opcode" : 5101,
5440      "operands" : [
5441        { "kind" : "IdResultType" },
5442        { "kind" : "IdResult" },
5443        { "kind" : "IdRef", "name": "'Payload Type'" },
5444        { "kind" : "IdRef", "name": "'Node Index'" }
5445      ],
5446      "capabilities" : [ "ShaderEnqueueAMDX" ],
5447      "provisional" : true,
5448      "version": "None"
5449    },
5450    {
5451      "opname" : "OpConstantStringAMDX",
5452      "class"  : "Reserved",
5453      "opcode" : 5103,
5454      "operands" : [
5455        { "kind" : "IdResult" },
5456        { "kind" : "LiteralString", "name": "'Literal String'" }
5457      ],
5458      "capabilities" : [ "ShaderEnqueueAMDX" ],
5459      "provisional" : true,
5460      "version": "None"
5461    },
5462    {
5463      "opname" : "OpSpecConstantStringAMDX",
5464      "class"  : "Reserved",
5465      "opcode" : 5104,
5466      "operands" : [
5467        { "kind" : "IdResult" },
5468        { "kind" : "LiteralString", "name": "'Literal String'" }
5469      ],
5470      "capabilities" : [ "ShaderEnqueueAMDX" ],
5471      "provisional" : true,
5472      "version": "None"
5473    },
5474    {
5475      "opname" : "OpGroupNonUniformQuadAllKHR",
5476      "class"  : "Non-Uniform",
5477      "opcode" : 5110,
5478      "operands" : [
5479        { "kind" : "IdResultType" },
5480        { "kind" : "IdResult" },
5481        { "kind" : "IdRef", "name" : "'Predicate'" }
5482      ],
5483      "capabilities" : [ "QuadControlKHR" ],
5484      "version" : "None"
5485    },
5486    {
5487      "opname" : "OpGroupNonUniformQuadAnyKHR",
5488      "class"  : "Non-Uniform",
5489      "opcode" : 5111,
5490      "operands" : [
5491        { "kind" : "IdResultType" },
5492        { "kind" : "IdResult" },
5493        { "kind" : "IdRef", "name" : "'Predicate'" }
5494      ],
5495      "capabilities" : [ "QuadControlKHR" ],
5496      "version" : "None"
5497    },
5498    {
5499      "opname" : "OpHitObjectRecordHitMotionNV",
5500      "class"  : "Reserved",
5501      "opcode" : 5249,
5502      "operands" : [
5503        { "kind" : "IdRef", "name" : "'Hit Object'" },
5504        { "kind" : "IdRef", "name" : "'Acceleration Structure'" },
5505        { "kind" : "IdRef", "name" : "'InstanceId'" },
5506        { "kind" : "IdRef", "name" : "'PrimitiveId'" },
5507        { "kind" : "IdRef", "name" : "'GeometryIndex'" },
5508        { "kind" : "IdRef", "name" : "'Hit Kind'" },
5509        { "kind" : "IdRef", "name" : "'SBT Record Offset'" },
5510        { "kind" : "IdRef", "name" : "'SBT Record Stride'" },
5511        { "kind" : "IdRef", "name" : "'Origin'" },
5512        { "kind" : "IdRef", "name" : "'TMin'" },
5513        { "kind" : "IdRef", "name" : "'Direction'" },
5514        { "kind" : "IdRef", "name" : "'TMax'" },
5515        { "kind" : "IdRef", "name" : "'Current Time'" },
5516        { "kind" : "IdRef", "name" : "'HitObject Attributes'" }
5517      ],
5518      "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ],
5519      "version" : "None"
5520    },
5521    {
5522      "opname" : "OpHitObjectRecordHitWithIndexMotionNV",
5523      "class"  : "Reserved",
5524      "opcode" : 5250,
5525      "operands" : [
5526        { "kind" : "IdRef", "name" : "'Hit Object'" },
5527        { "kind" : "IdRef", "name" : "'Acceleration Structure'" },
5528        { "kind" : "IdRef", "name" : "'InstanceId'" },
5529        { "kind" : "IdRef", "name" : "'PrimitiveId'" },
5530        { "kind" : "IdRef", "name" : "'GeometryIndex'" },
5531        { "kind" : "IdRef", "name" : "'Hit Kind'" },
5532        { "kind" : "IdRef", "name" : "'SBT Record Index'" },
5533        { "kind" : "IdRef", "name" : "'Origin'" },
5534        { "kind" : "IdRef", "name" : "'TMin'" },
5535        { "kind" : "IdRef", "name" : "'Direction'" },
5536        { "kind" : "IdRef", "name" : "'TMax'" },
5537        { "kind" : "IdRef", "name" : "'Current Time'" },
5538        { "kind" : "IdRef", "name" : "'HitObject Attributes'" }
5539      ],
5540      "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ],
5541      "version" : "None"
5542    },
5543    {
5544      "opname" : "OpHitObjectRecordMissMotionNV",
5545      "class"  : "Reserved",
5546      "opcode" : 5251,
5547      "operands" : [
5548        { "kind" : "IdRef", "name" : "'Hit Object'" },
5549        { "kind" : "IdRef", "name" : "'SBT Index'" },
5550        { "kind" : "IdRef", "name" : "'Origin'" },
5551        { "kind" : "IdRef", "name" : "'TMin'" },
5552        { "kind" : "IdRef", "name" : "'Direction'" },
5553        { "kind" : "IdRef", "name" : "'TMax'" },
5554        { "kind" : "IdRef", "name" : "'Current Time'" }
5555      ],
5556      "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ],
5557      "version" : "None"
5558    },
5559    {
5560      "opname" : "OpHitObjectGetWorldToObjectNV",
5561      "class"  : "Reserved",
5562      "opcode" : 5252,
5563      "operands" : [
5564        { "kind" : "IdResultType"},
5565        { "kind" : "IdResult"},
5566        { "kind" : "IdRef", "name" : "'Hit Object'" }
5567      ],
5568      "capabilities" : [ "ShaderInvocationReorderNV" ],
5569      "version" : "None"
5570    },
5571    {
5572      "opname" : "OpHitObjectGetObjectToWorldNV",
5573      "class"  : "Reserved",
5574      "opcode" : 5253,
5575      "operands" : [
5576        { "kind" : "IdResultType"},
5577        { "kind" : "IdResult"},
5578        { "kind" : "IdRef", "name" : "'Hit Object'" }
5579      ],
5580      "capabilities" : [ "ShaderInvocationReorderNV" ],
5581      "version" : "None"
5582    },
5583    {
5584      "opname" : "OpHitObjectGetObjectRayDirectionNV",
5585      "class"  : "Reserved",
5586      "opcode" : 5254,
5587      "operands" : [
5588        { "kind" : "IdResultType"},
5589        { "kind" : "IdResult"},
5590        { "kind" : "IdRef", "name" : "'Hit Object'" }
5591      ],
5592      "capabilities" : [ "ShaderInvocationReorderNV" ],
5593      "version" : "None"
5594    },
5595    {
5596      "opname" : "OpHitObjectGetObjectRayOriginNV",
5597      "class"  : "Reserved",
5598      "opcode" : 5255,
5599      "operands" : [
5600        { "kind" : "IdResultType"},
5601        { "kind" : "IdResult"},
5602        { "kind" : "IdRef", "name" : "'Hit Object'" }
5603      ],
5604      "capabilities" : [ "ShaderInvocationReorderNV" ],
5605      "version" : "None"
5606    },
5607    {
5608      "opname" : "OpHitObjectTraceRayMotionNV",
5609      "class"  : "Reserved",
5610      "opcode" : 5256,
5611      "operands" : [
5612        { "kind" : "IdRef", "name" : "'Hit Object'" },
5613        { "kind" : "IdRef", "name" : "'Acceleration Structure'"},
5614        { "kind" : "IdRef", "name" : "'RayFlags'"},
5615        { "kind" : "IdRef", "name" : "'Cullmask'"},
5616        { "kind" : "IdRef", "name" : "'SBT Record Offset'"},
5617        { "kind" : "IdRef", "name" : "'SBT Record Stride'"},
5618        { "kind" : "IdRef", "name" : "'Miss Index'"},
5619        { "kind" : "IdRef", "name" : "'Origin'"},
5620        { "kind" : "IdRef", "name" : "'TMin'"},
5621        { "kind" : "IdRef", "name" : "'Direction'"},
5622        { "kind" : "IdRef", "name" : "'TMax'"},
5623        { "kind" : "IdRef", "name" : "'Time'"},
5624        { "kind" : "IdRef", "name" : "'Payload'"}
5625      ],
5626      "capabilities" : [ "ShaderInvocationReorderNV", "RayTracingMotionBlurNV" ],
5627      "version" : "None"
5628    },
5629    {
5630      "opname" : "OpHitObjectGetShaderRecordBufferHandleNV",
5631      "class"  : "Reserved",
5632      "opcode" : 5257,
5633      "operands" : [
5634        { "kind" : "IdResultType"},
5635        { "kind" : "IdResult"},
5636        { "kind" : "IdRef", "name" : "'Hit Object'" }
5637      ],
5638      "capabilities" : [ "ShaderInvocationReorderNV" ],
5639      "version" : "None"
5640    },
5641    {
5642      "opname" : "OpHitObjectGetShaderBindingTableRecordIndexNV",
5643      "class"  : "Reserved",
5644      "opcode" : 5258,
5645      "operands" : [
5646        { "kind" : "IdResultType"},
5647        { "kind" : "IdResult"},
5648        { "kind" : "IdRef", "name" : "'Hit Object'" }
5649      ],
5650      "capabilities" : [ "ShaderInvocationReorderNV" ],
5651      "version" : "None"
5652    },
5653    {
5654      "opname" : "OpHitObjectRecordEmptyNV",
5655      "class"  : "Reserved",
5656      "opcode" : 5259,
5657      "operands" : [
5658        { "kind" : "IdRef", "name" : "'Hit Object'" }
5659      ],
5660      "capabilities" : [ "ShaderInvocationReorderNV" ],
5661      "version" : "None"
5662    },
5663    {
5664      "opname" : "OpHitObjectTraceRayNV",
5665      "class"  : "Reserved",
5666      "opcode" : 5260,
5667      "operands" : [
5668        { "kind" : "IdRef", "name" : "'Hit Object'" },
5669        { "kind" : "IdRef", "name" : "'Acceleration Structure'"},
5670        { "kind" : "IdRef", "name" : "'RayFlags'"},
5671        { "kind" : "IdRef", "name" : "'Cullmask'"},
5672        { "kind" : "IdRef", "name" : "'SBT Record Offset'"},
5673        { "kind" : "IdRef", "name" : "'SBT Record Stride'"},
5674        { "kind" : "IdRef", "name" : "'Miss Index'"},
5675        { "kind" : "IdRef", "name" : "'Origin'"},
5676        { "kind" : "IdRef", "name" : "'TMin'"},
5677        { "kind" : "IdRef", "name" : "'Direction'"},
5678        { "kind" : "IdRef", "name" : "'TMax'"},
5679        { "kind" : "IdRef", "name" : "'Payload'"}
5680      ],
5681      "capabilities" : [ "ShaderInvocationReorderNV" ],
5682      "version" : "None"
5683    },
5684    {
5685      "opname" : "OpHitObjectRecordHitNV",
5686      "class"  : "Reserved",
5687      "opcode" : 5261,
5688      "operands" : [
5689        { "kind" : "IdRef", "name" : "'Hit Object'" },
5690        { "kind" : "IdRef", "name" : "'Acceleration Structure'" },
5691        { "kind" : "IdRef", "name" : "'InstanceId'" },
5692        { "kind" : "IdRef", "name" : "'PrimitiveId'" },
5693        { "kind" : "IdRef", "name" : "'GeometryIndex'" },
5694        { "kind" : "IdRef", "name" : "'Hit Kind'" },
5695        { "kind" : "IdRef", "name" : "'SBT Record Offset'" },
5696        { "kind" : "IdRef", "name" : "'SBT Record Stride'" },
5697        { "kind" : "IdRef", "name" : "'Origin'" },
5698        { "kind" : "IdRef", "name" : "'TMin'" },
5699        { "kind" : "IdRef", "name" : "'Direction'" },
5700        { "kind" : "IdRef", "name" : "'TMax'" },
5701        { "kind" : "IdRef", "name" : "'HitObject Attributes'" }
5702      ],
5703      "capabilities" : [ "ShaderInvocationReorderNV" ],
5704      "version" : "None"
5705    },
5706    {
5707      "opname" : "OpHitObjectRecordHitWithIndexNV",
5708      "class"  : "Reserved",
5709      "opcode" : 5262,
5710      "operands" : [
5711        { "kind" : "IdRef", "name" : "'Hit Object'" },
5712        { "kind" : "IdRef", "name" : "'Acceleration Structure'" },
5713        { "kind" : "IdRef", "name" : "'InstanceId'" },
5714        { "kind" : "IdRef", "name" : "'PrimitiveId'" },
5715        { "kind" : "IdRef", "name" : "'GeometryIndex'" },
5716        { "kind" : "IdRef", "name" : "'Hit Kind'" },
5717        { "kind" : "IdRef", "name" : "'SBT Record Index'" },
5718        { "kind" : "IdRef", "name" : "'Origin'" },
5719        { "kind" : "IdRef", "name" : "'TMin'" },
5720        { "kind" : "IdRef", "name" : "'Direction'" },
5721        { "kind" : "IdRef", "name" : "'TMax'" },
5722        { "kind" : "IdRef", "name" : "'HitObject Attributes'" }
5723      ],
5724      "capabilities" : [ "ShaderInvocationReorderNV" ],
5725      "version" : "None"
5726    },
5727    {
5728      "opname" : "OpHitObjectRecordMissNV",
5729      "class"  : "Reserved",
5730      "opcode" : 5263,
5731      "operands" : [
5732        { "kind" : "IdRef", "name" : "'Hit Object'" },
5733        { "kind" : "IdRef", "name" : "'SBT Index'" },
5734        { "kind" : "IdRef", "name" : "'Origin'" },
5735        { "kind" : "IdRef", "name" : "'TMin'" },
5736        { "kind" : "IdRef", "name" : "'Direction'" },
5737        { "kind" : "IdRef", "name" : "'TMax'" }
5738      ],
5739      "capabilities" : [ "ShaderInvocationReorderNV" ],
5740      "version" : "None"
5741    },
5742    {
5743      "opname" : "OpHitObjectExecuteShaderNV",
5744      "class"  : "Reserved",
5745      "opcode" : 5264,
5746      "operands" : [
5747        { "kind" : "IdRef", "name" : "'Hit Object'" },
5748        { "kind" : "IdRef", "name" : "'Payload'" }
5749      ],
5750      "capabilities" : [ "ShaderInvocationReorderNV" ],
5751      "version" : "None"
5752    },
5753    {
5754      "opname" : "OpHitObjectGetCurrentTimeNV",
5755      "class"  : "Reserved",
5756      "opcode" : 5265,
5757      "operands" : [
5758        { "kind" : "IdResultType"},
5759        { "kind" : "IdResult"},
5760        { "kind" : "IdRef", "name" : "'Hit Object'" }
5761      ],
5762      "capabilities" : [ "ShaderInvocationReorderNV" ],
5763      "version" : "None"
5764    },
5765    {
5766      "opname" : "OpHitObjectGetAttributesNV",
5767      "class"  : "Reserved",
5768      "opcode" : 5266,
5769      "operands" : [
5770        { "kind" : "IdRef", "name" : "'Hit Object'" },
5771        { "kind" : "IdRef", "name" : "'Hit Object Attribute'" }
5772      ],
5773      "capabilities" : [ "ShaderInvocationReorderNV" ],
5774      "version" : "None"
5775    },
5776    {
5777      "opname" : "OpHitObjectGetHitKindNV",
5778      "class"  : "Reserved",
5779      "opcode" : 5267,
5780      "operands" : [
5781        { "kind" : "IdResultType"},
5782        { "kind" : "IdResult"},
5783        { "kind" : "IdRef", "name" : "'Hit Object'" }
5784      ],
5785      "capabilities" : [ "ShaderInvocationReorderNV" ],
5786      "version" : "None"
5787    },
5788    {
5789      "opname" : "OpHitObjectGetPrimitiveIndexNV",
5790      "class"  : "Reserved",
5791      "opcode" : 5268,
5792      "operands" : [
5793        { "kind" : "IdResultType"},
5794        { "kind" : "IdResult"},
5795        { "kind" : "IdRef", "name" : "'Hit Object'" }
5796      ],
5797      "capabilities" : [ "ShaderInvocationReorderNV" ],
5798      "version" : "None"
5799    },
5800    {
5801      "opname" : "OpHitObjectGetGeometryIndexNV",
5802      "class"  : "Reserved",
5803      "opcode" : 5269,
5804      "operands" : [
5805        { "kind" : "IdResultType"},
5806        { "kind" : "IdResult"},
5807        { "kind" : "IdRef", "name" : "'Hit Object'" }
5808      ],
5809      "capabilities" : [ "ShaderInvocationReorderNV" ],
5810      "version" : "None"
5811    },
5812    {
5813      "opname" : "OpHitObjectGetInstanceIdNV",
5814      "class"  : "Reserved",
5815      "opcode" : 5270,
5816      "operands" : [
5817        { "kind" : "IdResultType"},
5818        { "kind" : "IdResult"},
5819        { "kind" : "IdRef", "name" : "'Hit Object'" }
5820      ],
5821      "capabilities" : [ "ShaderInvocationReorderNV" ],
5822      "version" : "None"
5823    },
5824    {
5825      "opname" : "OpHitObjectGetInstanceCustomIndexNV",
5826      "class"  : "Reserved",
5827      "opcode" : 5271,
5828      "operands" : [
5829        { "kind" : "IdResultType"},
5830        { "kind" : "IdResult"},
5831        { "kind" : "IdRef", "name" : "'Hit Object'" }
5832      ],
5833      "capabilities" : [ "ShaderInvocationReorderNV" ],
5834      "version" : "None"
5835    },
5836    {
5837      "opname" : "OpHitObjectGetWorldRayDirectionNV",
5838      "class"  : "Reserved",
5839      "opcode" : 5272,
5840      "operands" : [
5841        { "kind" : "IdResultType"},
5842        { "kind" : "IdResult"},
5843        { "kind" : "IdRef", "name" : "'Hit Object'" }
5844      ],
5845      "capabilities" : [ "ShaderInvocationReorderNV" ],
5846      "version" : "None"
5847    },
5848    {
5849      "opname" : "OpHitObjectGetWorldRayOriginNV",
5850      "class"  : "Reserved",
5851      "opcode" : 5273,
5852      "operands" : [
5853        { "kind" : "IdResultType"},
5854        { "kind" : "IdResult"},
5855        { "kind" : "IdRef", "name" : "'Hit Object'" }
5856      ],
5857      "capabilities" : [ "ShaderInvocationReorderNV" ],
5858      "version" : "None"
5859    },
5860    {
5861      "opname" : "OpHitObjectGetRayTMaxNV",
5862      "class"  : "Reserved",
5863      "opcode" : 5274,
5864      "operands" : [
5865        { "kind" : "IdResultType"},
5866        { "kind" : "IdResult"},
5867        { "kind" : "IdRef", "name" : "'Hit Object'" }
5868      ],
5869      "capabilities" : [ "ShaderInvocationReorderNV" ],
5870      "version" : "None"
5871    },
5872    {
5873      "opname" : "OpHitObjectGetRayTMinNV",
5874      "class"  : "Reserved",
5875      "opcode" : 5275,
5876      "operands" : [
5877        { "kind" : "IdResultType"},
5878        { "kind" : "IdResult"},
5879        { "kind" : "IdRef", "name" : "'Hit Object'" }
5880      ],
5881      "capabilities" : [ "ShaderInvocationReorderNV" ],
5882      "version" : "None"
5883    },
5884    {
5885      "opname" : "OpHitObjectIsEmptyNV",
5886      "class"  : "Reserved",
5887      "opcode" : 5276,
5888      "operands" : [
5889        { "kind" : "IdResultType"},
5890        { "kind" : "IdResult"},
5891        { "kind" : "IdRef", "name" : "'Hit Object'" }
5892      ],
5893      "capabilities" : [ "ShaderInvocationReorderNV" ],
5894      "version" : "None"
5895    },
5896    {
5897      "opname" : "OpHitObjectIsHitNV",
5898      "class"  : "Reserved",
5899      "opcode" : 5277,
5900      "operands" : [
5901        { "kind" : "IdResultType"},
5902        { "kind" : "IdResult"},
5903        { "kind" : "IdRef", "name" : "'Hit Object'" }
5904      ],
5905      "capabilities" : [ "ShaderInvocationReorderNV" ],
5906      "version" : "None"
5907    },
5908    {
5909      "opname" : "OpHitObjectIsMissNV",
5910      "class"  : "Reserved",
5911      "opcode" : 5278,
5912      "operands" : [
5913        { "kind" : "IdResultType"},
5914        { "kind" : "IdResult"},
5915        { "kind" : "IdRef", "name" : "'Hit Object'" }
5916      ],
5917      "capabilities" : [ "ShaderInvocationReorderNV" ],
5918      "version" : "None"
5919    },
5920    {
5921      "opname" : "OpReorderThreadWithHitObjectNV",
5922      "class"  : "Reserved",
5923      "opcode" : 5279,
5924      "operands" : [
5925        { "kind" : "IdRef", "name" : "'Hit Object'" },
5926        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Hint'" },
5927        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Bits'" }
5928      ],
5929      "capabilities" : [ "ShaderInvocationReorderNV" ],
5930      "version" : "None"
5931    },
5932    {
5933      "opname" : "OpReorderThreadWithHintNV",
5934      "class"  : "Reserved",
5935      "opcode" : 5280,
5936      "operands" : [
5937        { "kind" : "IdRef", "name" : "'Hint'" },
5938        { "kind" : "IdRef", "name" : "'Bits'" }
5939      ],
5940      "capabilities" : [ "ShaderInvocationReorderNV" ],
5941      "version" : "None"
5942    },
5943    {
5944      "opname" : "OpTypeHitObjectNV",
5945      "class"  : "Type-Declaration",
5946      "opcode" : 5281,
5947      "operands" : [
5948        { "kind" : "IdResult" }
5949      ],
5950      "capabilities" : [ "ShaderInvocationReorderNV" ],
5951      "version" : "None"
5952    },
5953    {
5954      "opname" : "OpImageSampleFootprintNV",
5955      "class"  : "Image",
5956      "opcode" : 5283,
5957      "operands" : [
5958        { "kind" : "IdResultType" },
5959        { "kind" : "IdResult" },
5960        { "kind" : "IdRef", "name" : "'Sampled Image'" },
5961        { "kind" : "IdRef", "name" : "'Coordinate'" },
5962        { "kind" : "IdRef", "name" : "'Granularity'" },
5963        { "kind" : "IdRef", "name" : "'Coarse'" },
5964        { "kind" : "ImageOperands", "quantifier" : "?" }
5965      ],
5966      "capabilities" : [ "ImageFootprintNV" ],
5967      "extensions" : [ "SPV_NV_shader_image_footprint" ],
5968      "version" : "None"
5969    },
5970    {
5971      "opname" : "OpCooperativeMatrixConvertNV",
5972      "class"  : "Conversion",
5973      "opcode" : 5293,
5974      "operands" : [
5975        { "kind" : "IdResultType" },
5976        { "kind" : "IdResult" },
5977        { "kind" : "IdRef",             "name" : "'Matrix'" }
5978      ],
5979      "capabilities" : [ "CooperativeMatrixConversionsNV" ],
5980      "version" : "None"
5981    },
5982    {
5983      "opname" : "OpEmitMeshTasksEXT",
5984      "class"  : "Reserved",
5985      "opcode" : 5294,
5986      "operands" : [
5987        { "kind" : "IdRef", "name" : "'Group Count X'" },
5988        { "kind" : "IdRef", "name" : "'Group Count Y'" },
5989        { "kind" : "IdRef", "name" : "'Group Count Z'" },
5990        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Payload'" }
5991      ],
5992      "capabilities" : [ "MeshShadingEXT" ],
5993      "version" : "None"
5994    },
5995    {
5996      "opname" : "OpSetMeshOutputsEXT",
5997      "class"  : "Reserved",
5998      "opcode" : 5295,
5999      "operands" : [
6000        { "kind" : "IdRef", "name" : "'Vertex Count'" },
6001        { "kind" : "IdRef", "name" : "'Primitive Count'" }
6002      ],
6003      "capabilities" : [ "MeshShadingEXT" ],
6004      "version" : "None"
6005    },
6006    {
6007      "opname" : "OpGroupNonUniformPartitionNV",
6008      "class"  : "Non-Uniform",
6009      "opcode" : 5296,
6010      "operands" : [
6011        { "kind" : "IdResultType" },
6012        { "kind" : "IdResult" },
6013        { "kind" : "IdRef", "name" : "'Value'" }
6014      ],
6015      "capabilities" : [ "GroupNonUniformPartitionedNV" ],
6016      "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
6017      "version" : "None"
6018    },
6019    {
6020      "opname" : "OpWritePackedPrimitiveIndices4x8NV",
6021      "class"  : "Reserved",
6022      "opcode" : 5299,
6023      "operands" : [
6024        { "kind" : "IdRef", "name" : "'Index Offset'" },
6025        { "kind" : "IdRef", "name" : "'Packed Indices'" }
6026      ],
6027      "capabilities" : [ "MeshShadingNV" ],
6028      "extensions" : [ "SPV_NV_mesh_shader" ],
6029      "version" : "None"
6030    },
6031    {
6032      "opname" : "OpFetchMicroTriangleVertexPositionNV",
6033      "class"  : "Reserved",
6034      "opcode" : 5300,
6035      "operands" : [
6036        { "kind" : "IdResultType" },
6037        { "kind" : "IdResult" },
6038        { "kind" : "IdRef", "name" : "'Accel'" },
6039        { "kind" : "IdRef", "name" : "'Instance Id'" },
6040        { "kind" : "IdRef", "name" : "'Geometry Index'" },
6041        { "kind" : "IdRef", "name" : "'Primitive Index'" },
6042        { "kind" : "IdRef", "name" : "'Barycentric'" }
6043      ],
6044      "capabilities" : [ "DisplacementMicromapNV" ],
6045      "version" : "None"
6046    },
6047    {
6048      "opname" : "OpFetchMicroTriangleVertexBarycentricNV",
6049      "class"  : "Reserved",
6050      "opcode" : 5301,
6051      "operands" : [
6052        { "kind" : "IdResultType" },
6053        { "kind" : "IdResult" },
6054        { "kind" : "IdRef", "name" : "'Accel'" },
6055        { "kind" : "IdRef", "name" : "'Instance Id'" },
6056        { "kind" : "IdRef", "name" : "'Geometry Index'" },
6057        { "kind" : "IdRef", "name" : "'Primitive Index'" },
6058        { "kind" : "IdRef", "name" : "'Barycentric'" }
6059      ],
6060      "capabilities" : [ "DisplacementMicromapNV" ],
6061      "version" : "None"
6062    },
6063    {
6064      "opname" : "OpReportIntersectionKHR",
6065      "class"  : "Reserved",
6066      "aliases" : ["OpReportIntersectionNV"],
6067      "opcode" : 5334,
6068      "operands" : [
6069        { "kind" : "IdResultType" },
6070        { "kind" : "IdResult" },
6071        { "kind" : "IdRef", "name" : "'Hit'" },
6072        { "kind" : "IdRef", "name" : "'HitKind'" }
6073      ],
6074      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
6075      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
6076      "version" : "None"
6077    },
6078    {
6079      "opname" : "OpIgnoreIntersectionNV",
6080      "class"  : "Reserved",
6081      "opcode" : 5335,
6082      "capabilities" : [ "RayTracingNV" ],
6083      "extensions" : [ "SPV_NV_ray_tracing" ],
6084      "version" : "None"
6085    },
6086    {
6087      "opname" : "OpTerminateRayNV",
6088      "class"  : "Reserved",
6089      "opcode" : 5336,
6090      "capabilities" : [ "RayTracingNV" ],
6091      "extensions" : [ "SPV_NV_ray_tracing" ],
6092      "version" : "None"
6093    },
6094    {
6095      "opname" : "OpTraceNV",
6096      "class"  : "Reserved",
6097      "opcode" : 5337,
6098      "operands" : [
6099
6100        { "kind" : "IdRef", "name" : "'Accel'" },
6101        { "kind" : "IdRef", "name" : "'Ray Flags'" },
6102        { "kind" : "IdRef", "name" : "'Cull Mask'" },
6103        { "kind" : "IdRef", "name" : "'SBT Offset'" },
6104        { "kind" : "IdRef", "name" : "'SBT Stride'" },
6105        { "kind" : "IdRef", "name" : "'Miss Index'" },
6106        { "kind" : "IdRef", "name" : "'Ray Origin'" },
6107        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
6108        { "kind" : "IdRef", "name" : "'Ray Direction'" },
6109        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
6110        { "kind" : "IdRef", "name" : "'PayloadId'" }
6111      ],
6112      "capabilities" : [ "RayTracingNV" ],
6113      "extensions" : [ "SPV_NV_ray_tracing" ],
6114      "version" : "None"
6115    },
6116    {
6117      "opname" : "OpTraceMotionNV",
6118      "class"  : "Reserved",
6119      "opcode" : 5338,
6120      "operands" : [
6121
6122        { "kind" : "IdRef", "name" : "'Accel'" },
6123        { "kind" : "IdRef", "name" : "'Ray Flags'" },
6124        { "kind" : "IdRef", "name" : "'Cull Mask'" },
6125        { "kind" : "IdRef", "name" : "'SBT Offset'" },
6126        { "kind" : "IdRef", "name" : "'SBT Stride'" },
6127        { "kind" : "IdRef", "name" : "'Miss Index'" },
6128        { "kind" : "IdRef", "name" : "'Ray Origin'" },
6129        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
6130        { "kind" : "IdRef", "name" : "'Ray Direction'" },
6131        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
6132        { "kind" : "IdRef", "name" : "'Time'" },
6133        { "kind" : "IdRef", "name" : "'PayloadId'" }
6134      ],
6135      "capabilities" : [ "RayTracingMotionBlurNV" ],
6136      "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
6137      "version" : "None"
6138    },
6139    {
6140      "opname" : "OpTraceRayMotionNV",
6141      "class"  : "Reserved",
6142      "opcode" : 5339,
6143      "operands" : [
6144
6145        { "kind" : "IdRef", "name" : "'Accel'" },
6146        { "kind" : "IdRef", "name" : "'Ray Flags'" },
6147        { "kind" : "IdRef", "name" : "'Cull Mask'" },
6148        { "kind" : "IdRef", "name" : "'SBT Offset'" },
6149        { "kind" : "IdRef", "name" : "'SBT Stride'" },
6150        { "kind" : "IdRef", "name" : "'Miss Index'" },
6151        { "kind" : "IdRef", "name" : "'Ray Origin'" },
6152        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
6153        { "kind" : "IdRef", "name" : "'Ray Direction'" },
6154        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
6155        { "kind" : "IdRef", "name" : "'Time'" },
6156        { "kind" : "IdRef", "name" : "'Payload'" }
6157      ],
6158      "capabilities" : [ "RayTracingMotionBlurNV" ],
6159      "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
6160      "version" : "None"
6161    },
6162    {
6163      "opname" : "OpRayQueryGetIntersectionTriangleVertexPositionsKHR",
6164      "class"  : "Reserved",
6165      "opcode" : 5340,
6166        "operands" : [
6167            { "kind" : "IdResultType" },
6168            { "kind" : "IdResult" },
6169            {
6170                "kind" : "IdRef",
6171                "name" : "'RayQuery'"
6172            },
6173            {
6174                "kind" : "IdRef",
6175                "name" : "'Intersection'"
6176            }
6177        ],
6178      "capabilities" : [ "RayQueryPositionFetchKHR" ],
6179      "version" : "None"
6180    },
6181    {
6182      "opname" : "OpTypeAccelerationStructureKHR",
6183      "class"  : "Type-Declaration",
6184      "aliases" : ["OpTypeAccelerationStructureNV"],
6185      "opcode" : 5341,
6186      "operands" : [
6187        { "kind" : "IdResult" }
6188      ],
6189      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
6190      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
6191      "version" : "None"
6192    },
6193    {
6194      "opname" : "OpExecuteCallableNV",
6195      "class"  : "Reserved",
6196      "opcode" : 5344,
6197      "operands" : [
6198
6199        { "kind" : "IdRef", "name" : "'SBT Index'" },
6200        { "kind" : "IdRef", "name" : "'Callable DataId'" }
6201      ],
6202      "capabilities" : [ "RayTracingNV" ],
6203      "extensions" : [ "SPV_NV_ray_tracing" ],
6204      "version" : "None"
6205    },
6206    {
6207      "opname" : "OpTypeCooperativeMatrixNV",
6208      "class"  : "Type-Declaration",
6209      "opcode" : 5358,
6210      "operands" : [
6211        { "kind" : "IdResult" },
6212        { "kind" : "IdRef",        "name" : "'Component Type'" },
6213        { "kind" : "IdScope",      "name" : "'Execution'" },
6214        { "kind" : "IdRef",        "name" : "'Rows'" },
6215        { "kind" : "IdRef",        "name" : "'Columns'" }
6216      ],
6217      "capabilities" : [ "CooperativeMatrixNV" ],
6218      "extensions" : [ "SPV_NV_cooperative_matrix" ],
6219      "version" : "None"
6220    },
6221    {
6222      "opname" : "OpCooperativeMatrixLoadNV",
6223      "class"  : "Reserved",
6224      "opcode" : 5359,
6225      "operands" : [
6226        { "kind" : "IdResultType" },
6227        { "kind" : "IdResult" },
6228        { "kind" : "IdRef",             "name" : "'Pointer'" },
6229        { "kind" : "IdRef",             "name" : "'Stride'" },
6230        { "kind" : "IdRef",             "name" : "'Column Major'" },
6231        { "kind" : "MemoryAccess",      "quantifier" : "?" }
6232      ],
6233      "capabilities" : [ "CooperativeMatrixNV" ],
6234      "extensions" : [ "SPV_NV_cooperative_matrix" ],
6235      "version" : "None"
6236    },
6237    {
6238      "opname" : "OpCooperativeMatrixStoreNV",
6239      "class"  : "Reserved",
6240      "opcode" : 5360,
6241      "operands" : [
6242        { "kind" : "IdRef",             "name" : "'Pointer'" },
6243        { "kind" : "IdRef",             "name" : "'Object'" },
6244        { "kind" : "IdRef",             "name" : "'Stride'" },
6245        { "kind" : "IdRef",             "name" : "'Column Major'" },
6246        { "kind" : "MemoryAccess",      "quantifier" : "?" }
6247      ],
6248      "capabilities" : [ "CooperativeMatrixNV" ],
6249      "extensions" : [ "SPV_NV_cooperative_matrix" ],
6250      "version" : "None"
6251    },
6252    {
6253      "opname" : "OpCooperativeMatrixMulAddNV",
6254      "class"  : "Reserved",
6255      "opcode" : 5361,
6256      "operands" : [
6257        { "kind" : "IdResultType" },
6258        { "kind" : "IdResult" },
6259        { "kind" : "IdRef",             "name" : "'A'" },
6260        { "kind" : "IdRef",             "name" : "'B'" },
6261        { "kind" : "IdRef",             "name" : "'C'" }
6262      ],
6263      "capabilities" : [ "CooperativeMatrixNV" ],
6264      "extensions" : [ "SPV_NV_cooperative_matrix" ],
6265      "version" : "None"
6266    },
6267    {
6268      "opname" : "OpCooperativeMatrixLengthNV",
6269      "class"  : "Reserved",
6270      "opcode" : 5362,
6271      "operands" : [
6272        { "kind" : "IdResultType" },
6273        { "kind" : "IdResult" },
6274        { "kind" : "IdRef",        "name" : "'Type'" }
6275      ],
6276      "capabilities" : [ "CooperativeMatrixNV" ],
6277      "extensions" : [ "SPV_NV_cooperative_matrix" ],
6278      "version" : "None"
6279    },
6280    {
6281      "opname" : "OpBeginInvocationInterlockEXT",
6282      "class"  : "Reserved",
6283      "opcode" : 5364,
6284      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
6285      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6286      "version" : "None"
6287    },
6288    {
6289      "opname" : "OpEndInvocationInterlockEXT",
6290      "class"  : "Reserved",
6291      "opcode" : 5365,
6292      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
6293      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6294      "version" : "None"
6295    },
6296    {
6297      "opname" : "OpCooperativeMatrixReduceNV",
6298      "class"  : "Arithmetic",
6299      "opcode" : 5366,
6300      "operands" : [
6301        { "kind" : "IdResultType" },
6302        { "kind" : "IdResult" },
6303        { "kind" : "IdRef", "name" : "'Matrix'" },
6304        { "kind" : "CooperativeMatrixReduce",      "name" : "'Reduce'" },
6305        { "kind" : "IdRef", "name" : "'CombineFunc'" }
6306      ],
6307      "capabilities" : [ "CooperativeMatrixReductionsNV" ],
6308      "version" : "None"
6309    },
6310    {
6311      "opname" : "OpCooperativeMatrixLoadTensorNV",
6312      "class"  : "Memory",
6313      "opcode" : 5367,
6314      "operands" : [
6315        { "kind" : "IdResultType" },
6316        { "kind" : "IdResult" },
6317        { "kind" : "IdRef",             "name" : "'Pointer'" },
6318        { "kind" : "IdRef",             "name" : "'Object'" },
6319        { "kind" : "IdRef",             "name" : "'TensorLayout'" },
6320        { "kind" : "MemoryAccess",      "name" : "'Memory Operand'"},
6321        { "kind" : "TensorAddressingOperands", "name" : "'Tensor Addressing Operands'"}
6322      ],
6323      "capabilities" : [ "CooperativeMatrixTensorAddressingNV" ],
6324      "version" : "None"
6325    },
6326    {
6327      "opname" : "OpCooperativeMatrixStoreTensorNV",
6328      "class"  : "Memory",
6329      "opcode" : 5368,
6330      "operands" : [
6331        { "kind" : "IdRef",             "name" : "'Pointer'" },
6332        { "kind" : "IdRef",             "name" : "'Object'" },
6333        { "kind" : "IdRef",             "name" : "'TensorLayout'" },
6334        { "kind" : "MemoryAccess",      "name" : "'Memory Operand'"},
6335        { "kind" : "TensorAddressingOperands", "name" : "'Tensor Addressing Operands'"}
6336      ],
6337      "capabilities" : [ "CooperativeMatrixTensorAddressingNV" ],
6338      "version" : "None"
6339    },
6340    {
6341      "opname" : "OpCooperativeMatrixPerElementOpNV",
6342      "class"  : "Function",
6343      "opcode" : 5369,
6344      "operands" : [
6345        { "kind" : "IdResultType" },
6346        { "kind" : "IdResult" },
6347        { "kind" : "IdRef", "name" : "'Matrix'" },
6348        { "kind" : "IdRef", "name" : "'Func'" },
6349        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Operands'" }
6350      ],
6351      "capabilities" : [ "CooperativeMatrixPerElementOperationsNV" ],
6352      "version" : "None"
6353    },
6354    {
6355      "opname" : "OpTypeTensorLayoutNV",
6356      "class"  : "Type-Declaration",
6357      "opcode" : 5370,
6358      "operands" : [
6359        { "kind" : "IdResult" },
6360        { "kind" : "IdRef",             "name" : "'Dim'" },
6361        { "kind" : "IdRef",             "name" : "'ClampMode'" }
6362      ],
6363      "capabilities" : [ "TensorAddressingNV" ],
6364      "version" : "None"
6365    },
6366    {
6367      "opname" : "OpTypeTensorViewNV",
6368      "class"  : "Type-Declaration",
6369      "opcode" : 5371,
6370      "operands" : [
6371        { "kind" : "IdResult" },
6372        { "kind" : "IdRef",             "name" : "'Dim'" },
6373        { "kind" : "IdRef",             "name" : "'HasDimensions'" },
6374        { "kind" : "IdRef", "quantifier" : "*", "name" : "'p'" }
6375      ],
6376      "capabilities" : [ "TensorAddressingNV" ],
6377      "version" : "None"
6378    },
6379    {
6380      "opname" : "OpCreateTensorLayoutNV",
6381      "class"  : "Reserved",
6382      "opcode" : 5372,
6383      "operands" : [
6384        { "kind" : "IdResultType" },
6385        { "kind" : "IdResult" }
6386      ],
6387      "capabilities" : [ "TensorAddressingNV" ],
6388      "version" : "None"
6389    },
6390    {
6391      "opname" : "OpTensorLayoutSetDimensionNV",
6392      "class"  : "Reserved",
6393      "opcode" : 5373,
6394      "operands" : [
6395        { "kind" : "IdResultType" },
6396        { "kind" : "IdResult" },
6397        { "kind" : "IdRef",                     "name" : "'TensorLayout'" },
6398        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Dim'" }
6399
6400      ],
6401      "capabilities" : [ "TensorAddressingNV" ],
6402      "version" : "None"
6403    },
6404    {
6405      "opname" : "OpTensorLayoutSetStrideNV",
6406      "class"  : "Reserved",
6407      "opcode" : 5374,
6408      "operands" : [
6409        { "kind" : "IdResultType" },
6410        { "kind" : "IdResult" },
6411        { "kind" : "IdRef",                     "name" : "'TensorLayout'" },
6412        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Stride'" }
6413
6414      ],
6415      "capabilities" : [ "TensorAddressingNV" ],
6416      "version" : "None"
6417    },
6418    {
6419      "opname" : "OpTensorLayoutSliceNV",
6420      "class"  : "Reserved",
6421      "opcode" : 5375,
6422      "operands" : [
6423        { "kind" : "IdResultType" },
6424        { "kind" : "IdResult" },
6425        { "kind" : "IdRef",                     "name" : "'TensorLayout'" },
6426        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operands'" }
6427
6428      ],
6429      "capabilities" : [ "TensorAddressingNV" ],
6430      "version" : "None"
6431    },
6432    {
6433      "opname" : "OpTensorLayoutSetClampValueNV",
6434      "class"  : "Reserved",
6435      "opcode" : 5376,
6436      "operands" : [
6437        { "kind" : "IdResultType" },
6438        { "kind" : "IdResult" },
6439        { "kind" : "IdRef",                     "name" : "'TensorLayout'" },
6440        { "kind" : "IdRef",                     "name" : "'Value'" }
6441
6442      ],
6443      "capabilities" : [ "TensorAddressingNV" ],
6444      "version" : "None"
6445    },
6446    {
6447      "opname" : "OpCreateTensorViewNV",
6448      "class"  : "Reserved",
6449      "opcode" : 5377,
6450      "operands" : [
6451        { "kind" : "IdResultType" },
6452        { "kind" : "IdResult" }
6453      ],
6454      "capabilities" : [ "TensorAddressingNV" ],
6455      "version" : "None"
6456    },
6457    {
6458      "opname" : "OpTensorViewSetDimensionNV",
6459      "class"  : "Reserved",
6460      "opcode" : 5378,
6461      "operands" : [
6462        { "kind" : "IdResultType" },
6463        { "kind" : "IdResult" },
6464        { "kind" : "IdRef",                     "name" : "'TensorView'" },
6465        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Dim'" }
6466
6467      ],
6468      "capabilities" : [ "TensorAddressingNV" ],
6469      "version" : "None"
6470    },
6471    {
6472      "opname" : "OpTensorViewSetStrideNV",
6473      "class"  : "Reserved",
6474      "opcode" : 5379,
6475      "operands" : [
6476        { "kind" : "IdResultType" },
6477        { "kind" : "IdResult" },
6478        { "kind" : "IdRef",                     "name" : "'TensorView'" },
6479        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Stride'" }
6480
6481      ],
6482      "capabilities" : [ "TensorAddressingNV" ],
6483      "version" : "None"
6484    },
6485    {
6486      "opname" : "OpDemoteToHelperInvocation",
6487      "class"  : "Control-Flow",
6488      "aliases" : ["OpDemoteToHelperInvocationEXT"],
6489      "opcode" : 5380,
6490      "capabilities" : [ "DemoteToHelperInvocation" ],
6491      "version" : "1.6"
6492    },
6493    {
6494      "opname" : "OpIsHelperInvocationEXT",
6495      "class"  : "Reserved",
6496      "opcode" : 5381,
6497      "operands" : [
6498        { "kind" : "IdResultType" },
6499        { "kind" : "IdResult" }
6500      ],
6501      "capabilities" : [ "DemoteToHelperInvocation" ],
6502      "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
6503      "version" : "None"
6504    },
6505    {
6506      "opname" : "OpTensorViewSetClipNV",
6507      "class"  : "Reserved",
6508      "opcode" : 5382,
6509      "operands" : [
6510        { "kind" : "IdResultType" },
6511        { "kind" : "IdResult" },
6512        { "kind" : "IdRef",                     "name" : "'TensorView'" },
6513        { "kind" : "IdRef",                     "name" : "'ClipRowOffset'" },
6514        { "kind" : "IdRef",                     "name" : "'ClipRowSpan'" },
6515        { "kind" : "IdRef",                     "name" : "'ClipColOffset'" },
6516        { "kind" : "IdRef",                     "name" : "'ClipColSpan'" }
6517      ],
6518      "capabilities" : [ "TensorAddressingNV" ],
6519      "version" : "None"
6520    },
6521    {
6522      "opname" : "OpTensorLayoutSetBlockSizeNV",
6523      "class"  : "Reserved",
6524      "opcode" : 5384,
6525      "operands" : [
6526        { "kind" : "IdResultType" },
6527        { "kind" : "IdResult" },
6528        { "kind" : "IdRef",                     "name" : "'TensorLayout'" },
6529        { "kind" : "IdRef", "quantifier" : "*", "name" : "'BlockSize'" }
6530
6531      ],
6532      "capabilities" : [ "TensorAddressingNV" ],
6533      "version" : "None"
6534    },
6535    {
6536      "opname" : "OpCooperativeMatrixTransposeNV",
6537      "class"  : "Conversion",
6538      "opcode" : 5390,
6539      "operands" : [
6540        { "kind" : "IdResultType" },
6541        { "kind" : "IdResult" },
6542        { "kind" : "IdRef", "name" : "'Matrix'" }
6543      ],
6544      "capabilities" : [ "CooperativeMatrixConversionsNV" ],
6545      "version" : "None"
6546    },
6547    {
6548      "opname" : "OpConvertUToImageNV",
6549      "class"  : "Reserved",
6550      "opcode" : 5391,
6551      "operands" : [
6552        { "kind" : "IdResultType" },
6553        { "kind" : "IdResult" },
6554        { "kind" : "IdRef", "name" : "'Operand'" }
6555      ],
6556      "capabilities" : [ "BindlessTextureNV" ],
6557      "version" : "None"
6558    },
6559    {
6560      "opname" : "OpConvertUToSamplerNV",
6561      "class"  : "Reserved",
6562      "opcode" : 5392,
6563      "operands" : [
6564        { "kind" : "IdResultType" },
6565        { "kind" : "IdResult" },
6566        { "kind" : "IdRef", "name" : "'Operand'" }
6567      ],
6568      "capabilities" : [ "BindlessTextureNV" ],
6569      "version" : "None"
6570    },
6571    {
6572      "opname" : "OpConvertImageToUNV",
6573      "class"  : "Reserved",
6574      "opcode" : 5393,
6575      "operands" : [
6576        { "kind" : "IdResultType" },
6577        { "kind" : "IdResult" },
6578        { "kind" : "IdRef", "name" : "'Operand'" }
6579      ],
6580      "capabilities" : [ "BindlessTextureNV" ],
6581      "version" : "None"
6582    },
6583    {
6584      "opname" : "OpConvertSamplerToUNV",
6585      "class"  : "Reserved",
6586      "opcode" : 5394,
6587      "operands" : [
6588        { "kind" : "IdResultType" },
6589        { "kind" : "IdResult" },
6590        { "kind" : "IdRef", "name" : "'Operand'" }
6591      ],
6592      "capabilities" : [ "BindlessTextureNV" ],
6593      "version" : "None"
6594    },
6595    {
6596      "opname" : "OpConvertUToSampledImageNV",
6597      "class"  : "Reserved",
6598      "opcode" : 5395,
6599      "operands" : [
6600        { "kind" : "IdResultType" },
6601        { "kind" : "IdResult" },
6602        { "kind" : "IdRef", "name" : "'Operand'" }
6603      ],
6604      "capabilities" : [ "BindlessTextureNV" ],
6605      "version" : "None"
6606    },
6607    {
6608      "opname" : "OpConvertSampledImageToUNV",
6609      "class"  : "Reserved",
6610      "opcode" : 5396,
6611      "operands" : [
6612        { "kind" : "IdResultType" },
6613        { "kind" : "IdResult" },
6614        { "kind" : "IdRef", "name" : "'Operand'" }
6615      ],
6616      "capabilities" : [ "BindlessTextureNV" ],
6617      "version" : "None"
6618    },
6619    {
6620      "opname" : "OpSamplerImageAddressingModeNV",
6621      "class"  : "Reserved",
6622      "opcode" : 5397,
6623      "operands" : [
6624        { "kind" : "LiteralInteger", "name" : "'Bit Width'" }
6625      ],
6626      "capabilities" : [ "BindlessTextureNV" ],
6627      "version" : "None"
6628    },
6629    {
6630      "opname" : "OpRawAccessChainNV",
6631      "class"  : "Memory",
6632      "opcode" : 5398,
6633      "operands" : [
6634        { "kind" : "IdResultType" },
6635        { "kind" : "IdResult" },
6636        { "kind" : "IdRef",          "name" : "'Base'" },
6637        { "kind" : "IdRef",          "name" : "'Byte stride'" },
6638        { "kind" : "IdRef",          "name" : "'Element index'" },
6639        { "kind" : "IdRef",          "name" : "'Byte offset'" },
6640        { "kind" : "RawAccessChainOperands", "quantifier" : "?" }
6641      ],
6642      "capabilities" : [
6643        "RawAccessChainsNV"
6644      ],
6645      "version" : "None"
6646    },
6647    {
6648      "opname" : "OpSubgroupShuffleINTEL",
6649      "class"  : "Group",
6650      "opcode" : 5571,
6651      "operands" : [
6652        { "kind" : "IdResultType" },
6653        { "kind" : "IdResult" },
6654        { "kind" : "IdRef", "name" : "'Data'" },
6655        { "kind" : "IdRef", "name" : "'InvocationId'" }
6656      ],
6657      "capabilities" : [ "SubgroupShuffleINTEL" ],
6658      "version" : "None"
6659    },
6660    {
6661      "opname" : "OpSubgroupShuffleDownINTEL",
6662      "class"  : "Group",
6663      "opcode" : 5572,
6664      "operands" : [
6665        { "kind" : "IdResultType" },
6666        { "kind" : "IdResult" },
6667        { "kind" : "IdRef", "name" : "'Current'" },
6668        { "kind" : "IdRef", "name" : "'Next'" },
6669        { "kind" : "IdRef", "name" : "'Delta'" }
6670      ],
6671      "capabilities" : [ "SubgroupShuffleINTEL" ],
6672      "version" : "None"
6673    },
6674    {
6675      "opname" : "OpSubgroupShuffleUpINTEL",
6676      "class"  : "Group",
6677      "opcode" : 5573,
6678      "operands" : [
6679        { "kind" : "IdResultType" },
6680        { "kind" : "IdResult" },
6681        { "kind" : "IdRef", "name" : "'Previous'" },
6682        { "kind" : "IdRef", "name" : "'Current'" },
6683        { "kind" : "IdRef", "name" : "'Delta'" }
6684      ],
6685      "capabilities" : [ "SubgroupShuffleINTEL" ],
6686      "version" : "None"
6687    },
6688    {
6689      "opname" : "OpSubgroupShuffleXorINTEL",
6690      "class"  : "Group",
6691      "opcode" : 5574,
6692      "operands" : [
6693        { "kind" : "IdResultType" },
6694        { "kind" : "IdResult" },
6695        { "kind" : "IdRef", "name" : "'Data'" },
6696        { "kind" : "IdRef", "name" : "'Value'" }
6697      ],
6698      "capabilities" : [ "SubgroupShuffleINTEL" ],
6699      "version" : "None"
6700    },
6701    {
6702      "opname" : "OpSubgroupBlockReadINTEL",
6703      "class"  : "Group",
6704      "opcode" : 5575,
6705      "operands" : [
6706        { "kind" : "IdResultType" },
6707        { "kind" : "IdResult" },
6708        { "kind" : "IdRef", "name" : "'Ptr'" }
6709      ],
6710      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
6711      "version" : "None"
6712    },
6713    {
6714      "opname" : "OpSubgroupBlockWriteINTEL",
6715      "class"  : "Group",
6716      "opcode" : 5576,
6717      "operands" : [
6718        { "kind" : "IdRef", "name" : "'Ptr'" },
6719        { "kind" : "IdRef", "name" : "'Data'" }
6720      ],
6721      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
6722      "version" : "None"
6723    },
6724    {
6725      "opname" : "OpSubgroupImageBlockReadINTEL",
6726      "class"  : "Group",
6727      "opcode" : 5577,
6728      "operands" : [
6729        { "kind" : "IdResultType" },
6730        { "kind" : "IdResult" },
6731        { "kind" : "IdRef", "name" : "'Image'" },
6732        { "kind" : "IdRef", "name" : "'Coordinate'" }
6733      ],
6734      "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
6735      "version" : "None"
6736    },
6737    {
6738      "opname" : "OpSubgroupImageBlockWriteINTEL",
6739      "class"  : "Group",
6740      "opcode" : 5578,
6741      "operands" : [
6742        { "kind" : "IdRef", "name" : "'Image'" },
6743        { "kind" : "IdRef", "name" : "'Coordinate'" },
6744        { "kind" : "IdRef", "name" : "'Data'" }
6745      ],
6746      "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
6747      "version" : "None"
6748    },
6749    {
6750      "opname" : "OpSubgroupImageMediaBlockReadINTEL",
6751      "class"  : "Group",
6752      "opcode" : 5580,
6753      "operands" : [
6754        { "kind" : "IdResultType" },
6755        { "kind" : "IdResult" },
6756        { "kind" : "IdRef", "name" : "'Image'" },
6757        { "kind" : "IdRef", "name" : "'Coordinate'" },
6758        { "kind" : "IdRef", "name" : "'Width'" },
6759        { "kind" : "IdRef", "name" : "'Height'" }
6760      ],
6761      "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
6762      "version" : "None"
6763    },
6764    {
6765      "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
6766      "class"  : "Group",
6767      "opcode" : 5581,
6768      "operands" : [
6769        { "kind" : "IdRef", "name" : "'Image'" },
6770        { "kind" : "IdRef", "name" : "'Coordinate'" },
6771        { "kind" : "IdRef", "name" : "'Width'" },
6772        { "kind" : "IdRef", "name" : "'Height'" },
6773        { "kind" : "IdRef", "name" : "'Data'" }
6774      ],
6775      "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
6776      "version" : "None"
6777    },
6778    {
6779      "opname" : "OpUCountLeadingZerosINTEL",
6780      "class"  : "Reserved",
6781      "opcode" : 5585,
6782      "operands" : [
6783        { "kind" : "IdResultType" },
6784        { "kind" : "IdResult" },
6785        { "kind" : "IdRef",        "name" : "'Operand'" }
6786      ],
6787      "capabilities" : [ "IntegerFunctions2INTEL" ],
6788      "version" : "None"
6789    },
6790    {
6791      "opname" : "OpUCountTrailingZerosINTEL",
6792      "class"  : "Reserved",
6793      "opcode" : 5586,
6794      "operands" : [
6795        { "kind" : "IdResultType" },
6796        { "kind" : "IdResult" },
6797        { "kind" : "IdRef",        "name" : "'Operand'" }
6798      ],
6799      "capabilities" : [ "IntegerFunctions2INTEL" ],
6800      "version" : "None"
6801    },
6802    {
6803      "opname" : "OpAbsISubINTEL",
6804      "class"  : "Reserved",
6805      "opcode" : 5587,
6806      "operands" : [
6807        { "kind" : "IdResultType" },
6808        { "kind" : "IdResult" },
6809        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6810        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6811      ],
6812      "capabilities" : [ "IntegerFunctions2INTEL" ],
6813      "version" : "None"
6814    },
6815    {
6816      "opname" : "OpAbsUSubINTEL",
6817      "class"  : "Reserved",
6818      "opcode" : 5588,
6819      "operands" : [
6820        { "kind" : "IdResultType" },
6821        { "kind" : "IdResult" },
6822        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6823        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6824      ],
6825      "capabilities" : [ "IntegerFunctions2INTEL" ],
6826      "version" : "None"
6827    },
6828    {
6829      "opname" : "OpIAddSatINTEL",
6830      "class"  : "Reserved",
6831      "opcode" : 5589,
6832      "operands" : [
6833        { "kind" : "IdResultType" },
6834        { "kind" : "IdResult" },
6835        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6836        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6837      ],
6838      "capabilities" : [ "IntegerFunctions2INTEL" ],
6839      "version" : "None"
6840    },
6841    {
6842      "opname" : "OpUAddSatINTEL",
6843      "class"  : "Reserved",
6844      "opcode" : 5590,
6845      "operands" : [
6846        { "kind" : "IdResultType" },
6847        { "kind" : "IdResult" },
6848        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6849        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6850      ],
6851      "capabilities" : [ "IntegerFunctions2INTEL" ],
6852      "version" : "None"
6853    },
6854    {
6855      "opname" : "OpIAverageINTEL",
6856      "class"  : "Reserved",
6857      "opcode" : 5591,
6858      "operands" : [
6859        { "kind" : "IdResultType" },
6860        { "kind" : "IdResult" },
6861        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6862        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6863      ],
6864      "capabilities" : [ "IntegerFunctions2INTEL" ],
6865      "version" : "None"
6866    },
6867    {
6868      "opname" : "OpUAverageINTEL",
6869      "class"  : "Reserved",
6870      "opcode" : 5592,
6871      "operands" : [
6872        { "kind" : "IdResultType" },
6873        { "kind" : "IdResult" },
6874        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6875        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6876      ],
6877      "capabilities" : [ "IntegerFunctions2INTEL" ],
6878      "version" : "None"
6879    },
6880    {
6881      "opname" : "OpIAverageRoundedINTEL",
6882      "class"  : "Reserved",
6883      "opcode" : 5593,
6884      "operands" : [
6885        { "kind" : "IdResultType" },
6886        { "kind" : "IdResult" },
6887        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6888        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6889      ],
6890      "capabilities" : [ "IntegerFunctions2INTEL" ],
6891      "version" : "None"
6892    },
6893    {
6894      "opname" : "OpUAverageRoundedINTEL",
6895      "class"  : "Reserved",
6896      "opcode" : 5594,
6897      "operands" : [
6898        { "kind" : "IdResultType" },
6899        { "kind" : "IdResult" },
6900        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6901        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6902      ],
6903      "capabilities" : [ "IntegerFunctions2INTEL" ],
6904      "version" : "None"
6905    },
6906    {
6907      "opname" : "OpISubSatINTEL",
6908      "class"  : "Reserved",
6909      "opcode" : 5595,
6910      "operands" : [
6911        { "kind" : "IdResultType" },
6912        { "kind" : "IdResult" },
6913        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6914        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6915      ],
6916      "capabilities" : [ "IntegerFunctions2INTEL" ],
6917      "version" : "None"
6918    },
6919    {
6920      "opname" : "OpUSubSatINTEL",
6921      "class"  : "Reserved",
6922      "opcode" : 5596,
6923      "operands" : [
6924        { "kind" : "IdResultType" },
6925        { "kind" : "IdResult" },
6926        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6927        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6928      ],
6929      "capabilities" : [ "IntegerFunctions2INTEL" ],
6930      "version" : "None"
6931    },
6932    {
6933      "opname" : "OpIMul32x16INTEL",
6934      "class"  : "Reserved",
6935      "opcode" : 5597,
6936      "operands" : [
6937        { "kind" : "IdResultType" },
6938        { "kind" : "IdResult" },
6939        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6940        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6941      ],
6942      "capabilities" : [ "IntegerFunctions2INTEL" ],
6943      "version" : "None"
6944    },
6945    {
6946      "opname" : "OpUMul32x16INTEL",
6947      "class"  : "Reserved",
6948      "opcode" : 5598,
6949      "operands" : [
6950        { "kind" : "IdResultType" },
6951        { "kind" : "IdResult" },
6952        { "kind" : "IdRef",        "name" : "'Operand 1'" },
6953        { "kind" : "IdRef",        "name" : "'Operand 2'" }
6954      ],
6955      "capabilities" : [ "IntegerFunctions2INTEL" ],
6956      "version" : "None"
6957    },
6958    {
6959      "opname" : "OpConstantFunctionPointerINTEL",
6960      "class"  : "@exclude",
6961      "opcode" : 5600,
6962      "operands" : [
6963        { "kind" : "IdResultType" },
6964        { "kind" : "IdResult" },
6965        { "kind" : "IdRef",        "name" : "'Function'" }
6966      ],
6967      "capabilities" : [ "FunctionPointersINTEL" ],
6968      "extensions" : [ "SPV_INTEL_function_pointers" ],
6969      "version" : "None"
6970    },
6971    {
6972      "opname" : "OpFunctionPointerCallINTEL",
6973      "class"  : "@exclude",
6974      "opcode" : 5601,
6975      "operands" : [
6976        { "kind" : "IdResultType" },
6977        { "kind" : "IdResult" },
6978        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1'" }
6979      ],
6980      "capabilities" : [ "FunctionPointersINTEL" ],
6981      "extensions" : [ "SPV_INTEL_function_pointers" ],
6982      "version" : "None"
6983    },
6984    {
6985      "opname" : "OpAsmTargetINTEL",
6986      "class"  : "@exclude",
6987      "opcode" : 5609,
6988      "operands" : [
6989        { "kind" : "IdResultType" },
6990        { "kind" : "IdResult" },
6991        { "kind" : "LiteralString", "name" : "'Asm target'" }
6992      ],
6993      "capabilities" : [ "AsmINTEL" ],
6994      "version" : "None"
6995    },
6996    {
6997      "opname" : "OpAsmINTEL",
6998      "class"  : "@exclude",
6999      "opcode" : 5610,
7000      "operands" : [
7001        { "kind" : "IdResultType" },
7002        { "kind" : "IdResult" },
7003        { "kind" : "IdRef", "name" : "'Asm type'" },
7004        { "kind" : "IdRef", "name" : "'Target'" },
7005        { "kind" : "LiteralString", "name" : "'Asm instructions'" },
7006        { "kind" : "LiteralString", "name" : "'Constraints'" }
7007      ],
7008      "capabilities" : [ "AsmINTEL" ],
7009      "version" : "None"
7010    },
7011    {
7012      "opname" : "OpAsmCallINTEL",
7013      "class"  : "@exclude",
7014      "opcode" : 5611,
7015      "operands" : [
7016        { "kind" : "IdResultType" },
7017        { "kind" : "IdResult" },
7018        { "kind" : "IdRef", "name" : "'Asm'" },
7019        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0'" }
7020      ],
7021      "capabilities" : [ "AsmINTEL" ],
7022      "version" : "None"
7023    },
7024    {
7025      "opname" : "OpAtomicFMinEXT",
7026      "class"  : "Atomic",
7027      "opcode" : 5614,
7028      "operands" : [
7029        { "kind" : "IdResultType" },
7030        { "kind" : "IdResult" },
7031        { "kind" : "IdRef",             "name" : "'Pointer'" },
7032        { "kind" : "IdScope",           "name" : "'Memory'" },
7033        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
7034        { "kind" : "IdRef",             "name" : "'Value'" }
7035      ],
7036      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT", "AtomicFloat16VectorNV" ],
7037      "version" : "None"
7038    },
7039    {
7040      "opname" : "OpAtomicFMaxEXT",
7041      "class"  : "Atomic",
7042      "opcode" : 5615,
7043      "operands" : [
7044        { "kind" : "IdResultType" },
7045        { "kind" : "IdResult" },
7046        { "kind" : "IdRef",             "name" : "'Pointer'" },
7047        { "kind" : "IdScope",           "name" : "'Memory'" },
7048        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
7049        { "kind" : "IdRef",             "name" : "'Value'" }
7050      ],
7051      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT", "AtomicFloat16VectorNV" ],
7052      "version" : "None"
7053    },
7054    {
7055      "opname" : "OpAssumeTrueKHR",
7056      "class"  : "Miscellaneous",
7057      "opcode" : 5630,
7058      "operands" : [
7059        { "kind" : "IdRef", "name" : "'Condition'" }
7060      ],
7061      "capabilities" : [ "ExpectAssumeKHR" ],
7062      "extensions" : [ "SPV_KHR_expect_assume" ],
7063      "version" : "None"
7064    },
7065    {
7066      "opname" : "OpExpectKHR",
7067      "class"  : "Miscellaneous",
7068      "opcode" : 5631,
7069      "operands" : [
7070        { "kind" : "IdResultType" },
7071        { "kind" : "IdResult" },
7072        { "kind" : "IdRef", "name" : "'Value'" },
7073        { "kind" : "IdRef", "name" : "'ExpectedValue'" }
7074      ],
7075      "capabilities" : [ "ExpectAssumeKHR" ],
7076      "extensions" : [ "SPV_KHR_expect_assume" ],
7077      "version" : "None"
7078    },
7079    {
7080      "opname" : "OpDecorateString",
7081      "class"  : "Annotation",
7082      "aliases" : ["OpDecorateStringGOOGLE"],
7083      "opcode" : 5632,
7084      "operands" : [
7085        { "kind" : "IdRef",         "name" : "'Target'" },
7086        { "kind" : "Decoration" }
7087      ],
7088      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
7089      "version" : "1.4"
7090    },
7091    {
7092      "opname" : "OpMemberDecorateString",
7093      "class"  : "Annotation",
7094      "aliases" : ["OpMemberDecorateStringGOOGLE"],
7095      "opcode" : 5633,
7096      "operands" : [
7097        { "kind" : "IdRef",          "name" : "'Struct Type'" },
7098        { "kind" : "LiteralInteger", "name" : "'Member'" },
7099        { "kind" : "Decoration" }
7100      ],
7101      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
7102      "version" : "1.4"
7103    },
7104    {
7105      "opname" : "OpVmeImageINTEL",
7106      "class"  : "@exclude",
7107      "opcode" : 5699,
7108      "operands" : [
7109        { "kind" : "IdResultType" },
7110        { "kind" : "IdResult" },
7111        { "kind" : "IdRef", "name" : "'Image Type'" },
7112        { "kind" : "IdRef", "name" : "'Sampler'" }
7113      ],
7114      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7115      "version" : "None"
7116    },
7117    {
7118      "opname" : "OpTypeVmeImageINTEL",
7119      "class"  : "@exclude",
7120      "opcode" : 5700,
7121      "operands" : [
7122        { "kind" : "IdResult" },
7123        { "kind" : "IdRef", "name" : "'Image Type'" }
7124      ],
7125      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7126      "version" : "None"
7127    },
7128    {
7129      "opname" : "OpTypeAvcImePayloadINTEL",
7130      "class"  : "@exclude",
7131      "opcode" : 5701,
7132      "operands" : [
7133        { "kind" : "IdResult" }
7134      ],
7135      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7136      "version" : "None"
7137    },
7138    {
7139      "opname" : "OpTypeAvcRefPayloadINTEL",
7140      "class"  : "@exclude",
7141      "opcode" : 5702,
7142      "operands" : [
7143        { "kind" : "IdResult" }
7144      ],
7145      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7146      "version" : "None"
7147    },
7148    {
7149      "opname" : "OpTypeAvcSicPayloadINTEL",
7150      "class"  : "@exclude",
7151      "opcode" : 5703,
7152      "operands" : [
7153        { "kind" : "IdResult" }
7154      ],
7155      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7156      "version" : "None"
7157    },
7158    {
7159      "opname" : "OpTypeAvcMcePayloadINTEL",
7160      "class"  : "@exclude",
7161      "opcode" : 5704,
7162      "operands" : [
7163        { "kind" : "IdResult" }
7164      ],
7165      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7166      "version" : "None"
7167    },
7168    {
7169      "opname" : "OpTypeAvcMceResultINTEL",
7170      "class"  : "@exclude",
7171      "opcode" : 5705,
7172      "operands" : [
7173        { "kind" : "IdResult" }
7174      ],
7175      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7176      "version" : "None"
7177    },
7178    {
7179      "opname" : "OpTypeAvcImeResultINTEL",
7180      "class"  : "@exclude",
7181      "opcode" : 5706,
7182      "operands" : [
7183        { "kind" : "IdResult" }
7184      ],
7185      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7186      "version" : "None"
7187    },
7188    {
7189      "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
7190      "class"  : "@exclude",
7191      "opcode" : 5707,
7192      "operands" : [
7193        { "kind" : "IdResult" }
7194      ],
7195      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7196      "version" : "None"
7197    },
7198    {
7199      "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
7200      "class"  : "@exclude",
7201      "opcode" : 5708,
7202      "operands" : [
7203        { "kind" : "IdResult" }
7204      ],
7205      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7206      "version" : "None"
7207    },
7208    {
7209      "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
7210      "class"  : "@exclude",
7211      "opcode" : 5709,
7212      "operands" : [
7213        { "kind" : "IdResult" }
7214      ],
7215      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7216      "version" : "None"
7217    },
7218    {
7219      "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
7220      "class"  : "@exclude",
7221      "opcode" : 5710,
7222      "operands" : [
7223        { "kind" : "IdResult" }
7224      ],
7225      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7226      "version" : "None"
7227    },
7228    {
7229      "opname" : "OpTypeAvcRefResultINTEL",
7230      "class"  : "@exclude",
7231      "opcode" : 5711,
7232      "operands" : [
7233        { "kind" : "IdResult" }
7234      ],
7235      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7236      "version" : "None"
7237    },
7238    {
7239      "opname" : "OpTypeAvcSicResultINTEL",
7240      "class"  : "@exclude",
7241      "opcode" : 5712,
7242      "operands" : [
7243        { "kind" : "IdResult" }
7244      ],
7245      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7246      "version" : "None"
7247    },
7248    {
7249      "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
7250      "class"  : "@exclude",
7251      "opcode" : 5713,
7252      "operands" : [
7253        { "kind" : "IdResultType" },
7254        { "kind" : "IdResult" },
7255        { "kind" : "IdRef", "name" : "'Slice Type'" },
7256        { "kind" : "IdRef", "name" : "'Qp'" }
7257      ],
7258      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7259      "version" : "None"
7260    },
7261    {
7262      "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
7263      "class"  : "@exclude",
7264      "opcode" : 5714,
7265      "operands" : [
7266        { "kind" : "IdResultType" },
7267        { "kind" : "IdResult" },
7268        { "kind" : "IdRef", "name" : "'Reference Base Penalty'" },
7269        { "kind" : "IdRef", "name" : "'Payload'" }
7270      ],
7271      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7272      "version" : "None"
7273    },
7274    {
7275      "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
7276      "class"  : "@exclude",
7277      "opcode" : 5715,
7278      "operands" : [
7279        { "kind" : "IdResultType" },
7280        { "kind" : "IdResult" },
7281        { "kind" : "IdRef", "name" : "'Slice Type'" },
7282        { "kind" : "IdRef", "name" : "'Qp'" }
7283      ],
7284      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7285      "version" : "None"
7286    },
7287    {
7288      "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
7289      "class"  : "@exclude",
7290      "opcode" : 5716,
7291      "operands" : [
7292        { "kind" : "IdResultType" },
7293        { "kind" : "IdResult" },
7294        { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
7295        { "kind" : "IdRef", "name" : "'Payload'" }
7296      ],
7297      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7298      "version" : "None"
7299    },
7300    {
7301      "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
7302      "class"  : "@exclude",
7303      "opcode" : 5717,
7304      "operands" : [
7305        { "kind" : "IdResultType" },
7306        { "kind" : "IdResult" },
7307        { "kind" : "IdRef", "name" : "'Slice Type'" },
7308        { "kind" : "IdRef", "name" : "'Qp'" }
7309      ],
7310      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7311      "version" : "None"
7312    },
7313    {
7314      "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
7315      "class"  : "@exclude",
7316      "opcode" : 5718,
7317      "operands" : [
7318        { "kind" : "IdResultType" },
7319        { "kind" : "IdResult" },
7320        { "kind" : "IdRef", "name" : "'Direction Cost'" },
7321        { "kind" : "IdRef", "name" : "'Payload'" }
7322      ],
7323      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7324      "version" : "None"
7325    },
7326    {
7327      "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
7328      "class"  : "@exclude",
7329      "opcode" : 5719,
7330      "operands" : [
7331        { "kind" : "IdResultType" },
7332        { "kind" : "IdResult" },
7333        { "kind" : "IdRef", "name" : "'Slice Type'" },
7334        { "kind" : "IdRef", "name" : "'Qp'" }
7335      ],
7336      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7337      "version" : "None"
7338    },
7339    {
7340      "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
7341      "class"  : "@exclude",
7342      "opcode" : 5720,
7343      "operands" : [
7344        { "kind" : "IdResultType" },
7345        { "kind" : "IdResult" },
7346        { "kind" : "IdRef", "name" : "'Slice Type'" },
7347        { "kind" : "IdRef", "name" : "'Qp'" }
7348      ],
7349      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7350      "version" : "None"
7351    },
7352    {
7353      "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
7354      "class"  : "@exclude",
7355      "opcode" : 5721,
7356      "operands" : [
7357        { "kind" : "IdResultType" },
7358        { "kind" : "IdResult" }
7359      ],
7360      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7361      "version" : "None"
7362    },
7363    {
7364      "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
7365      "class"  : "@exclude",
7366      "opcode" : 5722,
7367      "operands" : [
7368        { "kind" : "IdResultType" },
7369        { "kind" : "IdResult" }
7370      ],
7371      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7372      "version" : "None"
7373    },
7374    {
7375      "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
7376      "class"  : "@exclude",
7377      "opcode" : 5723,
7378      "operands" : [
7379        { "kind" : "IdResultType" },
7380        { "kind" : "IdResult" }
7381      ],
7382      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7383      "version" : "None"
7384    },
7385    {
7386      "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
7387      "class"  : "@exclude",
7388      "opcode" : 5724,
7389      "operands" : [
7390        { "kind" : "IdResultType" },
7391        { "kind" : "IdResult" },
7392        { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" },
7393        { "kind" : "IdRef", "name" : "'Packed Cost Table'" },
7394        { "kind" : "IdRef", "name" : "'Cost Precision'" },
7395        { "kind" : "IdRef", "name" : "'Payload'" }
7396      ],
7397      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7398      "version" : "None"
7399    },
7400    {
7401      "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
7402      "class"  : "@exclude",
7403      "opcode" : 5725,
7404      "operands" : [
7405        { "kind" : "IdResultType" },
7406        { "kind" : "IdResult" },
7407        { "kind" : "IdRef", "name" : "'Slice Type'" },
7408        { "kind" : "IdRef", "name" : "'Qp'" }
7409      ],
7410      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7411      "version" : "None"
7412    },
7413    {
7414      "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
7415      "class"  : "@exclude",
7416      "opcode" : 5726,
7417      "operands" : [
7418        { "kind" : "IdResultType" },
7419        { "kind" : "IdResult" }
7420      ],
7421      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7422      "version" : "None"
7423    },
7424    {
7425      "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
7426      "class"  : "@exclude",
7427      "opcode" : 5727,
7428      "operands" : [
7429        { "kind" : "IdResultType" },
7430        { "kind" : "IdResult" }
7431      ],
7432      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
7433      "version" : "None"
7434    },
7435    {
7436      "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
7437      "class"  : "@exclude",
7438      "opcode" : 5728,
7439      "operands" : [
7440        { "kind" : "IdResultType" },
7441        { "kind" : "IdResult" },
7442        { "kind" : "IdRef", "name" : "'Payload'" }
7443      ],
7444      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7445      "version" : "None"
7446    },
7447    {
7448      "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
7449      "class"  : "@exclude",
7450      "opcode" : 5729,
7451      "operands" : [
7452        { "kind" : "IdResultType" },
7453        { "kind" : "IdResult" },
7454        { "kind" : "IdRef", "name" : "'Source Field Polarity'" },
7455        { "kind" : "IdRef", "name" : "'Payload'" }
7456      ],
7457      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7458      "version" : "None"
7459    },
7460    {
7461      "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
7462      "class"  : "@exclude",
7463      "opcode" : 5730,
7464      "operands" : [
7465        { "kind" : "IdResultType" },
7466        { "kind" : "IdResult" },
7467        { "kind" : "IdRef", "name" : "'Reference Field Polarity'" },
7468        { "kind" : "IdRef", "name" : "'Payload'" }
7469      ],
7470      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7471      "version" : "None"
7472    },
7473    {
7474      "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
7475      "class"  : "@exclude",
7476      "opcode" : 5731,
7477      "operands" : [
7478        { "kind" : "IdResultType" },
7479        { "kind" : "IdResult" },
7480        { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" },
7481        { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" },
7482        { "kind" : "IdRef", "name" : "'Payload'" }
7483      ],
7484      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7485      "version" : "None"
7486    },
7487    {
7488      "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
7489      "class"  : "@exclude",
7490      "opcode" : 5732,
7491      "operands" : [
7492        { "kind" : "IdResultType" },
7493        { "kind" : "IdResult" },
7494        { "kind" : "IdRef", "name" : "'Payload'" }
7495      ],
7496      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7497      "version" : "None"
7498    },
7499    {
7500      "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
7501      "class"  : "@exclude",
7502      "opcode" : 5733,
7503      "operands" : [
7504        { "kind" : "IdResultType" },
7505        { "kind" : "IdResult" },
7506        { "kind" : "IdRef", "name" : "'Payload'" }
7507      ],
7508      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7509      "version" : "None"
7510    },
7511    {
7512      "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
7513      "class"  : "@exclude",
7514      "opcode" : 5734,
7515      "operands" : [
7516        { "kind" : "IdResultType" },
7517        { "kind" : "IdResult" },
7518        { "kind" : "IdRef", "name" : "'Payload'" }
7519      ],
7520      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7521      "version" : "None"
7522    },
7523    {
7524      "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
7525      "class"  : "@exclude",
7526      "opcode" : 5735,
7527      "operands" : [
7528        { "kind" : "IdResultType" },
7529        { "kind" : "IdResult" },
7530        { "kind" : "IdRef", "name" : "'Payload'" }
7531      ],
7532      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7533      "version" : "None"
7534    },
7535    {
7536      "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
7537      "class"  : "@exclude",
7538      "opcode" : 5736,
7539      "operands" : [
7540        { "kind" : "IdResultType" },
7541        { "kind" : "IdResult" },
7542        { "kind" : "IdRef", "name" : "'Payload'" }
7543      ],
7544      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7545      "version" : "None"
7546    },
7547    {
7548      "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
7549      "class"  : "@exclude",
7550      "opcode" : 5737,
7551      "operands" : [
7552        { "kind" : "IdResultType" },
7553        { "kind" : "IdResult" },
7554        { "kind" : "IdRef", "name" : "'Payload'" }
7555      ],
7556      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7557      "version" : "None"
7558    },
7559    {
7560      "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
7561      "class"  : "@exclude",
7562      "opcode" : 5738,
7563      "operands" : [
7564        { "kind" : "IdResultType" },
7565        { "kind" : "IdResult" },
7566        { "kind" : "IdRef", "name" : "'Payload'" }
7567      ],
7568      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7569      "version" : "None"
7570    },
7571    {
7572      "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
7573      "class"  : "@exclude",
7574      "opcode" : 5739,
7575      "operands" : [
7576        { "kind" : "IdResultType" },
7577        { "kind" : "IdResult" },
7578        { "kind" : "IdRef", "name" : "'Payload'" }
7579      ],
7580      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7581      "version" : "None"
7582    },
7583    {
7584      "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
7585      "class"  : "@exclude",
7586      "opcode" : 5740,
7587      "operands" : [
7588        { "kind" : "IdResultType" },
7589        { "kind" : "IdResult" },
7590        { "kind" : "IdRef", "name" : "'Payload'" }
7591      ],
7592      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7593      "version" : "None"
7594    },
7595    {
7596      "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
7597      "class"  : "@exclude",
7598      "opcode" : 5741,
7599      "operands" : [
7600        { "kind" : "IdResultType" },
7601        { "kind" : "IdResult" },
7602        { "kind" : "IdRef", "name" : "'Payload'" }
7603      ],
7604      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7605      "version" : "None"
7606    },
7607    {
7608      "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
7609      "class"  : "@exclude",
7610      "opcode" : 5742,
7611      "operands" : [
7612        { "kind" : "IdResultType" },
7613        { "kind" : "IdResult" },
7614        { "kind" : "IdRef", "name" : "'Payload'" }
7615      ],
7616      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7617      "version" : "None"
7618    },
7619    {
7620      "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
7621      "class"  : "@exclude",
7622      "opcode" : 5743,
7623      "operands" : [
7624        { "kind" : "IdResultType" },
7625        { "kind" : "IdResult" },
7626        { "kind" : "IdRef", "name" : "'Payload'" }
7627      ],
7628      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7629      "version" : "None"
7630    },
7631    {
7632      "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
7633      "class"  : "@exclude",
7634      "opcode" : 5744,
7635      "operands" : [
7636        { "kind" : "IdResultType" },
7637        { "kind" : "IdResult" },
7638        { "kind" : "IdRef", "name" : "'Payload'" }
7639      ],
7640      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7641      "version" : "None"
7642    },
7643    {
7644      "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
7645      "class"  : "@exclude",
7646      "opcode" : 5745,
7647      "operands" : [
7648        { "kind" : "IdResultType" },
7649        { "kind" : "IdResult" },
7650        { "kind" : "IdRef", "name" : "'Payload'" }
7651      ],
7652      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7653      "version" : "None"
7654    },
7655    {
7656      "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
7657      "class"  : "@exclude",
7658      "opcode" : 5746,
7659      "operands" : [
7660        { "kind" : "IdResultType" },
7661        { "kind" : "IdResult" },
7662        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
7663        { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" },
7664        { "kind" : "IdRef", "name" : "'Payload'" }
7665      ],
7666      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7667      "version" : "None"
7668    },
7669    {
7670      "opname" : "OpSubgroupAvcImeInitializeINTEL",
7671      "class"  : "@exclude",
7672      "opcode" : 5747,
7673      "operands" : [
7674        { "kind" : "IdResultType" },
7675        { "kind" : "IdResult" },
7676        { "kind" : "IdRef", "name" : "'Src Coord'" },
7677        { "kind" : "IdRef", "name" : "'Partition Mask'" },
7678        { "kind" : "IdRef", "name" : "'SAD Adjustment'" }
7679      ],
7680      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7681      "version" : "None"
7682    },
7683    {
7684      "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
7685      "class"  : "@exclude",
7686      "opcode" : 5748,
7687      "operands" : [
7688        { "kind" : "IdResultType" },
7689        { "kind" : "IdResult" },
7690        { "kind" : "IdRef", "name" : "'Ref Offset'" },
7691        { "kind" : "IdRef", "name" : "'Search Window Config'" },
7692        { "kind" : "IdRef", "name" : "'Payload'" }
7693      ],
7694      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7695      "version" : "None"
7696    },
7697    {
7698      "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
7699      "class"  : "@exclude",
7700      "opcode" : 5749,
7701      "operands" : [
7702        { "kind" : "IdResultType" },
7703        { "kind" : "IdResult" },
7704        { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" },
7705        { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" },
7706        { "kind" : "IdRef", "name" : "'id> Search Window Config'" },
7707        { "kind" : "IdRef", "name" : "'Payload'" }
7708      ],
7709      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7710      "version" : "None"
7711    },
7712    {
7713      "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
7714      "class"  : "@exclude",
7715      "opcode" : 5750,
7716      "operands" : [
7717        { "kind" : "IdResultType" },
7718        { "kind" : "IdResult" },
7719        { "kind" : "IdRef", "name" : "'Search Window Config'" },
7720        { "kind" : "IdRef", "name" : "'Dual Ref'" }
7721      ],
7722      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7723      "version" : "None"
7724    },
7725    {
7726      "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
7727      "class"  : "@exclude",
7728      "opcode" : 5751,
7729      "operands" : [
7730        { "kind" : "IdResultType" },
7731        { "kind" : "IdResult" },
7732        { "kind" : "IdRef", "name" : "'Ref Offset'" },
7733        { "kind" : "IdRef", "name" : "'Src Coord'" },
7734        { "kind" : "IdRef", "name" : "'Ref Window Size'" },
7735        { "kind" : "IdRef", "name" : "'Image Size'" }
7736      ],
7737      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7738      "version" : "None"
7739    },
7740    {
7741      "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
7742      "class"  : "@exclude",
7743      "opcode" : 5752,
7744      "operands" : [
7745        { "kind" : "IdResultType" },
7746        { "kind" : "IdResult" },
7747        { "kind" : "IdRef", "name" : "'Payload'" }
7748      ],
7749      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7750      "version" : "None"
7751    },
7752    {
7753      "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
7754      "class"  : "@exclude",
7755      "opcode" : 5753,
7756      "operands" : [
7757        { "kind" : "IdResultType" },
7758        { "kind" : "IdResult" },
7759        { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" },
7760        { "kind" : "IdRef", "name" : "'Payload'" }
7761      ],
7762      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7763      "version" : "None"
7764    },
7765    {
7766      "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
7767      "class"  : "@exclude",
7768      "opcode" : 5754,
7769      "operands" : [
7770        { "kind" : "IdResultType" },
7771        { "kind" : "IdResult" },
7772        { "kind" : "IdRef", "name" : "'Payload'" }
7773      ],
7774      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7775      "version" : "None"
7776    },
7777    {
7778      "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
7779      "class"  : "@exclude",
7780      "opcode" : 5755,
7781      "operands" : [
7782        { "kind" : "IdResultType" },
7783        { "kind" : "IdResult" },
7784        { "kind" : "IdRef", "name" : "'Threshold'" },
7785        { "kind" : "IdRef", "name" : "'Payload'" }
7786      ],
7787      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7788      "version" : "None"
7789    },
7790    {
7791      "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
7792      "class"  : "@exclude",
7793      "opcode" : 5756,
7794      "operands" : [
7795        { "kind" : "IdResultType" },
7796        { "kind" : "IdResult" },
7797        { "kind" : "IdRef", "name" : "'Packed Sad Weights'" },
7798        { "kind" : "IdRef", "name" : "'Payload'" }
7799      ],
7800      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7801      "version" : "None"
7802    },
7803    {
7804      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
7805      "class"  : "@exclude",
7806      "opcode" : 5757,
7807      "operands" : [
7808        { "kind" : "IdResultType" },
7809        { "kind" : "IdResult" },
7810        { "kind" : "IdRef", "name" : "'Src Image'" },
7811        { "kind" : "IdRef", "name" : "'Ref Image'" },
7812        { "kind" : "IdRef", "name" : "'Payload'" }
7813      ],
7814      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7815      "version" : "None"
7816    },
7817    {
7818      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
7819      "class"  : "@exclude",
7820      "opcode" : 5758,
7821      "operands" : [
7822        { "kind" : "IdResultType" },
7823        { "kind" : "IdResult" },
7824        { "kind" : "IdRef", "name" : "'Src Image'" },
7825        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
7826        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
7827        { "kind" : "IdRef", "name" : "'Payload'" }
7828      ],
7829      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7830      "version" : "None"
7831    },
7832    {
7833      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
7834      "class"  : "@exclude",
7835      "opcode" : 5759,
7836      "operands" : [
7837        { "kind" : "IdResultType" },
7838        { "kind" : "IdResult" },
7839        { "kind" : "IdRef", "name" : "'Src Image'" },
7840        { "kind" : "IdRef", "name" : "'Ref Image'" },
7841        { "kind" : "IdRef", "name" : "'Payload'" },
7842        { "kind" : "IdRef", "name" : "'Streamin Components'" }
7843      ],
7844      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7845      "version" : "None"
7846    },
7847    {
7848      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
7849      "class"  : "@exclude",
7850      "opcode" : 5760,
7851      "operands" : [
7852        { "kind" : "IdResultType" },
7853        { "kind" : "IdResult" },
7854        { "kind" : "IdRef", "name" : "'Src Image'" },
7855        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
7856        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
7857        { "kind" : "IdRef", "name" : "'Payload'" },
7858        { "kind" : "IdRef", "name" : "'Streamin Components'" }
7859      ],
7860      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7861      "version" : "None"
7862    },
7863    {
7864      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
7865      "class"  : "@exclude",
7866      "opcode" : 5761,
7867      "operands" : [
7868        { "kind" : "IdResultType" },
7869        { "kind" : "IdResult" },
7870        { "kind" : "IdRef", "name" : "'Src Image'" },
7871        { "kind" : "IdRef", "name" : "'Ref Image'" },
7872        { "kind" : "IdRef", "name" : "'Payload'" }
7873      ],
7874      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7875      "version" : "None"
7876    },
7877    {
7878      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
7879      "class"  : "@exclude",
7880      "opcode" : 5762,
7881      "operands" : [
7882        { "kind" : "IdResultType" },
7883        { "kind" : "IdResult" },
7884        { "kind" : "IdRef", "name" : "'Src Image'" },
7885        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
7886        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
7887        { "kind" : "IdRef", "name" : "'Payload'" }
7888      ],
7889      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7890      "version" : "None"
7891    },
7892    {
7893      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
7894      "class"  : "@exclude",
7895      "opcode" : 5763,
7896      "operands" : [
7897        { "kind" : "IdResultType" },
7898        { "kind" : "IdResult" },
7899        { "kind" : "IdRef", "name" : "'Src Image'" },
7900        { "kind" : "IdRef", "name" : "'Ref Image'" },
7901        { "kind" : "IdRef", "name" : "'Payload'" },
7902        { "kind" : "IdRef", "name" : "'Streamin Components'" }
7903      ],
7904      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7905      "version" : "None"
7906    },
7907    {
7908      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
7909      "class"  : "@exclude",
7910      "opcode" : 5764,
7911      "operands" : [
7912        { "kind" : "IdResultType" },
7913        { "kind" : "IdResult" },
7914        { "kind" : "IdRef", "name" : "'Src Image'" },
7915        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
7916        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
7917        { "kind" : "IdRef", "name" : "'Payload'" },
7918        { "kind" : "IdRef", "name" : "'Streamin Components'" }
7919      ],
7920      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7921      "version" : "None"
7922    },
7923    {
7924      "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
7925      "class"  : "@exclude",
7926      "opcode" : 5765,
7927      "operands" : [
7928        { "kind" : "IdResultType" },
7929        { "kind" : "IdResult" },
7930        { "kind" : "IdRef", "name" : "'Payload'" }
7931      ],
7932      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7933      "version" : "None"
7934    },
7935    {
7936      "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
7937      "class"  : "@exclude",
7938      "opcode" : 5766,
7939      "operands" : [
7940        { "kind" : "IdResultType" },
7941        { "kind" : "IdResult" },
7942        { "kind" : "IdRef", "name" : "'Payload'" }
7943      ],
7944      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7945      "version" : "None"
7946    },
7947    {
7948      "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
7949      "class"  : "@exclude",
7950      "opcode" : 5767,
7951      "operands" : [
7952        { "kind" : "IdResultType" },
7953        { "kind" : "IdResult" },
7954        { "kind" : "IdRef", "name" : "'Payload'" }
7955      ],
7956      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7957      "version" : "None"
7958    },
7959    {
7960      "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
7961      "class"  : "@exclude",
7962      "opcode" : 5768,
7963      "operands" : [
7964        { "kind" : "IdResultType" },
7965        { "kind" : "IdResult" },
7966        { "kind" : "IdRef", "name" : "'Payload'" }
7967      ],
7968      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7969      "version" : "None"
7970    },
7971    {
7972      "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
7973      "class"  : "@exclude",
7974      "opcode" : 5769,
7975      "operands" : [
7976        { "kind" : "IdResultType" },
7977        { "kind" : "IdResult" },
7978        { "kind" : "IdRef", "name" : "'Payload'" }
7979      ],
7980      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7981      "version" : "None"
7982    },
7983    {
7984      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
7985      "class"  : "@exclude",
7986      "opcode" : 5770,
7987      "operands" : [
7988        { "kind" : "IdResultType" },
7989        { "kind" : "IdResult" },
7990        { "kind" : "IdRef", "name" : "'Payload'" },
7991        { "kind" : "IdRef", "name" : "'Major Shape'" }
7992      ],
7993      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7994      "version" : "None"
7995    },
7996    {
7997      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
7998      "class"  : "@exclude",
7999      "opcode" : 5771,
8000      "operands" : [
8001        { "kind" : "IdResultType" },
8002        { "kind" : "IdResult" },
8003        { "kind" : "IdRef", "name" : "'Payload'" },
8004        { "kind" : "IdRef", "name" : "'Major Shape'" }
8005      ],
8006      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8007      "version" : "None"
8008    },
8009    {
8010      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
8011      "class"  : "@exclude",
8012      "opcode" : 5772,
8013      "operands" : [
8014        { "kind" : "IdResultType" },
8015        { "kind" : "IdResult" },
8016        { "kind" : "IdRef", "name" : "'Payload'" },
8017        { "kind" : "IdRef", "name" : "'Major Shape'" }
8018      ],
8019      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8020      "version" : "None"
8021    },
8022    {
8023      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
8024      "class"  : "@exclude",
8025      "opcode" : 5773,
8026      "operands" : [
8027        { "kind" : "IdResultType" },
8028        { "kind" : "IdResult" },
8029        { "kind" : "IdRef", "name" : "'Payload'" },
8030        { "kind" : "IdRef", "name" : "'Major Shape'" },
8031        { "kind" : "IdRef", "name" : "'Direction'" }
8032      ],
8033      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8034      "version" : "None"
8035    },
8036    {
8037      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
8038      "class"  : "@exclude",
8039      "opcode" : 5774,
8040      "operands" : [
8041        { "kind" : "IdResultType" },
8042        { "kind" : "IdResult" },
8043        { "kind" : "IdRef", "name" : "'Payload'" },
8044        { "kind" : "IdRef", "name" : "'Major Shape'" },
8045        { "kind" : "IdRef", "name" : "'Direction'" }
8046      ],
8047      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8048      "version" : "None"
8049    },
8050    {
8051      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
8052      "class"  : "@exclude",
8053      "opcode" : 5775,
8054      "operands" : [
8055        { "kind" : "IdResultType" },
8056        { "kind" : "IdResult" },
8057        { "kind" : "IdRef", "name" : "'Payload'" },
8058        { "kind" : "IdRef", "name" : "'Major Shape'" },
8059        { "kind" : "IdRef", "name" : "'Direction'" }
8060      ],
8061      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8062      "version" : "None"
8063    },
8064    {
8065      "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
8066      "class"  : "@exclude",
8067      "opcode" : 5776,
8068      "operands" : [
8069        { "kind" : "IdResultType" },
8070        { "kind" : "IdResult" },
8071        { "kind" : "IdRef", "name" : "'Image Select'" },
8072        { "kind" : "IdRef", "name" : "'Payload'" }
8073      ],
8074      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8075      "version" : "None"
8076    },
8077    {
8078      "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
8079      "class"  : "@exclude",
8080      "opcode" : 5777,
8081      "operands" : [
8082        { "kind" : "IdResultType" },
8083        { "kind" : "IdResult" },
8084        { "kind" : "IdRef", "name" : "'Payload'" }
8085      ],
8086      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8087      "version" : "None"
8088    },
8089    {
8090      "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
8091      "class"  : "@exclude",
8092      "opcode" : 5778,
8093      "operands" : [
8094        { "kind" : "IdResultType" },
8095        { "kind" : "IdResult" },
8096        { "kind" : "IdRef", "name" : "'Payload'" }
8097      ],
8098      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8099      "version" : "None"
8100    },
8101    {
8102      "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
8103      "class"  : "@exclude",
8104      "opcode" : 5779,
8105      "operands" : [
8106        { "kind" : "IdResultType" },
8107        { "kind" : "IdResult" },
8108        { "kind" : "IdRef", "name" : "'Payload'" }
8109      ],
8110      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8111      "version" : "None"
8112    },
8113    {
8114      "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
8115      "class"  : "@exclude",
8116      "opcode" : 5780,
8117      "operands" : [
8118        { "kind" : "IdResultType" },
8119        { "kind" : "IdResult" },
8120        { "kind" : "IdRef", "name" : "'Payload'" }
8121      ],
8122      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8123      "version" : "None"
8124    },
8125    {
8126      "opname" : "OpSubgroupAvcFmeInitializeINTEL",
8127      "class"  : "@exclude",
8128      "opcode" : 5781,
8129      "operands" : [
8130        { "kind" : "IdResultType" },
8131        { "kind" : "IdResult" },
8132        { "kind" : "IdRef", "name" : "'Src Coord'" },
8133        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
8134        { "kind" : "IdRef", "name" : "'Major Shapes'" },
8135        { "kind" : "IdRef", "name" : "'Minor Shapes'" },
8136        { "kind" : "IdRef", "name" : "'Direction'" },
8137        { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
8138        { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
8139      ],
8140      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8141      "version" : "None"
8142    },
8143    {
8144      "opname" : "OpSubgroupAvcBmeInitializeINTEL",
8145      "class"  : "@exclude",
8146      "opcode" : 5782,
8147      "operands" : [
8148        { "kind" : "IdResultType" },
8149        { "kind" : "IdResult" },
8150        { "kind" : "IdRef", "name" : "'Src Coord'" },
8151        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
8152        { "kind" : "IdRef", "name" : "'Major Shapes'" },
8153        { "kind" : "IdRef", "name" : "'Minor Shapes'" },
8154        { "kind" : "IdRef", "name" : "'Direction'" },
8155        { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
8156        { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
8157        { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
8158      ],
8159      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8160      "version" : "None"
8161    },
8162    {
8163      "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
8164      "class"  : "@exclude",
8165      "opcode" : 5783,
8166      "operands" : [
8167        { "kind" : "IdResultType" },
8168        { "kind" : "IdResult" },
8169        { "kind" : "IdRef", "name" : "'Payload'" }
8170      ],
8171      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8172      "version" : "None"
8173    },
8174    {
8175      "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
8176      "class"  : "@exclude",
8177      "opcode" : 5784,
8178      "operands" : [
8179        { "kind" : "IdResultType" },
8180        { "kind" : "IdResult" },
8181        { "kind" : "IdRef", "name" : "'Payload'" }
8182      ],
8183      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8184      "version" : "None"
8185    },
8186    {
8187      "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
8188      "class"  : "@exclude",
8189      "opcode" : 5785,
8190      "operands" : [
8191        { "kind" : "IdResultType" },
8192        { "kind" : "IdResult" },
8193        { "kind" : "IdRef", "name" : "'Payload'" }
8194      ],
8195      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8196      "version" : "None"
8197    },
8198    {
8199      "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
8200      "class"  : "@exclude",
8201      "opcode" : 5786,
8202      "operands" : [
8203        { "kind" : "IdResultType" },
8204        { "kind" : "IdResult" },
8205        { "kind" : "IdRef", "name" : "'Src Image'" },
8206        { "kind" : "IdRef", "name" : "'Ref Image'" },
8207        { "kind" : "IdRef", "name" : "'Payload'" }
8208      ],
8209      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8210      "version" : "None"
8211    },
8212    {
8213      "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
8214      "class"  : "@exclude",
8215      "opcode" : 5787,
8216      "operands" : [
8217        { "kind" : "IdResultType" },
8218        { "kind" : "IdResult" },
8219        { "kind" : "IdRef", "name" : "'Src Image'" },
8220        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
8221        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
8222        { "kind" : "IdRef", "name" : "'Payload'" }
8223      ],
8224      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8225      "version" : "None"
8226    },
8227    {
8228      "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
8229      "class"  : "@exclude",
8230      "opcode" : 5788,
8231      "operands" : [
8232        { "kind" : "IdResultType" },
8233        { "kind" : "IdResult" },
8234        { "kind" : "IdRef", "name" : "'Src Image'" },
8235        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
8236        { "kind" : "IdRef", "name" : "'Payload'" }
8237      ],
8238      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8239      "version" : "None"
8240    },
8241    {
8242      "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
8243      "class"  : "@exclude",
8244      "opcode" : 5789,
8245      "operands" : [
8246        { "kind" : "IdResultType" },
8247        { "kind" : "IdResult" },
8248        { "kind" : "IdRef", "name" : "'Src Image'" },
8249        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
8250        { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
8251        { "kind" : "IdRef", "name" : "'Payload'" }
8252      ],
8253      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8254      "version" : "None"
8255    },
8256    {
8257      "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
8258      "class"  : "@exclude",
8259      "opcode" : 5790,
8260      "operands" : [
8261        { "kind" : "IdResultType" },
8262        { "kind" : "IdResult" },
8263        { "kind" : "IdRef", "name" : "'Payload'" }
8264      ],
8265      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8266      "version" : "None"
8267    },
8268    {
8269      "opname" : "OpSubgroupAvcSicInitializeINTEL",
8270      "class"  : "@exclude",
8271      "opcode" : 5791,
8272      "operands" : [
8273        { "kind" : "IdResultType" },
8274        { "kind" : "IdResult" },
8275        { "kind" : "IdRef", "name" : "'Src Coord'" }
8276      ],
8277      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8278      "version" : "None"
8279    },
8280    {
8281      "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
8282      "class"  : "@exclude",
8283      "opcode" : 5792,
8284      "operands" : [
8285        { "kind" : "IdResultType" },
8286        { "kind" : "IdResult" },
8287        { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
8288        { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" },
8289        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
8290        { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
8291        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
8292        { "kind" : "IdRef", "name" : "'Payload'" }
8293      ],
8294      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8295      "version" : "None"
8296    },
8297    {
8298      "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
8299      "class"  : "@exclude",
8300      "opcode" : 5793,
8301      "operands" : [
8302        { "kind" : "IdResultType" },
8303        { "kind" : "IdResult" },
8304        { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
8305        { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
8306        { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
8307        { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
8308        { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
8309        { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
8310        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
8311        { "kind" : "IdRef", "name" : "'Payload'" }
8312      ],
8313      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8314      "version" : "None"
8315    },
8316    {
8317      "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
8318      "class"  : "@exclude",
8319      "opcode" : 5794,
8320      "operands" : [
8321        { "kind" : "IdResultType" },
8322        { "kind" : "IdResult" },
8323        { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
8324        { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
8325        { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
8326        { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
8327        { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
8328        { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
8329        { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" },
8330        { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" },
8331        { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" },
8332        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
8333        { "kind" : "IdRef", "name" : "'Payload'" }
8334      ],
8335      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
8336      "version" : "None"
8337    },
8338    {
8339      "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
8340      "class"  : "@exclude",
8341      "opcode" : 5795,
8342      "operands" : [
8343        { "kind" : "IdResultType" },
8344        { "kind" : "IdResult" },
8345        { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
8346        { "kind" : "IdRef", "name" : "'Direction'" }
8347      ],
8348      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8349      "version" : "None"
8350    },
8351    {
8352      "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
8353      "class"  : "@exclude",
8354      "opcode" : 5796,
8355      "operands" : [
8356        { "kind" : "IdResultType" },
8357        { "kind" : "IdResult" },
8358        { "kind" : "IdRef", "name" : "'Payload'" }
8359      ],
8360      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8361      "version" : "None"
8362    },
8363    {
8364      "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
8365      "class"  : "@exclude",
8366      "opcode" : 5797,
8367      "operands" : [
8368        { "kind" : "IdResultType" },
8369        { "kind" : "IdResult" },
8370        { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
8371        { "kind" : "IdRef", "name" : "'Payload'" }
8372      ],
8373      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8374      "version" : "None"
8375    },
8376    {
8377      "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
8378      "class"  : "@exclude",
8379      "opcode" : 5798,
8380      "operands" : [
8381        { "kind" : "IdResultType" },
8382        { "kind" : "IdResult" },
8383        { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" },
8384        { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" },
8385        { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" },
8386        { "kind" : "IdRef", "name" : "'Payload'" }
8387      ],
8388      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8389      "version" : "None"
8390    },
8391    {
8392      "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
8393      "class"  : "@exclude",
8394      "opcode" : 5799,
8395      "operands" : [
8396        { "kind" : "IdResultType" },
8397        { "kind" : "IdResult" },
8398        { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" },
8399        { "kind" : "IdRef", "name" : "'Payload'" }
8400      ],
8401      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
8402      "version" : "None"
8403    },
8404    {
8405      "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
8406      "class"  : "@exclude",
8407      "opcode" : 5800,
8408      "operands" : [
8409        { "kind" : "IdResultType" },
8410        { "kind" : "IdResult" },
8411        { "kind" : "IdRef", "name" : "'Payload'" }
8412      ],
8413      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8414      "version" : "None"
8415    },
8416    {
8417      "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
8418      "class"  : "@exclude",
8419      "opcode" : 5801,
8420      "operands" : [
8421        { "kind" : "IdResultType" },
8422        { "kind" : "IdResult" },
8423        { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" },
8424        { "kind" : "IdRef", "name" : "'Payload'" }
8425      ],
8426      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8427      "version" : "None"
8428    },
8429    {
8430      "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
8431      "class"  : "@exclude",
8432      "opcode" : 5802,
8433      "operands" : [
8434        { "kind" : "IdResultType" },
8435        { "kind" : "IdResult" },
8436        { "kind" : "IdRef", "name" : "'Block Based Skip Type'" },
8437        { "kind" : "IdRef", "name" : "'Payload'" }
8438      ],
8439      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8440      "version" : "None"
8441    },
8442    {
8443      "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
8444      "class"  : "@exclude",
8445      "opcode" : 5803,
8446      "operands" : [
8447        { "kind" : "IdResultType" },
8448        { "kind" : "IdResult" },
8449        { "kind" : "IdRef", "name" : "'Src Image'" },
8450        { "kind" : "IdRef", "name" : "'Payload'" }
8451      ],
8452      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8453      "version" : "None"
8454    },
8455    {
8456      "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
8457      "class"  : "@exclude",
8458      "opcode" : 5804,
8459      "operands" : [
8460        { "kind" : "IdResultType" },
8461        { "kind" : "IdResult" },
8462        { "kind" : "IdRef", "name" : "'Src Image'" },
8463        { "kind" : "IdRef", "name" : "'Ref Image'" },
8464        { "kind" : "IdRef", "name" : "'Payload'" }
8465      ],
8466      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8467      "version" : "None"
8468    },
8469    {
8470      "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
8471      "class"  : "@exclude",
8472      "opcode" : 5805,
8473      "operands" : [
8474        { "kind" : "IdResultType" },
8475        { "kind" : "IdResult" },
8476        { "kind" : "IdRef", "name" : "'Src Image'" },
8477        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
8478        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
8479        { "kind" : "IdRef", "name" : "'Payload'" }
8480      ],
8481      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8482      "version" : "None"
8483    },
8484    {
8485      "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
8486      "class"  : "@exclude",
8487      "opcode" : 5806,
8488      "operands" : [
8489        { "kind" : "IdResultType" },
8490        { "kind" : "IdResult" },
8491        { "kind" : "IdRef", "name" : "'Src Image'" },
8492        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
8493        { "kind" : "IdRef", "name" : "'Payload'" }
8494      ],
8495      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8496      "version" : "None"
8497    },
8498    {
8499      "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
8500      "class"  : "@exclude",
8501      "opcode" : 5807,
8502      "operands" : [
8503        { "kind" : "IdResultType" },
8504        { "kind" : "IdResult" },
8505        { "kind" : "IdRef", "name" : "'Src Image'" },
8506        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
8507        { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
8508        { "kind" : "IdRef", "name" : "'Payload'" }
8509      ],
8510      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8511      "version" : "None"
8512    },
8513    {
8514      "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
8515      "class"  : "@exclude",
8516      "opcode" : 5808,
8517      "operands" : [
8518        { "kind" : "IdResultType" },
8519        { "kind" : "IdResult" },
8520        { "kind" : "IdRef", "name" : "'Payload'" }
8521      ],
8522      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8523      "version" : "None"
8524    },
8525    {
8526      "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
8527      "class"  : "@exclude",
8528      "opcode" : 5809,
8529      "operands" : [
8530        { "kind" : "IdResultType" },
8531        { "kind" : "IdResult" },
8532        { "kind" : "IdRef", "name" : "'Payload'" }
8533      ],
8534      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8535      "version" : "None"
8536    },
8537    {
8538      "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
8539      "class"  : "@exclude",
8540      "opcode" : 5810,
8541      "operands" : [
8542        { "kind" : "IdResultType" },
8543        { "kind" : "IdResult" },
8544        { "kind" : "IdRef", "name" : "'Payload'" }
8545      ],
8546      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8547      "version" : "None"
8548    },
8549    {
8550      "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
8551      "class"  : "@exclude",
8552      "opcode" : 5811,
8553      "operands" : [
8554        { "kind" : "IdResultType" },
8555        { "kind" : "IdResult" },
8556        { "kind" : "IdRef", "name" : "'Payload'" }
8557      ],
8558      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8559      "version" : "None"
8560    },
8561    {
8562      "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
8563      "class"  : "@exclude",
8564      "opcode" : 5812,
8565      "operands" : [
8566        { "kind" : "IdResultType" },
8567        { "kind" : "IdResult" },
8568        { "kind" : "IdRef", "name" : "'Payload'" }
8569      ],
8570      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8571      "version" : "None"
8572    },
8573    {
8574      "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
8575      "class"  : "@exclude",
8576      "opcode" : 5813,
8577      "operands" : [
8578        { "kind" : "IdResultType" },
8579        { "kind" : "IdResult" },
8580        { "kind" : "IdRef", "name" : "'Payload'" }
8581      ],
8582      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
8583      "version" : "None"
8584    },
8585    {
8586      "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
8587      "class"  : "@exclude",
8588      "opcode" : 5814,
8589      "operands" : [
8590        { "kind" : "IdResultType" },
8591        { "kind" : "IdResult" },
8592        { "kind" : "IdRef", "name" : "'Payload'" }
8593      ],
8594      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8595      "version" : "None"
8596    },
8597    {
8598      "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
8599      "class"  : "@exclude",
8600      "opcode" : 5815,
8601      "operands" : [
8602        { "kind" : "IdResultType" },
8603        { "kind" : "IdResult" },
8604        { "kind" : "IdRef", "name" : "'Payload'" }
8605      ],
8606      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
8607      "version" : "None"
8608    },
8609    {
8610      "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
8611      "class"  : "@exclude",
8612      "opcode" : 5816,
8613      "operands" : [
8614        { "kind" : "IdResultType" },
8615        { "kind" : "IdResult" },
8616        { "kind" : "IdRef", "name" : "'Payload'" }
8617      ],
8618      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
8619      "version" : "None"
8620    },
8621    {
8622      "opname" : "OpVariableLengthArrayINTEL",
8623      "class"  : "@exclude",
8624      "opcode" : 5818,
8625      "operands" : [
8626        { "kind" : "IdResultType" },
8627        { "kind" : "IdResult" },
8628        { "kind" : "IdRef", "name" : "'Lenght'" }
8629      ],
8630      "capabilities" : [ "VariableLengthArrayINTEL" ],
8631      "version" : "None"
8632    },
8633    {
8634      "opname" : "OpSaveMemoryINTEL",
8635      "class"  : "@exclude",
8636      "opcode" : 5819,
8637      "operands" : [
8638        { "kind" : "IdResultType" },
8639        { "kind" : "IdResult" }
8640      ],
8641      "capabilities" : [ "VariableLengthArrayINTEL" ],
8642      "version" : "None"
8643    },
8644    {
8645      "opname" : "OpRestoreMemoryINTEL",
8646      "class"  : "@exclude",
8647      "opcode" : 5820,
8648      "operands" : [
8649        { "kind" : "IdRef", "name" : "'Ptr'" }
8650      ],
8651      "capabilities" : [ "VariableLengthArrayINTEL" ],
8652      "version" : "None"
8653    },
8654    {
8655      "opname" : "OpArbitraryFloatSinCosPiINTEL",
8656      "class"  : "@exclude",
8657      "opcode" : 5840,
8658      "operands" : [
8659        { "kind" : "IdResultType" },
8660        { "kind" : "IdResult" },
8661        { "kind" : "IdRef", "name" : "'A'" },
8662        { "kind" : "LiteralInteger", "name" : "'M1'" },
8663        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8664        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
8665        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8666        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8667        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8668      ],
8669      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8670      "version" : "None"
8671    },
8672    {
8673      "opname" : "OpArbitraryFloatCastINTEL",
8674      "class"  : "@exclude",
8675      "opcode" : 5841,
8676      "operands" : [
8677        { "kind" : "IdResultType" },
8678        { "kind" : "IdResult" },
8679        { "kind" : "IdRef", "name" : "'A'" },
8680        { "kind" : "LiteralInteger", "name" : "'M1'" },
8681        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8682        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8683        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8684        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8685      ],
8686      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8687      "version" : "None"
8688    },
8689    {
8690      "opname" : "OpArbitraryFloatCastFromIntINTEL",
8691      "class"  : "@exclude",
8692      "opcode" : 5842,
8693      "operands" : [
8694        { "kind" : "IdResultType" },
8695        { "kind" : "IdResult" },
8696        { "kind" : "IdRef", "name" : "'A'" },
8697        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8698        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
8699        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8700        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8701        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8702      ],
8703      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8704      "version" : "None"
8705    },
8706    {
8707      "opname" : "OpArbitraryFloatCastToIntINTEL",
8708      "class"  : "@exclude",
8709      "opcode" : 5843,
8710      "operands" : [
8711        { "kind" : "IdResultType" },
8712        { "kind" : "IdResult" },
8713        { "kind" : "IdRef", "name" : "'A'" },
8714        { "kind" : "LiteralInteger", "name" : "'M1'" },
8715        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8716        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8717        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8718      ],
8719      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8720      "version" : "None"
8721    },
8722    {
8723      "opname" : "OpArbitraryFloatAddINTEL",
8724      "class"  : "@exclude",
8725      "opcode" : 5846,
8726      "operands" : [
8727        { "kind" : "IdResultType" },
8728        { "kind" : "IdResult" },
8729        { "kind" : "IdRef", "name" : "'A'" },
8730        { "kind" : "LiteralInteger", "name" : "'M1'" },
8731        { "kind" : "IdRef", "name" : "'B'" },
8732        { "kind" : "LiteralInteger", "name" : "'M2'" },
8733        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8734        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8735        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8736        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8737      ],
8738      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8739      "version" : "None"
8740    },
8741    {
8742      "opname" : "OpArbitraryFloatSubINTEL",
8743      "class"  : "@exclude",
8744      "opcode" : 5847,
8745      "operands" : [
8746        { "kind" : "IdResultType" },
8747        { "kind" : "IdResult" },
8748        { "kind" : "IdRef", "name" : "'A'" },
8749        { "kind" : "LiteralInteger", "name" : "'M1'" },
8750        { "kind" : "IdRef", "name" : "'B'" },
8751        { "kind" : "LiteralInteger", "name" : "'M2'" },
8752        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8753        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8754        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8755        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8756      ],
8757      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8758      "version" : "None"
8759    },
8760    {
8761      "opname" : "OpArbitraryFloatMulINTEL",
8762      "class"  : "@exclude",
8763      "opcode" : 5848,
8764      "operands" : [
8765        { "kind" : "IdResultType" },
8766        { "kind" : "IdResult" },
8767        { "kind" : "IdRef", "name" : "'A'" },
8768        { "kind" : "LiteralInteger", "name" : "'M1'" },
8769        { "kind" : "IdRef", "name" : "'B'" },
8770        { "kind" : "LiteralInteger", "name" : "'M2'" },
8771        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8772        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8773        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8774        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8775      ],
8776      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8777      "version" : "None"
8778    },
8779    {
8780      "opname" : "OpArbitraryFloatDivINTEL",
8781      "class"  : "@exclude",
8782      "opcode" : 5849,
8783      "operands" : [
8784        { "kind" : "IdResultType" },
8785        { "kind" : "IdResult" },
8786        { "kind" : "IdRef", "name" : "'A'" },
8787        { "kind" : "LiteralInteger", "name" : "'M1'" },
8788        { "kind" : "IdRef", "name" : "'B'" },
8789        { "kind" : "LiteralInteger", "name" : "'M2'" },
8790        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8791        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8792        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8793        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8794      ],
8795      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8796      "version" : "None"
8797    },
8798    {
8799      "opname" : "OpArbitraryFloatGTINTEL",
8800      "class"  : "@exclude",
8801      "opcode" : 5850,
8802      "operands" : [
8803        { "kind" : "IdResultType" },
8804        { "kind" : "IdResult" },
8805        { "kind" : "IdRef", "name" : "'A'" },
8806        { "kind" : "LiteralInteger", "name" : "'M1'" },
8807        { "kind" : "IdRef", "name" : "'B'" },
8808        { "kind" : "LiteralInteger", "name" : "'M2'" }
8809      ],
8810      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8811      "version" : "None"
8812    },
8813    {
8814      "opname" : "OpArbitraryFloatGEINTEL",
8815      "class"  : "@exclude",
8816      "opcode" : 5851,
8817      "operands" : [
8818        { "kind" : "IdResultType" },
8819        { "kind" : "IdResult" },
8820        { "kind" : "IdRef", "name" : "'A'" },
8821        { "kind" : "LiteralInteger", "name" : "'M1'" },
8822        { "kind" : "IdRef", "name" : "'B'" },
8823        { "kind" : "LiteralInteger", "name" : "'M2'" }
8824      ],
8825      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8826      "version" : "None"
8827    },
8828    {
8829      "opname" : "OpArbitraryFloatLTINTEL",
8830      "class"  : "@exclude",
8831      "opcode" : 5852,
8832      "operands" : [
8833        { "kind" : "IdResultType" },
8834        { "kind" : "IdResult" },
8835        { "kind" : "IdRef", "name" : "'A'" },
8836        { "kind" : "LiteralInteger", "name" : "'M1'" },
8837        { "kind" : "IdRef", "name" : "'B'" },
8838        { "kind" : "LiteralInteger", "name" : "'M2'" }
8839      ],
8840      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8841      "version" : "None"
8842    },
8843    {
8844      "opname" : "OpArbitraryFloatLEINTEL",
8845      "class"  : "@exclude",
8846      "opcode" : 5853,
8847      "operands" : [
8848        { "kind" : "IdResultType" },
8849        { "kind" : "IdResult" },
8850        { "kind" : "IdRef", "name" : "'A'" },
8851        { "kind" : "LiteralInteger", "name" : "'M1'" },
8852        { "kind" : "IdRef", "name" : "'B'" },
8853        { "kind" : "LiteralInteger", "name" : "'M2'" }
8854      ],
8855      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8856      "version" : "None"
8857    },
8858    {
8859      "opname" : "OpArbitraryFloatEQINTEL",
8860      "class"  : "@exclude",
8861      "opcode" : 5854,
8862      "operands" : [
8863        { "kind" : "IdResultType" },
8864        { "kind" : "IdResult" },
8865        { "kind" : "IdRef", "name" : "'A'" },
8866        { "kind" : "LiteralInteger", "name" : "'M1'" },
8867        { "kind" : "IdRef", "name" : "'B'" },
8868        { "kind" : "LiteralInteger", "name" : "'M2'" }
8869      ],
8870      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8871      "version" : "None"
8872    },
8873    {
8874      "opname" : "OpArbitraryFloatRecipINTEL",
8875      "class"  : "@exclude",
8876      "opcode" : 5855,
8877      "operands" : [
8878        { "kind" : "IdResultType" },
8879        { "kind" : "IdResult" },
8880        { "kind" : "IdRef", "name" : "'A'" },
8881        { "kind" : "LiteralInteger", "name" : "'M1'" },
8882        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8883        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8884        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8885        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8886      ],
8887      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8888      "version" : "None"
8889    },
8890    {
8891      "opname" : "OpArbitraryFloatRSqrtINTEL",
8892      "class"  : "@exclude",
8893      "opcode" : 5856,
8894      "operands" : [
8895        { "kind" : "IdResultType" },
8896        { "kind" : "IdResult" },
8897        { "kind" : "IdRef", "name" : "'A'" },
8898        { "kind" : "LiteralInteger", "name" : "'M1'" },
8899        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8900        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8901        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8902        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8903      ],
8904      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8905      "version" : "None"
8906    },
8907    {
8908      "opname" : "OpArbitraryFloatCbrtINTEL",
8909      "class"  : "@exclude",
8910      "opcode" : 5857,
8911      "operands" : [
8912        { "kind" : "IdResultType" },
8913        { "kind" : "IdResult" },
8914        { "kind" : "IdRef", "name" : "'A'" },
8915        { "kind" : "LiteralInteger", "name" : "'M1'" },
8916        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8917        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8918        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8919        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8920      ],
8921      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8922      "version" : "None"
8923    },
8924    {
8925      "opname" : "OpArbitraryFloatHypotINTEL",
8926      "class"  : "@exclude",
8927      "opcode" : 5858,
8928      "operands" : [
8929        { "kind" : "IdResultType" },
8930        { "kind" : "IdResult" },
8931        { "kind" : "IdRef", "name" : "'A'" },
8932        { "kind" : "LiteralInteger", "name" : "'M1'" },
8933        { "kind" : "IdRef", "name" : "'B'" },
8934        { "kind" : "LiteralInteger", "name" : "'M2'" },
8935        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8936        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8937        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8938        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8939      ],
8940      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8941      "version" : "None"
8942    },
8943    {
8944      "opname" : "OpArbitraryFloatSqrtINTEL",
8945      "class"  : "@exclude",
8946      "opcode" : 5859,
8947      "operands" : [
8948        { "kind" : "IdResultType" },
8949        { "kind" : "IdResult" },
8950        { "kind" : "IdRef", "name" : "'A'" },
8951        { "kind" : "LiteralInteger", "name" : "'M1'" },
8952        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8953        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8954        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8955        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8956      ],
8957      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8958      "version" : "None"
8959    },
8960    {
8961      "opname" : "OpArbitraryFloatLogINTEL",
8962      "class"  : "@exclude",
8963      "opcode" : 5860,
8964      "operands" : [
8965        { "kind" : "IdResultType" },
8966        { "kind" : "IdResult" },
8967        { "kind" : "IdRef", "name" : "'A'" },
8968        { "kind" : "LiteralInteger", "name" : "'M1'" },
8969        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8970        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8971        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8972        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8973      ],
8974      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8975      "version" : "None"
8976    },
8977    {
8978      "opname" : "OpArbitraryFloatLog2INTEL",
8979      "class"  : "@exclude",
8980      "opcode" : 5861,
8981      "operands" : [
8982        { "kind" : "IdResultType" },
8983        { "kind" : "IdResult" },
8984        { "kind" : "IdRef", "name" : "'A'" },
8985        { "kind" : "LiteralInteger", "name" : "'M1'" },
8986        { "kind" : "LiteralInteger", "name" : "'Mout'" },
8987        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
8988        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
8989        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
8990      ],
8991      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
8992      "version" : "None"
8993    },
8994    {
8995      "opname" : "OpArbitraryFloatLog10INTEL",
8996      "class"  : "@exclude",
8997      "opcode" : 5862,
8998      "operands" : [
8999        { "kind" : "IdResultType" },
9000        { "kind" : "IdResult" },
9001        { "kind" : "IdRef", "name" : "'A'" },
9002        { "kind" : "LiteralInteger", "name" : "'M1'" },
9003        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9004        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9005        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9006        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9007      ],
9008      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9009      "version" : "None"
9010    },
9011    {
9012      "opname" : "OpArbitraryFloatLog1pINTEL",
9013      "class"  : "@exclude",
9014      "opcode" : 5863,
9015      "operands" : [
9016        { "kind" : "IdResultType" },
9017        { "kind" : "IdResult" },
9018        { "kind" : "IdRef", "name" : "'A'" },
9019        { "kind" : "LiteralInteger", "name" : "'M1'" },
9020        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9021        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9022        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9023        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9024      ],
9025      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9026      "version" : "None"
9027    },
9028    {
9029      "opname" : "OpArbitraryFloatExpINTEL",
9030      "class"  : "@exclude",
9031      "opcode" : 5864,
9032      "operands" : [
9033        { "kind" : "IdResultType" },
9034        { "kind" : "IdResult" },
9035        { "kind" : "IdRef", "name" : "'A'" },
9036        { "kind" : "LiteralInteger", "name" : "'M1'" },
9037        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9038        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9039        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9040        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9041      ],
9042      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9043      "version" : "None"
9044    },
9045    {
9046      "opname" : "OpArbitraryFloatExp2INTEL",
9047      "class"  : "@exclude",
9048      "opcode" : 5865,
9049      "operands" : [
9050        { "kind" : "IdResultType" },
9051        { "kind" : "IdResult" },
9052        { "kind" : "IdRef", "name" : "'A'" },
9053        { "kind" : "LiteralInteger", "name" : "'M1'" },
9054        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9055        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9056        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9057        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9058      ],
9059      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9060      "version" : "None"
9061    },
9062    {
9063      "opname" : "OpArbitraryFloatExp10INTEL",
9064      "class"  : "@exclude",
9065      "opcode" : 5866,
9066      "operands" : [
9067        { "kind" : "IdResultType" },
9068        { "kind" : "IdResult" },
9069        { "kind" : "IdRef", "name" : "'A'" },
9070        { "kind" : "LiteralInteger", "name" : "'M1'" },
9071        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9072        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9073        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9074        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9075      ],
9076      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9077      "version" : "None"
9078    },
9079    {
9080      "opname" : "OpArbitraryFloatExpm1INTEL",
9081      "class"  : "@exclude",
9082      "opcode" : 5867,
9083      "operands" : [
9084        { "kind" : "IdResultType" },
9085        { "kind" : "IdResult" },
9086        { "kind" : "IdRef", "name" : "'A'" },
9087        { "kind" : "LiteralInteger", "name" : "'M1'" },
9088        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9089        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9090        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9091        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9092      ],
9093      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9094      "version" : "None"
9095    },
9096    {
9097      "opname" : "OpArbitraryFloatSinINTEL",
9098      "class"  : "@exclude",
9099      "opcode" : 5868,
9100      "operands" : [
9101        { "kind" : "IdResultType" },
9102        { "kind" : "IdResult" },
9103        { "kind" : "IdRef", "name" : "'A'" },
9104        { "kind" : "LiteralInteger", "name" : "'M1'" },
9105        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9106        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9107        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9108        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9109      ],
9110      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9111      "version" : "None"
9112    },
9113    {
9114      "opname" : "OpArbitraryFloatCosINTEL",
9115      "class"  : "@exclude",
9116      "opcode" : 5869,
9117      "operands" : [
9118        { "kind" : "IdResultType" },
9119        { "kind" : "IdResult" },
9120        { "kind" : "IdRef", "name" : "'A'" },
9121        { "kind" : "LiteralInteger", "name" : "'M1'" },
9122        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9123        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9124        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9125        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9126      ],
9127      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9128      "version" : "None"
9129    },
9130    {
9131      "opname" : "OpArbitraryFloatSinCosINTEL",
9132      "class"  : "@exclude",
9133      "opcode" : 5870,
9134      "operands" : [
9135        { "kind" : "IdResultType" },
9136        { "kind" : "IdResult" },
9137        { "kind" : "IdRef", "name" : "'A'" },
9138        { "kind" : "LiteralInteger", "name" : "'M1'" },
9139        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9140        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9141        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9142        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9143      ],
9144      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9145      "version" : "None"
9146    },
9147    {
9148      "opname" : "OpArbitraryFloatSinPiINTEL",
9149      "class"  : "@exclude",
9150      "opcode" : 5871,
9151      "operands" : [
9152        { "kind" : "IdResultType" },
9153        { "kind" : "IdResult" },
9154        { "kind" : "IdRef", "name" : "'A'" },
9155        { "kind" : "LiteralInteger", "name" : "'M1'" },
9156        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9157        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9158        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9159        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9160      ],
9161      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9162      "version" : "None"
9163    },
9164    {
9165      "opname" : "OpArbitraryFloatCosPiINTEL",
9166      "class"  : "@exclude",
9167      "opcode" : 5872,
9168      "operands" : [
9169        { "kind" : "IdResultType" },
9170        { "kind" : "IdResult" },
9171        { "kind" : "IdRef", "name" : "'A'" },
9172        { "kind" : "LiteralInteger", "name" : "'M1'" },
9173        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9174        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9175        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9176        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9177      ],
9178      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9179      "version" : "None"
9180    },
9181    {
9182      "opname" : "OpArbitraryFloatASinINTEL",
9183      "class"  : "@exclude",
9184      "opcode" : 5873,
9185      "operands" : [
9186        { "kind" : "IdResultType" },
9187        { "kind" : "IdResult" },
9188        { "kind" : "IdRef", "name" : "'A'" },
9189        { "kind" : "LiteralInteger", "name" : "'M1'" },
9190        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9191        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9192        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9193        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9194      ],
9195      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9196      "version" : "None"
9197    },
9198    {
9199      "opname" : "OpArbitraryFloatASinPiINTEL",
9200      "class"  : "@exclude",
9201      "opcode" : 5874,
9202      "operands" : [
9203        { "kind" : "IdResultType" },
9204        { "kind" : "IdResult" },
9205        { "kind" : "IdRef", "name" : "'A'" },
9206        { "kind" : "LiteralInteger", "name" : "'M1'" },
9207        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9208        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9209        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9210        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9211      ],
9212      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9213      "version" : "None"
9214    },
9215    {
9216      "opname" : "OpArbitraryFloatACosINTEL",
9217      "class"  : "@exclude",
9218      "opcode" : 5875,
9219      "operands" : [
9220        { "kind" : "IdResultType" },
9221        { "kind" : "IdResult" },
9222        { "kind" : "IdRef", "name" : "'A'" },
9223        { "kind" : "LiteralInteger", "name" : "'M1'" },
9224        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9225        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9226        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9227        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9228      ],
9229      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9230      "version" : "None"
9231    },
9232    {
9233      "opname" : "OpArbitraryFloatACosPiINTEL",
9234      "class"  : "@exclude",
9235      "opcode" : 5876,
9236      "operands" : [
9237        { "kind" : "IdResultType" },
9238        { "kind" : "IdResult" },
9239        { "kind" : "IdRef", "name" : "'A'" },
9240        { "kind" : "LiteralInteger", "name" : "'M1'" },
9241        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9242        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9243        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9244        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9245      ],
9246      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9247      "version" : "None"
9248    },
9249    {
9250      "opname" : "OpArbitraryFloatATanINTEL",
9251      "class"  : "@exclude",
9252      "opcode" : 5877,
9253      "operands" : [
9254        { "kind" : "IdResultType" },
9255        { "kind" : "IdResult" },
9256        { "kind" : "IdRef", "name" : "'A'" },
9257        { "kind" : "LiteralInteger", "name" : "'M1'" },
9258        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9259        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9260        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9261        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9262      ],
9263      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9264      "version" : "None"
9265    },
9266    {
9267      "opname" : "OpArbitraryFloatATanPiINTEL",
9268      "class"  : "@exclude",
9269      "opcode" : 5878,
9270      "operands" : [
9271        { "kind" : "IdResultType" },
9272        { "kind" : "IdResult" },
9273        { "kind" : "IdRef", "name" : "'A'" },
9274        { "kind" : "LiteralInteger", "name" : "'M1'" },
9275        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9276        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9277        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9278        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9279      ],
9280      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9281      "version" : "None"
9282    },
9283    {
9284      "opname" : "OpArbitraryFloatATan2INTEL",
9285      "class"  : "@exclude",
9286      "opcode" : 5879,
9287      "operands" : [
9288        { "kind" : "IdResultType" },
9289        { "kind" : "IdResult" },
9290        { "kind" : "IdRef", "name" : "'A'" },
9291        { "kind" : "LiteralInteger", "name" : "'M1'" },
9292        { "kind" : "IdRef", "name" : "'B'" },
9293        { "kind" : "LiteralInteger", "name" : "'M2'" },
9294        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9295        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9296        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9297        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9298      ],
9299      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9300      "version" : "None"
9301    },
9302    {
9303      "opname" : "OpArbitraryFloatPowINTEL",
9304      "class"  : "@exclude",
9305      "opcode" : 5880,
9306      "operands" : [
9307        { "kind" : "IdResultType" },
9308        { "kind" : "IdResult" },
9309        { "kind" : "IdRef", "name" : "'A'" },
9310        { "kind" : "LiteralInteger", "name" : "'M1'" },
9311        { "kind" : "IdRef", "name" : "'B'" },
9312        { "kind" : "LiteralInteger", "name" : "'M2'" },
9313        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9314        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9315        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9316        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9317      ],
9318      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9319      "version" : "None"
9320    },
9321    {
9322      "opname" : "OpArbitraryFloatPowRINTEL",
9323      "class"  : "@exclude",
9324      "opcode" : 5881,
9325      "operands" : [
9326        { "kind" : "IdResultType" },
9327        { "kind" : "IdResult" },
9328        { "kind" : "IdRef", "name" : "'A'" },
9329        { "kind" : "LiteralInteger", "name" : "'M1'" },
9330        { "kind" : "IdRef", "name" : "'B'" },
9331        { "kind" : "LiteralInteger", "name" : "'M2'" },
9332        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9333        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9334        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9335        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9336      ],
9337      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9338      "version" : "None"
9339    },
9340    {
9341      "opname" : "OpArbitraryFloatPowNINTEL",
9342      "class"  : "@exclude",
9343      "opcode" : 5882,
9344      "operands" : [
9345        { "kind" : "IdResultType" },
9346        { "kind" : "IdResult" },
9347        { "kind" : "IdRef", "name" : "'A'" },
9348        { "kind" : "LiteralInteger", "name" : "'M1'" },
9349        { "kind" : "IdRef", "name" : "'B'" },
9350        { "kind" : "LiteralInteger", "name" : "'Mout'" },
9351        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
9352        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
9353        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
9354      ],
9355      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
9356      "version" : "None"
9357    },
9358    {
9359      "opname" : "OpLoopControlINTEL",
9360      "class"  : "Reserved",
9361      "opcode" : 5887,
9362      "operands" : [
9363        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Loop Control Parameters'" }
9364      ],
9365      "capabilities" : [ "UnstructuredLoopControlsINTEL" ],
9366      "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
9367      "version" : "None"
9368    },
9369    {
9370      "opname" : "OpAliasDomainDeclINTEL",
9371      "class"  : "@exclude",
9372      "opcode" : 5911,
9373      "operands" : [
9374        { "kind" : "IdResult"},
9375        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" }
9376      ],
9377      "capabilities" : [ "MemoryAccessAliasingINTEL" ],
9378      "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
9379      "version" : "None"
9380    },
9381    {
9382      "opname" : "OpAliasScopeDeclINTEL",
9383      "class"  : "@exclude",
9384      "opcode" : 5912,
9385      "operands" : [
9386        { "kind" : "IdResult"},
9387        { "kind" : "IdRef", "name" : "'Alias Domain'"},
9388        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" }
9389      ],
9390      "capabilities" : [ "MemoryAccessAliasingINTEL" ],
9391      "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
9392      "version" : "None"
9393    },
9394    {
9395      "opname" : "OpAliasScopeListDeclINTEL",
9396      "class"  : "@exclude",
9397      "opcode" : 5913,
9398      "operands" : [
9399        { "kind" : "IdResult"},
9400        { "kind" : "IdRef", "quantifier" : "*", "name" : "'AliasScope1, AliasScope2, ...'" }
9401      ],
9402      "capabilities" : [ "MemoryAccessAliasingINTEL" ],
9403      "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
9404      "version" : "None"
9405    },
9406    {
9407      "opname" : "OpFixedSqrtINTEL",
9408      "class"  : "@exclude",
9409      "opcode" : 5923,
9410      "operands" : [
9411        { "kind" : "IdResultType" },
9412        { "kind" : "IdResult" },
9413        { "kind" : "IdRef", "name" : "'Input Type'" },
9414        { "kind" : "IdRef", "name" : "'Input'" },
9415        { "kind" : "LiteralInteger", "name" : "'S'" },
9416        { "kind" : "LiteralInteger", "name" : "'I'" },
9417        { "kind" : "LiteralInteger", "name" : "'rI'" },
9418        { "kind" : "LiteralInteger", "name" : "'Q'" },
9419        { "kind" : "LiteralInteger", "name" : "'O'" }
9420      ],
9421      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9422      "version" : "None"
9423    },
9424    {
9425      "opname" : "OpFixedRecipINTEL",
9426      "class"  : "@exclude",
9427      "opcode" : 5924,
9428      "operands" : [
9429        { "kind" : "IdResultType" },
9430        { "kind" : "IdResult" },
9431        { "kind" : "IdRef", "name" : "'Input Type'" },
9432        { "kind" : "IdRef", "name" : "'Input'" },
9433        { "kind" : "LiteralInteger", "name" : "'S'" },
9434        { "kind" : "LiteralInteger", "name" : "'I'" },
9435        { "kind" : "LiteralInteger", "name" : "'rI'" },
9436        { "kind" : "LiteralInteger", "name" : "'Q'" },
9437        { "kind" : "LiteralInteger", "name" : "'O'" }
9438      ],
9439      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9440      "version" : "None"
9441    },
9442    {
9443      "opname" : "OpFixedRsqrtINTEL",
9444      "class"  : "@exclude",
9445      "opcode" : 5925,
9446      "operands" : [
9447        { "kind" : "IdResultType" },
9448        { "kind" : "IdResult" },
9449        { "kind" : "IdRef", "name" : "'Input Type'" },
9450        { "kind" : "IdRef", "name" : "'Input'" },
9451        { "kind" : "LiteralInteger", "name" : "'S'" },
9452        { "kind" : "LiteralInteger", "name" : "'I'" },
9453        { "kind" : "LiteralInteger", "name" : "'rI'" },
9454        { "kind" : "LiteralInteger", "name" : "'Q'" },
9455        { "kind" : "LiteralInteger", "name" : "'O'" }
9456      ],
9457      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9458      "version" : "None"
9459    },
9460    {
9461      "opname" : "OpFixedSinINTEL",
9462      "class"  : "@exclude",
9463      "opcode" : 5926,
9464      "operands" : [
9465        { "kind" : "IdResultType" },
9466        { "kind" : "IdResult" },
9467        { "kind" : "IdRef", "name" : "'Input Type'" },
9468        { "kind" : "IdRef", "name" : "'Input'" },
9469        { "kind" : "LiteralInteger", "name" : "'S'" },
9470        { "kind" : "LiteralInteger", "name" : "'I'" },
9471        { "kind" : "LiteralInteger", "name" : "'rI'" },
9472        { "kind" : "LiteralInteger", "name" : "'Q'" },
9473        { "kind" : "LiteralInteger", "name" : "'O'" }
9474      ],
9475      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9476      "version" : "None"
9477    },
9478    {
9479      "opname" : "OpFixedCosINTEL",
9480      "class"  : "@exclude",
9481      "opcode" : 5927,
9482      "operands" : [
9483        { "kind" : "IdResultType" },
9484        { "kind" : "IdResult" },
9485        { "kind" : "IdRef", "name" : "'Input Type'" },
9486        { "kind" : "IdRef", "name" : "'Input'" },
9487        { "kind" : "LiteralInteger", "name" : "'S'" },
9488        { "kind" : "LiteralInteger", "name" : "'I'" },
9489        { "kind" : "LiteralInteger", "name" : "'rI'" },
9490        { "kind" : "LiteralInteger", "name" : "'Q'" },
9491        { "kind" : "LiteralInteger", "name" : "'O'" }
9492      ],
9493      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9494      "version" : "None"
9495    },
9496    {
9497      "opname" : "OpFixedSinCosINTEL",
9498      "class"  : "@exclude",
9499      "opcode" : 5928,
9500      "operands" : [
9501        { "kind" : "IdResultType" },
9502        { "kind" : "IdResult" },
9503        { "kind" : "IdRef", "name" : "'Input Type'" },
9504        { "kind" : "IdRef", "name" : "'Input'" },
9505        { "kind" : "LiteralInteger", "name" : "'S'" },
9506        { "kind" : "LiteralInteger", "name" : "'I'" },
9507        { "kind" : "LiteralInteger", "name" : "'rI'" },
9508        { "kind" : "LiteralInteger", "name" : "'Q'" },
9509        { "kind" : "LiteralInteger", "name" : "'O'" }
9510      ],
9511      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9512      "version" : "None"
9513    },
9514    {
9515      "opname" : "OpFixedSinPiINTEL",
9516      "class"  : "@exclude",
9517      "opcode" : 5929,
9518      "operands" : [
9519        { "kind" : "IdResultType" },
9520        { "kind" : "IdResult" },
9521        { "kind" : "IdRef", "name" : "'Input Type'" },
9522        { "kind" : "IdRef", "name" : "'Input'" },
9523        { "kind" : "LiteralInteger", "name" : "'S'" },
9524        { "kind" : "LiteralInteger", "name" : "'I'" },
9525        { "kind" : "LiteralInteger", "name" : "'rI'" },
9526        { "kind" : "LiteralInteger", "name" : "'Q'" },
9527        { "kind" : "LiteralInteger", "name" : "'O'" }
9528      ],
9529      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9530      "version" : "None"
9531    },
9532    {
9533      "opname" : "OpFixedCosPiINTEL",
9534      "class"  : "@exclude",
9535      "opcode" : 5930,
9536      "operands" : [
9537        { "kind" : "IdResultType" },
9538        { "kind" : "IdResult" },
9539        { "kind" : "IdRef", "name" : "'Input Type'" },
9540        { "kind" : "IdRef", "name" : "'Input'" },
9541        { "kind" : "LiteralInteger", "name" : "'S'" },
9542        { "kind" : "LiteralInteger", "name" : "'I'" },
9543        { "kind" : "LiteralInteger", "name" : "'rI'" },
9544        { "kind" : "LiteralInteger", "name" : "'Q'" },
9545        { "kind" : "LiteralInteger", "name" : "'O'" }
9546      ],
9547      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9548      "version" : "None"
9549    },
9550    {
9551      "opname" : "OpFixedSinCosPiINTEL",
9552      "class"  : "@exclude",
9553      "opcode" : 5931,
9554      "operands" : [
9555        { "kind" : "IdResultType" },
9556        { "kind" : "IdResult" },
9557        { "kind" : "IdRef", "name" : "'Input Type'" },
9558        { "kind" : "IdRef", "name" : "'Input'" },
9559        { "kind" : "LiteralInteger", "name" : "'S'" },
9560        { "kind" : "LiteralInteger", "name" : "'I'" },
9561        { "kind" : "LiteralInteger", "name" : "'rI'" },
9562        { "kind" : "LiteralInteger", "name" : "'Q'" },
9563        { "kind" : "LiteralInteger", "name" : "'O'" }
9564      ],
9565      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9566      "version" : "None"
9567    },
9568    {
9569      "opname" : "OpFixedLogINTEL",
9570      "class"  : "@exclude",
9571      "opcode" : 5932,
9572      "operands" : [
9573        { "kind" : "IdResultType" },
9574        { "kind" : "IdResult" },
9575        { "kind" : "IdRef", "name" : "'Input Type'" },
9576        { "kind" : "IdRef", "name" : "'Input'" },
9577        { "kind" : "LiteralInteger", "name" : "'S'" },
9578        { "kind" : "LiteralInteger", "name" : "'I'" },
9579        { "kind" : "LiteralInteger", "name" : "'rI'" },
9580        { "kind" : "LiteralInteger", "name" : "'Q'" },
9581        { "kind" : "LiteralInteger", "name" : "'O'" }
9582      ],
9583      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9584      "version" : "None"
9585    },
9586    {
9587      "opname" : "OpFixedExpINTEL",
9588      "class"  : "@exclude",
9589      "opcode" : 5933,
9590      "operands" : [
9591        { "kind" : "IdResultType" },
9592        { "kind" : "IdResult" },
9593        { "kind" : "IdRef", "name" : "'Input Type'" },
9594        { "kind" : "IdRef", "name" : "'Input'" },
9595        { "kind" : "LiteralInteger", "name" : "'S'" },
9596        { "kind" : "LiteralInteger", "name" : "'I'" },
9597        { "kind" : "LiteralInteger", "name" : "'rI'" },
9598        { "kind" : "LiteralInteger", "name" : "'Q'" },
9599        { "kind" : "LiteralInteger", "name" : "'O'" }
9600      ],
9601      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
9602      "version" : "None"
9603    },
9604    {
9605      "opname" : "OpPtrCastToCrossWorkgroupINTEL",
9606      "class"  : "@exclude",
9607      "opcode" : 5934,
9608      "operands" : [
9609        { "kind" : "IdResultType" },
9610        { "kind" : "IdResult" },
9611        { "kind" : "IdRef", "name" : "'Pointer'" }
9612      ],
9613      "capabilities" : [ "USMStorageClassesINTEL" ],
9614      "version" : "None"
9615    },
9616    {
9617      "opname" : "OpCrossWorkgroupCastToPtrINTEL",
9618      "class"  : "@exclude",
9619      "opcode" : 5938,
9620      "operands" : [
9621        { "kind" : "IdResultType" },
9622        { "kind" : "IdResult" },
9623        { "kind" : "IdRef", "name" : "'Pointer'" }
9624      ],
9625      "capabilities" : [ "USMStorageClassesINTEL" ],
9626      "version" : "None"
9627    },
9628    {
9629      "opname" : "OpReadPipeBlockingINTEL",
9630      "class"  : "Pipe",
9631      "opcode" : 5946,
9632      "operands" : [
9633        { "kind" : "IdResultType" },
9634        { "kind" : "IdResult" },
9635        { "kind" : "IdRef", "name" : "'Packet Size'" },
9636        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
9637      ],
9638      "capabilities" : [ "BlockingPipesINTEL" ],
9639      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
9640      "version" : "None"
9641    },
9642    {
9643      "opname" : "OpWritePipeBlockingINTEL",
9644      "class"  : "Pipe",
9645      "opcode" : 5947,
9646      "operands" : [
9647        { "kind" : "IdResultType" },
9648        { "kind" : "IdResult" },
9649        { "kind" : "IdRef", "name" : "'Packet Size'" },
9650        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
9651      ],
9652      "capabilities" : [ "BlockingPipesINTEL" ],
9653      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
9654      "version" : "None"
9655    },
9656    {
9657      "opname" : "OpFPGARegINTEL",
9658      "class"  : "Reserved",
9659      "opcode" : 5949,
9660      "operands" : [
9661        { "kind" : "IdResultType" },
9662        { "kind" : "IdResult" },
9663        { "kind" : "IdRef", "name" : "'Result'" },
9664        { "kind" : "IdRef", "name" : "'Input'" }
9665      ],
9666      "capabilities" : [ "FPGARegINTEL" ],
9667      "extensions" : [ "SPV_INTEL_fpga_reg" ],
9668      "version" : "None"
9669    },
9670    {
9671        "opname" : "OpRayQueryGetRayTMinKHR",
9672        "class" : "Reserved",
9673        "opcode" : 6016,
9674        "operands" : [
9675            { "kind" : "IdResultType" },
9676            { "kind" : "IdResult" },
9677            {
9678                "kind" : "IdRef",
9679                "name" : "'RayQuery'"
9680            }
9681        ],
9682        "capabilities" : [ "RayQueryKHR" ],
9683        "extensions" : [ "SPV_KHR_ray_query" ],
9684        "version" : "None"
9685    },
9686    {
9687        "opname" : "OpRayQueryGetRayFlagsKHR",
9688        "class" : "Reserved",
9689        "opcode" : 6017,
9690        "operands" : [
9691            { "kind" : "IdResultType" },
9692            { "kind" : "IdResult" },
9693            {
9694                "kind" : "IdRef",
9695                "name" : "'RayQuery'"
9696            }
9697        ],
9698        "capabilities" : [ "RayQueryKHR" ],
9699        "extensions" : [ "SPV_KHR_ray_query" ],
9700        "version" : "None"
9701    },
9702    {
9703        "opname" : "OpRayQueryGetIntersectionTKHR",
9704        "class" : "Reserved",
9705        "opcode" : 6018,
9706        "operands" : [
9707            { "kind" : "IdResultType" },
9708            { "kind" : "IdResult" },
9709            {
9710                "kind" : "IdRef",
9711                "name" : "'RayQuery'"
9712            },
9713            {
9714                "kind" : "IdRef",
9715                "name" : "'Intersection'"
9716            }
9717        ],
9718        "capabilities" : [ "RayQueryKHR" ],
9719        "extensions" : [ "SPV_KHR_ray_query" ],
9720        "version" : "None"
9721    },
9722    {
9723        "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR",
9724        "class" : "Reserved",
9725        "opcode" : 6019,
9726        "operands" : [
9727            { "kind" : "IdResultType" },
9728            { "kind" : "IdResult" },
9729            {
9730                "kind" : "IdRef",
9731                "name" : "'RayQuery'"
9732            },
9733            {
9734                "kind" : "IdRef",
9735                "name" : "'Intersection'"
9736            }
9737        ],
9738        "capabilities" : [ "RayQueryKHR" ],
9739        "extensions" : [ "SPV_KHR_ray_query" ],
9740        "version" : "None"
9741    },
9742    {
9743        "opname" : "OpRayQueryGetIntersectionInstanceIdKHR",
9744        "class" : "Reserved",
9745        "opcode" : 6020,
9746        "operands" : [
9747            { "kind" : "IdResultType" },
9748            { "kind" : "IdResult" },
9749            {
9750                "kind" : "IdRef",
9751                "name" : "'RayQuery'"
9752            },
9753            {
9754                "kind" : "IdRef",
9755                "name" : "'Intersection'"
9756            }
9757        ],
9758        "capabilities" : [ "RayQueryKHR" ],
9759        "extensions" : [ "SPV_KHR_ray_query" ],
9760        "version" : "None"
9761    },
9762    {
9763        "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR",
9764        "class" : "Reserved",
9765        "opcode" : 6021,
9766        "operands" : [
9767            { "kind" : "IdResultType" },
9768            { "kind" : "IdResult" },
9769            {
9770                "kind" : "IdRef",
9771                "name" : "'RayQuery'"
9772            },
9773            {
9774                "kind" : "IdRef",
9775                "name" : "'Intersection'"
9776            }
9777        ],
9778        "capabilities" : [ "RayQueryKHR" ],
9779        "extensions" : [ "SPV_KHR_ray_query" ],
9780        "version" : "None"
9781    },
9782    {
9783        "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR",
9784        "class" : "Reserved",
9785        "opcode" : 6022,
9786        "operands" : [
9787            { "kind" : "IdResultType" },
9788            { "kind" : "IdResult" },
9789            {
9790                "kind" : "IdRef",
9791                "name" : "'RayQuery'"
9792            },
9793            {
9794                "kind" : "IdRef",
9795                "name" : "'Intersection'"
9796            }
9797        ],
9798        "capabilities" : [ "RayQueryKHR" ],
9799        "extensions" : [ "SPV_KHR_ray_query" ],
9800        "version" : "None"
9801    },
9802    {
9803        "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR",
9804        "class" : "Reserved",
9805        "opcode" : 6023,
9806        "operands" : [
9807            { "kind" : "IdResultType" },
9808            { "kind" : "IdResult" },
9809            {
9810                "kind" : "IdRef",
9811                "name" : "'RayQuery'"
9812            },
9813            {
9814                "kind" : "IdRef",
9815                "name" : "'Intersection'"
9816            }
9817        ],
9818        "capabilities" : [ "RayQueryKHR" ],
9819        "extensions" : [ "SPV_KHR_ray_query" ],
9820        "version" : "None"
9821    },
9822    {
9823        "opname" : "OpRayQueryGetIntersectionBarycentricsKHR",
9824        "class" : "Reserved",
9825        "opcode" : 6024,
9826        "operands" : [
9827            { "kind" : "IdResultType" },
9828            { "kind" : "IdResult" },
9829            {
9830                "kind" : "IdRef",
9831                "name" : "'RayQuery'"
9832            },
9833            {
9834                "kind" : "IdRef",
9835                "name" : "'Intersection'"
9836            }
9837        ],
9838        "capabilities" : [ "RayQueryKHR" ],
9839        "extensions" : [ "SPV_KHR_ray_query" ],
9840        "version" : "None"
9841    },
9842    {
9843        "opname" : "OpRayQueryGetIntersectionFrontFaceKHR",
9844        "class" : "Reserved",
9845        "opcode" : 6025,
9846        "operands" : [
9847            { "kind" : "IdResultType" },
9848            { "kind" : "IdResult" },
9849            {
9850                "kind" : "IdRef",
9851                "name" : "'RayQuery'"
9852            },
9853            {
9854                "kind" : "IdRef",
9855                "name" : "'Intersection'"
9856            }
9857        ],
9858        "capabilities" : [ "RayQueryKHR" ],
9859        "extensions" : [ "SPV_KHR_ray_query" ],
9860        "version" : "None"
9861    },
9862    {
9863        "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
9864        "class" : "Reserved",
9865        "opcode" : 6026,
9866        "operands" : [
9867            { "kind" : "IdResultType" },
9868            { "kind" : "IdResult" },
9869            {
9870                "kind" : "IdRef",
9871                "name" : "'RayQuery'"
9872            }
9873        ],
9874        "capabilities" : [ "RayQueryKHR" ],
9875        "extensions" : [ "SPV_KHR_ray_query" ],
9876        "version" : "None"
9877    },
9878    {
9879        "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR",
9880        "class" : "Reserved",
9881        "opcode" : 6027,
9882        "operands" : [
9883            { "kind" : "IdResultType" },
9884            { "kind" : "IdResult" },
9885            {
9886                "kind" : "IdRef",
9887                "name" : "'RayQuery'"
9888            },
9889            {
9890                "kind" : "IdRef",
9891                "name" : "'Intersection'"
9892            }
9893        ],
9894        "capabilities" : [ "RayQueryKHR" ],
9895        "extensions" : [ "SPV_KHR_ray_query" ],
9896        "version" : "None"
9897    },
9898    {
9899        "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR",
9900        "class" : "Reserved",
9901        "opcode" : 6028,
9902        "operands" : [
9903            { "kind" : "IdResultType" },
9904            { "kind" : "IdResult" },
9905            {
9906                "kind" : "IdRef",
9907                "name" : "'RayQuery'"
9908            },
9909            {
9910                "kind" : "IdRef",
9911                "name" : "'Intersection'"
9912            }
9913        ],
9914        "capabilities" : [ "RayQueryKHR" ],
9915        "extensions" : [ "SPV_KHR_ray_query" ],
9916        "version" : "None"
9917    },
9918    {
9919        "opname" : "OpRayQueryGetWorldRayDirectionKHR",
9920        "class" : "Reserved",
9921        "opcode" : 6029,
9922        "operands" : [
9923            { "kind" : "IdResultType" },
9924            { "kind" : "IdResult" },
9925            {
9926                "kind" : "IdRef",
9927                "name" : "'RayQuery'"
9928            }
9929        ],
9930        "capabilities" : [ "RayQueryKHR" ],
9931        "extensions" : [ "SPV_KHR_ray_query" ],
9932        "version" : "None"
9933    },
9934    {
9935        "opname" : "OpRayQueryGetWorldRayOriginKHR",
9936        "class" : "Reserved",
9937        "opcode" : 6030,
9938        "operands" : [
9939            { "kind" : "IdResultType" },
9940            { "kind" : "IdResult" },
9941            {
9942                "kind" : "IdRef",
9943                "name" : "'RayQuery'"
9944            }
9945        ],
9946        "capabilities" : [ "RayQueryKHR" ],
9947        "extensions" : [ "SPV_KHR_ray_query" ],
9948        "version" : "None"
9949    },
9950    {
9951        "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR",
9952        "class" : "Reserved",
9953        "opcode" : 6031,
9954        "operands" : [
9955            { "kind" : "IdResultType" },
9956            { "kind" : "IdResult" },
9957            {
9958                "kind" : "IdRef",
9959                "name" : "'RayQuery'"
9960            },
9961            {
9962                "kind" : "IdRef",
9963                "name" : "'Intersection'"
9964            }
9965        ],
9966        "capabilities" : [ "RayQueryKHR" ],
9967        "extensions" : [ "SPV_KHR_ray_query" ],
9968        "version" : "None"
9969    },
9970    {
9971        "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR",
9972        "class" : "Reserved",
9973        "opcode" : 6032,
9974        "operands" : [
9975            { "kind" : "IdResultType" },
9976            { "kind" : "IdResult" },
9977            {
9978                "kind" : "IdRef",
9979                "name" : "'RayQuery'"
9980            },
9981             {
9982                "kind" : "IdRef",
9983                "name" : "'Intersection'"
9984            }
9985        ],
9986        "capabilities" : [ "RayQueryKHR" ],
9987        "extensions" : [ "SPV_KHR_ray_query" ],
9988        "version" : "None"
9989    },
9990    {
9991      "opname" : "OpAtomicFAddEXT",
9992      "class"  : "Atomic",
9993      "opcode" : 6035,
9994      "operands" : [
9995        { "kind" : "IdResultType" },
9996        { "kind" : "IdResult" },
9997        { "kind" : "IdRef",             "name" : "'Pointer'" },
9998        { "kind" : "IdScope",           "name" : "'Memory'" },
9999        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
10000        { "kind" : "IdRef",             "name" : "'Value'" }
10001      ],
10002      "capabilities" : [ "AtomicFloat16AddEXT", "AtomicFloat32AddEXT", "AtomicFloat64AddEXT", "AtomicFloat16VectorNV" ],
10003      "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
10004      "version" : "None"
10005    },
10006    {
10007      "opname" : "OpTypeBufferSurfaceINTEL",
10008      "class"  : "Type-Declaration",
10009      "opcode" : 6086,
10010      "operands" : [
10011        { "kind" : "IdResult" },
10012        {
10013          "kind" : "AccessQualifier",
10014          "name" : "'AccessQualifier'"
10015        }
10016      ],
10017      "capabilities" : [ "VectorComputeINTEL" ],
10018      "version" : "None"
10019    },
10020    {
10021      "opname" : "OpTypeStructContinuedINTEL",
10022      "class"  : "Type-Declaration",
10023      "opcode" : 6090,
10024      "operands" : [
10025        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
10026      ],
10027      "capabilities" : [ "LongCompositesINTEL" ],
10028      "version" : "None"
10029    },
10030    {
10031      "opname" : "OpConstantCompositeContinuedINTEL",
10032      "class"  : "Constant-Creation",
10033      "opcode" : 6091,
10034      "operands" : [
10035        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
10036      ],
10037      "capabilities" : [ "LongCompositesINTEL" ],
10038      "version" : "None"
10039    },
10040    {
10041      "opname" : "OpSpecConstantCompositeContinuedINTEL",
10042      "class"  : "Constant-Creation",
10043      "opcode" : 6092,
10044      "operands" : [
10045        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
10046      ],
10047      "capabilities" : [ "LongCompositesINTEL" ],
10048      "version" : "None"
10049    },
10050    {
10051      "opname" : "OpCompositeConstructContinuedINTEL",
10052      "class"  : "Composite",
10053      "opcode" : 6096,
10054      "operands" : [
10055        { "kind" : "IdResultType" },
10056        { "kind" : "IdResult" },
10057        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
10058      ],
10059      "capabilities" : [ "LongCompositesINTEL" ],
10060      "version": "None"
10061    },
10062    {
10063      "opname" : "OpConvertFToBF16INTEL",
10064      "class"  : "Conversion",
10065      "opcode" : 6116,
10066      "operands" : [
10067        { "kind" : "IdResultType" },
10068        { "kind" : "IdResult" },
10069        { "kind" : "IdRef",        "name" : "'Float Value'" }
10070      ],
10071      "capabilities" : [ "BFloat16ConversionINTEL" ],
10072      "version" : "None"
10073    },
10074    {
10075      "opname" : "OpConvertBF16ToFINTEL",
10076      "class"  : "Conversion",
10077      "opcode" : 6117,
10078      "operands" : [
10079        { "kind" : "IdResultType" },
10080        { "kind" : "IdResult" },
10081        { "kind" : "IdRef",        "name" : "'BFloat16 Value'" }
10082      ],
10083      "capabilities" : [ "BFloat16ConversionINTEL" ],
10084      "version" : "None"
10085    },
10086    {
10087      "opname" : "OpControlBarrierArriveINTEL",
10088      "class"  : "Barrier",
10089      "opcode" : 6142,
10090      "operands" : [
10091        { "kind" : "IdScope",           "name" : "'Execution'" },
10092        { "kind" : "IdScope",           "name" : "'Memory'" },
10093        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
10094      ],
10095      "capabilities" : [ "SplitBarrierINTEL" ],
10096      "version" : "None"
10097    },
10098    {
10099      "opname" : "OpControlBarrierWaitINTEL",
10100      "class"  : "Barrier",
10101      "opcode" : 6143,
10102      "operands" : [
10103        { "kind" : "IdScope",           "name" : "'Execution'" },
10104        { "kind" : "IdScope",           "name" : "'Memory'" },
10105        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
10106      ],
10107      "capabilities" : [ "SplitBarrierINTEL" ],
10108      "version" : "None"
10109    },
10110    {
10111      "opname" : "OpArithmeticFenceEXT",
10112      "class"  : "Miscellaneous",
10113      "opcode" : 6145,
10114      "operands" : [
10115        { "kind" : "IdResultType" },
10116        { "kind" : "IdResult" },
10117        { "kind" : "IdRef",          "name" : "'Target '" }
10118      ],
10119      "capabilities" : [ "ArithmeticFenceEXT" ],
10120      "version" : "None"
10121    },
10122    {
10123      "opname" : "OpSubgroupBlockPrefetchINTEL",
10124      "class"  : "Group",
10125      "opcode" : 6221,
10126      "operands" : [
10127        { "kind" : "IdRef", "name" : "'Ptr'" },
10128        { "kind" : "IdRef", "name" : "'NumBytes'" },
10129        { "kind" : "MemoryAccess", "quantifier" : "?" }
10130      ],
10131      "capabilities" : [ "SubgroupBufferPrefetchINTEL" ],
10132      "version" : "None"
10133    },
10134    {
10135      "opname" : "OpGroupIMulKHR",
10136      "class"  : "Group",
10137      "opcode" : 6401,
10138      "operands" : [
10139        { "kind" : "IdResultType" },
10140        { "kind" : "IdResult" },
10141        { "kind" : "IdScope",        "name" : "'Execution'" },
10142        { "kind" : "GroupOperation", "name" : "'Operation'" },
10143        { "kind" : "IdRef",          "name" : "'X'" }
10144      ],
10145      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10146      "version" : "None"
10147    },
10148    {
10149      "opname" : "OpGroupFMulKHR",
10150      "class"  : "Group",
10151      "opcode" : 6402,
10152      "operands" : [
10153        { "kind" : "IdResultType" },
10154        { "kind" : "IdResult" },
10155        { "kind" : "IdScope",        "name" : "'Execution'" },
10156        { "kind" : "GroupOperation", "name" : "'Operation'" },
10157        { "kind" : "IdRef",          "name" : "'X'" }
10158      ],
10159      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10160      "version" : "None"
10161    },
10162    {
10163      "opname" : "OpGroupBitwiseAndKHR",
10164      "class"  : "Group",
10165      "opcode" : 6403,
10166      "operands" : [
10167        { "kind" : "IdResultType" },
10168        { "kind" : "IdResult" },
10169        { "kind" : "IdScope",        "name" : "'Execution'" },
10170        { "kind" : "GroupOperation", "name" : "'Operation'" },
10171        { "kind" : "IdRef",          "name" : "'X'" }
10172      ],
10173      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10174      "version" : "None"
10175    },
10176    {
10177      "opname" : "OpGroupBitwiseOrKHR",
10178      "class"  : "Group",
10179      "opcode" : 6404,
10180      "operands" : [
10181        { "kind" : "IdResultType" },
10182        { "kind" : "IdResult" },
10183        { "kind" : "IdScope",        "name" : "'Execution'" },
10184        { "kind" : "GroupOperation", "name" : "'Operation'" },
10185        { "kind" : "IdRef",          "name" : "'X'" }
10186      ],
10187      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10188      "version" : "None"
10189    },
10190    {
10191      "opname" : "OpGroupBitwiseXorKHR",
10192      "class"  : "Group",
10193      "opcode" : 6405,
10194      "operands" : [
10195        { "kind" : "IdResultType" },
10196        { "kind" : "IdResult" },
10197        { "kind" : "IdScope",        "name" : "'Execution'" },
10198        { "kind" : "GroupOperation", "name" : "'Operation'" },
10199        { "kind" : "IdRef",          "name" : "'X'" }
10200      ],
10201      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10202      "version" : "None"
10203    },
10204    {
10205      "opname" : "OpGroupLogicalAndKHR",
10206      "class"  : "Group",
10207      "opcode" : 6406,
10208      "operands" : [
10209        { "kind" : "IdResultType" },
10210        { "kind" : "IdResult" },
10211        { "kind" : "IdScope",        "name" : "'Execution'" },
10212        { "kind" : "GroupOperation", "name" : "'Operation'" },
10213        { "kind" : "IdRef",          "name" : "'X'" }
10214      ],
10215      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10216      "version" : "None"
10217    },
10218    {
10219      "opname" : "OpGroupLogicalOrKHR",
10220      "class"  : "Group",
10221      "opcode" : 6407,
10222      "operands" : [
10223        { "kind" : "IdResultType" },
10224        { "kind" : "IdResult" },
10225        { "kind" : "IdScope",        "name" : "'Execution'" },
10226        { "kind" : "GroupOperation", "name" : "'Operation'" },
10227        { "kind" : "IdRef",          "name" : "'X'" }
10228      ],
10229      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10230      "version" : "None"
10231    },
10232    {
10233      "opname" : "OpGroupLogicalXorKHR",
10234      "class"  : "Group",
10235      "opcode" : 6408,
10236      "operands" : [
10237        { "kind" : "IdResultType" },
10238        { "kind" : "IdResult" },
10239        { "kind" : "IdScope",        "name" : "'Execution'" },
10240        { "kind" : "GroupOperation", "name" : "'Operation'" },
10241        { "kind" : "IdRef",          "name" : "'X'" }
10242      ],
10243      "capabilities" : [ "GroupUniformArithmeticKHR" ],
10244      "version" : "None"
10245    },
10246    {
10247      "opname" : "OpMaskedGatherINTEL",
10248      "class"  : "Memory",
10249      "opcode" : 6428,
10250      "operands" : [
10251        { "kind" : "IdResultType" },
10252        { "kind" : "IdResult" },
10253        { "kind" : "IdRef",           "name" : "'PtrVector'" },
10254        { "kind" : "LiteralInteger",  "name" : "'Alignment'" },
10255        { "kind" : "IdRef",           "name" : "'Mask'" },
10256        { "kind" : "IdRef",           "name" : "'FillEmpty'" }
10257      ],
10258      "capabilities" : [ "MaskedGatherScatterINTEL" ],
10259      "version" : "None"
10260    },
10261    {
10262      "opname" : "OpMaskedScatterINTEL",
10263      "class"  : "Memory",
10264      "opcode" : 6429,
10265      "operands" : [
10266        { "kind" : "IdRef",           "name" : "'InputVector'" },
10267        { "kind" : "IdRef",           "name" : "'PtrVector'" },
10268        { "kind" : "LiteralInteger",  "name" : "'Alignment'" },
10269        { "kind" : "IdRef",           "name" : "'Mask'" }
10270      ],
10271      "capabilities" : [ "MaskedGatherScatterINTEL" ],
10272      "version" : "None"
10273    }
10274  ],
10275  "operand_kinds" : [
10276    {
10277      "category" : "BitEnum",
10278      "kind" : "ImageOperands",
10279      "enumerants" : [
10280        {
10281          "enumerant" : "None",
10282          "value" : "0x0000"
10283        },
10284        {
10285          "enumerant" : "Bias",
10286          "value" : "0x0001",
10287          "capabilities" : [ "Shader" ],
10288          "parameters" : [
10289            { "kind" : "IdRef" }
10290          ],
10291          "version": "1.0"
10292        },
10293        {
10294          "enumerant" : "Lod",
10295          "value" : "0x0002",
10296          "parameters" : [
10297            { "kind" : "IdRef" }
10298          ],
10299          "version": "1.0"
10300        },
10301        {
10302          "enumerant" : "Grad",
10303          "value" : "0x0004",
10304          "parameters" : [
10305            { "kind" : "IdRef" },
10306            { "kind" : "IdRef" }
10307          ],
10308          "version": "1.0"
10309        },
10310        {
10311          "enumerant" : "ConstOffset",
10312          "value" : "0x0008",
10313          "parameters" : [
10314            { "kind" : "IdRef" }
10315          ],
10316          "version": "1.0"
10317        },
10318        {
10319          "enumerant" : "Offset",
10320          "value" : "0x0010",
10321          "capabilities" : [ "ImageGatherExtended" ],
10322          "parameters" : [
10323            { "kind" : "IdRef" }
10324          ],
10325          "version": "1.0"
10326        },
10327        {
10328          "enumerant" : "ConstOffsets",
10329          "value" : "0x0020",
10330          "capabilities" : [ "ImageGatherExtended" ],
10331          "parameters" : [
10332            { "kind" : "IdRef" }
10333          ],
10334          "version": "1.0"
10335        },
10336        {
10337          "enumerant" : "Sample",
10338          "value" : "0x0040",
10339          "parameters" : [
10340            { "kind" : "IdRef" }
10341          ],
10342          "version": "1.0"
10343        },
10344        {
10345          "enumerant" : "MinLod",
10346          "value" : "0x0080",
10347          "capabilities" : [ "MinLod" ],
10348          "parameters" : [
10349            { "kind" : "IdRef" }
10350          ],
10351          "version": "1.0"
10352        },
10353        {
10354          "enumerant" : "MakeTexelAvailable",
10355          "aliases" : [ "MakeTexelAvailableKHR" ],
10356          "value" : "0x0100",
10357          "capabilities" : [ "VulkanMemoryModel" ],
10358          "parameters" : [
10359            { "kind" : "IdScope" }
10360          ],
10361          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10362          "version" : "1.5"
10363        },
10364        {
10365          "enumerant" : "MakeTexelVisible",
10366          "aliases" : [ "MakeTexelVisibleKHR" ],
10367          "value" : "0x0200",
10368          "capabilities" : [ "VulkanMemoryModel" ],
10369          "parameters" : [
10370            { "kind" : "IdScope" }
10371          ],
10372          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10373          "version" : "1.5"
10374        },
10375        {
10376          "enumerant" : "NonPrivateTexel",
10377          "aliases" : [ "NonPrivateTexelKHR" ],
10378          "value" : "0x0400",
10379          "capabilities" : [ "VulkanMemoryModel" ],
10380          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10381          "version" : "1.5"
10382        },
10383        {
10384          "enumerant" : "VolatileTexel",
10385          "aliases" : [ "VolatileTexelKHR" ],
10386          "value" : "0x0800",
10387          "capabilities" : [ "VulkanMemoryModel" ],
10388          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10389          "version" : "1.5"
10390        },
10391        {
10392          "enumerant" : "SignExtend",
10393          "value" : "0x1000",
10394          "version" : "1.4"
10395        },
10396        {
10397          "enumerant" : "ZeroExtend",
10398          "value" : "0x2000",
10399          "version" : "1.4"
10400        },
10401        {
10402          "enumerant" : "Nontemporal",
10403          "value" : "0x4000",
10404          "version" : "1.6"
10405        },
10406        {
10407          "enumerant" : "Offsets",
10408          "value" : "0x10000",
10409          "parameters" : [
10410            { "kind" : "IdRef" }
10411          ],
10412          "version": "1.0"
10413        }
10414      ]
10415    },
10416    {
10417      "category" : "BitEnum",
10418      "kind" : "FPFastMathMode",
10419      "enumerants" : [
10420        {
10421          "enumerant" : "None",
10422          "value" : "0x0000",
10423          "version" : "1.0"
10424        },
10425        {
10426          "enumerant" : "NotNaN",
10427          "value" : "0x0001",
10428          "version" : "1.0"
10429        },
10430        {
10431          "enumerant" : "NotInf",
10432          "value" : "0x0002",
10433          "version" : "1.0"
10434        },
10435        {
10436          "enumerant" : "NSZ",
10437          "value" : "0x0004",
10438          "version" : "1.0"
10439        },
10440        {
10441          "enumerant" : "AllowRecip",
10442          "value" : "0x0008",
10443          "version" : "1.0"
10444        },
10445        {
10446          "enumerant" : "Fast",
10447          "value" : "0x0010",
10448          "version" : "1.0"
10449        },
10450        {
10451          "enumerant" : "AllowContract",
10452          "aliases" : ["AllowContractFastINTEL"],
10453          "value" : "0x10000",
10454          "capabilities" : [ "FloatControls2", "FPFastMathModeINTEL" ],
10455          "version" : "None"
10456        },
10457        {
10458          "enumerant" : "AllowReassoc",
10459          "aliases" : ["AllowReassocINTEL"],
10460          "value" : "0x20000",
10461          "capabilities" : [ "FloatControls2", "FPFastMathModeINTEL" ],
10462          "version" : "None"
10463        },
10464        {
10465          "enumerant" : "AllowTransform",
10466          "value" : "0x40000",
10467          "capabilities" : [ "FloatControls2" ],
10468          "version" : "None"
10469        }
10470      ]
10471    },
10472    {
10473      "category" : "BitEnum",
10474      "kind" : "SelectionControl",
10475      "enumerants" : [
10476        {
10477          "enumerant" : "None",
10478          "value" : "0x0000",
10479          "version" : "1.0"
10480        },
10481        {
10482          "enumerant" : "Flatten",
10483          "value" : "0x0001",
10484          "version" : "1.0"
10485        },
10486        {
10487          "enumerant" : "DontFlatten",
10488          "value" : "0x0002",
10489          "version" : "1.0"
10490        }
10491      ]
10492    },
10493    {
10494      "category" : "BitEnum",
10495      "kind" : "LoopControl",
10496      "enumerants" : [
10497        {
10498          "enumerant" : "None",
10499          "value" : "0x0000",
10500          "version" : "1.0"
10501        },
10502        {
10503          "enumerant" : "Unroll",
10504          "value" : "0x0001",
10505          "version" : "1.0"
10506        },
10507        {
10508          "enumerant" : "DontUnroll",
10509          "value" : "0x0002",
10510          "version" : "1.0"
10511        },
10512        {
10513          "enumerant" : "DependencyInfinite",
10514          "value" : "0x0004",
10515          "version" : "1.1"
10516        },
10517        {
10518          "enumerant" : "DependencyLength",
10519          "value" : "0x0008",
10520          "parameters" : [
10521            { "kind" : "LiteralInteger" }
10522          ],
10523          "version" : "1.1"
10524        },
10525        {
10526          "enumerant" : "MinIterations",
10527          "value" : "0x0010",
10528          "parameters" : [
10529            { "kind" : "LiteralInteger" }
10530          ],
10531          "version" : "1.4"
10532        },
10533        {
10534          "enumerant" : "MaxIterations",
10535          "value" : "0x0020",
10536          "parameters" : [
10537            { "kind" : "LiteralInteger" }
10538          ],
10539          "version" : "1.4"
10540        },
10541        {
10542          "enumerant" : "IterationMultiple",
10543          "value" : "0x0040",
10544          "parameters" : [
10545            { "kind" : "LiteralInteger" }
10546          ],
10547          "version" : "1.4"
10548        },
10549        {
10550          "enumerant" : "PeelCount",
10551          "value" : "0x0080",
10552          "parameters" : [
10553            { "kind" : "LiteralInteger" }
10554          ],
10555          "version" : "1.4"
10556        },
10557        {
10558          "enumerant" : "PartialCount",
10559          "value" : "0x0100",
10560          "parameters" : [
10561            { "kind" : "LiteralInteger" }
10562          ],
10563          "version" : "1.4"
10564        },
10565        {
10566          "enumerant" : "InitiationIntervalINTEL",
10567          "value" : "0x10000",
10568          "parameters" : [
10569            { "kind" : "LiteralInteger" }
10570          ],
10571          "capabilities" : [ "FPGALoopControlsINTEL" ],
10572          "version" : "None"
10573        },
10574        {
10575          "enumerant" : "MaxConcurrencyINTEL",
10576          "value" : "0x20000",
10577          "parameters" : [
10578            { "kind" : "LiteralInteger" }
10579          ],
10580          "capabilities" : [ "FPGALoopControlsINTEL" ],
10581          "version" : "None"
10582        },
10583        {
10584          "enumerant" : "DependencyArrayINTEL",
10585          "value" : "0x40000",
10586          "parameters" : [
10587            { "kind" : "LiteralInteger" }
10588          ],
10589          "capabilities" : [ "FPGALoopControlsINTEL" ],
10590          "version" : "None"
10591        },
10592        {
10593          "enumerant" : "PipelineEnableINTEL",
10594          "value" : "0x80000",
10595          "parameters" : [
10596            { "kind" : "LiteralInteger" }
10597          ],
10598          "capabilities" : [ "FPGALoopControlsINTEL" ],
10599          "version" : "None"
10600        },
10601        {
10602          "enumerant" : "LoopCoalesceINTEL",
10603          "value" : "0x100000",
10604          "parameters" : [
10605            { "kind" : "LiteralInteger" }
10606          ],
10607          "capabilities" : [ "FPGALoopControlsINTEL" ],
10608          "version" : "None"
10609        },
10610        {
10611          "enumerant" : "MaxInterleavingINTEL",
10612          "value" : "0x200000",
10613          "parameters" : [
10614            { "kind" : "LiteralInteger" }
10615          ],
10616          "capabilities" : [ "FPGALoopControlsINTEL" ],
10617          "version" : "None"
10618        },
10619        {
10620          "enumerant" : "SpeculatedIterationsINTEL",
10621          "value" : "0x400000",
10622          "parameters" : [
10623            { "kind" : "LiteralInteger" }
10624          ],
10625          "capabilities" : [ "FPGALoopControlsINTEL" ],
10626          "version" : "None"
10627        },
10628        {
10629          "enumerant" : "NoFusionINTEL",
10630          "value" : "0x800000",
10631          "capabilities" : [ "FPGALoopControlsINTEL" ],
10632          "version" : "None"
10633        },
10634        {
10635          "enumerant" : "LoopCountINTEL",
10636          "value" : "0x1000000",
10637          "parameters" : [
10638            { "kind" : "LiteralInteger" }
10639          ],
10640          "capabilities" : [ "FPGALoopControlsINTEL" ],
10641          "version" : "None"
10642        },
10643        {
10644          "enumerant" : "MaxReinvocationDelayINTEL",
10645          "value" : "0x2000000",
10646          "parameters" : [
10647            { "kind" : "LiteralInteger" }
10648          ],
10649          "capabilities" : [ "FPGALoopControlsINTEL" ],
10650          "version" : "None"
10651        }
10652      ]
10653    },
10654    {
10655      "category" : "BitEnum",
10656      "kind" : "FunctionControl",
10657      "enumerants" : [
10658        {
10659          "enumerant" : "None",
10660          "value" : "0x0000",
10661          "version" : "1.0"
10662        },
10663        {
10664          "enumerant" : "Inline",
10665          "value" : "0x0001",
10666          "version" : "1.0"
10667        },
10668        {
10669          "enumerant" : "DontInline",
10670          "value" : "0x0002",
10671          "version" : "1.0"
10672        },
10673        {
10674          "enumerant" : "Pure",
10675          "value" : "0x0004",
10676          "version" : "1.0"
10677        },
10678        {
10679          "enumerant" : "Const",
10680          "value" : "0x0008",
10681          "version" : "1.0"
10682        },
10683        {
10684          "enumerant" : "OptNoneEXT",
10685          "aliases" : ["OptNoneINTEL"],
10686          "value" : "0x10000",
10687          "capabilities" : [  "OptNoneEXT" ],
10688          "version" : "None"
10689        }
10690      ]
10691    },
10692    {
10693      "category" : "BitEnum",
10694      "kind" : "MemorySemantics",
10695      "enumerants" : [
10696        {
10697          "enumerant" : "Relaxed",
10698          "aliases" : ["None"],
10699          "value" : "0x0000",
10700          "version" : "1.0"
10701        },
10702        {
10703          "enumerant" : "Acquire",
10704          "value" : "0x0002",
10705          "version" : "1.0"
10706        },
10707        {
10708          "enumerant" : "Release",
10709          "value" : "0x0004",
10710          "version" : "1.0"
10711        },
10712        {
10713          "enumerant" : "AcquireRelease",
10714          "value" : "0x0008",
10715          "version" : "1.0"
10716        },
10717        {
10718          "enumerant" : "SequentiallyConsistent",
10719          "value" : "0x0010",
10720          "version" : "1.0"
10721        },
10722        {
10723          "enumerant" : "UniformMemory",
10724          "value" : "0x0040",
10725          "capabilities" : [ "Shader" ],
10726          "version": "1.0"
10727        },
10728        {
10729          "enumerant" : "SubgroupMemory",
10730          "value" : "0x0080",
10731          "version" : "1.0"
10732        },
10733        {
10734          "enumerant" : "WorkgroupMemory",
10735          "value" : "0x0100",
10736          "version" : "1.0"
10737        },
10738        {
10739          "enumerant" : "CrossWorkgroupMemory",
10740          "value" : "0x0200",
10741          "version" : "1.0"
10742        },
10743        {
10744          "enumerant" : "AtomicCounterMemory",
10745          "value" : "0x0400",
10746          "capabilities" : [ "AtomicStorage" ],
10747          "version": "1.0"
10748        },
10749        {
10750          "enumerant" : "ImageMemory",
10751          "value" : "0x0800",
10752          "version" : "1.0"
10753        },
10754        {
10755          "enumerant" : "OutputMemory",
10756          "aliases" : ["OutputMemoryKHR"],
10757          "value" : "0x1000",
10758          "capabilities" : [ "VulkanMemoryModel" ],
10759          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10760          "version" : "1.5"
10761        },
10762        {
10763          "enumerant" : "MakeAvailable",
10764          "aliases" : ["MakeAvailableKHR"],
10765          "value" : "0x2000",
10766          "capabilities" : [ "VulkanMemoryModel" ],
10767          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10768          "version" : "1.5"
10769        },
10770        {
10771          "enumerant" : "MakeVisible",
10772          "aliases" : ["MakeVisibleKHR"],
10773          "value" : "0x4000",
10774          "capabilities" : [ "VulkanMemoryModel" ],
10775          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10776          "version" : "1.5"
10777        },
10778        {
10779          "enumerant" : "Volatile",
10780          "value" : "0x8000",
10781          "capabilities" : [ "VulkanMemoryModel" ],
10782          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10783          "version" : "1.5"
10784        }
10785      ]
10786    },
10787    {
10788      "category" : "BitEnum",
10789      "kind" : "MemoryAccess",
10790      "enumerants" : [
10791        {
10792          "enumerant" : "None",
10793          "value" : "0x0000",
10794          "version" : "1.0"
10795        },
10796        {
10797          "enumerant" : "Volatile",
10798          "value" : "0x0001",
10799          "version" : "1.0"
10800        },
10801        {
10802          "enumerant" : "Aligned",
10803          "value" : "0x0002",
10804          "parameters" : [
10805            { "kind" : "LiteralInteger" }
10806          ],
10807          "version" : "1.0"
10808        },
10809        {
10810          "enumerant" : "Nontemporal",
10811          "value" : "0x0004",
10812          "version" : "1.0"
10813        },
10814        {
10815          "enumerant" : "MakePointerAvailable",
10816          "aliases" : ["MakePointerAvailableKHR"],
10817          "value" : "0x0008",
10818          "parameters" : [
10819            { "kind" : "IdScope" }
10820          ],
10821          "capabilities" : [ "VulkanMemoryModel" ],
10822          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10823          "version" : "1.5"
10824        },
10825        {
10826          "enumerant" : "MakePointerVisible",
10827          "aliases" : ["MakePointerVisibleKHR"],
10828          "value" : "0x0010",
10829          "parameters" : [
10830            { "kind" : "IdScope" }
10831          ],
10832          "capabilities" : [ "VulkanMemoryModel" ],
10833          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10834          "version" : "1.5"
10835        },
10836        {
10837          "enumerant" : "NonPrivatePointer",
10838          "aliases" : ["NonPrivatePointerKHR"],
10839          "value" : "0x0020",
10840          "capabilities" : [ "VulkanMemoryModel" ],
10841          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
10842          "version" : "1.5"
10843        },
10844        {
10845          "enumerant" : "AliasScopeINTELMask",
10846          "value" : "0x10000",
10847          "parameters" : [
10848            { "kind" : "IdRef" }
10849          ],
10850          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
10851          "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
10852          "version" : "None"
10853        },
10854        {
10855          "enumerant" : "NoAliasINTELMask",
10856          "parameters" : [
10857            { "kind" : "IdRef" }
10858          ],
10859          "value" : "0x20000",
10860          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
10861          "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
10862          "version" : "None"
10863        }
10864      ]
10865    },
10866    {
10867      "category" : "BitEnum",
10868      "kind" : "KernelProfilingInfo",
10869      "enumerants" : [
10870        {
10871          "enumerant" : "None",
10872          "value" : "0x0000",
10873          "version" : "1.0"
10874        },
10875        {
10876          "enumerant" : "CmdExecTime",
10877          "value" : "0x0001",
10878          "capabilities" : [ "Kernel" ],
10879          "version": "1.0"
10880        }
10881      ]
10882    },
10883    {
10884      "category" : "BitEnum",
10885      "kind" : "RayFlags",
10886      "enumerants" : [
10887        {
10888          "enumerant" : "NoneKHR",
10889          "value" : "0x0000",
10890          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10891          "version" : "None"
10892        },
10893        {
10894          "enumerant" : "OpaqueKHR",
10895          "value" : "0x0001",
10896          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10897          "version" : "None"
10898        },
10899        {
10900          "enumerant" : "NoOpaqueKHR",
10901          "value" : "0x0002",
10902          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10903          "version" : "None"
10904        },
10905        {
10906          "enumerant" : "TerminateOnFirstHitKHR",
10907          "value" : "0x0004",
10908          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10909          "version" : "None"
10910        },
10911        {
10912          "enumerant" : "SkipClosestHitShaderKHR",
10913          "value" : "0x0008",
10914          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10915          "version" : "None"
10916        },
10917        {
10918          "enumerant" : "CullBackFacingTrianglesKHR",
10919          "value" : "0x0010",
10920          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10921          "version" : "None"
10922        },
10923        {
10924          "enumerant" : "CullFrontFacingTrianglesKHR",
10925          "value" : "0x0020",
10926          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10927          "version" : "None"
10928        },
10929        {
10930          "enumerant" : "CullOpaqueKHR",
10931          "value" : "0x0040",
10932          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10933          "version" : "None"
10934        },
10935        {
10936          "enumerant" : "CullNoOpaqueKHR",
10937          "value" : "0x0080",
10938          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
10939          "version" : "None"
10940        },
10941        {
10942          "enumerant" : "SkipTrianglesKHR",
10943          "value" : "0x0100",
10944          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
10945          "version" : "None"
10946        },
10947        {
10948          "enumerant" : "SkipAABBsKHR",
10949          "value" : "0x0200",
10950          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
10951          "version" : "None"
10952        },
10953        {
10954          "enumerant" : "ForceOpacityMicromap2StateEXT",
10955          "value" : "0x0400",
10956          "capabilities" : [ "RayTracingOpacityMicromapEXT" ],
10957          "version" : "None"
10958        }
10959      ]
10960    },
10961    {
10962      "category" : "BitEnum",
10963      "kind" : "FragmentShadingRate",
10964      "enumerants" : [
10965        {
10966          "enumerant" : "Vertical2Pixels",
10967          "value" : "0x0001",
10968          "capabilities" : [ "FragmentShadingRateKHR" ],
10969          "version" : "None"
10970        },
10971        {
10972          "enumerant" : "Vertical4Pixels",
10973          "value" : "0x0002",
10974          "capabilities" : [ "FragmentShadingRateKHR" ],
10975          "version" : "None"
10976        },
10977        {
10978          "enumerant" : "Horizontal2Pixels",
10979          "value" : "0x0004",
10980          "capabilities" : [ "FragmentShadingRateKHR" ],
10981          "version" : "None"
10982        },
10983        {
10984          "enumerant" : "Horizontal4Pixels",
10985          "value" : "0x0008",
10986          "capabilities" : [ "FragmentShadingRateKHR" ],
10987          "version" : "None"
10988        }
10989      ]
10990    },
10991    {
10992      "category" : "BitEnum",
10993      "kind" : "RawAccessChainOperands",
10994      "enumerants" : [
10995        {
10996          "enumerant" : "None",
10997          "value" : "0x0000"
10998        },
10999        {
11000          "enumerant" : "RobustnessPerComponentNV",
11001          "value" : "0x0001",
11002          "capabilities" : [ "RawAccessChainsNV" ],
11003          "version" : "None"
11004        },
11005        {
11006          "enumerant" : "RobustnessPerElementNV",
11007          "value" : "0x0002",
11008          "capabilities" : [ "RawAccessChainsNV" ],
11009          "version" : "None"
11010        }
11011      ]
11012    },
11013    {
11014      "category" : "ValueEnum",
11015      "kind" : "SourceLanguage",
11016      "enumerants" : [
11017        {
11018          "enumerant" : "Unknown",
11019          "value" : 0,
11020          "version" : "1.0"
11021        },
11022        {
11023          "enumerant" : "ESSL",
11024          "value" : 1,
11025          "version" : "1.0"
11026        },
11027        {
11028          "enumerant" : "GLSL",
11029          "value" : 2,
11030          "version" : "1.0"
11031        },
11032        {
11033          "enumerant" : "OpenCL_C",
11034          "value" : 3,
11035          "version" : "1.0"
11036        },
11037        {
11038          "enumerant" : "OpenCL_CPP",
11039          "value" : 4,
11040          "version" : "1.0"
11041        },
11042        {
11043          "enumerant" : "HLSL",
11044          "value" : 5,
11045          "version" : "1.0"
11046        },
11047        {
11048          "enumerant" : "CPP_for_OpenCL",
11049          "value" : 6,
11050          "version" : "1.0"
11051        },
11052        {
11053          "enumerant" : "SYCL",
11054          "value" : 7,
11055          "version" : "1.0"
11056        },
11057        {
11058          "enumerant" : "HERO_C",
11059          "value" : 8,
11060          "version" : "1.0"
11061        },
11062        {
11063          "enumerant" : "NZSL",
11064          "value" : 9,
11065          "version" : "1.0"
11066        },
11067        {
11068          "enumerant" : "WGSL",
11069          "value" : 10,
11070          "version" : "1.0"
11071        },
11072        {
11073          "enumerant" : "Slang",
11074          "value" : 11,
11075          "version" : "1.0"
11076        },
11077        {
11078          "enumerant" : "Zig",
11079          "value" : 12,
11080          "version" : "1.0"
11081        }
11082      ]
11083    },
11084    {
11085      "category" : "ValueEnum",
11086      "kind" : "ExecutionModel",
11087      "enumerants" : [
11088        {
11089          "enumerant" : "Vertex",
11090          "value" : 0,
11091          "capabilities" : [ "Shader" ],
11092          "version": "1.0"
11093        },
11094        {
11095          "enumerant" : "TessellationControl",
11096          "value" : 1,
11097          "capabilities" : [ "Tessellation" ],
11098          "version": "1.0"
11099        },
11100        {
11101          "enumerant" : "TessellationEvaluation",
11102          "value" : 2,
11103          "capabilities" : [ "Tessellation" ],
11104          "version": "1.0"
11105        },
11106        {
11107          "enumerant" : "Geometry",
11108          "value" : 3,
11109          "capabilities" : [ "Geometry" ],
11110          "version": "1.0"
11111        },
11112        {
11113          "enumerant" : "Fragment",
11114          "value" : 4,
11115          "capabilities" : [ "Shader" ],
11116          "version": "1.0"
11117        },
11118        {
11119          "enumerant" : "GLCompute",
11120          "value" : 5,
11121          "capabilities" : [ "Shader" ],
11122          "version": "1.0"
11123        },
11124        {
11125          "enumerant" : "Kernel",
11126          "value" : 6,
11127          "capabilities" : [ "Kernel" ],
11128          "version": "1.0"
11129        },
11130        {
11131          "enumerant" : "TaskNV",
11132          "value" : 5267,
11133          "capabilities" : [ "MeshShadingNV" ],
11134          "version" : "None"
11135        },
11136        {
11137          "enumerant" : "MeshNV",
11138          "value" : 5268,
11139          "capabilities" : [ "MeshShadingNV" ],
11140          "version" : "None"
11141        },
11142        {
11143          "enumerant" : "RayGenerationKHR",
11144          "aliases" : ["RayGenerationNV"],
11145          "value" : 5313,
11146          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11147          "version" : "None"
11148        },
11149        {
11150          "enumerant" : "IntersectionKHR",
11151          "aliases" : ["IntersectionNV"],
11152          "value" : 5314,
11153          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11154          "version" : "None"
11155        },
11156        {
11157          "enumerant" : "AnyHitKHR",
11158          "aliases" : ["AnyHitNV"],
11159          "value" : 5315,
11160          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11161          "version" : "None"
11162        },
11163        {
11164          "enumerant" : "ClosestHitKHR",
11165          "aliases" : ["ClosestHitNV"],
11166          "value" : 5316,
11167          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11168          "version" : "None"
11169        },
11170        {
11171          "enumerant" : "MissKHR",
11172          "aliases" : ["MissNV"],
11173          "value" : 5317,
11174          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11175          "version" : "None"
11176        },
11177        {
11178          "enumerant" : "CallableKHR",
11179          "aliases" : ["CallableNV"],
11180          "value" : 5318,
11181          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11182          "version" : "None"
11183        },
11184        {
11185          "enumerant" : "TaskEXT",
11186          "value" : 5364,
11187          "capabilities" : [ "MeshShadingEXT" ],
11188          "version" : "None"
11189        },
11190        {
11191          "enumerant" : "MeshEXT",
11192          "value" : 5365,
11193          "capabilities" : [ "MeshShadingEXT" ],
11194          "version" : "None"
11195        }
11196      ]
11197    },
11198    {
11199      "category" : "ValueEnum",
11200      "kind" : "AddressingModel",
11201      "enumerants" : [
11202        {
11203          "enumerant" : "Logical",
11204          "value" : 0,
11205          "version" : "1.0"
11206        },
11207        {
11208          "enumerant" : "Physical32",
11209          "value" : 1,
11210          "capabilities" : [ "Addresses" ],
11211          "version": "1.0"
11212        },
11213        {
11214          "enumerant" : "Physical64",
11215          "value" : 2,
11216          "capabilities" : [ "Addresses" ],
11217          "version": "1.0"
11218        },
11219        {
11220          "enumerant" : "PhysicalStorageBuffer64",
11221          "aliases" : ["PhysicalStorageBuffer64EXT"],
11222          "value" : 5348,
11223          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
11224          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11225          "version" : "1.5"
11226        }
11227      ]
11228    },
11229    {
11230      "category" : "ValueEnum",
11231      "kind" : "MemoryModel",
11232      "enumerants" : [
11233        {
11234          "enumerant" : "Simple",
11235          "value" : 0,
11236          "capabilities" : [ "Shader" ],
11237          "version": "1.0"
11238        },
11239        {
11240          "enumerant" : "GLSL450",
11241          "value" : 1,
11242          "capabilities" : [ "Shader" ],
11243          "version": "1.0"
11244        },
11245        {
11246          "enumerant" : "OpenCL",
11247          "value" : 2,
11248          "capabilities" : [ "Kernel" ],
11249          "version": "1.0"
11250        },
11251        {
11252          "enumerant" : "Vulkan",
11253          "aliases" : ["VulkanKHR"],
11254          "value" : 3,
11255          "capabilities" : [ "VulkanMemoryModel" ],
11256          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
11257          "version" : "1.5"
11258        }
11259      ]
11260    },
11261    {
11262      "category" : "ValueEnum",
11263      "kind" : "ExecutionMode",
11264      "enumerants" : [
11265        {
11266          "enumerant" : "Invocations",
11267          "value" : 0,
11268          "capabilities" : [ "Geometry" ],
11269          "parameters" : [
11270            { "kind" : "LiteralInteger", "name" : "'Number of <<Invocation,invocations>>'" }
11271          ],
11272          "version": "1.0"
11273        },
11274        {
11275          "enumerant" : "SpacingEqual",
11276          "value" : 1,
11277          "capabilities" : [ "Tessellation" ],
11278          "version": "1.0"
11279        },
11280        {
11281          "enumerant" : "SpacingFractionalEven",
11282          "value" : 2,
11283          "capabilities" : [ "Tessellation" ],
11284          "version": "1.0"
11285        },
11286        {
11287          "enumerant" : "SpacingFractionalOdd",
11288          "value" : 3,
11289          "capabilities" : [ "Tessellation" ],
11290          "version": "1.0"
11291        },
11292        {
11293          "enumerant" : "VertexOrderCw",
11294          "value" : 4,
11295          "capabilities" : [ "Tessellation" ],
11296          "version": "1.0"
11297        },
11298        {
11299          "enumerant" : "VertexOrderCcw",
11300          "value" : 5,
11301          "capabilities" : [ "Tessellation" ],
11302          "version": "1.0"
11303        },
11304        {
11305          "enumerant" : "PixelCenterInteger",
11306          "value" : 6,
11307          "capabilities" : [ "Shader" ],
11308          "version": "1.0"
11309        },
11310        {
11311          "enumerant" : "OriginUpperLeft",
11312          "value" : 7,
11313          "capabilities" : [ "Shader" ],
11314          "version": "1.0"
11315        },
11316        {
11317          "enumerant" : "OriginLowerLeft",
11318          "value" : 8,
11319          "capabilities" : [ "Shader" ],
11320          "version": "1.0"
11321        },
11322        {
11323          "enumerant" : "EarlyFragmentTests",
11324          "value" : 9,
11325          "capabilities" : [ "Shader" ],
11326          "version": "1.0"
11327        },
11328        {
11329          "enumerant" : "PointMode",
11330          "value" : 10,
11331          "capabilities" : [ "Tessellation" ],
11332          "version": "1.0"
11333        },
11334        {
11335          "enumerant" : "Xfb",
11336          "value" : 11,
11337          "capabilities" : [ "TransformFeedback" ],
11338          "version": "1.0"
11339        },
11340        {
11341          "enumerant" : "DepthReplacing",
11342          "value" : 12,
11343          "capabilities" : [ "Shader" ],
11344          "version": "1.0"
11345        },
11346        {
11347          "enumerant" : "DepthGreater",
11348          "value" : 14,
11349          "capabilities" : [ "Shader" ],
11350          "version": "1.0"
11351        },
11352        {
11353          "enumerant" : "DepthLess",
11354          "value" : 15,
11355          "capabilities" : [ "Shader" ],
11356          "version": "1.0"
11357        },
11358        {
11359          "enumerant" : "DepthUnchanged",
11360          "value" : 16,
11361          "capabilities" : [ "Shader" ],
11362          "version": "1.0"
11363        },
11364        {
11365          "enumerant" : "LocalSize",
11366          "value" : 17,
11367          "parameters" : [
11368            { "kind" : "LiteralInteger", "name" : "'x size'" },
11369            { "kind" : "LiteralInteger", "name" : "'y size'" },
11370            { "kind" : "LiteralInteger", "name" : "'z size'" }
11371          ],
11372          "version": "1.0"
11373        },
11374        {
11375          "enumerant" : "LocalSizeHint",
11376          "value" : 18,
11377          "capabilities" : [ "Kernel" ],
11378          "parameters" : [
11379            { "kind" : "LiteralInteger", "name" : "'x size'" },
11380            { "kind" : "LiteralInteger", "name" : "'y size'" },
11381            { "kind" : "LiteralInteger", "name" : "'z size'" }
11382          ],
11383          "version": "1.0"
11384        },
11385        {
11386          "enumerant" : "InputPoints",
11387          "value" : 19,
11388          "capabilities" : [ "Geometry" ],
11389          "version": "1.0"
11390        },
11391        {
11392          "enumerant" : "InputLines",
11393          "value" : 20,
11394          "capabilities" : [ "Geometry" ],
11395          "version": "1.0"
11396        },
11397        {
11398          "enumerant" : "InputLinesAdjacency",
11399          "value" : 21,
11400          "capabilities" : [ "Geometry" ],
11401          "version": "1.0"
11402        },
11403        {
11404          "enumerant" : "Triangles",
11405          "value" : 22,
11406          "capabilities" : [ "Geometry", "Tessellation" ],
11407          "version": "1.0"
11408        },
11409        {
11410          "enumerant" : "InputTrianglesAdjacency",
11411          "value" : 23,
11412          "capabilities" : [ "Geometry" ],
11413          "version": "1.0"
11414        },
11415        {
11416          "enumerant" : "Quads",
11417          "value" : 24,
11418          "capabilities" : [ "Tessellation" ],
11419          "version": "1.0"
11420        },
11421        {
11422          "enumerant" : "Isolines",
11423          "value" : 25,
11424          "capabilities" : [ "Tessellation" ],
11425          "version": "1.0"
11426        },
11427        {
11428          "enumerant" : "OutputVertices",
11429          "value" : 26,
11430          "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV", "MeshShadingEXT" ],
11431          "parameters" : [
11432            { "kind" : "LiteralInteger", "name" : "'Vertex count'" }
11433          ],
11434          "version": "1.0"
11435        },
11436        {
11437          "enumerant" : "OutputPoints",
11438          "value" : 27,
11439          "capabilities" : [ "Geometry", "MeshShadingNV", "MeshShadingEXT" ],
11440          "version": "1.0"
11441        },
11442        {
11443          "enumerant" : "OutputLineStrip",
11444          "value" : 28,
11445          "capabilities" : [ "Geometry" ],
11446          "version": "1.0"
11447        },
11448        {
11449          "enumerant" : "OutputTriangleStrip",
11450          "value" : 29,
11451          "capabilities" : [ "Geometry" ],
11452          "version": "1.0"
11453        },
11454        {
11455          "enumerant" : "VecTypeHint",
11456          "value" : 30,
11457          "capabilities" : [ "Kernel" ],
11458          "parameters" : [
11459            { "kind" : "LiteralInteger", "name" : "'Vector type'" }
11460          ],
11461          "version": "1.0"
11462        },
11463        {
11464          "enumerant" : "ContractionOff",
11465          "value" : 31,
11466          "capabilities" : [ "Kernel" ],
11467          "version": "1.0"
11468        },
11469        {
11470          "enumerant" : "Initializer",
11471          "value" : 33,
11472          "capabilities" : [ "Kernel" ],
11473          "version" : "1.1"
11474        },
11475        {
11476          "enumerant" : "Finalizer",
11477          "value" : 34,
11478          "capabilities" : [ "Kernel" ],
11479          "version" : "1.1"
11480        },
11481        {
11482          "enumerant" : "SubgroupSize",
11483          "value" : 35,
11484          "capabilities" : [ "SubgroupDispatch" ],
11485          "parameters" : [
11486            { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
11487          ],
11488          "version" : "1.1"
11489        },
11490        {
11491          "enumerant" : "SubgroupsPerWorkgroup",
11492          "value" : 36,
11493          "capabilities" : [ "SubgroupDispatch" ],
11494          "parameters" : [
11495            { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
11496          ],
11497          "version" : "1.1"
11498        },
11499        {
11500          "enumerant" : "SubgroupsPerWorkgroupId",
11501          "value" : 37,
11502          "capabilities" : [ "SubgroupDispatch" ],
11503          "parameters" : [
11504            { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
11505          ],
11506          "version" : "1.2"
11507        },
11508        {
11509          "enumerant" : "LocalSizeId",
11510          "value" : 38,
11511          "parameters" : [
11512            { "kind" : "IdRef", "name" : "'x size'" },
11513            { "kind" : "IdRef", "name" : "'y size'" },
11514            { "kind" : "IdRef", "name" : "'z size'" }
11515          ],
11516          "version" : "1.2"
11517        },
11518        {
11519          "enumerant" : "LocalSizeHintId",
11520          "value" : 39,
11521          "capabilities" : [ "Kernel" ],
11522          "parameters" : [
11523            { "kind" : "IdRef", "name" : "'x size hint'" },
11524            { "kind" : "IdRef", "name" : "'y size hint'" },
11525            { "kind" : "IdRef", "name" : "'z size hint'" }
11526          ],
11527          "version" : "1.2"
11528        },
11529        {
11530          "enumerant" : "NonCoherentColorAttachmentReadEXT",
11531          "value" : 4169,
11532          "capabilities" : [ "TileImageColorReadAccessEXT" ],
11533          "version" : "None"
11534        },
11535        {
11536          "enumerant" : "NonCoherentDepthAttachmentReadEXT",
11537          "value" : 4170,
11538          "capabilities" : [ "TileImageDepthReadAccessEXT" ],
11539          "version" : "None"
11540        },
11541        {
11542          "enumerant" : "NonCoherentStencilAttachmentReadEXT",
11543          "value" : 4171,
11544          "capabilities" : [ "TileImageStencilReadAccessEXT" ],
11545          "version" : "None"
11546        },
11547        {
11548          "enumerant" : "SubgroupUniformControlFlowKHR",
11549          "value" : 4421,
11550          "capabilities" : [ "Shader" ],
11551          "extensions" : [ "SPV_KHR_subgroup_uniform_control_flow" ],
11552          "version" : "None"
11553        },
11554        {
11555          "enumerant" : "PostDepthCoverage",
11556          "value" : 4446,
11557          "capabilities" : [ "SampleMaskPostDepthCoverage" ],
11558          "extensions" : [ "SPV_KHR_post_depth_coverage" ],
11559          "version" : "None"
11560        },
11561        {
11562          "enumerant" : "DenormPreserve",
11563          "value" : 4459,
11564          "capabilities" : [ "DenormPreserve" ],
11565          "extensions" : [ "SPV_KHR_float_controls" ],
11566          "parameters" : [
11567            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11568          ],
11569          "version" : "1.4"
11570        },
11571        {
11572          "enumerant" : "DenormFlushToZero",
11573          "value" : 4460,
11574          "capabilities" : [ "DenormFlushToZero" ],
11575          "extensions" : [ "SPV_KHR_float_controls" ],
11576          "parameters" : [
11577            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11578          ],
11579          "version" : "1.4"
11580        },
11581        {
11582          "enumerant" : "SignedZeroInfNanPreserve",
11583          "value" : 4461,
11584          "capabilities" : [ "SignedZeroInfNanPreserve" ],
11585          "extensions" : [ "SPV_KHR_float_controls" ],
11586          "parameters" : [
11587            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11588          ],
11589          "version" : "1.4"
11590        },
11591        {
11592          "enumerant" : "RoundingModeRTE",
11593          "value" : 4462,
11594          "capabilities" : [ "RoundingModeRTE" ],
11595          "extensions" : [ "SPV_KHR_float_controls" ],
11596          "parameters" : [
11597            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11598          ],
11599          "version" : "1.4"
11600        },
11601        {
11602          "enumerant" : "RoundingModeRTZ",
11603          "value" : 4463,
11604          "capabilities" : [ "RoundingModeRTZ" ],
11605          "extensions" : [ "SPV_KHR_float_controls" ],
11606          "parameters" : [
11607            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11608          ],
11609          "version" : "1.4"
11610        },
11611        {
11612          "enumerant": "EarlyAndLateFragmentTestsAMD",
11613          "value": 5017,
11614          "capabilities": [ "Shader" ],
11615          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests" ],
11616          "version": "None"
11617        },
11618        {
11619          "enumerant" : "StencilRefReplacingEXT",
11620          "value" : 5027,
11621          "capabilities" : [ "StencilExportEXT" ],
11622          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
11623          "version" : "None"
11624        },
11625        {
11626          "enumerant" : "CoalescingAMDX",
11627          "value" : 5069,
11628          "capabilities" : [ "ShaderEnqueueAMDX" ],
11629          "provisional" : true,
11630          "version" : "None"
11631        },
11632        {
11633          "enumerant" : "IsApiEntryAMDX",
11634          "value" : 5070,
11635          "capabilities" : [ "ShaderEnqueueAMDX" ],
11636          "parameters" : [
11637            { "kind" : "IdRef", "name" : "'Is Entry'" }
11638          ],
11639          "provisional" : true,
11640          "version" : "None"
11641        },
11642        {
11643          "enumerant" : "MaxNodeRecursionAMDX",
11644          "value" : 5071,
11645          "capabilities" : [ "ShaderEnqueueAMDX" ],
11646          "parameters" : [
11647            { "kind" : "IdRef", "name" : "'Number of recursions'" }
11648          ],
11649          "provisional" : true,
11650          "version" : "None"
11651        },
11652        {
11653          "enumerant" : "StaticNumWorkgroupsAMDX",
11654          "value" : 5072,
11655          "capabilities" : [ "ShaderEnqueueAMDX" ],
11656          "parameters" : [
11657            { "kind" : "IdRef", "name" : "'x size'" },
11658            { "kind" : "IdRef", "name" : "'y size'" },
11659            { "kind" : "IdRef", "name" : "'z size'" }
11660          ],
11661          "provisional" : true,
11662          "version" : "None"
11663        },
11664        {
11665          "enumerant" : "ShaderIndexAMDX",
11666          "value" : 5073,
11667          "capabilities" : [ "ShaderEnqueueAMDX" ],
11668          "parameters" : [
11669            { "kind" : "IdRef", "name" : "'Shader Index'" }
11670          ],
11671          "provisional" : true,
11672          "version" : "None"
11673        },
11674        {
11675          "enumerant" : "MaxNumWorkgroupsAMDX",
11676          "value" : 5077,
11677          "capabilities" : [ "ShaderEnqueueAMDX" ],
11678          "parameters" : [
11679            { "kind" : "IdRef", "name" : "'x size'" },
11680            { "kind" : "IdRef", "name" : "'y size'" },
11681            { "kind" : "IdRef", "name" : "'z size'" }
11682          ],
11683          "provisional" : true,
11684          "version" : "None"
11685        },
11686        {
11687          "enumerant": "StencilRefUnchangedFrontAMD",
11688          "value": 5079,
11689          "capabilities": [ "StencilExportEXT" ],
11690          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
11691          "version": "None"
11692        },
11693        {
11694          "enumerant": "StencilRefGreaterFrontAMD",
11695          "value": 5080,
11696          "capabilities": [ "StencilExportEXT" ],
11697          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
11698          "version": "None"
11699        },
11700        {
11701          "enumerant": "StencilRefLessFrontAMD",
11702          "value": 5081,
11703          "capabilities": [ "StencilExportEXT" ],
11704          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
11705          "version": "None"
11706        },
11707        {
11708          "enumerant": "StencilRefUnchangedBackAMD",
11709          "value": 5082,
11710          "capabilities": [ "StencilExportEXT" ],
11711          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
11712          "version": "None"
11713        },
11714        {
11715          "enumerant": "StencilRefGreaterBackAMD",
11716          "value": 5083,
11717          "capabilities": [ "StencilExportEXT" ],
11718          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
11719          "version": "None"
11720        },
11721        {
11722          "enumerant": "StencilRefLessBackAMD",
11723          "value": 5084,
11724          "capabilities": [ "StencilExportEXT" ],
11725          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
11726          "version": "None"
11727        },
11728        {
11729          "enumerant": "QuadDerivativesKHR",
11730          "value": 5088,
11731          "capabilities": [ "QuadControlKHR" ],
11732          "version": "None"
11733        },
11734        {
11735          "enumerant" : "RequireFullQuadsKHR",
11736          "value" : 5089,
11737          "capabilities" : [ "QuadControlKHR" ],
11738          "version" : "None"
11739        },
11740        {
11741          "enumerant" : "SharesInputWithAMDX",
11742          "value" : 5102,
11743          "capabilities" : [ "ShaderEnqueueAMDX" ],
11744          "parameters" : [
11745            { "kind" : "IdRef", "name" : "'Node Name'" },
11746            { "kind" : "IdRef", "name" : "'Shader Index'" }
11747          ],
11748          "provisional" : true,
11749          "version" : "None"
11750        },
11751        {
11752          "enumerant" : "OutputLinesEXT",
11753          "aliases" : ["OutputLinesNV"],
11754          "value" : 5269,
11755          "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ],
11756          "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ],
11757          "version" : "None"
11758        },
11759        {
11760          "enumerant" : "OutputPrimitivesEXT",
11761          "aliases" : ["OutputPrimitivesNV"],
11762          "value" : 5270,
11763          "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ],
11764          "parameters" : [
11765            { "kind" : "LiteralInteger", "name" : "'Primitive count'" }
11766          ],
11767          "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ],
11768          "version" : "None"
11769        },
11770        {
11771          "enumerant" : "DerivativeGroupQuadsKHR",
11772          "aliases" : ["DerivativeGroupQuadsNV"],
11773          "value" : 5289,
11774          "capabilities" : [ "ComputeDerivativeGroupQuadsNV", "ComputeDerivativeGroupQuadsKHR" ],
11775          "extensions" : [ "SPV_NV_compute_shader_derivatives", "SPV_KHR_compute_shader_derivatives" ],
11776          "version" : "None"
11777        },
11778        {
11779          "enumerant" : "DerivativeGroupLinearKHR",
11780          "aliases" : ["DerivativeGroupLinearNV"],
11781          "value" : 5290,
11782          "capabilities" : [ "ComputeDerivativeGroupLinearNV", "ComputeDerivativeGroupLinearKHR" ],
11783          "extensions" : [ "SPV_NV_compute_shader_derivatives", "SPV_KHR_compute_shader_derivatives" ],
11784          "version" : "None"
11785        },
11786        {
11787          "enumerant" : "OutputTrianglesEXT",
11788          "aliases" : ["OutputTrianglesNV"],
11789          "value" : 5298,
11790          "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ],
11791          "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ],
11792          "version" : "None"
11793        },
11794        {
11795          "enumerant" : "PixelInterlockOrderedEXT",
11796          "value" : 5366,
11797          "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
11798          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11799          "version" : "None"
11800        },
11801        {
11802          "enumerant" : "PixelInterlockUnorderedEXT",
11803          "value" : 5367,
11804          "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
11805          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11806          "version" : "None"
11807        },
11808        {
11809          "enumerant" : "SampleInterlockOrderedEXT",
11810          "value" : 5368,
11811          "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
11812          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11813          "version" : "None"
11814        },
11815        {
11816          "enumerant" : "SampleInterlockUnorderedEXT",
11817          "value" : 5369,
11818          "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
11819          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11820          "version" : "None"
11821        },
11822        {
11823          "enumerant" : "ShadingRateInterlockOrderedEXT",
11824          "value" : 5370,
11825          "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
11826          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11827          "version" : "None"
11828        },
11829        {
11830          "enumerant" : "ShadingRateInterlockUnorderedEXT",
11831          "value" : 5371,
11832          "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
11833          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11834          "version" : "None"
11835        },
11836        {
11837          "enumerant" : "SharedLocalMemorySizeINTEL",
11838          "value" : 5618,
11839          "parameters" : [
11840            { "kind" : "LiteralInteger", "name" : "'Size'" }
11841          ],
11842          "capabilities" : [ "VectorComputeINTEL" ],
11843          "version" : "None"
11844        },
11845        {
11846          "enumerant" : "RoundingModeRTPINTEL",
11847          "value" : 5620,
11848          "parameters" : [
11849            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11850          ],
11851          "capabilities" : [ "RoundToInfinityINTEL" ],
11852          "version" : "None"
11853        },
11854        {
11855          "enumerant" : "RoundingModeRTNINTEL",
11856          "value" : 5621,
11857          "parameters" : [
11858            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11859          ],
11860          "capabilities" : [ "RoundToInfinityINTEL" ],
11861          "version" : "None"
11862        },
11863        {
11864          "enumerant" : "FloatingPointModeALTINTEL",
11865          "value" : 5622,
11866          "parameters" : [
11867            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11868          ],
11869          "capabilities" : [ "RoundToInfinityINTEL" ],
11870          "version" : "None"
11871        },
11872        {
11873          "enumerant" : "FloatingPointModeIEEEINTEL",
11874          "value" : 5623,
11875          "parameters" : [
11876            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
11877          ],
11878          "capabilities" : [ "RoundToInfinityINTEL" ],
11879          "version" : "None"
11880        },
11881        {
11882          "enumerant" : "MaxWorkgroupSizeINTEL",
11883          "value" : 5893,
11884          "parameters" : [
11885            { "kind" : "LiteralInteger", "name" : "'max_x_size'" },
11886            { "kind" : "LiteralInteger", "name" : "'max_y_size'" },
11887            { "kind" : "LiteralInteger", "name" : "'max_z_size'" }
11888          ],
11889          "capabilities" : [ "KernelAttributesINTEL" ],
11890          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
11891          "version" : "None"
11892        },
11893        {
11894          "enumerant" : "MaxWorkDimINTEL",
11895          "value" : 5894,
11896          "parameters" : [
11897            { "kind" : "LiteralInteger", "name" : "'max_dimensions'" }
11898          ],
11899          "capabilities" : [ "KernelAttributesINTEL" ],
11900          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
11901          "version" : "None"
11902        },
11903        {
11904          "enumerant" : "NoGlobalOffsetINTEL",
11905          "value" : 5895,
11906          "capabilities" : [ "KernelAttributesINTEL" ],
11907          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
11908          "version" : "None"
11909        },
11910        {
11911          "enumerant" : "NumSIMDWorkitemsINTEL",
11912          "value" : 5896,
11913          "parameters" : [
11914            { "kind" : "LiteralInteger", "name" : "'vector_width'" }
11915          ],
11916          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
11917          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
11918          "version" : "None"
11919        },
11920        {
11921          "enumerant" : "SchedulerTargetFmaxMhzINTEL",
11922          "value" : 5903,
11923          "parameters" : [
11924            { "kind" : "LiteralInteger", "name" : "'target_fmax'" }
11925          ],
11926          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
11927          "version" : "None"
11928        },
11929        {
11930          "enumerant" : "MaximallyReconvergesKHR",
11931          "value" : 6023,
11932          "capabilities" : [ "Shader" ],
11933          "extensions" : [ "SPV_KHR_maximal_reconvergence" ],
11934          "version" : "None"
11935	},
11936	{
11937          "enumerant" : "FPFastMathDefault",
11938          "value" : 6028,
11939          "parameters" : [
11940            { "kind" : "IdRef", "name" : "'Target Type'" },
11941            { "kind" : "IdRef", "name" : "'Fast-Math Mode'" }
11942	        ],
11943          "capabilities" : [ "FloatControls2" ],
11944          "version" : "None"
11945	},
11946	{
11947          "enumerant" : "StreamingInterfaceINTEL",
11948          "value" : 6154,
11949          "parameters" : [
11950            { "kind" : "LiteralInteger", "name" : "'StallFreeReturn'" }
11951          ],
11952          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
11953          "version" : "None"
11954        },
11955        {
11956          "enumerant" : "RegisterMapInterfaceINTEL",
11957          "value" : 6160,
11958          "parameters" : [
11959            { "kind" : "LiteralInteger", "name" : "'WaitForDoneWrite'" }
11960          ],
11961          "capabilities" : [ "FPGAKernelAttributesv2INTEL" ],
11962          "version" : "None"
11963        },
11964        {
11965          "enumerant" : "NamedBarrierCountINTEL",
11966          "value" : 6417,
11967          "parameters" : [
11968            { "kind" : "LiteralInteger", "name" : "'Barrier Count'" }
11969          ],
11970          "capabilities" : [ "VectorComputeINTEL" ],
11971          "version" : "None"
11972        },
11973        {
11974          "enumerant" : "MaximumRegistersINTEL",
11975          "value" : 6461,
11976          "parameters" : [
11977            { "kind" : "LiteralInteger", "name" : "'Number of Registers'" }
11978          ],
11979          "capabilities" : [ "RegisterLimitsINTEL" ],
11980          "version" : "None"
11981        },
11982        {
11983          "enumerant" : "MaximumRegistersIdINTEL",
11984          "value" : 6462,
11985          "parameters" : [
11986            { "kind" : "IdRef", "name" : "'Number of Registers'" }
11987          ],
11988          "capabilities" : [ "RegisterLimitsINTEL" ],
11989          "version" : "None"
11990        },
11991        {
11992          "enumerant" : "NamedMaximumRegistersINTEL",
11993          "value" : 6463,
11994          "parameters" : [
11995            { "kind" : "NamedMaximumNumberOfRegisters", "name" : "'Named Maximum Number of Registers'" }
11996          ],
11997          "capabilities" : [ "RegisterLimitsINTEL" ],
11998          "version" : "None"
11999        }
12000      ]
12001    },
12002    {
12003      "category" : "ValueEnum",
12004      "kind" : "StorageClass",
12005      "enumerants" : [
12006        {
12007          "enumerant" : "UniformConstant",
12008          "value" : 0,
12009          "version" : "1.0"
12010        },
12011        {
12012          "enumerant" : "Input",
12013          "value" : 1,
12014          "version" : "1.0"
12015        },
12016        {
12017          "enumerant" : "Uniform",
12018          "value" : 2,
12019          "capabilities" : [ "Shader" ],
12020          "version": "1.0"
12021        },
12022        {
12023          "enumerant" : "Output",
12024          "value" : 3,
12025          "capabilities" : [ "Shader" ],
12026          "version": "1.0"
12027        },
12028        {
12029          "enumerant" : "Workgroup",
12030          "value" : 4,
12031          "version" : "1.0"
12032        },
12033        {
12034          "enumerant" : "CrossWorkgroup",
12035          "value" : 5,
12036          "version" : "1.0"
12037        },
12038        {
12039          "enumerant" : "Private",
12040          "value" : 6,
12041          "capabilities" : [ "Shader", "VectorComputeINTEL" ],
12042          "version": "1.0"
12043        },
12044        {
12045          "enumerant" : "Function",
12046          "value" : 7,
12047          "version" : "1.0"
12048        },
12049        {
12050          "enumerant" : "Generic",
12051          "value" : 8,
12052          "capabilities" : [ "GenericPointer" ],
12053          "version": "1.0"
12054        },
12055        {
12056          "enumerant" : "PushConstant",
12057          "value" : 9,
12058          "capabilities" : [ "Shader" ],
12059          "version": "1.0"
12060        },
12061        {
12062          "enumerant" : "AtomicCounter",
12063          "value" : 10,
12064          "capabilities" : [ "AtomicStorage" ],
12065          "version": "1.0"
12066        },
12067        {
12068          "enumerant" : "Image",
12069          "value" : 11,
12070          "version" : "1.0"
12071        },
12072        {
12073          "enumerant" : "StorageBuffer",
12074          "value" : 12,
12075          "extensions" : [
12076            "SPV_KHR_storage_buffer_storage_class",
12077            "SPV_KHR_variable_pointers"
12078          ],
12079          "capabilities" : [ "Shader" ],
12080          "version" : "1.3"
12081        },
12082        {
12083          "enumerant" : "TileImageEXT",
12084          "value" : 4172,
12085          "capabilities" : [ "TileImageColorReadAccessEXT" ],
12086          "version" : "None"
12087        },
12088        {
12089          "enumerant" : "NodePayloadAMDX",
12090          "value" : 5068,
12091          "capabilities" : [ "ShaderEnqueueAMDX" ],
12092          "provisional" : true,
12093          "version" : "None"
12094        },
12095        {
12096          "enumerant" : "CallableDataKHR",
12097          "aliases" : ["CallableDataNV"],
12098          "value" : 5328,
12099          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12100          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12101          "version" : "None"
12102        },
12103        {
12104          "enumerant" : "IncomingCallableDataKHR",
12105          "aliases" : ["IncomingCallableDataNV"],
12106          "value" : 5329,
12107          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12108          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12109          "version" : "None"
12110        },
12111        {
12112          "enumerant" : "RayPayloadKHR",
12113          "aliases" : ["RayPayloadNV"],
12114          "value" : 5338,
12115          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12116          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12117          "version" : "None"
12118        },
12119        {
12120          "enumerant" : "HitAttributeKHR",
12121          "aliases" : ["HitAttributeNV"],
12122          "value" : 5339,
12123          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12124          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12125          "version" : "None"
12126        },
12127        {
12128          "enumerant" : "IncomingRayPayloadKHR",
12129          "aliases" : ["IncomingRayPayloadNV"],
12130          "value" : 5342,
12131          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12132          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12133          "version" : "None"
12134        },
12135        {
12136          "enumerant" : "ShaderRecordBufferKHR",
12137          "aliases" : ["ShaderRecordBufferNV"],
12138          "value" : 5343,
12139          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12140          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12141          "version" : "None"
12142        },
12143        {
12144          "enumerant" : "PhysicalStorageBuffer",
12145          "aliases" : ["PhysicalStorageBufferEXT"],
12146          "value" : 5349,
12147          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
12148          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
12149          "version" : "1.5"
12150        },
12151        {
12152          "enumerant" : "HitObjectAttributeNV",
12153          "value" : 5385,
12154          "capabilities" : [ "ShaderInvocationReorderNV" ],
12155          "version" : "None"
12156        },
12157        {
12158          "enumerant" : "TaskPayloadWorkgroupEXT",
12159          "value" : 5402,
12160          "extensions" : [ "SPV_EXT_mesh_shader" ],
12161          "capabilities" : [ "MeshShadingEXT" ],
12162          "version" : "1.4"
12163        },
12164        {
12165          "enumerant" : "CodeSectionINTEL",
12166          "value" : 5605,
12167          "extensions" : [ "SPV_INTEL_function_pointers" ],
12168          "capabilities" : [ "FunctionPointersINTEL" ],
12169          "version" : "None"
12170        },
12171        {
12172          "enumerant" : "DeviceOnlyINTEL",
12173          "value" : 5936,
12174          "extensions" : [
12175            "SPV_INTEL_usm_storage_classes"
12176          ],
12177          "capabilities" : [ "USMStorageClassesINTEL" ],
12178          "version" : "None"
12179        },
12180        {
12181          "enumerant" : "HostOnlyINTEL",
12182          "value" : 5937,
12183          "extensions" : [
12184            "SPV_INTEL_usm_storage_classes"
12185          ],
12186          "capabilities" : [ "USMStorageClassesINTEL" ],
12187          "version" : "None"
12188        }
12189      ]
12190    },
12191    {
12192      "category" : "ValueEnum",
12193      "kind" : "Dim",
12194      "enumerants" : [
12195        {
12196          "enumerant" : "1D",
12197          "value" : 0,
12198          "capabilities" : [ "Sampled1D" ],
12199          "version": "1.0"
12200        },
12201        {
12202          "enumerant" : "2D",
12203          "value" : 1,
12204          "version" : "1.0"
12205        },
12206        {
12207          "enumerant" : "3D",
12208          "value" : 2,
12209          "version" : "1.0"
12210        },
12211        {
12212          "enumerant" : "Cube",
12213          "value" : 3,
12214          "capabilities" : [ "Shader" ],
12215          "version": "1.0"
12216        },
12217        {
12218          "enumerant" : "Rect",
12219          "value" : 4,
12220          "capabilities" : [ "SampledRect" ],
12221          "version": "1.0"
12222        },
12223        {
12224          "enumerant" : "Buffer",
12225          "value" : 5,
12226          "capabilities" : [ "SampledBuffer" ],
12227          "version": "1.0"
12228        },
12229        {
12230          "enumerant" : "SubpassData",
12231          "value" : 6,
12232          "capabilities" : [ "InputAttachment" ],
12233          "version": "1.0"
12234        },
12235        {
12236          "enumerant" : "TileImageDataEXT",
12237          "value" : 4173,
12238          "capabilities" : [ "TileImageColorReadAccessEXT" ],
12239          "version" : "None"
12240        }
12241      ]
12242    },
12243    {
12244      "category" : "ValueEnum",
12245      "kind" : "SamplerAddressingMode",
12246      "enumerants" : [
12247        {
12248          "enumerant" : "None",
12249          "value" : 0,
12250          "version": "1.0"
12251        },
12252        {
12253          "enumerant" : "ClampToEdge",
12254          "value" : 1,
12255          "version": "1.0"
12256        },
12257        {
12258          "enumerant" : "Clamp",
12259          "value" : 2,
12260          "version": "1.0"
12261        },
12262        {
12263          "enumerant" : "Repeat",
12264          "value" : 3,
12265          "version": "1.0"
12266        },
12267        {
12268          "enumerant" : "RepeatMirrored",
12269          "value" : 4,
12270          "version": "1.0"
12271        }
12272      ]
12273    },
12274    {
12275      "category" : "ValueEnum",
12276      "kind" : "SamplerFilterMode",
12277      "enumerants" : [
12278        {
12279          "enumerant" : "Nearest",
12280          "value" : 0,
12281          "version": "1.0"
12282        },
12283        {
12284          "enumerant" : "Linear",
12285          "value" : 1,
12286          "version": "1.0"
12287        }
12288      ]
12289    },
12290    {
12291      "category" : "ValueEnum",
12292      "kind" : "ImageFormat",
12293      "enumerants" : [
12294        {
12295          "enumerant" : "Unknown",
12296          "value" : 0,
12297          "version" : "1.0"
12298        },
12299        {
12300          "enumerant" : "Rgba32f",
12301          "value" : 1,
12302          "capabilities" : [ "Shader" ],
12303          "version": "1.0"
12304        },
12305        {
12306          "enumerant" : "Rgba16f",
12307          "value" : 2,
12308          "capabilities" : [ "Shader" ],
12309          "version": "1.0"
12310        },
12311        {
12312          "enumerant" : "R32f",
12313          "value" : 3,
12314          "capabilities" : [ "Shader" ],
12315          "version": "1.0"
12316        },
12317        {
12318          "enumerant" : "Rgba8",
12319          "value" : 4,
12320          "capabilities" : [ "Shader" ],
12321          "version": "1.0"
12322        },
12323        {
12324          "enumerant" : "Rgba8Snorm",
12325          "value" : 5,
12326          "capabilities" : [ "Shader" ],
12327          "version": "1.0"
12328        },
12329        {
12330          "enumerant" : "Rg32f",
12331          "value" : 6,
12332          "capabilities" : [ "StorageImageExtendedFormats" ],
12333          "version": "1.0"
12334        },
12335        {
12336          "enumerant" : "Rg16f",
12337          "value" : 7,
12338          "capabilities" : [ "StorageImageExtendedFormats" ],
12339          "version": "1.0"
12340        },
12341        {
12342          "enumerant" : "R11fG11fB10f",
12343          "value" : 8,
12344          "capabilities" : [ "StorageImageExtendedFormats" ],
12345          "version": "1.0"
12346        },
12347        {
12348          "enumerant" : "R16f",
12349          "value" : 9,
12350          "capabilities" : [ "StorageImageExtendedFormats" ],
12351          "version": "1.0"
12352        },
12353        {
12354          "enumerant" : "Rgba16",
12355          "value" : 10,
12356          "capabilities" : [ "StorageImageExtendedFormats" ],
12357          "version": "1.0"
12358        },
12359        {
12360          "enumerant" : "Rgb10A2",
12361          "value" : 11,
12362          "capabilities" : [ "StorageImageExtendedFormats" ],
12363          "version": "1.0"
12364        },
12365        {
12366          "enumerant" : "Rg16",
12367          "value" : 12,
12368          "capabilities" : [ "StorageImageExtendedFormats" ],
12369          "version": "1.0"
12370        },
12371        {
12372          "enumerant" : "Rg8",
12373          "value" : 13,
12374          "capabilities" : [ "StorageImageExtendedFormats" ],
12375          "version": "1.0"
12376        },
12377        {
12378          "enumerant" : "R16",
12379          "value" : 14,
12380          "capabilities" : [ "StorageImageExtendedFormats" ],
12381          "version": "1.0"
12382        },
12383        {
12384          "enumerant" : "R8",
12385          "value" : 15,
12386          "capabilities" : [ "StorageImageExtendedFormats" ],
12387          "version": "1.0"
12388        },
12389        {
12390          "enumerant" : "Rgba16Snorm",
12391          "value" : 16,
12392          "capabilities" : [ "StorageImageExtendedFormats" ],
12393          "version": "1.0"
12394        },
12395        {
12396          "enumerant" : "Rg16Snorm",
12397          "value" : 17,
12398          "capabilities" : [ "StorageImageExtendedFormats" ],
12399          "version": "1.0"
12400        },
12401        {
12402          "enumerant" : "Rg8Snorm",
12403          "value" : 18,
12404          "capabilities" : [ "StorageImageExtendedFormats" ],
12405          "version": "1.0"
12406        },
12407        {
12408          "enumerant" : "R16Snorm",
12409          "value" : 19,
12410          "capabilities" : [ "StorageImageExtendedFormats" ],
12411          "version": "1.0"
12412        },
12413        {
12414          "enumerant" : "R8Snorm",
12415          "value" : 20,
12416          "capabilities" : [ "StorageImageExtendedFormats" ],
12417          "version": "1.0"
12418        },
12419        {
12420          "enumerant" : "Rgba32i",
12421          "value" : 21,
12422          "capabilities" : [ "Shader" ],
12423          "version": "1.0"
12424        },
12425        {
12426          "enumerant" : "Rgba16i",
12427          "value" : 22,
12428          "capabilities" : [ "Shader" ],
12429          "version": "1.0"
12430        },
12431        {
12432          "enumerant" : "Rgba8i",
12433          "value" : 23,
12434          "capabilities" : [ "Shader" ],
12435          "version": "1.0"
12436        },
12437        {
12438          "enumerant" : "R32i",
12439          "value" : 24,
12440          "capabilities" : [ "Shader" ],
12441          "version": "1.0"
12442        },
12443        {
12444          "enumerant" : "Rg32i",
12445          "value" : 25,
12446          "capabilities" : [ "StorageImageExtendedFormats" ],
12447          "version": "1.0"
12448        },
12449        {
12450          "enumerant" : "Rg16i",
12451          "value" : 26,
12452          "capabilities" : [ "StorageImageExtendedFormats" ],
12453          "version": "1.0"
12454        },
12455        {
12456          "enumerant" : "Rg8i",
12457          "value" : 27,
12458          "capabilities" : [ "StorageImageExtendedFormats" ],
12459          "version": "1.0"
12460        },
12461        {
12462          "enumerant" : "R16i",
12463          "value" : 28,
12464          "capabilities" : [ "StorageImageExtendedFormats" ],
12465          "version": "1.0"
12466        },
12467        {
12468          "enumerant" : "R8i",
12469          "value" : 29,
12470          "capabilities" : [ "StorageImageExtendedFormats" ],
12471          "version": "1.0"
12472        },
12473        {
12474          "enumerant" : "Rgba32ui",
12475          "value" : 30,
12476          "capabilities" : [ "Shader" ],
12477          "version": "1.0"
12478        },
12479        {
12480          "enumerant" : "Rgba16ui",
12481          "value" : 31,
12482          "capabilities" : [ "Shader" ],
12483          "version": "1.0"
12484        },
12485        {
12486          "enumerant" : "Rgba8ui",
12487          "value" : 32,
12488          "capabilities" : [ "Shader" ],
12489          "version": "1.0"
12490        },
12491        {
12492          "enumerant" : "R32ui",
12493          "value" : 33,
12494          "capabilities" : [ "Shader" ],
12495          "version": "1.0"
12496        },
12497        {
12498          "enumerant" : "Rgb10a2ui",
12499          "value" : 34,
12500          "capabilities" : [ "StorageImageExtendedFormats" ],
12501          "version": "1.0"
12502        },
12503        {
12504          "enumerant" : "Rg32ui",
12505          "value" : 35,
12506          "capabilities" : [ "StorageImageExtendedFormats" ],
12507          "version": "1.0"
12508        },
12509        {
12510          "enumerant" : "Rg16ui",
12511          "value" : 36,
12512          "capabilities" : [ "StorageImageExtendedFormats" ],
12513          "version": "1.0"
12514        },
12515        {
12516          "enumerant" : "Rg8ui",
12517          "value" : 37,
12518          "capabilities" : [ "StorageImageExtendedFormats" ],
12519          "version": "1.0"
12520        },
12521        {
12522          "enumerant" : "R16ui",
12523          "value" : 38,
12524          "capabilities" : [ "StorageImageExtendedFormats" ],
12525          "version": "1.0"
12526        },
12527        {
12528          "enumerant" : "R8ui",
12529          "value" : 39,
12530          "capabilities" : [ "StorageImageExtendedFormats" ],
12531          "version": "1.0"
12532        },
12533        {
12534          "enumerant" : "R64ui",
12535          "value" : 40,
12536          "capabilities" : [ "Int64ImageEXT" ],
12537          "version": "1.0"
12538        },
12539        {
12540          "enumerant" : "R64i",
12541          "value" : 41,
12542          "capabilities" : [ "Int64ImageEXT" ],
12543          "version": "1.0"
12544        }
12545      ]
12546    },
12547    {
12548      "category" : "ValueEnum",
12549      "kind" : "ImageChannelOrder",
12550      "enumerants" : [
12551        {
12552          "enumerant" : "R",
12553          "value" : 0,
12554          "version": "1.0"
12555        },
12556        {
12557          "enumerant" : "A",
12558          "value" : 1,
12559          "version": "1.0"
12560        },
12561        {
12562          "enumerant" : "RG",
12563          "value" : 2,
12564          "version": "1.0"
12565        },
12566        {
12567          "enumerant" : "RA",
12568          "value" : 3,
12569          "version": "1.0"
12570        },
12571        {
12572          "enumerant" : "RGB",
12573          "value" : 4,
12574          "version": "1.0"
12575        },
12576        {
12577          "enumerant" : "RGBA",
12578          "value" : 5,
12579          "version": "1.0"
12580        },
12581        {
12582          "enumerant" : "BGRA",
12583          "value" : 6,
12584          "version": "1.0"
12585        },
12586        {
12587          "enumerant" : "ARGB",
12588          "value" : 7,
12589          "version": "1.0"
12590        },
12591        {
12592          "enumerant" : "Intensity",
12593          "value" : 8,
12594          "version": "1.0"
12595        },
12596        {
12597          "enumerant" : "Luminance",
12598          "value" : 9,
12599          "version": "1.0"
12600        },
12601        {
12602          "enumerant" : "Rx",
12603          "value" : 10,
12604          "version": "1.0"
12605        },
12606        {
12607          "enumerant" : "RGx",
12608          "value" : 11,
12609          "version": "1.0"
12610        },
12611        {
12612          "enumerant" : "RGBx",
12613          "value" : 12,
12614          "version": "1.0"
12615        },
12616        {
12617          "enumerant" : "Depth",
12618          "value" : 13,
12619          "version": "1.0"
12620        },
12621        {
12622          "enumerant" : "DepthStencil",
12623          "value" : 14,
12624          "version": "1.0"
12625        },
12626        {
12627          "enumerant" : "sRGB",
12628          "value" : 15,
12629          "version": "1.0"
12630        },
12631        {
12632          "enumerant" : "sRGBx",
12633          "value" : 16,
12634          "version": "1.0"
12635        },
12636        {
12637          "enumerant" : "sRGBA",
12638          "value" : 17,
12639          "version": "1.0"
12640        },
12641        {
12642          "enumerant" : "sBGRA",
12643          "value" : 18,
12644          "version": "1.0"
12645        },
12646        {
12647          "enumerant" : "ABGR",
12648          "value" : 19,
12649          "version": "1.0"
12650        }
12651      ]
12652    },
12653    {
12654      "category" : "ValueEnum",
12655      "kind" : "ImageChannelDataType",
12656      "enumerants" : [
12657        {
12658          "enumerant" : "SnormInt8",
12659          "value" : 0,
12660          "version": "1.0"
12661        },
12662        {
12663          "enumerant" : "SnormInt16",
12664          "value" : 1,
12665          "version": "1.0"
12666        },
12667        {
12668          "enumerant" : "UnormInt8",
12669          "value" : 2,
12670          "version": "1.0"
12671        },
12672        {
12673          "enumerant" : "UnormInt16",
12674          "value" : 3,
12675          "version": "1.0"
12676        },
12677        {
12678          "enumerant" : "UnormShort565",
12679          "value" : 4,
12680          "version": "1.0"
12681        },
12682        {
12683          "enumerant" : "UnormShort555",
12684          "value" : 5,
12685          "version": "1.0"
12686        },
12687        {
12688          "enumerant" : "UnormInt101010",
12689          "value" : 6,
12690          "version": "1.0"
12691        },
12692        {
12693          "enumerant" : "SignedInt8",
12694          "value" : 7,
12695          "version": "1.0"
12696        },
12697        {
12698          "enumerant" : "SignedInt16",
12699          "value" : 8,
12700          "version": "1.0"
12701        },
12702        {
12703          "enumerant" : "SignedInt32",
12704          "value" : 9,
12705          "version": "1.0"
12706        },
12707        {
12708          "enumerant" : "UnsignedInt8",
12709          "value" : 10,
12710          "version": "1.0"
12711        },
12712        {
12713          "enumerant" : "UnsignedInt16",
12714          "value" : 11,
12715          "version": "1.0"
12716        },
12717        {
12718          "enumerant" : "UnsignedInt32",
12719          "value" : 12,
12720          "version": "1.0"
12721        },
12722        {
12723          "enumerant" : "HalfFloat",
12724          "value" : 13,
12725          "version": "1.0"
12726        },
12727        {
12728          "enumerant" : "Float",
12729          "value" : 14,
12730          "version": "1.0"
12731        },
12732        {
12733          "enumerant" : "UnormInt24",
12734          "value" : 15,
12735          "version": "1.0"
12736        },
12737        {
12738          "enumerant" : "UnormInt101010_2",
12739          "value" : 16,
12740          "version": "1.0"
12741        },
12742        {
12743          "enumerant" : "UnsignedIntRaw10EXT",
12744          "value" : 19,
12745          "version": "1.0"
12746        },
12747        {
12748          "enumerant" : "UnsignedIntRaw12EXT",
12749          "value" : 20,
12750          "version": "1.0"
12751        },
12752        {
12753          "enumerant" : "UnormInt2_101010EXT",
12754          "value" : 21,
12755          "version": "1.0"
12756        }
12757      ]
12758    },
12759    {
12760      "category" : "ValueEnum",
12761      "kind" : "FPRoundingMode",
12762      "enumerants" : [
12763        {
12764          "enumerant" : "RTE",
12765          "value" : 0,
12766          "version" : "1.0"
12767        },
12768        {
12769          "enumerant" : "RTZ",
12770          "value" : 1,
12771          "version" : "1.0"
12772        },
12773        {
12774          "enumerant" : "RTP",
12775          "value" : 2,
12776          "version" : "1.0"
12777        },
12778        {
12779          "enumerant" : "RTN",
12780          "value" : 3,
12781          "version" : "1.0"
12782        }
12783      ]
12784    },
12785    {
12786      "category" : "ValueEnum",
12787      "kind" : "FPDenormMode",
12788      "enumerants" : [
12789        {
12790          "enumerant" : "Preserve",
12791          "value" : 0,
12792          "capabilities" : [ "FunctionFloatControlINTEL" ],
12793          "version" : "None"
12794        },
12795        {
12796          "enumerant" : "FlushToZero",
12797          "value" : 1,
12798          "capabilities" : [ "FunctionFloatControlINTEL" ],
12799          "version" : "None"
12800        }
12801      ]
12802    },
12803    {
12804      "category" : "ValueEnum",
12805      "kind" : "QuantizationModes",
12806      "enumerants" : [
12807        {
12808          "enumerant" : "TRN",
12809          "value" : 0,
12810          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12811          "version" : "None"
12812        },
12813        {
12814          "enumerant" : "TRN_ZERO",
12815          "value" : 1,
12816          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12817          "version" : "None"
12818        },
12819        {
12820          "enumerant" : "RND",
12821          "value" : 2,
12822          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12823          "version" : "None"
12824        },
12825        {
12826          "enumerant" : "RND_ZERO",
12827          "value" : 3,
12828          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12829          "version" : "None"
12830        },
12831        {
12832          "enumerant" : "RND_INF",
12833          "value" : 4,
12834          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12835          "version" : "None"
12836        },
12837        {
12838          "enumerant" : "RND_MIN_INF",
12839          "value" : 5,
12840          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12841          "version" : "None"
12842        },
12843        {
12844          "enumerant" : "RND_CONV",
12845          "value" : 6,
12846          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12847          "version" : "None"
12848        },
12849        {
12850          "enumerant" : "RND_CONV_ODD",
12851          "value" : 7,
12852          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12853          "version" : "None"
12854        }
12855      ]
12856    },
12857    {
12858      "category" : "ValueEnum",
12859      "kind" : "FPOperationMode",
12860      "enumerants" : [
12861        {
12862          "enumerant" : "IEEE",
12863          "value" : 0,
12864          "capabilities" : [ "FunctionFloatControlINTEL" ],
12865          "version" : "None"
12866        },
12867        {
12868          "enumerant" : "ALT",
12869          "value" : 1,
12870          "capabilities" : [ "FunctionFloatControlINTEL" ],
12871          "version" : "None"
12872        }
12873      ]
12874    },
12875    {
12876      "category" : "ValueEnum",
12877      "kind" : "OverflowModes",
12878      "enumerants" : [
12879        {
12880          "enumerant" : "WRAP",
12881          "value" : 0,
12882          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12883          "version" : "None"
12884        },
12885        {
12886          "enumerant" : "SAT",
12887          "value" : 1,
12888          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12889          "version" : "None"
12890        },
12891        {
12892          "enumerant" : "SAT_ZERO",
12893          "value" : 2,
12894          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12895          "version" : "None"
12896        },
12897        {
12898          "enumerant" : "SAT_SYM",
12899          "value" : 3,
12900          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
12901          "version" : "None"
12902        }
12903      ]
12904    },
12905    {
12906      "category" : "ValueEnum",
12907      "kind" : "LinkageType",
12908      "enumerants" : [
12909        {
12910          "enumerant" : "Export",
12911          "value" : 0,
12912          "capabilities" : [ "Linkage" ],
12913          "version": "1.0"
12914        },
12915        {
12916          "enumerant" : "Import",
12917          "value" : 1,
12918          "capabilities" : [ "Linkage" ],
12919          "version": "1.0"
12920        },
12921        {
12922          "enumerant" : "LinkOnceODR",
12923          "value" : 2,
12924          "capabilities" : [ "Linkage" ],
12925          "extensions" : [ "SPV_KHR_linkonce_odr" ],
12926          "version" : "None"
12927        }
12928      ]
12929    },
12930    {
12931      "category" : "ValueEnum",
12932      "kind" : "AccessQualifier",
12933      "enumerants" : [
12934        {
12935          "enumerant" : "ReadOnly",
12936          "value" : 0,
12937          "capabilities" : [ "Kernel" ],
12938          "version": "1.0"
12939        },
12940        {
12941          "enumerant" : "WriteOnly",
12942          "value" : 1,
12943          "capabilities" : [ "Kernel" ],
12944          "version": "1.0"
12945        },
12946        {
12947          "enumerant" : "ReadWrite",
12948          "value" : 2,
12949          "capabilities" : [ "Kernel" ],
12950          "version": "1.0"
12951        }
12952      ]
12953    },
12954    {
12955      "category" : "ValueEnum",
12956      "kind" : "HostAccessQualifier",
12957      "enumerants" : [
12958        {
12959          "enumerant" : "NoneINTEL",
12960          "value" : 0,
12961          "capabilities" : [ "GlobalVariableHostAccessINTEL" ],
12962          "version" : "None"
12963        },
12964        {
12965          "enumerant" : "ReadINTEL",
12966          "value" : 1,
12967          "capabilities" : [ "GlobalVariableHostAccessINTEL" ],
12968          "version" : "None"
12969        },
12970        {
12971          "enumerant" : "WriteINTEL",
12972          "value" : 2,
12973          "capabilities" : [ "GlobalVariableHostAccessINTEL" ],
12974          "version" : "None"
12975        },
12976        {
12977          "enumerant" : "ReadWriteINTEL",
12978          "value" : 3,
12979          "capabilities" : [ "GlobalVariableHostAccessINTEL" ],
12980          "version" : "None"
12981        }
12982      ]
12983    },
12984    {
12985      "category" : "ValueEnum",
12986      "kind" : "FunctionParameterAttribute",
12987      "enumerants" : [
12988        {
12989          "enumerant" : "Zext",
12990          "value" : 0,
12991          "capabilities" : [ "Kernel" ],
12992          "version": "1.0"
12993        },
12994        {
12995          "enumerant" : "Sext",
12996          "value" : 1,
12997          "capabilities" : [ "Kernel" ],
12998          "version": "1.0"
12999        },
13000        {
13001          "enumerant" : "ByVal",
13002          "value" : 2,
13003          "capabilities" : [ "Kernel" ],
13004          "version": "1.0"
13005        },
13006        {
13007          "enumerant" : "Sret",
13008          "value" : 3,
13009          "capabilities" : [ "Kernel" ],
13010          "version": "1.0"
13011        },
13012        {
13013          "enumerant" : "NoAlias",
13014          "value" : 4,
13015          "capabilities" : [ "Kernel" ],
13016          "version": "1.0"
13017        },
13018        {
13019          "enumerant" : "NoCapture",
13020          "value" : 5,
13021          "capabilities" : [ "Kernel" ],
13022          "version": "1.0"
13023        },
13024        {
13025          "enumerant" : "NoWrite",
13026          "value" : 6,
13027          "capabilities" : [ "Kernel" ],
13028          "version": "1.0"
13029        },
13030        {
13031          "enumerant" : "NoReadWrite",
13032          "value" : 7,
13033          "capabilities" : [ "Kernel" ],
13034          "version": "1.0"
13035        },
13036        {
13037          "enumerant" : "RuntimeAlignedINTEL",
13038          "value" : 5940,
13039          "capabilities" : [ "RuntimeAlignedAttributeINTEL" ],
13040          "version": "1.0"
13041        }
13042      ]
13043    },
13044    {
13045      "category" : "ValueEnum",
13046      "kind" : "Decoration",
13047      "enumerants" : [
13048        {
13049          "enumerant" : "RelaxedPrecision",
13050          "value" : 0,
13051          "capabilities" : [ "Shader" ],
13052          "version": "1.0"
13053        },
13054        {
13055          "enumerant" : "SpecId",
13056          "value" : 1,
13057          "capabilities" : [ "Shader", "Kernel" ],
13058          "parameters" : [
13059            { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
13060          ],
13061          "version": "1.0"
13062        },
13063        {
13064          "enumerant" : "Block",
13065          "value" : 2,
13066          "capabilities" : [ "Shader" ],
13067          "version": "1.0"
13068        },
13069        {
13070          "enumerant" : "BufferBlock",
13071          "value" : 3,
13072          "capabilities" : [ "Shader" ],
13073          "version": "1.0",
13074          "lastVersion" : "1.3"
13075        },
13076        {
13077          "enumerant" : "RowMajor",
13078          "value" : 4,
13079          "capabilities" : [ "Matrix" ],
13080          "version": "1.0"
13081        },
13082        {
13083          "enumerant" : "ColMajor",
13084          "value" : 5,
13085          "capabilities" : [ "Matrix" ],
13086          "version": "1.0"
13087        },
13088        {
13089          "enumerant" : "ArrayStride",
13090          "value" : 6,
13091          "capabilities" : [ "Shader" ],
13092          "parameters" : [
13093            { "kind" : "LiteralInteger", "name" : "'Array Stride'" }
13094          ],
13095          "version": "1.0"
13096        },
13097        {
13098          "enumerant" : "MatrixStride",
13099          "value" : 7,
13100          "capabilities" : [ "Matrix" ],
13101          "parameters" : [
13102            { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" }
13103          ],
13104          "version": "1.0"
13105        },
13106        {
13107          "enumerant" : "GLSLShared",
13108          "value" : 8,
13109          "capabilities" : [ "Shader" ],
13110          "version": "1.0"
13111        },
13112        {
13113          "enumerant" : "GLSLPacked",
13114          "value" : 9,
13115          "capabilities" : [ "Shader" ],
13116          "version": "1.0"
13117        },
13118        {
13119          "enumerant" : "CPacked",
13120          "value" : 10,
13121          "capabilities" : [ "Kernel" ],
13122          "version": "1.0"
13123        },
13124        {
13125          "enumerant" : "BuiltIn",
13126          "value" : 11,
13127          "parameters" : [
13128            { "kind" : "BuiltIn" }
13129          ],
13130          "version": "1.0"
13131        },
13132        {
13133          "enumerant" : "NoPerspective",
13134          "value" : 13,
13135          "capabilities" : [ "Shader" ],
13136          "version": "1.0"
13137        },
13138        {
13139          "enumerant" : "Flat",
13140          "value" : 14,
13141          "capabilities" : [ "Shader" ],
13142          "version": "1.0"
13143        },
13144        {
13145          "enumerant" : "Patch",
13146          "value" : 15,
13147          "capabilities" : [ "Tessellation" ],
13148          "version": "1.0"
13149        },
13150        {
13151          "enumerant" : "Centroid",
13152          "value" : 16,
13153          "capabilities" : [ "Shader" ],
13154          "version": "1.0"
13155        },
13156        {
13157          "enumerant" : "Sample",
13158          "value" : 17,
13159          "capabilities" : [ "SampleRateShading" ],
13160          "version": "1.0"
13161        },
13162        {
13163          "enumerant" : "Invariant",
13164          "value" : 18,
13165          "capabilities" : [ "Shader" ],
13166          "version": "1.0"
13167        },
13168        {
13169          "enumerant" : "Restrict",
13170          "value" : 19,
13171          "version" : "1.0"
13172        },
13173        {
13174          "enumerant" : "Aliased",
13175          "value" : 20,
13176          "version" : "1.0"
13177        },
13178        {
13179          "enumerant" : "Volatile",
13180          "value" : 21,
13181          "version" : "1.0"
13182        },
13183        {
13184          "enumerant" : "Constant",
13185          "value" : 22,
13186          "capabilities" : [ "Kernel" ],
13187          "version": "1.0"
13188        },
13189        {
13190          "enumerant" : "Coherent",
13191          "value" : 23,
13192          "version": "1.0"
13193        },
13194        {
13195          "enumerant" : "NonWritable",
13196          "value" : 24,
13197          "version": "1.0"
13198        },
13199        {
13200          "enumerant" : "NonReadable",
13201          "value" : 25,
13202          "version": "1.0"
13203        },
13204        {
13205          "enumerant" : "Uniform",
13206          "value" : 26,
13207          "capabilities" : [ "Shader", "UniformDecoration" ],
13208          "version": "1.0"
13209        },
13210        {
13211          "enumerant" : "UniformId",
13212          "value" : 27,
13213          "capabilities" : [ "Shader", "UniformDecoration" ],
13214          "parameters" : [
13215            { "kind" : "IdScope",           "name" : "'Execution'" }
13216          ],
13217          "version" : "1.4"
13218        },
13219        {
13220          "enumerant" : "SaturatedConversion",
13221          "value" : 28,
13222          "capabilities" : [ "Kernel" ],
13223          "version": "1.0"
13224        },
13225        {
13226          "enumerant" : "Stream",
13227          "value" : 29,
13228          "capabilities" : [ "GeometryStreams" ],
13229          "parameters" : [
13230            { "kind" : "LiteralInteger", "name" : "'Stream Number'" }
13231          ],
13232          "version": "1.0"
13233        },
13234        {
13235          "enumerant" : "Location",
13236          "value" : 30,
13237          "capabilities" : [ "Shader" ],
13238          "parameters" : [
13239            { "kind" : "LiteralInteger", "name" : "'Location'" }
13240          ],
13241          "version": "1.0"
13242        },
13243        {
13244          "enumerant" : "Component",
13245          "value" : 31,
13246          "capabilities" : [ "Shader" ],
13247          "parameters" : [
13248            { "kind" : "LiteralInteger", "name" : "'Component'" }
13249          ],
13250          "version": "1.0"
13251        },
13252        {
13253          "enumerant" : "Index",
13254          "value" : 32,
13255          "capabilities" : [ "Shader" ],
13256          "parameters" : [
13257            { "kind" : "LiteralInteger", "name" : "'Index'" }
13258          ],
13259          "version": "1.0"
13260        },
13261        {
13262          "enumerant" : "Binding",
13263          "value" : 33,
13264          "capabilities" : [ "Shader" ],
13265          "parameters" : [
13266            { "kind" : "LiteralInteger", "name" : "'Binding Point'" }
13267          ],
13268          "version": "1.0"
13269        },
13270        {
13271          "enumerant" : "DescriptorSet",
13272          "value" : 34,
13273          "capabilities" : [ "Shader" ],
13274          "parameters" : [
13275            { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" }
13276          ],
13277          "version": "1.0"
13278        },
13279        {
13280          "enumerant" : "Offset",
13281          "value" : 35,
13282          "capabilities" : [ "Shader" ],
13283          "parameters" : [
13284            { "kind" : "LiteralInteger", "name" : "'Byte Offset'" }
13285          ],
13286          "version": "1.0"
13287        },
13288        {
13289          "enumerant" : "XfbBuffer",
13290          "value" : 36,
13291          "capabilities" : [ "TransformFeedback" ],
13292          "parameters" : [
13293            { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" }
13294          ],
13295          "version": "1.0"
13296        },
13297        {
13298          "enumerant" : "XfbStride",
13299          "value" : 37,
13300          "capabilities" : [ "TransformFeedback" ],
13301          "parameters" : [
13302            { "kind" : "LiteralInteger", "name" : "'XFB Stride'" }
13303          ],
13304          "version": "1.0"
13305        },
13306        {
13307          "enumerant" : "FuncParamAttr",
13308          "value" : 38,
13309          "capabilities" : [ "Kernel" ],
13310          "parameters" : [
13311            { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" }
13312          ],
13313          "version": "1.0"
13314        },
13315        {
13316          "enumerant" : "FPRoundingMode",
13317          "value" : 39,
13318          "parameters" : [
13319            { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" }
13320          ],
13321          "version": "1.0"
13322        },
13323        {
13324          "enumerant" : "FPFastMathMode",
13325          "value" : 40,
13326          "capabilities" : [ "Kernel", "FloatControls2" ],
13327          "parameters" : [
13328            { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" }
13329          ],
13330          "version": "1.0"
13331        },
13332        {
13333          "enumerant" : "LinkageAttributes",
13334          "value" : 41,
13335          "capabilities" : [ "Linkage" ],
13336          "parameters" : [
13337            { "kind" : "LiteralString", "name" : "'Name'" },
13338            { "kind" : "LinkageType",   "name" : "'Linkage Type'" }
13339          ],
13340          "version": "1.0"
13341        },
13342        {
13343          "enumerant" : "NoContraction",
13344          "value" : 42,
13345          "capabilities" : [ "Shader" ],
13346          "version": "1.0"
13347        },
13348        {
13349          "enumerant" : "InputAttachmentIndex",
13350          "value" : 43,
13351          "capabilities" : [ "InputAttachment" ],
13352          "parameters" : [
13353            { "kind" : "LiteralInteger", "name" : "'Attachment Index'" }
13354          ],
13355          "version": "1.0"
13356        },
13357        {
13358          "enumerant" : "Alignment",
13359          "value" : 44,
13360          "capabilities" : [ "Kernel" ],
13361          "parameters" : [
13362            { "kind" : "LiteralInteger", "name" : "'Alignment'" }
13363          ],
13364          "version": "1.0"
13365        },
13366        {
13367          "enumerant" : "MaxByteOffset",
13368          "value" : 45,
13369          "capabilities" : [ "Addresses" ],
13370          "parameters" : [
13371            { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
13372          ],
13373          "version" : "1.1"
13374        },
13375        {
13376          "enumerant" : "AlignmentId",
13377          "value" : 46,
13378          "capabilities" : [ "Kernel" ],
13379          "parameters" : [
13380            { "kind" : "IdRef", "name" : "'Alignment'" }
13381          ],
13382          "version" : "1.2"
13383        },
13384        {
13385          "enumerant" : "MaxByteOffsetId",
13386          "value" : 47,
13387          "capabilities" : [ "Addresses" ],
13388          "parameters" : [
13389            { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
13390          ],
13391          "version" : "1.2"
13392        },
13393        {
13394          "enumerant" : "NoSignedWrap",
13395          "value" : 4469,
13396          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
13397          "version" : "1.4"
13398        },
13399        {
13400          "enumerant" : "NoUnsignedWrap",
13401          "value" : 4470,
13402          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
13403          "version" : "1.4"
13404        },
13405        {
13406          "enumerant" : "WeightTextureQCOM",
13407          "value" : 4487,
13408          "extensions" : [ "SPV_QCOM_image_processing" ],
13409          "version" : "None"
13410        },
13411        {
13412          "enumerant" : "BlockMatchTextureQCOM",
13413          "value" : 4488,
13414          "extensions" : [ "SPV_QCOM_image_processing" ],
13415          "version" : "None"
13416        },
13417        {
13418          "enumerant" : "BlockMatchSamplerQCOM",
13419          "value" : 4499,
13420          "extensions" : [ "SPV_QCOM_image_processing2" ],
13421          "version" : "None"
13422        },
13423        {
13424          "enumerant" : "ExplicitInterpAMD",
13425          "value" : 4999,
13426          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
13427          "version" : "None"
13428        },
13429        {
13430          "enumerant" : "NodeSharesPayloadLimitsWithAMDX",
13431          "value" : 5019,
13432          "capabilities" : [ "ShaderEnqueueAMDX" ],
13433          "parameters" : [
13434            { "kind" : "IdRef", "name" : "'Payload Type'" }
13435          ],
13436          "provisional" : true,
13437          "version" : "None"
13438        },
13439        {
13440          "enumerant" : "NodeMaxPayloadsAMDX",
13441          "value" : 5020,
13442          "capabilities" : [ "ShaderEnqueueAMDX" ],
13443          "parameters" : [
13444            { "kind" : "IdRef", "name" : "'Max number of payloads'" }
13445          ],
13446          "provisional" : true,
13447          "version" : "None"
13448        },
13449        {
13450          "enumerant" : "TrackFinishWritingAMDX",
13451          "value" : 5078,
13452          "capabilities" : [ "ShaderEnqueueAMDX" ],
13453          "provisional" : true,
13454          "version" : "None"
13455        },
13456        {
13457          "enumerant" : "PayloadNodeNameAMDX",
13458          "value" : 5091,
13459          "capabilities" : [ "ShaderEnqueueAMDX" ],
13460          "parameters" : [
13461            { "kind" : "IdRef", "name" : "'Node Name'" }
13462          ],
13463          "provisional" : true,
13464          "version" : "None"
13465        },
13466        {
13467          "enumerant" : "PayloadNodeBaseIndexAMDX",
13468          "value" : 5098,
13469          "capabilities" : [ "ShaderEnqueueAMDX" ],
13470          "parameters" : [
13471            { "kind" : "IdRef", "name" : "'Base Index'" }
13472          ],
13473          "provisional" : true,
13474          "version" : "None"
13475        },
13476        {
13477          "enumerant" : "PayloadNodeSparseArrayAMDX",
13478          "value" : 5099,
13479          "capabilities" : [ "ShaderEnqueueAMDX" ],
13480          "provisional" : true,
13481          "version" : "None"
13482        },
13483        {
13484          "enumerant" : "PayloadNodeArraySizeAMDX",
13485          "value" : 5100,
13486          "capabilities" : [ "ShaderEnqueueAMDX" ],
13487          "parameters" : [
13488            { "kind" : "IdRef", "name" : "'Array Size'" }
13489          ],
13490          "provisional" : true,
13491          "version" : "None"
13492        },
13493        {
13494          "enumerant" : "PayloadDispatchIndirectAMDX",
13495          "value" : 5105,
13496          "capabilities" : [ "ShaderEnqueueAMDX" ],
13497          "provisional" : true,
13498          "version" : "None"
13499        },
13500        {
13501          "enumerant" : "OverrideCoverageNV",
13502          "value" : 5248,
13503          "capabilities" : [ "SampleMaskOverrideCoverageNV" ],
13504          "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
13505          "version" : "None"
13506        },
13507        {
13508          "enumerant" : "PassthroughNV",
13509          "value" : 5250,
13510          "capabilities" : [ "GeometryShaderPassthroughNV" ],
13511          "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
13512          "version" : "None"
13513        },
13514        {
13515          "enumerant" : "ViewportRelativeNV",
13516          "value" : 5252,
13517          "capabilities" : [ "ShaderViewportMaskNV" ],
13518          "version" : "None"
13519        },
13520        {
13521          "enumerant" : "SecondaryViewportRelativeNV",
13522          "value" : 5256,
13523          "capabilities" : [ "ShaderStereoViewNV" ],
13524          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
13525          "version" : "None",
13526          "parameters" : [
13527            { "kind" : "LiteralInteger", "name" : "'Offset'" }
13528          ]
13529        },
13530        {
13531          "enumerant" : "PerPrimitiveEXT",
13532          "aliases" : ["PerPrimitiveNV"],
13533          "value" : 5271,
13534          "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ],
13535          "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ],
13536          "version" : "None"
13537        },
13538        {
13539          "enumerant" : "PerViewNV",
13540          "value" : 5272,
13541          "capabilities" : [ "MeshShadingNV" ],
13542          "extensions" : [ "SPV_NV_mesh_shader" ],
13543          "version" : "None"
13544        },
13545        {
13546          "enumerant" : "PerTaskNV",
13547          "value" : 5273,
13548          "capabilities" : [ "MeshShadingNV", "MeshShadingEXT" ],
13549          "extensions" : [ "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ],
13550          "version" : "None"
13551        },
13552        {
13553          "enumerant" : "PerVertexKHR",
13554          "aliases" : ["PerVertexNV"],
13555          "value" : 5285,
13556          "capabilities" : [ "FragmentBarycentricKHR" ],
13557          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
13558          "version" : "None"
13559        },
13560        {
13561          "enumerant" : "NonUniform",
13562          "aliases" : ["NonUniformEXT"],
13563          "value" : 5300,
13564          "capabilities" : [ "ShaderNonUniform" ],
13565          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13566          "version" : "1.5"
13567        },
13568        {
13569          "enumerant" : "RestrictPointer",
13570          "aliases" : ["RestrictPointerEXT"],
13571          "value" : 5355,
13572          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
13573          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
13574          "version" : "1.5"
13575        },
13576        {
13577          "enumerant" : "AliasedPointer",
13578          "aliases" : ["AliasedPointerEXT"],
13579          "value" : 5356,
13580          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
13581          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
13582          "version" : "1.5"
13583        },
13584        {
13585          "enumerant" : "HitObjectShaderRecordBufferNV",
13586          "value" : 5386,
13587          "capabilities" : [ "ShaderInvocationReorderNV" ],
13588          "version" : "None"
13589        },
13590        {
13591          "enumerant" : "BindlessSamplerNV",
13592          "value" : 5398,
13593          "capabilities" : [ "BindlessTextureNV" ],
13594          "version" : "None"
13595        },
13596        {
13597          "enumerant" : "BindlessImageNV",
13598          "value" : 5399,
13599          "capabilities" : [ "BindlessTextureNV" ],
13600          "version" : "None"
13601        },
13602        {
13603          "enumerant" : "BoundSamplerNV",
13604          "value" : 5400,
13605          "capabilities" : [ "BindlessTextureNV" ],
13606          "version" : "None"
13607        },
13608        {
13609          "enumerant" : "BoundImageNV",
13610          "value" : 5401,
13611          "capabilities" : [ "BindlessTextureNV" ],
13612          "version" : "None"
13613        },
13614        {
13615          "enumerant" : "SIMTCallINTEL",
13616          "value" : 5599,
13617          "parameters" : [
13618            { "kind" : "LiteralInteger", "name" : "'N'" }
13619          ],
13620          "capabilities" : [ "VectorComputeINTEL" ],
13621          "version" : "None"
13622        },
13623        {
13624          "enumerant" : "ReferencedIndirectlyINTEL",
13625          "value" : 5602,
13626          "capabilities" : [ "IndirectReferencesINTEL" ],
13627          "extensions" : [ "SPV_INTEL_function_pointers" ],
13628          "version" : "None"
13629        },
13630        {
13631          "enumerant" : "ClobberINTEL",
13632          "value" : 5607,
13633          "parameters" : [
13634            { "kind" : "LiteralString", "name" : "'Register'" }
13635          ],
13636          "capabilities" : [ "AsmINTEL" ],
13637          "version" : "None"
13638        },
13639        {
13640          "enumerant" : "SideEffectsINTEL",
13641          "value" : 5608,
13642          "capabilities" : [ "AsmINTEL" ],
13643          "version" : "None"
13644        },
13645        {
13646          "enumerant" : "VectorComputeVariableINTEL",
13647          "value" : 5624,
13648          "capabilities" : [ "VectorComputeINTEL" ],
13649          "version" : "None"
13650        },
13651        {
13652          "enumerant" : "FuncParamIOKindINTEL",
13653          "value" : 5625,
13654          "parameters" : [
13655            { "kind" : "LiteralInteger", "name" : "'Kind'" }
13656          ],
13657          "capabilities" : [ "VectorComputeINTEL" ],
13658          "version" : "None"
13659        },
13660        {
13661          "enumerant" : "VectorComputeFunctionINTEL",
13662          "value" : 5626,
13663          "capabilities" : [ "VectorComputeINTEL" ],
13664          "version" : "None"
13665        },
13666        {
13667          "enumerant" : "StackCallINTEL",
13668          "value" : 5627,
13669          "capabilities" : [ "VectorComputeINTEL" ],
13670          "version" : "None"
13671        },
13672        {
13673          "enumerant" : "GlobalVariableOffsetINTEL",
13674          "value" : 5628,
13675          "parameters" : [
13676            { "kind" : "LiteralInteger", "name" : "'Offset'" }
13677          ],
13678          "capabilities" : [ "VectorComputeINTEL" ],
13679          "version" : "None"
13680        },
13681        {
13682          "enumerant" : "CounterBuffer",
13683          "aliases" : ["HlslCounterBufferGOOGLE"],
13684          "value" : 5634,
13685          "parameters" : [
13686            { "kind" : "IdRef", "name" : "'Counter Buffer'" }
13687          ],
13688          "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
13689          "version" : "1.4"
13690        },
13691        {
13692          "enumerant" : "UserSemantic",
13693          "aliases" : ["HlslSemanticGOOGLE"],
13694          "value" : 5635,
13695          "parameters" : [
13696            { "kind" : "LiteralString", "name" : "'Semantic'" }
13697          ],
13698          "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
13699          "version" : "1.4"
13700        },
13701        {
13702          "enumerant" : "UserTypeGOOGLE",
13703          "value" : 5636,
13704          "parameters" : [
13705            { "kind" : "LiteralString", "name" : "'User Type'" }
13706          ],
13707          "extensions" : [ "SPV_GOOGLE_user_type" ],
13708          "version" : "None"
13709        },
13710        {
13711          "enumerant" : "FunctionRoundingModeINTEL",
13712          "value" : 5822,
13713          "parameters" : [
13714            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
13715            { "kind" : "FPRoundingMode", "name" : "'FP Rounding Mode'" }
13716          ],
13717          "capabilities" : [ "FunctionFloatControlINTEL" ],
13718          "version" : "None"
13719        },
13720        {
13721          "enumerant" : "FunctionDenormModeINTEL",
13722          "value" : 5823,
13723          "parameters" : [
13724            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
13725            { "kind" : "FPDenormMode", "name" : "'FP Denorm Mode'" }
13726          ],
13727          "capabilities" : [ "FunctionFloatControlINTEL" ],
13728          "version" : "None"
13729        },
13730        {
13731          "enumerant" : "RegisterINTEL",
13732          "value" : 5825,
13733          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13734          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13735          "version" : "None"
13736        },
13737        {
13738          "enumerant" : "MemoryINTEL",
13739          "value" : 5826,
13740          "parameters" : [
13741            { "kind" : "LiteralString", "name" : "'Memory Type'" }
13742          ],
13743          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13744          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13745          "version" : "None"
13746        },
13747        {
13748          "enumerant" : "NumbanksINTEL",
13749          "value" : 5827,
13750          "parameters" : [
13751            { "kind" : "LiteralInteger", "name" : "'Banks'" }
13752          ],
13753          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13754          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13755          "version" : "None"
13756        },
13757        {
13758          "enumerant" : "BankwidthINTEL",
13759          "value" : 5828,
13760          "parameters" : [
13761            { "kind" : "LiteralInteger", "name" : "'Bank Width'" }
13762          ],
13763          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13764          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13765          "version" : "None"
13766        },
13767        {
13768          "enumerant" : "MaxPrivateCopiesINTEL",
13769          "value" : 5829,
13770          "parameters" : [
13771            { "kind" : "LiteralInteger", "name" : "'Maximum Copies'" }
13772          ],
13773          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13774          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13775          "version" : "None"
13776        },
13777        {
13778          "enumerant" : "SinglepumpINTEL",
13779          "value" : 5830,
13780          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13781          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13782          "version" : "None"
13783        },
13784        {
13785          "enumerant" : "DoublepumpINTEL",
13786          "value" : 5831,
13787          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13788          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13789          "version" : "None"
13790        },
13791        {
13792          "enumerant" : "MaxReplicatesINTEL",
13793          "value" : 5832,
13794          "parameters" : [
13795            { "kind" : "LiteralInteger", "name" : "'Maximum Replicates'" }
13796          ],
13797          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13798          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13799          "version" : "None"
13800        },
13801        {
13802          "enumerant" : "SimpleDualPortINTEL",
13803          "value" : 5833,
13804          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13805          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13806          "version" : "None"
13807        },
13808        {
13809          "enumerant" : "MergeINTEL",
13810          "value" : 5834,
13811          "parameters" : [
13812            { "kind" : "LiteralString", "name" : "'Merge Key'" },
13813            { "kind" : "LiteralString", "name" : "'Merge Type'" }
13814          ],
13815          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13816          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13817          "version" : "None"
13818        },
13819        {
13820          "enumerant" : "BankBitsINTEL",
13821          "value" : 5835,
13822          "parameters" : [
13823            { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Bank Bits'" }
13824          ],
13825          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13826          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13827          "version" : "None"
13828        },
13829        {
13830          "enumerant" : "ForcePow2DepthINTEL",
13831          "value" : 5836,
13832          "parameters" : [
13833            { "kind" : "LiteralInteger", "name" : "'Force Key'" }
13834          ],
13835          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13836          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13837          "version" : "None"
13838        },
13839        {
13840          "enumerant" : "StridesizeINTEL",
13841          "value" : 5883,
13842          "parameters" : [
13843            { "kind" : "LiteralInteger", "name" : "'Stride Size'" }
13844          ],
13845          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13846          "version" : "None"
13847        },
13848        {
13849          "enumerant" : "WordsizeINTEL",
13850          "value" : 5884,
13851          "parameters" : [
13852            { "kind" : "LiteralInteger", "name" : "'Word Size'" }
13853          ],
13854          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13855          "version" : "None"
13856        },
13857        {
13858          "enumerant" : "TrueDualPortINTEL",
13859          "value" : 5885,
13860          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
13861          "version" : "None"
13862        },
13863        {
13864          "enumerant" : "BurstCoalesceINTEL",
13865          "value" : 5899,
13866          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
13867          "version" : "None"
13868        },
13869        {
13870          "enumerant" : "CacheSizeINTEL",
13871          "value" : 5900,
13872          "parameters" : [
13873            { "kind" : "LiteralInteger", "name" : "'Cache Size in bytes'" }
13874          ],
13875          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
13876          "version" : "None"
13877        },
13878        {
13879          "enumerant" : "DontStaticallyCoalesceINTEL",
13880          "value" : 5901,
13881          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
13882          "version" : "None"
13883        },
13884        {
13885          "enumerant" : "PrefetchINTEL",
13886          "value" : 5902,
13887          "parameters" : [
13888            { "kind" : "LiteralInteger", "name" : "'Prefetcher Size in bytes'" }
13889          ],
13890          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
13891          "version" : "None"
13892        },
13893        {
13894          "enumerant" : "StallEnableINTEL",
13895          "value" : 5905,
13896          "capabilities" : [ "FPGAClusterAttributesINTEL" ],
13897          "version" : "None"
13898        },
13899        {
13900          "enumerant" : "FuseLoopsInFunctionINTEL",
13901          "value" : 5907,
13902          "capabilities" : [ "LoopFuseINTEL" ],
13903          "version" : "None"
13904        },
13905        {
13906          "enumerant" : "MathOpDSPModeINTEL",
13907          "value" : 5909,
13908          "parameters" : [
13909            { "kind" : "LiteralInteger", "name" : "'Mode'" },
13910            { "kind" : "LiteralInteger", "name" : "'Propagate'" }
13911          ],
13912          "capabilities" : [ "FPGADSPControlINTEL" ],
13913          "version" : "None"
13914        },
13915        {
13916          "enumerant" : "AliasScopeINTEL",
13917          "value" : 5914,
13918          "parameters" : [
13919            { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" }
13920          ],
13921          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
13922          "version" : "None"
13923        },
13924        {
13925          "enumerant" : "NoAliasINTEL",
13926          "value" : 5915,
13927          "parameters" : [
13928            { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" }
13929          ],
13930          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
13931          "version" : "None"
13932        },
13933        {
13934          "enumerant" : "InitiationIntervalINTEL",
13935          "value" : 5917,
13936          "parameters" : [
13937            { "kind" : "LiteralInteger", "name" : "'Cycles'" }
13938          ],
13939          "capabilities" : [ "FPGAInvocationPipeliningAttributesINTEL" ],
13940          "version" : "None"
13941        },
13942        {
13943          "enumerant" : "MaxConcurrencyINTEL",
13944          "value" : 5918,
13945          "parameters" : [
13946            { "kind" : "LiteralInteger", "name" : "'Invocations'" }
13947          ],
13948          "capabilities" : [ "FPGAInvocationPipeliningAttributesINTEL" ],
13949          "version" : "None"
13950        },
13951        {
13952          "enumerant" : "PipelineEnableINTEL",
13953          "value" : 5919,
13954          "parameters" : [
13955            { "kind" : "LiteralInteger", "name" : "'Enable'" }
13956          ],
13957          "capabilities" : [ "FPGAInvocationPipeliningAttributesINTEL" ],
13958          "version" : "None"
13959        },
13960        {
13961          "enumerant" : "BufferLocationINTEL",
13962          "value" : 5921,
13963          "parameters" : [
13964            { "kind" : "LiteralInteger", "name" : "'Buffer Location ID'" }
13965          ],
13966          "capabilities" : [ "FPGABufferLocationINTEL" ],
13967          "version" : "None"
13968        },
13969        {
13970          "enumerant" : "IOPipeStorageINTEL",
13971          "value" : 5944,
13972          "parameters" : [
13973            { "kind" : "LiteralInteger", "name" : "'IO Pipe ID'" }
13974          ],
13975          "capabilities" : [ "IOPipesINTEL" ],
13976          "version" : "None"
13977        },
13978        {
13979          "enumerant" : "FunctionFloatingPointModeINTEL",
13980          "value" : 6080,
13981          "parameters" : [
13982            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
13983            { "kind" : "FPOperationMode", "name" : "'FP Operation Mode'" }
13984          ],
13985          "capabilities" : [ "FunctionFloatControlINTEL" ],
13986          "version" : "None"
13987        },
13988        {
13989          "enumerant" : "SingleElementVectorINTEL",
13990          "value" : 6085,
13991          "capabilities" : [ "VectorComputeINTEL" ],
13992          "version" : "None"
13993        },
13994        {
13995          "enumerant" : "VectorComputeCallableFunctionINTEL",
13996          "value" : 6087,
13997          "capabilities" : [ "VectorComputeINTEL" ],
13998          "version" : "None"
13999        },
14000        {
14001          "enumerant" : "MediaBlockIOINTEL",
14002          "value" : 6140,
14003          "capabilities" : [ "VectorComputeINTEL" ],
14004          "version" : "None"
14005        },
14006        {
14007          "enumerant" : "StallFreeINTEL",
14008          "value" : 6151,
14009          "capabilities" : [ "FPGAClusterAttributesV2INTEL" ],
14010          "version" : "None"
14011        },
14012        {
14013          "enumerant" : "FPMaxErrorDecorationINTEL",
14014          "value" : 6170,
14015          "parameters" : [
14016            { "kind" : "LiteralFloat", "name" : "'Max Error'" }
14017          ],
14018          "capabilities" : [ "FPMaxErrorINTEL" ],
14019          "version" : "None"
14020        },
14021        {
14022          "enumerant" : "LatencyControlLabelINTEL",
14023          "value" : 6172,
14024          "parameters" : [
14025            { "kind" : "LiteralInteger", "name" : "'Latency Label'" }
14026          ],
14027          "capabilities" : [ "FPGALatencyControlINTEL" ],
14028          "version" : "None"
14029        },
14030        {
14031          "enumerant" : "LatencyControlConstraintINTEL",
14032          "value" : 6173,
14033          "parameters" : [
14034            { "kind" : "LiteralInteger", "name" : "'Relative To'" },
14035            { "kind" : "LiteralInteger", "name" : "'Control Type'" },
14036            { "kind" : "LiteralInteger", "name" : "'Relative Cycle'" }
14037          ],
14038          "capabilities" : [ "FPGALatencyControlINTEL" ],
14039          "version" : "None"
14040        },
14041        {
14042          "enumerant" : "ConduitKernelArgumentINTEL",
14043          "value" : 6175,
14044          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14045          "version" : "None"
14046        },
14047        {
14048          "enumerant" : "RegisterMapKernelArgumentINTEL",
14049          "value" : 6176,
14050          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14051          "version" : "None"
14052        },
14053        {
14054          "enumerant" : "MMHostInterfaceAddressWidthINTEL",
14055          "value" : 6177,
14056          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14057          "parameters" : [
14058            { "kind" : "LiteralInteger", "name" : "'AddressWidth'" }
14059          ],
14060          "version" : "None"
14061        },
14062        {
14063          "enumerant" : "MMHostInterfaceDataWidthINTEL",
14064          "value" : 6178,
14065          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14066          "parameters" : [
14067            { "kind" : "LiteralInteger", "name" : "'DataWidth'" }
14068          ],
14069          "version" : "None"
14070        },
14071        {
14072          "enumerant" : "MMHostInterfaceLatencyINTEL",
14073          "value" : 6179,
14074          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14075          "parameters" : [
14076            { "kind" : "LiteralInteger", "name" : "'Latency'" }
14077          ],
14078          "version" : "None"
14079        },
14080        {
14081          "enumerant" : "MMHostInterfaceReadWriteModeINTEL",
14082          "value" : 6180,
14083          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14084          "parameters" : [
14085            { "kind" : "AccessQualifier", "name" : "'ReadWriteMode'" }
14086          ],
14087          "version" : "None"
14088        },
14089        {
14090          "enumerant" : "MMHostInterfaceMaxBurstINTEL",
14091          "value" : 6181,
14092          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14093          "parameters" : [
14094            { "kind" : "LiteralInteger", "name" : "'MaxBurstCount'" }
14095          ],
14096          "version" : "None"
14097        },
14098        {
14099          "enumerant" : "MMHostInterfaceWaitRequestINTEL",
14100          "value" : 6182,
14101          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14102          "parameters" : [
14103            { "kind" : "LiteralInteger", "name" : "'Waitrequest'" }
14104          ],
14105          "version" : "None"
14106        },
14107        {
14108          "enumerant" : "StableKernelArgumentINTEL",
14109          "value" : 6183,
14110          "capabilities" : [ "FPGAArgumentInterfacesINTEL" ],
14111          "version" : "None"
14112        },
14113        {
14114          "enumerant" : "HostAccessINTEL",
14115          "value" : 6188,
14116          "parameters": [
14117            { "kind" : "HostAccessQualifier", "name" : "'Access'" },
14118            { "kind" : "LiteralString", "name" : "'Name'" }
14119          ],
14120          "capabilities" : [ "GlobalVariableHostAccessINTEL" ],
14121          "version" : "None"
14122        },
14123        {
14124          "enumerant" : "InitModeINTEL",
14125          "value" : 6190,
14126          "parameters": [
14127            { "kind" : "InitializationModeQualifier", "name" : "'Trigger'" }
14128          ],
14129          "capabilities" : [ "GlobalVariableFPGADecorationsINTEL" ],
14130          "version" : "None"
14131        },
14132        {
14133          "enumerant" : "ImplementInRegisterMapINTEL",
14134          "value" : 6191,
14135          "parameters": [
14136            { "kind" : "LiteralInteger", "name" : "Value" }
14137          ],
14138          "capabilities" : [ "GlobalVariableFPGADecorationsINTEL" ],
14139          "version" : "None"
14140        },
14141        {
14142          "enumerant" : "CacheControlLoadINTEL",
14143          "value" : 6442,
14144          "capabilities" : [ "CacheControlsINTEL" ],
14145          "parameters" : [
14146            { "kind" : "LiteralInteger", "name" : "'Cache Level'" },
14147            { "kind" : "LoadCacheControl", "name" : "'Cache Control'" }
14148          ],
14149          "version" : "None"
14150        },
14151        {
14152          "enumerant" : "CacheControlStoreINTEL",
14153          "value" : 6443,
14154          "capabilities" : [ "CacheControlsINTEL" ],
14155          "parameters" : [
14156            { "kind" : "LiteralInteger", "name" : "'Cache Level'" },
14157            { "kind" : "StoreCacheControl", "name" : "'Cache Control'" }
14158          ],
14159          "version" : "None"
14160        }
14161      ]
14162    },
14163    {
14164      "category" : "ValueEnum",
14165      "kind" : "BuiltIn",
14166      "enumerants" : [
14167        {
14168          "enumerant" : "Position",
14169          "value" : 0,
14170          "capabilities" : [ "Shader" ],
14171          "version": "1.0"
14172        },
14173        {
14174          "enumerant" : "PointSize",
14175          "value" : 1,
14176          "capabilities" : [ "Shader" ],
14177          "version": "1.0"
14178        },
14179        {
14180          "enumerant" : "ClipDistance",
14181          "value" : 3,
14182          "capabilities" : [ "ClipDistance" ],
14183          "version": "1.0"
14184        },
14185        {
14186          "enumerant" : "CullDistance",
14187          "value" : 4,
14188          "capabilities" : [ "CullDistance" ],
14189          "version": "1.0"
14190        },
14191        {
14192          "enumerant" : "VertexId",
14193          "value" : 5,
14194          "capabilities" : [ "Shader" ],
14195          "version": "1.0"
14196        },
14197        {
14198          "enumerant" : "InstanceId",
14199          "value" : 6,
14200          "capabilities" : [ "Shader" ],
14201          "version": "1.0"
14202        },
14203        {
14204          "enumerant" : "PrimitiveId",
14205          "value" : 7,
14206          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingKHR", "MeshShadingNV", "MeshShadingEXT" ],
14207          "version": "1.0"
14208        },
14209        {
14210          "enumerant" : "InvocationId",
14211          "value" : 8,
14212          "capabilities" : [ "Geometry", "Tessellation" ],
14213          "version": "1.0"
14214        },
14215        {
14216          "enumerant" : "Layer",
14217          "value" : 9,
14218          "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT", "MeshShadingNV", "MeshShadingEXT" ],
14219          "version": "1.0"
14220        },
14221        {
14222          "enumerant" : "ViewportIndex",
14223          "value" : 10,
14224          "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT", "MeshShadingNV", "MeshShadingEXT" ],
14225          "version": "1.0"
14226        },
14227        {
14228          "enumerant" : "TessLevelOuter",
14229          "value" : 11,
14230          "capabilities" : [ "Tessellation" ],
14231          "version": "1.0"
14232        },
14233        {
14234          "enumerant" : "TessLevelInner",
14235          "value" : 12,
14236          "capabilities" : [ "Tessellation" ],
14237          "version": "1.0"
14238        },
14239        {
14240          "enumerant" : "TessCoord",
14241          "value" : 13,
14242          "capabilities" : [ "Tessellation" ],
14243          "version": "1.0"
14244        },
14245        {
14246          "enumerant" : "PatchVertices",
14247          "value" : 14,
14248          "capabilities" : [ "Tessellation" ],
14249          "version": "1.0"
14250        },
14251        {
14252          "enumerant" : "FragCoord",
14253          "value" : 15,
14254          "capabilities" : [ "Shader" ],
14255          "version": "1.0"
14256        },
14257        {
14258          "enumerant" : "PointCoord",
14259          "value" : 16,
14260          "capabilities" : [ "Shader" ],
14261          "version": "1.0"
14262        },
14263        {
14264          "enumerant" : "FrontFacing",
14265          "value" : 17,
14266          "capabilities" : [ "Shader" ],
14267          "version": "1.0"
14268        },
14269        {
14270          "enumerant" : "SampleId",
14271          "value" : 18,
14272          "capabilities" : [ "SampleRateShading" ],
14273          "version": "1.0"
14274        },
14275        {
14276          "enumerant" : "SamplePosition",
14277          "value" : 19,
14278          "capabilities" : [ "SampleRateShading" ],
14279          "version": "1.0"
14280        },
14281        {
14282          "enumerant" : "SampleMask",
14283          "value" : 20,
14284          "capabilities" : [ "Shader" ],
14285          "version": "1.0"
14286        },
14287        {
14288          "enumerant" : "FragDepth",
14289          "value" : 22,
14290          "capabilities" : [ "Shader" ],
14291          "version": "1.0"
14292        },
14293        {
14294          "enumerant" : "HelperInvocation",
14295          "value" : 23,
14296          "capabilities" : [ "Shader" ],
14297          "version": "1.0"
14298        },
14299        {
14300          "enumerant" : "NumWorkgroups",
14301          "value" : 24,
14302          "version" : "1.0"
14303        },
14304        {
14305          "enumerant" : "WorkgroupSize",
14306          "value" : 25,
14307          "version" : "1.0"
14308        },
14309        {
14310          "enumerant" : "WorkgroupId",
14311          "value" : 26,
14312          "version" : "1.0"
14313        },
14314        {
14315          "enumerant" : "LocalInvocationId",
14316          "value" : 27,
14317          "version" : "1.0"
14318        },
14319        {
14320          "enumerant" : "GlobalInvocationId",
14321          "value" : 28,
14322          "version" : "1.0"
14323        },
14324        {
14325          "enumerant" : "LocalInvocationIndex",
14326          "value" : 29,
14327          "version" : "1.0"
14328        },
14329        {
14330          "enumerant" : "WorkDim",
14331          "value" : 30,
14332          "capabilities" : [ "Kernel" ],
14333          "version": "1.0"
14334        },
14335        {
14336          "enumerant" : "GlobalSize",
14337          "value" : 31,
14338          "capabilities" : [ "Kernel" ],
14339          "version": "1.0"
14340        },
14341        {
14342          "enumerant" : "EnqueuedWorkgroupSize",
14343          "value" : 32,
14344          "capabilities" : [ "Kernel" ],
14345          "version": "1.0"
14346        },
14347        {
14348          "enumerant" : "GlobalOffset",
14349          "value" : 33,
14350          "capabilities" : [ "Kernel" ],
14351          "version": "1.0"
14352        },
14353        {
14354          "enumerant" : "GlobalLinearId",
14355          "value" : 34,
14356          "capabilities" : [ "Kernel" ],
14357          "version": "1.0"
14358        },
14359        {
14360          "enumerant" : "SubgroupSize",
14361          "value" : 36,
14362          "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ],
14363          "version": "1.0"
14364        },
14365        {
14366          "enumerant" : "SubgroupMaxSize",
14367          "value" : 37,
14368          "capabilities" : [ "Kernel" ],
14369          "version": "1.0"
14370        },
14371        {
14372          "enumerant" : "NumSubgroups",
14373          "value" : 38,
14374          "capabilities" : [ "Kernel", "GroupNonUniform" ],
14375          "version": "1.0"
14376        },
14377        {
14378          "enumerant" : "NumEnqueuedSubgroups",
14379          "value" : 39,
14380          "capabilities" : [ "Kernel" ],
14381          "version": "1.0"
14382        },
14383        {
14384          "enumerant" : "SubgroupId",
14385          "value" : 40,
14386          "capabilities" : [ "Kernel", "GroupNonUniform" ],
14387          "version": "1.0"
14388        },
14389        {
14390          "enumerant" : "SubgroupLocalInvocationId",
14391          "value" : 41,
14392          "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ],
14393          "version": "1.0"
14394        },
14395        {
14396          "enumerant" : "VertexIndex",
14397          "value" : 42,
14398          "capabilities" : [ "Shader" ],
14399          "version": "1.0"
14400        },
14401        {
14402          "enumerant" : "InstanceIndex",
14403          "value" : 43,
14404          "capabilities" : [ "Shader" ],
14405          "version": "1.0"
14406        },
14407        {
14408          "enumerant" : "CoreIDARM",
14409          "value" : 4160,
14410          "capabilities" : [ "CoreBuiltinsARM" ],
14411          "version": "1.0"
14412        },
14413        {
14414          "enumerant" : "CoreCountARM",
14415          "value" : 4161,
14416          "capabilities" : [ "CoreBuiltinsARM" ],
14417          "version": "1.0"
14418        },
14419        {
14420          "enumerant" : "CoreMaxIDARM",
14421          "value" : 4162,
14422          "capabilities" : [ "CoreBuiltinsARM" ],
14423          "version": "1.0"
14424        },
14425        {
14426          "enumerant" : "WarpIDARM",
14427          "value" : 4163,
14428          "capabilities" : [ "CoreBuiltinsARM" ],
14429          "version": "1.0"
14430        },
14431        {
14432          "enumerant" : "WarpMaxIDARM",
14433          "value" : 4164,
14434          "capabilities" : [ "CoreBuiltinsARM" ],
14435          "version": "1.0"
14436        },
14437        {
14438          "enumerant" : "SubgroupEqMask",
14439          "aliases" : ["SubgroupEqMaskKHR"],
14440          "value" : 4416,
14441          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
14442          "extensions" : [ "SPV_KHR_shader_ballot" ],
14443          "version" : "1.3"
14444        },
14445        {
14446          "enumerant" : "SubgroupGeMask",
14447          "aliases" : ["SubgroupGeMaskKHR"],
14448          "value" : 4417,
14449          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
14450          "extensions" : [ "SPV_KHR_shader_ballot" ],
14451          "version" : "1.3"
14452        },
14453        {
14454          "enumerant" : "SubgroupGtMask",
14455          "aliases" : ["SubgroupGtMaskKHR"],
14456          "value" : 4418,
14457          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
14458          "extensions" : [ "SPV_KHR_shader_ballot" ],
14459          "version" : "1.3"
14460        },
14461        {
14462          "enumerant" : "SubgroupLeMask",
14463          "aliases" : ["SubgroupLeMaskKHR"],
14464          "value" : 4419,
14465          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
14466          "extensions" : [ "SPV_KHR_shader_ballot" ],
14467          "version" : "1.3"
14468        },
14469        {
14470          "enumerant" : "SubgroupLtMask",
14471          "aliases" : ["SubgroupLtMaskKHR"],
14472          "value" : 4420,
14473          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
14474          "extensions" : [ "SPV_KHR_shader_ballot" ],
14475          "version" : "1.3"
14476        },
14477        {
14478          "enumerant" : "BaseVertex",
14479          "value" : 4424,
14480          "capabilities" : [ "DrawParameters" ],
14481          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
14482          "version" : "1.3"
14483        },
14484        {
14485          "enumerant" : "BaseInstance",
14486          "value" : 4425,
14487          "capabilities" : [ "DrawParameters" ],
14488          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
14489          "version" : "1.3"
14490        },
14491        {
14492          "enumerant" : "DrawIndex",
14493          "value" : 4426,
14494          "capabilities" : [ "DrawParameters", "MeshShadingNV", "MeshShadingEXT" ],
14495          "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader", "SPV_EXT_mesh_shader" ],
14496          "version" : "1.3"
14497        },
14498        {
14499          "enumerant" : "PrimitiveShadingRateKHR",
14500          "value" : 4432,
14501          "capabilities" : [ "FragmentShadingRateKHR" ],
14502          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
14503          "version" : "None"
14504        },
14505        {
14506          "enumerant" : "DeviceIndex",
14507          "value" : 4438,
14508          "capabilities" : [ "DeviceGroup" ],
14509          "extensions" : [ "SPV_KHR_device_group" ],
14510          "version" : "1.3"
14511        },
14512        {
14513          "enumerant" : "ViewIndex",
14514          "value" : 4440,
14515          "capabilities" : [ "MultiView" ],
14516          "extensions" : [ "SPV_KHR_multiview" ],
14517          "version" : "1.3"
14518        },
14519        {
14520          "enumerant" : "ShadingRateKHR",
14521          "value" : 4444,
14522          "capabilities" : [ "FragmentShadingRateKHR" ],
14523          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
14524          "version" : "None"
14525        },
14526        {
14527          "enumerant" : "BaryCoordNoPerspAMD",
14528          "value" : 4992,
14529          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14530          "version" : "None"
14531        },
14532        {
14533          "enumerant" : "BaryCoordNoPerspCentroidAMD",
14534          "value" : 4993,
14535          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14536          "version" : "None"
14537        },
14538        {
14539          "enumerant" : "BaryCoordNoPerspSampleAMD",
14540          "value" : 4994,
14541          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14542          "version" : "None"
14543        },
14544        {
14545          "enumerant" : "BaryCoordSmoothAMD",
14546          "value" : 4995,
14547          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14548          "version" : "None"
14549        },
14550        {
14551          "enumerant" : "BaryCoordSmoothCentroidAMD",
14552          "value" : 4996,
14553          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14554          "version" : "None"
14555        },
14556        {
14557          "enumerant" : "BaryCoordSmoothSampleAMD",
14558          "value" : 4997,
14559          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14560          "version" : "None"
14561        },
14562        {
14563          "enumerant" : "BaryCoordPullModelAMD",
14564          "value" : 4998,
14565          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
14566          "version" : "None"
14567        },
14568        {
14569          "enumerant" : "FragStencilRefEXT",
14570          "value" : 5014,
14571          "capabilities" : [ "StencilExportEXT" ],
14572          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
14573          "version" : "None"
14574        },
14575        {
14576          "enumerant" : "RemainingRecursionLevelsAMDX",
14577          "value" : 5021,
14578          "capabilities" : [ "ShaderEnqueueAMDX" ],
14579          "provisional" : true,
14580          "version" : "None"
14581        },
14582        {
14583          "enumerant" : "ShaderIndexAMDX",
14584          "value" : 5073,
14585          "capabilities" : [ "ShaderEnqueueAMDX" ],
14586          "provisional" : true,
14587          "version" : "None"
14588        },
14589        {
14590          "enumerant" : "ViewportMaskNV",
14591          "value" : 5253,
14592          "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ],
14593          "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ],
14594          "version" : "None"
14595        },
14596        {
14597          "enumerant" : "SecondaryPositionNV",
14598          "value" : 5257,
14599          "capabilities" : [ "ShaderStereoViewNV" ],
14600          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
14601          "version" : "None"
14602        },
14603        {
14604          "enumerant" : "SecondaryViewportMaskNV",
14605          "value" : 5258,
14606          "capabilities" : [ "ShaderStereoViewNV" ],
14607          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
14608          "version" : "None"
14609        },
14610        {
14611          "enumerant" : "PositionPerViewNV",
14612          "value" : 5261,
14613          "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
14614          "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
14615          "version" : "None"
14616        },
14617        {
14618          "enumerant" : "ViewportMaskPerViewNV",
14619          "value" : 5262,
14620          "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
14621          "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
14622          "version" : "None"
14623        },
14624        {
14625          "enumerant" : "FullyCoveredEXT",
14626          "value" : 5264,
14627          "capabilities" : [ "FragmentFullyCoveredEXT" ],
14628          "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
14629          "version" : "None"
14630        },
14631        {
14632          "enumerant" : "TaskCountNV",
14633          "value" : 5274,
14634          "capabilities" : [ "MeshShadingNV" ],
14635          "extensions" : [ "SPV_NV_mesh_shader" ],
14636          "version" : "None"
14637        },
14638        {
14639          "enumerant" : "PrimitiveCountNV",
14640          "value" : 5275,
14641          "capabilities" : [ "MeshShadingNV" ],
14642          "extensions" : [ "SPV_NV_mesh_shader" ],
14643          "version" : "None"
14644        },
14645        {
14646          "enumerant" : "PrimitiveIndicesNV",
14647          "value" : 5276,
14648          "capabilities" : [ "MeshShadingNV" ],
14649          "extensions" : [ "SPV_NV_mesh_shader" ],
14650          "version" : "None"
14651        },
14652        {
14653          "enumerant" : "ClipDistancePerViewNV",
14654          "value" : 5277,
14655          "capabilities" : [ "MeshShadingNV" ],
14656          "extensions" : [ "SPV_NV_mesh_shader" ],
14657          "version" : "None"
14658        },
14659        {
14660          "enumerant" : "CullDistancePerViewNV",
14661          "value" : 5278,
14662          "capabilities" : [ "MeshShadingNV" ],
14663          "extensions" : [ "SPV_NV_mesh_shader" ],
14664          "version" : "None"
14665        },
14666        {
14667          "enumerant" : "LayerPerViewNV",
14668          "value" : 5279,
14669          "capabilities" : [ "MeshShadingNV" ],
14670          "extensions" : [ "SPV_NV_mesh_shader" ],
14671          "version" : "None"
14672        },
14673        {
14674          "enumerant" : "MeshViewCountNV",
14675          "value" : 5280,
14676          "capabilities" : [ "MeshShadingNV" ],
14677          "extensions" : [ "SPV_NV_mesh_shader" ],
14678          "version" : "None"
14679        },
14680        {
14681          "enumerant" : "MeshViewIndicesNV",
14682          "value" : 5281,
14683          "capabilities" : [ "MeshShadingNV" ],
14684          "extensions" : [ "SPV_NV_mesh_shader" ],
14685          "version" : "None"
14686        },
14687        {
14688          "enumerant" : "BaryCoordKHR",
14689          "aliases" : ["BaryCoordNV"],
14690          "value" : 5286,
14691          "capabilities" : [ "FragmentBarycentricKHR" ],
14692          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
14693          "version" : "None"
14694        },
14695        {
14696          "enumerant" : "BaryCoordNoPerspKHR",
14697          "aliases" : ["BaryCoordNoPerspNV"],
14698          "value" : 5287,
14699          "capabilities" : [ "FragmentBarycentricKHR" ],
14700          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
14701          "version" : "None"
14702        },
14703        {
14704          "enumerant" : "FragSizeEXT",
14705          "aliases" : ["FragmentSizeNV"],
14706          "value" : 5292 ,
14707          "capabilities" : [ "FragmentDensityEXT" ],
14708          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
14709          "version" : "None"
14710        },
14711        {
14712          "enumerant" : "FragInvocationCountEXT",
14713          "aliases" : ["InvocationsPerPixelNV"],
14714          "value" : 5293,
14715          "capabilities" : [ "FragmentDensityEXT" ],
14716          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
14717          "version" : "None"
14718        },
14719        {
14720          "enumerant" : "PrimitivePointIndicesEXT",
14721          "value" : 5294,
14722          "capabilities" : [ "MeshShadingEXT" ],
14723          "extensions" : [ "SPV_EXT_mesh_shader" ],
14724          "version" : "None"
14725        },
14726        {
14727          "enumerant" : "PrimitiveLineIndicesEXT",
14728          "value" : 5295,
14729          "capabilities" : [ "MeshShadingEXT" ],
14730          "extensions" : [ "SPV_EXT_mesh_shader" ],
14731          "version" : "None"
14732        },
14733        {
14734          "enumerant" : "PrimitiveTriangleIndicesEXT",
14735          "value" : 5296,
14736          "capabilities" : [ "MeshShadingEXT" ],
14737          "extensions" : [ "SPV_EXT_mesh_shader" ],
14738          "version" : "None"
14739        },
14740        {
14741          "enumerant" : "CullPrimitiveEXT",
14742          "value" : 5299,
14743          "capabilities" : [ "MeshShadingEXT" ],
14744          "extensions" : [ "SPV_EXT_mesh_shader" ],
14745          "version" : "None"
14746        },
14747        {
14748          "enumerant" : "LaunchIdKHR",
14749          "aliases" : ["LaunchIdNV"],
14750          "value" : 5319,
14751          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14752          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14753          "version" : "None"
14754        },
14755        {
14756          "enumerant" : "LaunchSizeKHR",
14757          "aliases" : ["LaunchSizeNV"],
14758          "value" : 5320,
14759          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14760          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14761          "version" : "None"
14762        },
14763        {
14764          "enumerant" : "WorldRayOriginKHR",
14765          "aliases" : ["WorldRayOriginNV"],
14766          "value" : 5321,
14767          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14768          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14769          "version" : "None"
14770        },
14771        {
14772          "enumerant" : "WorldRayDirectionKHR",
14773          "aliases" : ["WorldRayDirectionNV"],
14774          "value" : 5322,
14775          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14776          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14777          "version" : "None"
14778        },
14779        {
14780          "enumerant" : "ObjectRayOriginKHR",
14781          "aliases" : ["ObjectRayOriginNV"],
14782          "value" : 5323,
14783          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14784          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14785          "version" : "None"
14786        },
14787        {
14788          "enumerant" : "ObjectRayDirectionKHR",
14789          "aliases" : ["ObjectRayDirectionNV"],
14790          "value" : 5324,
14791          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14792          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14793          "version" : "None"
14794        },
14795        {
14796          "enumerant" : "RayTminKHR",
14797          "aliases" : ["RayTminNV"],
14798          "value" : 5325,
14799          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14800          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14801          "version" : "None"
14802        },
14803        {
14804          "enumerant" : "RayTmaxKHR",
14805          "aliases" : ["RayTmaxNV"],
14806          "value" : 5326,
14807          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14808          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14809          "version" : "None"
14810        },
14811        {
14812          "enumerant" : "InstanceCustomIndexKHR",
14813          "aliases" : ["InstanceCustomIndexNV"],
14814          "value" : 5327,
14815          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14816          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14817          "version" : "None"
14818        },
14819        {
14820          "enumerant" : "ObjectToWorldKHR",
14821          "aliases" : ["ObjectToWorldNV"],
14822          "value" : 5330,
14823          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14824          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14825          "version" : "None"
14826        },
14827        {
14828          "enumerant" : "WorldToObjectKHR",
14829          "aliases" : ["WorldToObjectNV"],
14830          "value" : 5331,
14831          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14832          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14833          "version" : "None"
14834        },
14835        {
14836          "enumerant" : "HitTNV",
14837          "value" : 5332,
14838          "capabilities" : [ "RayTracingNV" ],
14839          "extensions" : [ "SPV_NV_ray_tracing" ],
14840          "version" : "None"
14841        },
14842        {
14843          "enumerant" : "HitKindKHR",
14844          "aliases" : ["HitKindNV"],
14845          "value" : 5333,
14846          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14847          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14848          "version" : "None"
14849        },
14850        {
14851          "enumerant" : "CurrentRayTimeNV",
14852          "value" : 5334,
14853          "capabilities" : [ "RayTracingMotionBlurNV" ],
14854          "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
14855          "version" : "None"
14856        },
14857        {
14858          "enumerant" : "HitTriangleVertexPositionsKHR",
14859          "value" : 5335,
14860          "capabilities" : [ "RayTracingPositionFetchKHR" ],
14861          "version" : "None"
14862        },
14863        {
14864          "enumerant" : "HitMicroTriangleVertexPositionsNV",
14865          "value" : 5337,
14866          "capabilities" : [ "RayTracingDisplacementMicromapNV" ],
14867          "version" : "None"
14868        },
14869        {
14870          "enumerant" : "HitMicroTriangleVertexBarycentricsNV",
14871          "value" : 5344,
14872          "capabilities" : [ "RayTracingDisplacementMicromapNV" ],
14873          "version" : "None"
14874        },
14875        {
14876          "enumerant" : "IncomingRayFlagsKHR",
14877          "aliases" : ["IncomingRayFlagsNV"],
14878          "value" : 5351,
14879          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
14880          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
14881          "version" : "None"
14882        },
14883        {
14884          "enumerant" : "RayGeometryIndexKHR",
14885          "value" : 5352,
14886          "capabilities" : [ "RayTracingKHR" ],
14887          "extensions" : [ "SPV_KHR_ray_tracing" ],
14888          "version" : "None"
14889        },
14890        {
14891          "enumerant" : "WarpsPerSMNV",
14892          "value" : 5374,
14893          "capabilities" : [ "ShaderSMBuiltinsNV" ],
14894          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
14895          "version" : "None"
14896        },
14897        {
14898          "enumerant" : "SMCountNV",
14899          "value" : 5375,
14900          "capabilities" : [ "ShaderSMBuiltinsNV" ],
14901          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
14902          "version" : "None"
14903        },
14904        {
14905          "enumerant" : "WarpIDNV",
14906          "value" : 5376,
14907          "capabilities" : [ "ShaderSMBuiltinsNV" ],
14908          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
14909          "version" : "None"
14910        },
14911        {
14912          "enumerant" : "SMIDNV",
14913          "value" : 5377,
14914          "capabilities" : [ "ShaderSMBuiltinsNV" ],
14915          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
14916          "version" : "None"
14917        },
14918        {
14919          "enumerant" : "HitKindFrontFacingMicroTriangleNV",
14920          "value" : 5405,
14921          "capabilities" : [ "RayTracingDisplacementMicromapNV" ],
14922          "version" : "None"
14923        },
14924        {
14925          "enumerant" : "HitKindBackFacingMicroTriangleNV",
14926          "value" : 5406,
14927          "capabilities" : [ "RayTracingDisplacementMicromapNV" ],
14928          "version" : "None"
14929        },
14930        {
14931          "enumerant" : "CullMaskKHR",
14932          "value"  : 6021,
14933          "capabilities" : [ "RayCullMaskKHR" ],
14934          "extensions" : [ "SPV_KHR_ray_cull_mask" ],
14935          "version" : "None"
14936        }
14937      ]
14938    },
14939    {
14940      "category" : "ValueEnum",
14941      "kind" : "Scope",
14942      "enumerants" : [
14943        {
14944          "enumerant" : "CrossDevice",
14945          "value" : 0,
14946          "version" : "1.0"
14947        },
14948        {
14949          "enumerant" : "Device",
14950          "value" : 1,
14951          "version" : "1.0"
14952        },
14953        {
14954          "enumerant" : "Workgroup",
14955          "value" : 2,
14956          "version" : "1.0"
14957        },
14958        {
14959          "enumerant" : "Subgroup",
14960          "value" : 3,
14961          "version" : "1.0"
14962        },
14963        {
14964          "enumerant" : "Invocation",
14965          "value" : 4,
14966          "version" : "1.0"
14967        },
14968        {
14969          "enumerant" : "QueueFamily",
14970          "aliases" : ["QueueFamilyKHR"],
14971          "value" : 5,
14972          "capabilities" : [ "VulkanMemoryModel" ],
14973          "version" : "1.5"
14974        },
14975        {
14976          "enumerant" : "ShaderCallKHR",
14977          "value" : 6,
14978          "capabilities" : [ "RayTracingKHR" ],
14979          "version" : "None"
14980        }
14981      ]
14982    },
14983    {
14984      "category" : "ValueEnum",
14985      "kind" : "GroupOperation",
14986      "enumerants" : [
14987        {
14988          "enumerant" : "Reduce",
14989          "value" : 0,
14990          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ],
14991          "version": "1.0"
14992        },
14993        {
14994          "enumerant" : "InclusiveScan",
14995          "value" : 1,
14996          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ],
14997          "version": "1.0"
14998        },
14999        {
15000          "enumerant" : "ExclusiveScan",
15001          "value" : 2,
15002          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ],
15003          "version": "1.0"
15004        },
15005        {
15006          "enumerant" : "ClusteredReduce",
15007          "value" : 3,
15008          "capabilities" : [ "GroupNonUniformClustered" ],
15009          "version" : "1.3"
15010        },
15011        {
15012          "enumerant" : "PartitionedReduceNV",
15013          "value" : 6,
15014          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
15015          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
15016          "version" : "None"
15017        },
15018        {
15019          "enumerant" : "PartitionedInclusiveScanNV",
15020          "value" : 7,
15021          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
15022          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
15023          "version" : "None"
15024        },
15025        {
15026          "enumerant" : "PartitionedExclusiveScanNV",
15027          "value" : 8,
15028          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
15029          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
15030          "version" : "None"
15031        }
15032      ]
15033    },
15034    {
15035      "category" : "ValueEnum",
15036      "kind" : "KernelEnqueueFlags",
15037      "enumerants" : [
15038        {
15039          "enumerant" : "NoWait",
15040          "value" : 0,
15041          "capabilities" : [ "Kernel" ],
15042          "version": "1.0"
15043        },
15044        {
15045          "enumerant" : "WaitKernel",
15046          "value" : 1,
15047          "capabilities" : [ "Kernel" ],
15048          "version": "1.0"
15049        },
15050        {
15051          "enumerant" : "WaitWorkGroup",
15052          "value" : 2,
15053          "capabilities" : [ "Kernel" ],
15054          "version": "1.0"
15055        }
15056      ]
15057    },
15058    {
15059      "category" : "ValueEnum",
15060      "kind" : "Capability",
15061      "enumerants" : [
15062        {
15063          "enumerant" : "Matrix",
15064          "value" : 0,
15065          "version" : "1.0"
15066        },
15067        {
15068          "enumerant" : "Shader",
15069          "value" : 1,
15070          "capabilities" : [ "Matrix" ],
15071          "version": "1.0"
15072        },
15073        {
15074          "enumerant" : "Geometry",
15075          "value" : 2,
15076          "capabilities" : [ "Shader" ],
15077          "version": "1.0"
15078        },
15079        {
15080          "enumerant" : "Tessellation",
15081          "value" : 3,
15082          "capabilities" : [ "Shader" ],
15083          "version": "1.0"
15084        },
15085        {
15086          "enumerant" : "Addresses",
15087          "value" : 4,
15088          "version" : "1.0"
15089        },
15090        {
15091          "enumerant" : "Linkage",
15092          "value" : 5,
15093          "version" : "1.0"
15094        },
15095        {
15096          "enumerant" : "Kernel",
15097          "value" : 6,
15098          "version" : "1.0"
15099        },
15100        {
15101          "enumerant" : "Vector16",
15102          "value" : 7,
15103          "capabilities" : [ "Kernel" ],
15104          "version": "1.0"
15105        },
15106        {
15107          "enumerant" : "Float16Buffer",
15108          "value" : 8,
15109          "capabilities" : [ "Kernel" ],
15110          "version": "1.0"
15111        },
15112        {
15113          "enumerant" : "Float16",
15114          "value" : 9,
15115          "version" : "1.0"
15116        },
15117        {
15118          "enumerant" : "Float64",
15119          "value" : 10,
15120          "version" : "1.0"
15121        },
15122        {
15123          "enumerant" : "Int64",
15124          "value" : 11,
15125          "version" : "1.0"
15126        },
15127        {
15128          "enumerant" : "Int64Atomics",
15129          "value" : 12,
15130          "capabilities" : [ "Int64" ],
15131          "version": "1.0"
15132        },
15133        {
15134          "enumerant" : "ImageBasic",
15135          "value" : 13,
15136          "capabilities" : [ "Kernel" ],
15137          "version": "1.0"
15138        },
15139        {
15140          "enumerant" : "ImageReadWrite",
15141          "value" : 14,
15142          "capabilities" : [ "ImageBasic" ],
15143          "version": "1.0"
15144        },
15145        {
15146          "enumerant" : "ImageMipmap",
15147          "value" : 15,
15148          "capabilities" : [ "ImageBasic" ],
15149          "version": "1.0"
15150        },
15151        {
15152          "enumerant" : "Pipes",
15153          "value" : 17,
15154          "capabilities" : [ "Kernel" ],
15155          "version": "1.0"
15156        },
15157        {
15158          "enumerant" : "Groups",
15159          "value" : 18,
15160          "extensions" : [ "SPV_AMD_shader_ballot" ],
15161          "version": "1.0"
15162        },
15163        {
15164          "enumerant" : "DeviceEnqueue",
15165          "value" : 19,
15166          "capabilities" : [ "Kernel" ],
15167          "version": "1.0"
15168        },
15169        {
15170          "enumerant" : "LiteralSampler",
15171          "value" : 20,
15172          "capabilities" : [ "Kernel" ],
15173          "version": "1.0"
15174        },
15175        {
15176          "enumerant" : "AtomicStorage",
15177          "value" : 21,
15178          "capabilities" : [ "Shader" ],
15179          "version": "1.0"
15180        },
15181        {
15182          "enumerant" : "Int16",
15183          "value" : 22,
15184          "version" : "1.0"
15185        },
15186        {
15187          "enumerant" : "TessellationPointSize",
15188          "value" : 23,
15189          "capabilities" : [ "Tessellation" ],
15190          "version": "1.0"
15191        },
15192        {
15193          "enumerant" : "GeometryPointSize",
15194          "value" : 24,
15195          "capabilities" : [ "Geometry" ],
15196          "version": "1.0"
15197        },
15198        {
15199          "enumerant" : "ImageGatherExtended",
15200          "value" : 25,
15201          "capabilities" : [ "Shader" ],
15202          "version": "1.0"
15203        },
15204        {
15205          "enumerant" : "StorageImageMultisample",
15206          "value" : 27,
15207          "capabilities" : [ "Shader" ],
15208          "version": "1.0"
15209        },
15210        {
15211          "enumerant" : "UniformBufferArrayDynamicIndexing",
15212          "value" : 28,
15213          "capabilities" : [ "Shader" ],
15214          "version": "1.0"
15215        },
15216        {
15217          "enumerant" : "SampledImageArrayDynamicIndexing",
15218          "value" : 29,
15219          "capabilities" : [ "Shader" ],
15220          "version": "1.0"
15221        },
15222        {
15223          "enumerant" : "StorageBufferArrayDynamicIndexing",
15224          "value" : 30,
15225          "capabilities" : [ "Shader" ],
15226          "version": "1.0"
15227        },
15228        {
15229          "enumerant" : "StorageImageArrayDynamicIndexing",
15230          "value" : 31,
15231          "capabilities" : [ "Shader" ],
15232          "version": "1.0"
15233        },
15234        {
15235          "enumerant" : "ClipDistance",
15236          "value" : 32,
15237          "capabilities" : [ "Shader" ],
15238          "version": "1.0"
15239        },
15240        {
15241          "enumerant" : "CullDistance",
15242          "value" : 33,
15243          "capabilities" : [ "Shader" ],
15244          "version": "1.0"
15245        },
15246        {
15247          "enumerant" : "ImageCubeArray",
15248          "value" : 34,
15249          "capabilities" : [ "SampledCubeArray" ],
15250          "version": "1.0"
15251        },
15252        {
15253          "enumerant" : "SampleRateShading",
15254          "value" : 35,
15255          "capabilities" : [ "Shader" ],
15256          "version": "1.0"
15257        },
15258        {
15259          "enumerant" : "ImageRect",
15260          "value" : 36,
15261          "capabilities" : [ "SampledRect" ],
15262          "version": "1.0"
15263        },
15264        {
15265          "enumerant" : "SampledRect",
15266          "value" : 37,
15267          "capabilities" : [ "Shader" ],
15268          "version": "1.0"
15269        },
15270        {
15271          "enumerant" : "GenericPointer",
15272          "value" : 38,
15273          "capabilities" : [ "Addresses" ],
15274          "version": "1.0"
15275        },
15276        {
15277          "enumerant" : "Int8",
15278          "value" : 39,
15279          "version" : "1.0"
15280        },
15281        {
15282          "enumerant" : "InputAttachment",
15283          "value" : 40,
15284          "capabilities" : [ "Shader" ],
15285          "version": "1.0"
15286        },
15287        {
15288          "enumerant" : "SparseResidency",
15289          "value" : 41,
15290          "capabilities" : [ "Shader" ],
15291          "version": "1.0"
15292        },
15293        {
15294          "enumerant" : "MinLod",
15295          "value" : 42,
15296          "capabilities" : [ "Shader" ],
15297          "version": "1.0"
15298        },
15299        {
15300          "enumerant" : "Sampled1D",
15301          "value" : 43,
15302          "version" : "1.0"
15303        },
15304        {
15305          "enumerant" : "Image1D",
15306          "value" : 44,
15307          "capabilities" : [ "Sampled1D" ],
15308          "version": "1.0"
15309        },
15310        {
15311          "enumerant" : "SampledCubeArray",
15312          "value" : 45,
15313          "capabilities" : [ "Shader" ],
15314          "version": "1.0"
15315        },
15316        {
15317          "enumerant" : "SampledBuffer",
15318          "value" : 46,
15319          "version" : "1.0"
15320        },
15321        {
15322          "enumerant" : "ImageBuffer",
15323          "value" : 47,
15324          "capabilities" : [ "SampledBuffer" ],
15325          "version": "1.0"
15326        },
15327        {
15328          "enumerant" : "ImageMSArray",
15329          "value" : 48,
15330          "capabilities" : [ "Shader" ],
15331          "version": "1.0"
15332        },
15333        {
15334          "enumerant" : "StorageImageExtendedFormats",
15335          "value" : 49,
15336          "capabilities" : [ "Shader" ],
15337          "version": "1.0"
15338        },
15339        {
15340          "enumerant" : "ImageQuery",
15341          "value" : 50,
15342          "capabilities" : [ "Shader" ],
15343          "version": "1.0"
15344        },
15345        {
15346          "enumerant" : "DerivativeControl",
15347          "value" : 51,
15348          "capabilities" : [ "Shader" ],
15349          "version": "1.0"
15350        },
15351        {
15352          "enumerant" : "InterpolationFunction",
15353          "value" : 52,
15354          "capabilities" : [ "Shader" ],
15355          "version": "1.0"
15356        },
15357        {
15358          "enumerant" : "TransformFeedback",
15359          "value" : 53,
15360          "capabilities" : [ "Shader" ],
15361          "version": "1.0"
15362        },
15363        {
15364          "enumerant" : "GeometryStreams",
15365          "value" : 54,
15366          "capabilities" : [ "Geometry" ],
15367          "version": "1.0"
15368        },
15369        {
15370          "enumerant" : "StorageImageReadWithoutFormat",
15371          "value" : 55,
15372          "capabilities" : [ "Shader" ],
15373          "version": "1.0"
15374        },
15375        {
15376          "enumerant" : "StorageImageWriteWithoutFormat",
15377          "value" : 56,
15378          "capabilities" : [ "Shader" ],
15379          "version": "1.0"
15380        },
15381        {
15382          "enumerant" : "MultiViewport",
15383          "value" : 57,
15384          "capabilities" : [ "Geometry" ],
15385          "version": "1.0"
15386        },
15387        {
15388          "enumerant" : "SubgroupDispatch",
15389          "value" : 58,
15390          "capabilities" : [ "DeviceEnqueue" ],
15391          "version" : "1.1"
15392        },
15393        {
15394          "enumerant" : "NamedBarrier",
15395          "value" : 59,
15396          "capabilities" : [ "Kernel" ],
15397          "version" : "1.1"
15398        },
15399        {
15400          "enumerant" : "PipeStorage",
15401          "value" : 60,
15402          "capabilities" : [ "Pipes" ],
15403          "version" : "1.1"
15404        },
15405        {
15406          "enumerant" : "GroupNonUniform",
15407          "value" : 61,
15408          "version" : "1.3"
15409        },
15410        {
15411          "enumerant" : "GroupNonUniformVote",
15412          "value" : 62,
15413          "capabilities" : [ "GroupNonUniform" ],
15414          "version" : "1.3"
15415        },
15416        {
15417          "enumerant" : "GroupNonUniformArithmetic",
15418          "value" : 63,
15419          "capabilities" : [ "GroupNonUniform" ],
15420          "version" : "1.3"
15421        },
15422        {
15423          "enumerant" : "GroupNonUniformBallot",
15424          "value" : 64,
15425          "capabilities" : [ "GroupNonUniform" ],
15426          "version" : "1.3"
15427        },
15428        {
15429          "enumerant" : "GroupNonUniformShuffle",
15430          "value" : 65,
15431          "capabilities" : [ "GroupNonUniform" ],
15432          "version" : "1.3"
15433        },
15434        {
15435          "enumerant" : "GroupNonUniformShuffleRelative",
15436          "value" : 66,
15437          "capabilities" : [ "GroupNonUniform" ],
15438          "version" : "1.3"
15439        },
15440        {
15441          "enumerant" : "GroupNonUniformClustered",
15442          "value" : 67,
15443          "capabilities" : [ "GroupNonUniform" ],
15444          "version" : "1.3"
15445        },
15446        {
15447          "enumerant" : "GroupNonUniformQuad",
15448          "value" : 68,
15449          "capabilities" : [ "GroupNonUniform" ],
15450          "version" : "1.3"
15451        },
15452        {
15453          "enumerant" : "ShaderLayer",
15454          "value" : 69,
15455          "version" : "1.5"
15456        },
15457        {
15458          "enumerant" : "ShaderViewportIndex",
15459          "value" : 70,
15460          "version" : "1.5"
15461        },
15462        {
15463          "enumerant" : "UniformDecoration",
15464          "value" : 71,
15465          "version" : "1.6"
15466        },
15467        {
15468          "enumerant" : "CoreBuiltinsARM",
15469          "value" : 4165,
15470          "extensions" : [ "SPV_ARM_core_builtins" ],
15471          "version": "None"
15472        },
15473        {
15474          "enumerant" : "TileImageColorReadAccessEXT",
15475          "value" : 4166,
15476          "extensions" : [ "SPV_EXT_shader_tile_image" ],
15477          "version" : "None"
15478        },
15479        {
15480          "enumerant" : "TileImageDepthReadAccessEXT",
15481          "value" : 4167,
15482          "extensions" : [ "SPV_EXT_shader_tile_image" ],
15483          "version" : "None"
15484        },
15485        {
15486          "enumerant" : "TileImageStencilReadAccessEXT",
15487          "value" : 4168,
15488          "extensions" : [ "SPV_EXT_shader_tile_image" ],
15489          "version" : "None"
15490        },
15491        {
15492          "enumerant" : "CooperativeMatrixLayoutsARM",
15493          "value" : 4201,
15494          "extensions" : [ "SPV_ARM_cooperative_matrix_layouts" ],
15495          "version" : "None"
15496        },
15497        {
15498          "enumerant" : "FragmentShadingRateKHR",
15499          "value" : 4422,
15500          "capabilities" : [ "Shader" ],
15501          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
15502          "version" : "None"
15503        },
15504        {
15505          "enumerant" : "SubgroupBallotKHR",
15506          "value" : 4423,
15507          "extensions" : [ "SPV_KHR_shader_ballot" ],
15508          "version" : "None"
15509        },
15510        {
15511          "enumerant" : "DrawParameters",
15512          "value" : 4427,
15513          "capabilities" : [ "Shader" ],
15514          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
15515          "version" : "1.3"
15516        },
15517        {
15518          "enumerant" : "WorkgroupMemoryExplicitLayoutKHR",
15519          "value" : 4428,
15520          "capabilities" : [ "Shader" ],
15521          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
15522          "version" : "None"
15523        },
15524        {
15525          "enumerant" : "WorkgroupMemoryExplicitLayout8BitAccessKHR",
15526          "value" : 4429,
15527          "capabilities" : [ "WorkgroupMemoryExplicitLayoutKHR" ],
15528          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
15529          "version" : "None"
15530        },
15531        {
15532          "enumerant" : "WorkgroupMemoryExplicitLayout16BitAccessKHR",
15533          "value" : 4430,
15534          "capabilities" : [ "WorkgroupMemoryExplicitLayoutKHR" ],
15535          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
15536          "version" : "None"
15537        },
15538        {
15539          "enumerant" : "SubgroupVoteKHR",
15540          "value" : 4431,
15541          "extensions" : [ "SPV_KHR_subgroup_vote" ],
15542          "version" : "None"
15543        },
15544        {
15545          "enumerant" : "StorageBuffer16BitAccess",
15546          "aliases" : ["StorageUniformBufferBlock16"],
15547          "value" : 4433,
15548          "extensions" : [ "SPV_KHR_16bit_storage" ],
15549          "version" : "1.3"
15550        },
15551        {
15552          "enumerant" : "UniformAndStorageBuffer16BitAccess",
15553          "aliases" : ["StorageUniform16"],
15554          "value" : 4434,
15555          "capabilities" : [ "StorageBuffer16BitAccess" ],
15556          "extensions" : [ "SPV_KHR_16bit_storage" ],
15557          "version" : "1.3"
15558        },
15559        {
15560          "enumerant" : "StoragePushConstant16",
15561          "value" : 4435,
15562          "extensions" : [ "SPV_KHR_16bit_storage" ],
15563          "version" : "1.3"
15564        },
15565        {
15566          "enumerant" : "StorageInputOutput16",
15567          "value" : 4436,
15568          "extensions" : [ "SPV_KHR_16bit_storage" ],
15569          "version" : "1.3"
15570        },
15571        {
15572          "enumerant" : "DeviceGroup",
15573          "value" : 4437,
15574          "extensions" : [ "SPV_KHR_device_group" ],
15575          "version" : "1.3"
15576        },
15577        {
15578          "enumerant" : "MultiView",
15579          "value" : 4439,
15580          "capabilities" : [ "Shader" ],
15581          "extensions" : [ "SPV_KHR_multiview" ],
15582          "version" : "1.3"
15583        },
15584        {
15585          "enumerant" : "VariablePointersStorageBuffer",
15586          "value" : 4441,
15587          "capabilities" : [ "Shader" ],
15588          "extensions" : [ "SPV_KHR_variable_pointers" ],
15589          "version" : "1.3"
15590        },
15591        {
15592          "enumerant" : "VariablePointers",
15593          "value" : 4442,
15594          "capabilities" : [ "VariablePointersStorageBuffer" ],
15595          "extensions" : [ "SPV_KHR_variable_pointers" ],
15596          "version" : "1.3"
15597        },
15598        {
15599          "enumerant" : "AtomicStorageOps",
15600          "value" : 4445,
15601          "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ],
15602          "version" : "None"
15603        },
15604        {
15605          "enumerant" : "SampleMaskPostDepthCoverage",
15606          "value" : 4447,
15607          "extensions" : [ "SPV_KHR_post_depth_coverage" ],
15608          "version" : "None"
15609        },
15610        {
15611          "enumerant" : "StorageBuffer8BitAccess",
15612          "value" : 4448,
15613          "extensions" : [ "SPV_KHR_8bit_storage" ],
15614          "version" : "1.5"
15615        },
15616        {
15617          "enumerant" : "UniformAndStorageBuffer8BitAccess",
15618          "value" : 4449,
15619          "capabilities" : [ "StorageBuffer8BitAccess" ],
15620          "extensions" : [ "SPV_KHR_8bit_storage" ],
15621          "version" : "1.5"
15622        },
15623        {
15624          "enumerant" : "StoragePushConstant8",
15625          "value" : 4450,
15626          "extensions" : [ "SPV_KHR_8bit_storage" ],
15627          "version" : "1.5"
15628        },
15629        {
15630          "enumerant" : "DenormPreserve",
15631          "value" : 4464,
15632          "extensions" : [ "SPV_KHR_float_controls" ],
15633          "version" : "1.4"
15634        },
15635        {
15636          "enumerant" : "DenormFlushToZero",
15637          "value" : 4465,
15638          "extensions" : [ "SPV_KHR_float_controls" ],
15639          "version" : "1.4"
15640        },
15641        {
15642          "enumerant" : "SignedZeroInfNanPreserve",
15643          "value" : 4466,
15644          "extensions" : [ "SPV_KHR_float_controls" ],
15645          "version" : "1.4"
15646        },
15647        {
15648          "enumerant" : "RoundingModeRTE",
15649          "value" : 4467,
15650          "extensions" : [ "SPV_KHR_float_controls" ],
15651          "version" : "1.4"
15652        },
15653        {
15654          "enumerant" : "RoundingModeRTZ",
15655          "value" : 4468,
15656          "extensions" : [ "SPV_KHR_float_controls" ],
15657          "version" : "1.4"
15658        },
15659        {
15660          "enumerant" : "RayQueryProvisionalKHR",
15661          "value" : 4471,
15662          "capabilities" : [ "Shader" ],
15663          "extensions" : [ "SPV_KHR_ray_query" ],
15664          "version" : "None"
15665        },
15666        {
15667          "enumerant" : "RayQueryKHR",
15668          "value" : 4472,
15669          "capabilities" : [ "Shader" ],
15670          "extensions" : [ "SPV_KHR_ray_query" ],
15671          "version" : "None"
15672        },
15673        {
15674          "enumerant" : "UntypedPointersKHR",
15675          "value" : 4473,
15676          "extensions" : [ "SPV_KHR_untyped_pointers" ],
15677          "provisional" : true,
15678          "version" : "None"
15679        },
15680        {
15681          "enumerant" : "RayTraversalPrimitiveCullingKHR",
15682          "value" : 4478,
15683          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
15684          "extensions" : [ "SPV_KHR_ray_query","SPV_KHR_ray_tracing" ],
15685          "version" : "None"
15686        },
15687        {
15688          "enumerant" : "RayTracingKHR",
15689          "value" : 4479,
15690          "capabilities" : [ "Shader" ],
15691          "extensions" : [ "SPV_KHR_ray_tracing" ],
15692          "version" : "None"
15693        },
15694        {
15695          "enumerant" : "TextureSampleWeightedQCOM",
15696          "value" : 4484,
15697          "extensions" : [ "SPV_QCOM_image_processing" ],
15698          "version" : "None"
15699        },
15700        {
15701          "enumerant" : "TextureBoxFilterQCOM",
15702          "value" : 4485,
15703          "extensions" : [ "SPV_QCOM_image_processing" ],
15704          "version" : "None"
15705        },
15706        {
15707          "enumerant" : "TextureBlockMatchQCOM",
15708          "value" : 4486,
15709          "extensions" : [ "SPV_QCOM_image_processing" ],
15710          "version" : "None"
15711        },
15712        {
15713          "enumerant" : "TextureBlockMatch2QCOM",
15714          "value" : 4498,
15715          "extensions" : [ "SPV_QCOM_image_processing2" ],
15716          "version" : "None"
15717        },
15718        {
15719          "enumerant" : "Float16ImageAMD",
15720          "value" : 5008,
15721          "capabilities" : [ "Shader" ],
15722          "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ],
15723          "version" : "None"
15724        },
15725        {
15726          "enumerant" : "ImageGatherBiasLodAMD",
15727          "value" : 5009,
15728          "capabilities" : [ "Shader" ],
15729          "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ],
15730          "version" : "None"
15731        },
15732        {
15733          "enumerant" : "FragmentMaskAMD",
15734          "value" : 5010,
15735          "capabilities" : [ "Shader" ],
15736          "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
15737          "version" : "None"
15738        },
15739        {
15740          "enumerant" : "StencilExportEXT",
15741          "value" : 5013,
15742          "capabilities" : [ "Shader" ],
15743          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
15744          "version" : "None"
15745        },
15746        {
15747          "enumerant" : "ImageReadWriteLodAMD",
15748          "value" : 5015,
15749          "capabilities" : [ "Shader" ],
15750          "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
15751          "version" : "None"
15752        },
15753        {
15754          "enumerant" : "Int64ImageEXT",
15755          "value" : 5016,
15756          "capabilities" : [ "Shader" ],
15757          "extensions" : [ "SPV_EXT_shader_image_int64" ],
15758          "version" : "None"
15759        },
15760        {
15761          "enumerant" : "ShaderClockKHR",
15762          "value" : 5055,
15763          "extensions" : [ "SPV_KHR_shader_clock" ],
15764          "version" : "None"
15765        },
15766        {
15767          "enumerant" : "ShaderEnqueueAMDX",
15768          "value" : 5067,
15769          "capabilities" : [ "Shader" ],
15770          "extensions" : [ "SPV_AMDX_shader_enqueue" ],
15771          "provisional" : true,
15772          "version" : "None"
15773        },
15774        {
15775          "enumerant" : "QuadControlKHR",
15776          "value" : 5087,
15777          "extensions" : [ "SPV_KHR_quad_control" ],
15778          "version" : "None"
15779        },
15780        {
15781          "enumerant" : "SampleMaskOverrideCoverageNV",
15782          "value" : 5249,
15783          "capabilities" : [ "SampleRateShading" ],
15784          "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
15785          "version" : "None"
15786        },
15787        {
15788          "enumerant" : "GeometryShaderPassthroughNV",
15789          "value" : 5251,
15790          "capabilities" : [ "Geometry" ],
15791          "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
15792          "version" : "None"
15793        },
15794        {
15795          "enumerant" : "ShaderViewportIndexLayerEXT",
15796          "aliases" : ["ShaderViewportIndexLayerNV"],
15797          "value" : 5254,
15798          "capabilities" : [ "MultiViewport" ],
15799          "extensions" : [ "SPV_EXT_shader_viewport_index_layer", "SPV_NV_viewport_array2" ],
15800          "version" : "None"
15801        },
15802        {
15803          "enumerant" : "ShaderViewportMaskNV",
15804          "value" : 5255,
15805          "capabilities" : [ "ShaderViewportIndexLayerEXT" ],
15806          "extensions" : [ "SPV_NV_viewport_array2" ],
15807          "version" : "None"
15808        },
15809        {
15810          "enumerant" : "ShaderStereoViewNV",
15811          "value" : 5259,
15812          "capabilities" : [ "ShaderViewportMaskNV" ],
15813          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
15814          "version" : "None"
15815        },
15816        {
15817          "enumerant" : "PerViewAttributesNV",
15818          "value" : 5260,
15819          "capabilities" : [ "MultiView" ],
15820          "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ],
15821          "version" : "None"
15822        },
15823        {
15824          "enumerant" : "FragmentFullyCoveredEXT",
15825          "value" : 5265,
15826          "capabilities" : [ "Shader" ],
15827          "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
15828          "version" : "None"
15829        },
15830        {
15831          "enumerant" : "MeshShadingNV",
15832          "value" : 5266,
15833          "capabilities" : [ "Shader" ],
15834          "extensions" : [ "SPV_NV_mesh_shader" ],
15835          "version" : "None"
15836        },
15837        {
15838          "enumerant" : "ImageFootprintNV",
15839          "value" : 5282,
15840          "extensions" : [ "SPV_NV_shader_image_footprint" ],
15841          "version" : "None"
15842        },
15843        {
15844          "enumerant" : "MeshShadingEXT",
15845          "value" : 5283,
15846          "capabilities" : [ "Shader" ],
15847          "extensions" : [ "SPV_EXT_mesh_shader" ],
15848          "version" : "None"
15849        },
15850        {
15851          "enumerant" : "FragmentBarycentricKHR",
15852          "aliases" : ["FragmentBarycentricNV"],
15853          "value" : 5284,
15854          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
15855          "version" : "None"
15856        },
15857        {
15858          "enumerant" : "ComputeDerivativeGroupQuadsKHR",
15859          "aliases" : ["ComputeDerivativeGroupQuadsNV"],
15860          "value" : 5288,
15861          "capabilities" : [ "Shader" ],
15862          "extensions" : [ "SPV_NV_compute_shader_derivatives", "SPV_KHR_compute_shader_derivatives" ],
15863          "version" : "None"
15864        },
15865        {
15866          "enumerant" : "FragmentDensityEXT",
15867          "aliases" : ["ShadingRateNV"],
15868          "value" : 5291,
15869          "capabilities" : [ "Shader" ],
15870          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
15871          "version" : "None"
15872        },
15873        {
15874          "enumerant" : "GroupNonUniformPartitionedNV",
15875          "value" : 5297,
15876          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
15877          "version" : "None"
15878        },
15879        {
15880          "enumerant" : "ShaderNonUniform",
15881          "aliases" : ["ShaderNonUniformEXT"],
15882          "value" : 5301,
15883          "capabilities" : [ "Shader" ],
15884          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15885          "version" : "1.5"
15886        },
15887        {
15888          "enumerant" : "RuntimeDescriptorArray",
15889          "aliases" : ["RuntimeDescriptorArrayEXT"],
15890          "value" : 5302,
15891          "capabilities" : [ "Shader" ],
15892          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15893          "version" : "1.5"
15894        },
15895        {
15896          "enumerant" : "InputAttachmentArrayDynamicIndexing",
15897          "aliases" : ["InputAttachmentArrayDynamicIndexingEXT"],
15898          "value" : 5303,
15899          "capabilities" : [ "InputAttachment" ],
15900          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15901          "version" : "1.5"
15902        },
15903        {
15904          "enumerant" : "UniformTexelBufferArrayDynamicIndexing",
15905          "aliases" : ["UniformTexelBufferArrayDynamicIndexingEXT"],
15906          "value" : 5304,
15907          "capabilities" : [ "SampledBuffer" ],
15908          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15909          "version" : "1.5"
15910        },
15911        {
15912          "enumerant" : "StorageTexelBufferArrayDynamicIndexing",
15913          "aliases" : ["StorageTexelBufferArrayDynamicIndexingEXT"],
15914          "value" : 5305,
15915          "capabilities" : [ "ImageBuffer" ],
15916          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15917          "version" : "1.5"
15918        },
15919        {
15920          "enumerant" : "UniformBufferArrayNonUniformIndexing",
15921          "aliases" : ["UniformBufferArrayNonUniformIndexingEXT"],
15922          "value" : 5306,
15923          "capabilities" : [ "ShaderNonUniform" ],
15924          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15925          "version" : "1.5"
15926        },
15927        {
15928          "enumerant" : "SampledImageArrayNonUniformIndexing",
15929          "aliases" : ["SampledImageArrayNonUniformIndexingEXT"],
15930          "value" : 5307,
15931          "capabilities" : [ "ShaderNonUniform" ],
15932          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15933          "version" : "1.5"
15934        },
15935        {
15936          "enumerant" : "StorageBufferArrayNonUniformIndexing",
15937          "aliases" : ["StorageBufferArrayNonUniformIndexingEXT"],
15938          "value" : 5308,
15939          "capabilities" : [ "ShaderNonUniform" ],
15940          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15941          "version" : "1.5"
15942        },
15943        {
15944          "enumerant" : "StorageImageArrayNonUniformIndexing",
15945          "aliases" : ["StorageImageArrayNonUniformIndexingEXT"],
15946          "value" : 5309,
15947          "capabilities" : [ "ShaderNonUniform" ],
15948          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15949          "version" : "1.5"
15950        },
15951        {
15952          "enumerant" : "InputAttachmentArrayNonUniformIndexing",
15953          "aliases" : ["InputAttachmentArrayNonUniformIndexingEXT"],
15954          "value" : 5310,
15955          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
15956          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15957          "version" : "1.5"
15958        },
15959        {
15960          "enumerant" : "UniformTexelBufferArrayNonUniformIndexing",
15961          "aliases" : ["UniformTexelBufferArrayNonUniformIndexingEXT"],
15962          "value" : 5311,
15963          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
15964          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15965          "version" : "1.5"
15966        },
15967        {
15968          "enumerant" : "StorageTexelBufferArrayNonUniformIndexing",
15969          "aliases" : ["StorageTexelBufferArrayNonUniformIndexingEXT"],
15970          "value" : 5312,
15971          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
15972          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
15973          "version" : "1.5"
15974        },
15975        {
15976          "enumerant" : "RayTracingPositionFetchKHR",
15977          "value" : 5336,
15978          "capabilities" : [ "Shader" ],
15979          "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ],
15980          "version" : "None"
15981        },
15982        {
15983          "enumerant" : "RayTracingNV",
15984          "value" : 5340,
15985          "capabilities" : [ "Shader" ],
15986          "extensions" : [ "SPV_NV_ray_tracing" ],
15987          "version" : "None"
15988        },
15989        {
15990          "enumerant" : "RayTracingMotionBlurNV",
15991          "value" : 5341,
15992          "capabilities" : [ "Shader" ],
15993          "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
15994          "version" : "None"
15995        },
15996        {
15997          "enumerant" : "VulkanMemoryModel",
15998          "aliases" : ["VulkanMemoryModelKHR"],
15999          "value" : 5345,
16000          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
16001          "version" : "1.5"
16002        },
16003        {
16004          "enumerant" : "VulkanMemoryModelDeviceScope",
16005          "aliases" : ["VulkanMemoryModelDeviceScopeKHR"],
16006          "value" : 5346,
16007          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
16008          "version" : "1.5"
16009        },
16010        {
16011          "enumerant" : "PhysicalStorageBufferAddresses",
16012          "aliases" : ["PhysicalStorageBufferAddressesEXT"],
16013          "value" : 5347,
16014          "capabilities" : [ "Shader" ],
16015          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
16016          "version" : "1.5"
16017        },
16018        {
16019          "enumerant" : "ComputeDerivativeGroupLinearKHR",
16020          "aliases" : ["ComputeDerivativeGroupLinearNV"],
16021          "value" : 5350,
16022          "capabilities" : [ "Shader" ],
16023          "extensions" : [ "SPV_NV_compute_shader_derivatives", "SPV_KHR_compute_shader_derivatives" ],
16024          "version" : "None"
16025        },
16026        {
16027          "enumerant" : "RayTracingProvisionalKHR",
16028          "value" : 5353,
16029          "capabilities" : [ "Shader" ],
16030          "extensions" : [ "SPV_KHR_ray_tracing" ],
16031          "version" : "None"
16032        },
16033        {
16034          "enumerant" : "CooperativeMatrixNV",
16035          "value" : 5357,
16036          "capabilities" : [ "Shader" ],
16037          "extensions" : [ "SPV_NV_cooperative_matrix" ],
16038          "version" : "None"
16039        },
16040        {
16041          "enumerant" : "FragmentShaderSampleInterlockEXT",
16042          "value" : 5363,
16043          "capabilities" : [ "Shader" ],
16044          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
16045          "version" : "None"
16046        },
16047        {
16048          "enumerant" : "FragmentShaderShadingRateInterlockEXT",
16049          "value" : 5372,
16050          "capabilities" : [ "Shader" ],
16051          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
16052          "version" : "None"
16053        },
16054        {
16055          "enumerant" : "ShaderSMBuiltinsNV",
16056          "value" : 5373,
16057          "capabilities" : [ "Shader" ],
16058          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
16059          "version" : "None"
16060        },
16061        {
16062          "enumerant" : "FragmentShaderPixelInterlockEXT",
16063          "value" : 5378,
16064          "capabilities" : [ "Shader" ],
16065          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
16066          "version" : "None"
16067        },
16068        {
16069          "enumerant" : "DemoteToHelperInvocation",
16070          "aliases" : ["DemoteToHelperInvocationEXT"],
16071          "value" : 5379,
16072          "capabilities" : [ "Shader" ],
16073          "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
16074          "version" : "1.6"
16075        },
16076        {
16077          "enumerant" : "DisplacementMicromapNV",
16078          "value" : 5380,
16079          "capabilities" : [ "Shader" ],
16080          "extensions" : [ "SPV_NV_displacement_micromap" ],
16081          "version" : "None"
16082        },
16083        {
16084          "enumerant" : "RayTracingOpacityMicromapEXT",
16085          "value" : 5381,
16086          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
16087          "extensions" : [ "SPV_EXT_opacity_micromap" ],
16088          "version" : "None"
16089        },
16090        {
16091          "enumerant" : "ShaderInvocationReorderNV",
16092          "value" : 5383,
16093          "capabilities" : [ "RayTracingKHR" ],
16094          "extensions" : [ "SPV_NV_shader_invocation_reorder" ],
16095          "version" : "None"
16096        },
16097        {
16098          "enumerant" : "BindlessTextureNV",
16099          "value" : 5390,
16100          "extensions" : [ "SPV_NV_bindless_texture" ],
16101          "version" : "None"
16102        },
16103        {
16104          "enumerant" : "RayQueryPositionFetchKHR",
16105          "value" : 5391,
16106          "capabilities" : [ "Shader" ],
16107          "extensions" : [ "SPV_KHR_ray_tracing_position_fetch" ],
16108          "version" : "None"
16109        },
16110        {
16111          "enumerant" : "AtomicFloat16VectorNV",
16112          "value" : 5404,
16113          "extensions" : [ "SPV_NV_shader_atomic_fp16_vector" ],
16114          "version" : "None"
16115        },
16116        {
16117          "enumerant" : "RayTracingDisplacementMicromapNV",
16118          "value" : 5409,
16119          "capabilities" : [ "RayTracingKHR" ],
16120          "extensions" : [ "SPV_NV_displacement_micromap" ],
16121          "version" : "None"
16122        },
16123        {
16124          "enumerant" : "RawAccessChainsNV",
16125          "value" : 5414,
16126          "extensions" : [ "SPV_NV_raw_access_chains" ],
16127          "version" : "None"
16128        },
16129        {
16130          "enumerant" : "CooperativeMatrixReductionsNV",
16131          "value" : 5430,
16132          "extensions" : [ "SPV_NV_cooperative_matrix2" ],
16133          "version" : "None"
16134        },
16135        {
16136          "enumerant" : "CooperativeMatrixConversionsNV",
16137          "value" : 5431,
16138          "extensions" : [ "SPV_NV_cooperative_matrix2" ],
16139          "version" : "None"
16140        },
16141        {
16142          "enumerant" : "CooperativeMatrixPerElementOperationsNV",
16143          "value" : 5432,
16144          "extensions" : [ "SPV_NV_cooperative_matrix2" ],
16145          "version" : "None"
16146        },
16147        {
16148          "enumerant" : "CooperativeMatrixTensorAddressingNV",
16149          "value" : 5433,
16150          "extensions" : [ "SPV_NV_cooperative_matrix2" ],
16151          "version" : "None"
16152        },
16153        {
16154          "enumerant" : "CooperativeMatrixBlockLoadsNV",
16155          "value" : 5434,
16156          "extensions" : [ "SPV_NV_cooperative_matrix2" ],
16157          "version" : "None"
16158        },
16159        {
16160          "enumerant" : "TensorAddressingNV",
16161          "value" : 5439,
16162          "extensions" : [ "SPV_NV_tensor_addressing" ],
16163          "version" : "None"
16164        },
16165        {
16166          "enumerant" : "SubgroupShuffleINTEL",
16167          "value" : 5568,
16168          "extensions" : [ "SPV_INTEL_subgroups" ],
16169          "version" : "None"
16170        },
16171        {
16172          "enumerant" : "SubgroupBufferBlockIOINTEL",
16173          "value" : 5569,
16174          "extensions" : [ "SPV_INTEL_subgroups" ],
16175          "version" : "None"
16176        },
16177        {
16178          "enumerant" : "SubgroupImageBlockIOINTEL",
16179          "value" : 5570,
16180          "extensions" : [ "SPV_INTEL_subgroups" ],
16181          "version" : "None"
16182        },
16183        {
16184          "enumerant" : "SubgroupImageMediaBlockIOINTEL",
16185          "value" : 5579,
16186          "extensions" : [ "SPV_INTEL_media_block_io" ],
16187          "version" : "None"
16188        },
16189        {
16190          "enumerant" : "RoundToInfinityINTEL",
16191          "value" : 5582,
16192          "extensions" : [ "SPV_INTEL_float_controls2" ],
16193          "version" : "None"
16194        },
16195        {
16196          "enumerant" : "FloatingPointModeINTEL",
16197          "value" : 5583,
16198          "extensions" : [ "SPV_INTEL_float_controls2" ],
16199          "version" : "None"
16200        },
16201        {
16202          "enumerant" : "IntegerFunctions2INTEL",
16203          "value" : 5584,
16204          "capabilities" : [ "Shader" ],
16205          "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
16206          "version" : "None"
16207        },
16208        {
16209          "enumerant" : "FunctionPointersINTEL",
16210          "value" : 5603,
16211          "extensions" : [ "SPV_INTEL_function_pointers" ],
16212          "version" : "None"
16213        },
16214        {
16215          "enumerant" : "IndirectReferencesINTEL",
16216          "value" : 5604,
16217          "extensions" : [ "SPV_INTEL_function_pointers" ],
16218          "version" : "None"
16219        },
16220        {
16221          "enumerant" : "AsmINTEL",
16222          "value" : 5606,
16223          "extensions" : [ "SPV_INTEL_inline_assembly" ],
16224          "version" : "None"
16225        },
16226        {
16227          "enumerant" : "AtomicFloat32MinMaxEXT",
16228          "value" : 5612,
16229          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
16230          "version" : "None"
16231        },
16232        {
16233          "enumerant" : "AtomicFloat64MinMaxEXT",
16234          "value" : 5613,
16235          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
16236          "version" : "None"
16237        },
16238        {
16239          "enumerant" : "AtomicFloat16MinMaxEXT",
16240          "value" : 5616,
16241          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
16242          "version" : "None"
16243        },
16244        {
16245          "enumerant" : "VectorComputeINTEL",
16246          "value" : 5617,
16247          "capabilities" : [ "VectorAnyINTEL" ],
16248          "extensions" : [ "SPV_INTEL_vector_compute" ],
16249          "version" : "None"
16250        },
16251        {
16252          "enumerant" : "VectorAnyINTEL",
16253          "value" : 5619,
16254          "extensions" : [ "SPV_INTEL_vector_compute" ],
16255          "version" : "None"
16256        },
16257        {
16258          "enumerant" : "ExpectAssumeKHR",
16259          "value" : 5629,
16260          "extensions" : [ "SPV_KHR_expect_assume" ],
16261          "version" : "None"
16262        },
16263        {
16264          "enumerant" : "SubgroupAvcMotionEstimationINTEL",
16265          "value" : 5696,
16266          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
16267          "version" : "None"
16268        },
16269        {
16270          "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL",
16271          "value" : 5697,
16272          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
16273          "version" : "None"
16274        },
16275        {
16276          "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL",
16277          "value" : 5698,
16278          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
16279          "version" : "None"
16280        },
16281        {
16282          "enumerant" : "VariableLengthArrayINTEL",
16283          "value" : 5817,
16284          "extensions" : [ "SPV_INTEL_variable_length_array" ],
16285          "version" : "None"
16286        },
16287        {
16288          "enumerant" : "FunctionFloatControlINTEL",
16289          "value" : 5821,
16290          "extensions" : [ "SPV_INTEL_float_controls2" ],
16291          "version" : "None"
16292        },
16293        {
16294          "enumerant" : "FPGAMemoryAttributesINTEL",
16295          "value" : 5824,
16296          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
16297          "version" : "None"
16298        },
16299        {
16300          "enumerant" : "FPFastMathModeINTEL",
16301          "value" : 5837,
16302          "capabilities" : [ "Kernel" ],
16303          "extensions" : [ "SPV_INTEL_fp_fast_math_mode" ],
16304          "version" : "None"
16305        },
16306        {
16307          "enumerant" : "ArbitraryPrecisionIntegersINTEL",
16308          "value" : 5844,
16309          "extensions" : [ "SPV_INTEL_arbitrary_precision_integers" ],
16310          "version" : "None"
16311        },
16312        {
16313          "enumerant" : "ArbitraryPrecisionFloatingPointINTEL",
16314          "value" : 5845,
16315          "extensions" : [ "SPV_INTEL_arbitrary_precision_floating_point" ],
16316          "version" : "None"
16317        },
16318        {
16319          "enumerant" : "UnstructuredLoopControlsINTEL",
16320          "value" : 5886,
16321          "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
16322          "version" : "None"
16323        },
16324        {
16325          "enumerant" : "FPGALoopControlsINTEL",
16326          "value" : 5888,
16327          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
16328          "version" : "None"
16329        },
16330        {
16331          "enumerant" : "KernelAttributesINTEL",
16332          "value" : 5892,
16333          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
16334          "version" : "None"
16335        },
16336        {
16337          "enumerant" : "FPGAKernelAttributesINTEL",
16338          "value" : 5897,
16339          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
16340          "version" : "None"
16341        },
16342        {
16343          "enumerant" : "FPGAMemoryAccessesINTEL",
16344          "value" : 5898,
16345          "extensions" : [ "SPV_INTEL_fpga_memory_accesses" ],
16346          "version" : "None"
16347        },
16348        {
16349          "enumerant" : "FPGAClusterAttributesINTEL",
16350          "value" : 5904,
16351          "extensions" : [ "SPV_INTEL_fpga_cluster_attributes" ],
16352          "version" : "None"
16353        },
16354        {
16355          "enumerant" : "LoopFuseINTEL",
16356          "value" : 5906,
16357          "extensions" : [ "SPV_INTEL_loop_fuse" ],
16358          "version" : "None"
16359        },
16360        {
16361          "enumerant" : "FPGADSPControlINTEL",
16362          "value" : 5908,
16363          "extensions" : [ "SPV_INTEL_fpga_dsp_control" ],
16364          "version" : "None"
16365        },
16366        {
16367          "enumerant" : "MemoryAccessAliasingINTEL",
16368          "value" : 5910,
16369          "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
16370          "version" : "None"
16371        },
16372        {
16373          "enumerant" : "FPGAInvocationPipeliningAttributesINTEL",
16374          "value" : 5916,
16375          "extensions" : [ "SPV_INTEL_fpga_invocation_pipelining_attributes" ],
16376          "version" : "None"
16377        },
16378        {
16379          "enumerant" : "FPGABufferLocationINTEL",
16380          "value" : 5920,
16381          "extensions" : [ "SPV_INTEL_fpga_buffer_location" ],
16382          "version" : "None"
16383        },
16384        {
16385          "enumerant" : "ArbitraryPrecisionFixedPointINTEL",
16386          "value" : 5922,
16387          "extensions" : [ "SPV_INTEL_arbitrary_precision_fixed_point" ],
16388          "version" : "None"
16389        },
16390        {
16391          "enumerant" : "USMStorageClassesINTEL",
16392          "value" : 5935,
16393          "extensions" : [ "SPV_INTEL_usm_storage_classes" ],
16394          "version" : "None"
16395        },
16396        {
16397          "enumerant" : "RuntimeAlignedAttributeINTEL",
16398          "value" : 5939,
16399          "extensions" : [ "SPV_INTEL_runtime_aligned" ],
16400          "version" : "None"
16401        },
16402        {
16403          "enumerant" : "IOPipesINTEL",
16404          "value" : 5943,
16405          "extensions" : [ "SPV_INTEL_io_pipes" ],
16406          "version" : "None"
16407        },
16408        {
16409          "enumerant" : "BlockingPipesINTEL",
16410          "value" : 5945,
16411          "extensions" : [ "SPV_INTEL_blocking_pipes" ],
16412          "version" : "None"
16413        },
16414        {
16415          "enumerant" : "FPGARegINTEL",
16416          "value" : 5948,
16417          "extensions" : [ "SPV_INTEL_fpga_reg" ],
16418          "version" : "None"
16419        },
16420        {
16421          "enumerant" : "DotProductInputAll",
16422          "aliases" : ["DotProductInputAllKHR"],
16423          "value" : 6016,
16424          "extensions" : [ "SPV_KHR_integer_dot_product" ],
16425          "version" : "1.6"
16426        },
16427        {
16428          "enumerant" : "DotProductInput4x8Bit",
16429          "aliases" : ["DotProductInput4x8BitKHR"],
16430          "value" : 6017,
16431          "capabilities" : [ "Int8" ],
16432          "extensions" : [ "SPV_KHR_integer_dot_product" ],
16433          "version" : "1.6"
16434        },
16435        {
16436          "enumerant" : "DotProductInput4x8BitPacked",
16437          "aliases" : ["DotProductInput4x8BitPackedKHR"],
16438          "value" : 6018,
16439          "extensions" : [ "SPV_KHR_integer_dot_product" ],
16440          "version" : "1.6"
16441        },
16442        {
16443          "enumerant" : "DotProduct",
16444          "aliases" : ["DotProductKHR"],
16445          "value" : 6019,
16446          "extensions" : [ "SPV_KHR_integer_dot_product" ],
16447          "version" : "1.6"
16448        },
16449        {
16450          "enumerant" : "RayCullMaskKHR",
16451          "value" : 6020,
16452          "extensions" : [ "SPV_KHR_ray_cull_mask" ],
16453          "version" : "None"
16454        },
16455        {
16456          "enumerant" : "CooperativeMatrixKHR",
16457          "value" : 6022,
16458          "extensions" : [ "SPV_KHR_cooperative_matrix" ],
16459          "version" : "None"
16460        },
16461        {
16462          "enumerant" : "ReplicatedCompositesEXT",
16463          "value" : 6024,
16464          "extensions" : [ "SPV_EXT_replicated_composites" ],
16465          "version" : "None"
16466        },
16467        {
16468          "enumerant" : "BitInstructions",
16469          "value" : 6025,
16470          "extensions" : [ "SPV_KHR_bit_instructions" ],
16471          "version" : "None"
16472        },
16473        {
16474          "enumerant" : "GroupNonUniformRotateKHR",
16475          "value" : 6026,
16476          "capabilities" : [ "GroupNonUniform" ],
16477          "extensions" : [ "SPV_KHR_subgroup_rotate" ],
16478          "version" : "None"
16479        },
16480        {
16481          "enumerant" : "FloatControls2",
16482          "value" : 6029,
16483          "extensions" : [ "SPV_KHR_float_controls2" ],
16484          "version" : "None"
16485        },
16486        {
16487          "enumerant" : "AtomicFloat32AddEXT",
16488          "value" : 6033,
16489          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
16490          "version" : "None"
16491        },
16492        {
16493          "enumerant" : "AtomicFloat64AddEXT",
16494          "value" : 6034,
16495          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
16496          "version" : "None"
16497        },
16498        {
16499          "enumerant" : "LongCompositesINTEL",
16500          "value" : 6089,
16501          "extensions" : [ "SPV_INTEL_long_composites" ],
16502          "version" : "None"
16503        },
16504        {
16505          "enumerant" : "OptNoneEXT",
16506          "aliases" : ["OptNoneINTEL"],
16507          "value" : 6094,
16508          "extensions" : [ "SPV_EXT_optnone", "SPV_INTEL_optnone" ],
16509          "version" : "None"
16510        },
16511        {
16512          "enumerant" : "AtomicFloat16AddEXT",
16513          "value" : 6095,
16514          "extensions" : [ "SPV_EXT_shader_atomic_float16_add" ],
16515          "version" : "None"
16516        },
16517        {
16518          "enumerant" : "DebugInfoModuleINTEL",
16519          "value" : 6114,
16520          "extensions" : [ "SPV_INTEL_debug_module" ],
16521          "version" : "None"
16522        },
16523        {
16524          "enumerant" : "BFloat16ConversionINTEL",
16525          "value" : 6115,
16526          "extensions" : [ "SPV_INTEL_bfloat16_conversion" ],
16527          "version" : "None"
16528        },
16529        {
16530          "enumerant" : "SplitBarrierINTEL",
16531          "value" : 6141,
16532          "extensions" : [ "SPV_INTEL_split_barrier" ],
16533          "version" : "None"
16534        },
16535        {
16536          "enumerant" : "ArithmeticFenceEXT",
16537          "value" : 6144,
16538          "extensions" : [ "SPV_EXT_arithmetic_fence" ],
16539          "version" : "None"
16540        },
16541        {
16542          "enumerant" : "FPGAClusterAttributesV2INTEL",
16543          "value" : 6150,
16544          "capabilities" : [ "FPGAClusterAttributesINTEL" ],
16545          "extensions" : [ "SPV_INTEL_fpga_cluster_attributes" ],
16546          "version" : "None"
16547        },
16548        {
16549          "enumerant" : "FPGAKernelAttributesv2INTEL",
16550          "value" : 6161,
16551          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
16552          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
16553          "version" : "None"
16554        },
16555        {
16556          "enumerant" : "FPMaxErrorINTEL",
16557          "value" : 6169,
16558          "extensions" : [ "SPV_INTEL_fp_max_error" ],
16559          "version" : "None"
16560        },
16561        {
16562          "enumerant" : "FPGALatencyControlINTEL",
16563          "value" : 6171,
16564          "extensions" : [ "SPV_INTEL_fpga_latency_control" ],
16565          "version" : "None"
16566        },
16567        {
16568          "enumerant" : "FPGAArgumentInterfacesINTEL",
16569          "value" : 6174,
16570          "extensions" : [ "SPV_INTEL_fpga_argument_interfaces" ],
16571          "version" : "None"
16572        },
16573        {
16574          "enumerant" : "GlobalVariableHostAccessINTEL",
16575          "value" : 6187,
16576          "extensions": [ "SPV_INTEL_global_variable_host_access" ],
16577          "version" : "None"
16578        },
16579        {
16580          "enumerant" : "GlobalVariableFPGADecorationsINTEL",
16581          "value" : 6189,
16582          "extensions": [ "SPV_INTEL_global_variable_fpga_decorations" ],
16583          "version" : "None"
16584        },
16585        {
16586          "enumerant" : "SubgroupBufferPrefetchINTEL",
16587          "value" : 6220,
16588          "extensions": [ "SPV_INTEL_subgroup_buffer_prefetch" ],
16589          "version" : "None"
16590        },
16591        {
16592          "enumerant" : "GroupUniformArithmeticKHR",
16593          "value" : 6400,
16594          "extensions" : [ "SPV_KHR_uniform_group_instructions"],
16595          "version" : "None"
16596        },
16597        {
16598          "enumerant" : "MaskedGatherScatterINTEL",
16599	  "value" : 6427,
16600	  "extensions" : [ "SPV_INTEL_masked_gather_scatter"],
16601	  "version" : "None"
16602        },
16603        {
16604          "enumerant" : "CacheControlsINTEL",
16605          "value" : 6441,
16606          "extensions" : [ "SPV_INTEL_cache_controls" ],
16607          "version" : "None"
16608        },
16609        {
16610          "enumerant" : "RegisterLimitsINTEL",
16611          "value" : 6460,
16612          "extensions" : [ "SPV_INTEL_maximum_registers" ],
16613          "version" : "None"
16614        }
16615      ]
16616    },
16617    {
16618      "category" : "ValueEnum",
16619      "kind" : "RayQueryIntersection",
16620      "enumerants" : [
16621        {
16622          "enumerant" : "RayQueryCandidateIntersectionKHR",
16623          "value" : 0,
16624          "capabilities" : [ "RayQueryKHR" ],
16625          "version" : "None"
16626        },
16627        {
16628          "enumerant" : "RayQueryCommittedIntersectionKHR",
16629          "value" : 1,
16630          "capabilities" : [ "RayQueryKHR" ],
16631          "version" : "None"
16632        }
16633      ]
16634    },
16635    {
16636      "category" : "ValueEnum",
16637      "kind" : "RayQueryCommittedIntersectionType",
16638      "enumerants" : [
16639        {
16640          "enumerant" : "RayQueryCommittedIntersectionNoneKHR",
16641          "value" : 0,
16642          "capabilities" : [ "RayQueryKHR" ],
16643          "version" : "None"
16644        },
16645        {
16646          "enumerant" : "RayQueryCommittedIntersectionTriangleKHR",
16647          "value" : 1,
16648          "capabilities" : [ "RayQueryKHR" ],
16649          "version" : "None"
16650        },
16651        {
16652          "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR",
16653          "value" : 2,
16654          "capabilities" : [ "RayQueryKHR" ],
16655          "version" : "None"
16656        }
16657      ]
16658    },
16659    {
16660      "category" : "ValueEnum",
16661      "kind" : "RayQueryCandidateIntersectionType",
16662      "enumerants" : [
16663        {
16664          "enumerant" : "RayQueryCandidateIntersectionTriangleKHR",
16665          "value" : 0,
16666          "capabilities" : [ "RayQueryKHR" ],
16667          "version" : "None"
16668        },
16669        {
16670          "enumerant" : "RayQueryCandidateIntersectionAABBKHR",
16671          "value" : 1,
16672          "capabilities" : [ "RayQueryKHR" ],
16673          "version" : "None"
16674        }
16675      ]
16676    },
16677    {
16678      "category" : "ValueEnum",
16679      "kind" : "PackedVectorFormat",
16680      "enumerants" : [
16681        {
16682          "enumerant" : "PackedVectorFormat4x8Bit",
16683          "aliases" : ["PackedVectorFormat4x8BitKHR"],
16684          "value" : 0,
16685          "extensions" : [ "SPV_KHR_integer_dot_product" ],
16686          "version" : "1.6"
16687        }
16688      ]
16689    },
16690    {
16691      "category" : "BitEnum",
16692      "kind" : "CooperativeMatrixOperands",
16693      "enumerants" : [
16694        {
16695          "enumerant" : "NoneKHR",
16696          "value" : "0x0000",
16697          "version" : "None"
16698        },
16699        {
16700          "enumerant" : "MatrixASignedComponentsKHR",
16701          "value" : "0x0001",
16702          "version" : "None"
16703        },
16704        {
16705          "enumerant" : "MatrixBSignedComponentsKHR",
16706          "value" : "0x0002",
16707          "version" : "None"
16708        },
16709        {
16710          "enumerant" : "MatrixCSignedComponentsKHR",
16711          "value" : "0x0004",
16712          "version" : "None"
16713        },
16714        {
16715          "enumerant" : "MatrixResultSignedComponentsKHR",
16716          "value" : "0x0008",
16717          "version" : "None"
16718        },
16719        {
16720          "enumerant" : "SaturatingAccumulationKHR",
16721          "value" : "0x0010",
16722          "version" : "None"
16723        }
16724      ]
16725    },
16726    {
16727      "category" : "ValueEnum",
16728      "kind" : "CooperativeMatrixLayout",
16729      "enumerants" : [
16730        {
16731          "enumerant" : "RowMajorKHR",
16732          "value" : 0,
16733          "version" : "None"
16734        },
16735        {
16736          "enumerant" : "ColumnMajorKHR",
16737          "value" : 1,
16738          "version" : "None"
16739        },
16740        {
16741          "enumerant" : "RowBlockedInterleavedARM",
16742          "value" : 4202,
16743          "version" : "None"
16744        },
16745        {
16746          "enumerant" : "ColumnBlockedInterleavedARM",
16747          "value" : 4203,
16748          "version" : "None"
16749        }
16750      ]
16751    },
16752    {
16753      "category" : "ValueEnum",
16754      "kind" : "CooperativeMatrixUse",
16755      "enumerants" : [
16756        {
16757          "enumerant" : "MatrixAKHR",
16758          "value" : 0,
16759          "version" : "None"
16760        },
16761        {
16762          "enumerant" : "MatrixBKHR",
16763          "value" : 1,
16764          "version" : "None"
16765        },
16766        {
16767          "enumerant" : "MatrixAccumulatorKHR",
16768          "value" : 2,
16769          "version" : "None"
16770        }
16771      ]
16772    },
16773    {
16774      "category" : "BitEnum",
16775      "kind" : "CooperativeMatrixReduce",
16776      "enumerants" : [
16777        {
16778          "enumerant" : "Row",
16779          "value" : "0x0001",
16780          "version" : "None"
16781        },
16782        {
16783          "enumerant" : "Column",
16784          "value" : "0x0002",
16785          "version" : "None"
16786        },
16787        {
16788          "enumerant" : "2x2",
16789          "value" : "0x0004",
16790          "version" : "None"
16791        }
16792      ]
16793    },
16794    {
16795      "category" : "ValueEnum",
16796      "kind" : "TensorClampMode",
16797      "enumerants" : [
16798        {
16799          "enumerant" : "Undefined",
16800          "value" : 0,
16801          "version": "None"
16802        },
16803        {
16804          "enumerant" : "Constant",
16805          "value" : 1,
16806          "version": "None"
16807        },
16808        {
16809          "enumerant" : "ClampToEdge",
16810          "value" : 2,
16811          "version": "None"
16812        },
16813        {
16814          "enumerant" : "Repeat",
16815          "value" : 3,
16816          "version": "None"
16817        },
16818        {
16819          "enumerant" : "RepeatMirrored",
16820          "value" : 4,
16821          "version": "None"
16822        }
16823      ]
16824    },
16825    {
16826      "category" : "BitEnum",
16827      "kind" : "TensorAddressingOperands",
16828      "enumerants" : [
16829        {
16830          "enumerant" : "None",
16831          "value" : "0x0000",
16832          "version" : "None"
16833        },
16834        {
16835          "enumerant" : "TensorView",
16836          "value" : "0x0001",
16837          "parameters" : [
16838            { "kind" : "IdRef" }
16839          ],
16840          "capabilities" : [ "CooperativeMatrixTensorAddressingNV" ],
16841          "version" : "None"
16842        },
16843        {
16844          "enumerant" : "DecodeFunc",
16845          "value" : "0x0002",
16846          "parameters" : [
16847            { "kind" : "IdRef" }
16848          ],
16849          "capabilities" : [ "CooperativeMatrixBlockLoadsNV" ],
16850          "version" : "None"
16851        }
16852      ]
16853    },
16854    {
16855      "category" : "ValueEnum",
16856      "kind" : "InitializationModeQualifier",
16857      "enumerants" : [
16858        {
16859          "enumerant" : "InitOnDeviceReprogramINTEL",
16860          "value" : 0,
16861          "capabilities" : [ "GlobalVariableFPGADecorationsINTEL" ],
16862          "version" : "None"
16863        },
16864        {
16865          "enumerant" : "InitOnDeviceResetINTEL",
16866          "value" : 1,
16867          "capabilities" : [ "GlobalVariableFPGADecorationsINTEL" ],
16868          "version" : "None"
16869        }
16870      ]
16871    },
16872    {
16873      "category" : "ValueEnum",
16874      "kind" : "LoadCacheControl",
16875      "enumerants" : [
16876        {
16877          "enumerant" : "UncachedINTEL",
16878          "value" : 0,
16879          "capabilities" : [ "CacheControlsINTEL" ],
16880          "version" : "None"
16881        },
16882        {
16883          "enumerant" : "CachedINTEL",
16884          "value" : 1,
16885          "capabilities" : [ "CacheControlsINTEL" ],
16886          "version" : "None"
16887        },
16888        {
16889          "enumerant" : "StreamingINTEL",
16890          "value" : 2,
16891          "capabilities" : [ "CacheControlsINTEL" ],
16892          "version" : "None"
16893        },
16894        {
16895          "enumerant" : "InvalidateAfterReadINTEL",
16896          "value" : 3,
16897          "capabilities" : [ "CacheControlsINTEL" ],
16898          "version" : "None"
16899        },
16900        {
16901          "enumerant" : "ConstCachedINTEL",
16902          "value" : 4,
16903          "capabilities" : [ "CacheControlsINTEL" ],
16904          "version" : "None"
16905        }
16906      ]
16907    },
16908    {
16909      "category" : "ValueEnum",
16910      "kind" : "StoreCacheControl",
16911      "enumerants" : [
16912        {
16913          "enumerant" : "UncachedINTEL",
16914          "value" : 0,
16915          "capabilities" : [ "CacheControlsINTEL" ],
16916          "version" : "None"
16917        },
16918        {
16919          "enumerant" : "WriteThroughINTEL",
16920          "value" : 1,
16921          "capabilities" : [ "CacheControlsINTEL" ],
16922          "version" : "None"
16923        },
16924        {
16925          "enumerant" : "WriteBackINTEL",
16926          "value" : 2,
16927          "capabilities" : [ "CacheControlsINTEL" ],
16928          "version" : "None"
16929        },
16930        {
16931          "enumerant" : "StreamingINTEL",
16932          "value" : 3,
16933          "capabilities" : [ "CacheControlsINTEL" ],
16934          "version" : "None"
16935        }
16936      ]
16937    },
16938    {
16939      "category" : "ValueEnum",
16940      "kind" : "NamedMaximumNumberOfRegisters",
16941      "enumerants" : [
16942        {
16943          "enumerant" : "AutoINTEL",
16944          "value" : 0,
16945          "capabilities" : [ "RegisterLimitsINTEL" ],
16946          "version" : "None"
16947        }
16948      ]
16949    },
16950    {
16951      "category" : "ValueEnum",
16952      "kind" : "FPEncoding",
16953      "enumerants" : [
16954      ]
16955    },
16956    {
16957      "category" : "Id",
16958      "kind" : "IdResultType",
16959      "doc" : "Reference to an <id> representing the result's type of the enclosing instruction"
16960    },
16961    {
16962      "category" : "Id",
16963      "kind" : "IdResult",
16964      "doc" : "Definition of an <id> representing the result of the enclosing instruction"
16965    },
16966    {
16967      "category" : "Id",
16968      "kind" : "IdMemorySemantics",
16969      "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the MemorySemantics operand kind"
16970    },
16971    {
16972      "category" : "Id",
16973      "kind" : "IdScope",
16974      "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the Scope operand kind"
16975    },
16976    {
16977      "category" : "Id",
16978      "kind" : "IdRef",
16979      "doc" : "Reference to an <id>"
16980    },
16981    {
16982      "category" : "Literal",
16983      "kind" : "LiteralInteger",
16984      "doc" : "An integer consuming one or more words"
16985    },
16986    {
16987      "category" : "Literal",
16988      "kind" : "LiteralString",
16989      "doc" : "A null-terminated stream of characters consuming an integral number of words"
16990    },
16991    {
16992      "category" : "Literal",
16993      "kind" : "LiteralFloat",
16994      "doc" : "A float consuming one word"
16995    },
16996    {
16997      "category" : "Literal",
16998      "kind" : "LiteralContextDependentNumber",
16999      "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction"
17000    },
17001    {
17002      "category" : "Literal",
17003      "kind" : "LiteralExtInstInteger",
17004      "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)"
17005    },
17006    {
17007      "category" : "Literal",
17008      "kind" : "LiteralSpecConstantOpInteger",
17009      "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)"
17010    },
17011    {
17012      "category" : "Composite",
17013      "kind" : "PairLiteralIntegerIdRef",
17014      "bases" : [ "LiteralInteger", "IdRef" ]
17015    },
17016    {
17017      "category" : "Composite",
17018      "kind" : "PairIdRefLiteralInteger",
17019      "bases" : [ "IdRef", "LiteralInteger" ]
17020    },
17021    {
17022      "category" : "Composite",
17023      "kind" : "PairIdRefIdRef",
17024      "bases" : [ "IdRef", "IdRef" ]
17025    }
17026  ]
17027}
17028