• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1{
2  "copyright" : [
3    "Copyright (c) 2014-2020 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" : 1,
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    },
142    {
143      "opname" : "OpUndef",
144      "class"  : "Miscellaneous",
145      "opcode" : 1,
146      "operands" : [
147        { "kind" : "IdResultType" },
148        { "kind" : "IdResult" }
149      ]
150    },
151    {
152      "opname" : "OpSourceContinued",
153      "class"  : "Debug",
154      "opcode" : 2,
155      "operands" : [
156        { "kind" : "LiteralString", "name" : "'Continued Source'" }
157      ]
158    },
159    {
160      "opname" : "OpSource",
161      "class"  : "Debug",
162      "opcode" : 3,
163      "operands" : [
164        { "kind" : "SourceLanguage" },
165        { "kind" : "LiteralInteger",                     "name" : "'Version'" },
166        { "kind" : "IdRef",          "quantifier" : "?", "name" : "'File'" },
167        { "kind" : "LiteralString",  "quantifier" : "?", "name" : "'Source'" }
168      ]
169    },
170    {
171      "opname" : "OpSourceExtension",
172      "class"  : "Debug",
173      "opcode" : 4,
174      "operands" : [
175        { "kind" : "LiteralString", "name" : "'Extension'" }
176      ]
177    },
178    {
179      "opname" : "OpName",
180      "class"  : "Debug",
181      "opcode" : 5,
182      "operands" : [
183        { "kind" : "IdRef",         "name" : "'Target'" },
184        { "kind" : "LiteralString", "name" : "'Name'" }
185      ]
186    },
187    {
188      "opname" : "OpMemberName",
189      "class"  : "Debug",
190      "opcode" : 6,
191      "operands" : [
192        { "kind" : "IdRef",          "name" : "'Type'" },
193        { "kind" : "LiteralInteger", "name" : "'Member'" },
194        { "kind" : "LiteralString",  "name" : "'Name'" }
195      ]
196    },
197    {
198      "opname" : "OpString",
199      "class"  : "Debug",
200      "opcode" : 7,
201      "operands" : [
202        { "kind" : "IdResult" },
203        { "kind" : "LiteralString", "name" : "'String'" }
204      ]
205    },
206    {
207      "opname" : "OpLine",
208      "class"  : "Debug",
209      "opcode" : 8,
210      "operands" : [
211        { "kind" : "IdRef",          "name" : "'File'" },
212        { "kind" : "LiteralInteger", "name" : "'Line'" },
213        { "kind" : "LiteralInteger", "name" : "'Column'" }
214      ]
215    },
216    {
217      "opname" : "OpExtension",
218      "class"  : "Extension",
219      "opcode" : 10,
220      "operands" : [
221        { "kind" : "LiteralString", "name" : "'Name'" }
222      ]
223    },
224    {
225      "opname" : "OpExtInstImport",
226      "class"  : "Extension",
227      "opcode" : 11,
228      "operands" : [
229        { "kind" : "IdResult" },
230        { "kind" : "LiteralString", "name" : "'Name'" }
231      ]
232    },
233    {
234      "opname" : "OpExtInst",
235      "class"  : "Extension",
236      "opcode" : 12,
237      "operands" : [
238        { "kind" : "IdResultType" },
239        { "kind" : "IdResult" },
240        { "kind" : "IdRef",                                     "name" : "'Set'" },
241        { "kind" : "LiteralExtInstInteger",                     "name" : "'Instruction'" },
242        { "kind" : "IdRef",                 "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." }
243      ]
244    },
245    {
246      "opname" : "OpMemoryModel",
247      "class"  : "Mode-Setting",
248      "opcode" : 14,
249      "operands" : [
250        { "kind" : "AddressingModel" },
251        { "kind" : "MemoryModel" }
252      ]
253    },
254    {
255      "opname" : "OpEntryPoint",
256      "class"  : "Mode-Setting",
257      "opcode" : 15,
258      "operands" : [
259        { "kind" : "ExecutionModel" },
260        { "kind" : "IdRef",                              "name" : "'Entry Point'" },
261        { "kind" : "LiteralString",                      "name" : "'Name'" },
262        { "kind" : "IdRef",          "quantifier" : "*", "name" : "'Interface'" }
263      ]
264    },
265    {
266      "opname" : "OpExecutionMode",
267      "class"  : "Mode-Setting",
268      "opcode" : 16,
269      "operands" : [
270        { "kind" : "IdRef",         "name" : "'Entry Point'" },
271        { "kind" : "ExecutionMode", "name" : "'Mode'" }
272      ]
273    },
274    {
275      "opname" : "OpCapability",
276      "class"  : "Mode-Setting",
277      "opcode" : 17,
278      "operands" : [
279        { "kind" : "Capability", "name" : "'Capability'" }
280      ]
281    },
282    {
283      "opname" : "OpTypeVoid",
284      "class"  : "Type-Declaration",
285      "opcode" : 19,
286      "operands" : [
287        { "kind" : "IdResult" }
288      ]
289    },
290    {
291      "opname" : "OpTypeBool",
292      "class"  : "Type-Declaration",
293      "opcode" : 20,
294      "operands" : [
295        { "kind" : "IdResult" }
296      ]
297    },
298    {
299      "opname" : "OpTypeInt",
300      "class"  : "Type-Declaration",
301      "opcode" : 21,
302      "operands" : [
303        { "kind" : "IdResult" },
304        { "kind" : "LiteralInteger", "name" : "'Width'" },
305        { "kind" : "LiteralInteger", "name" : "'Signedness'" }
306      ]
307    },
308    {
309      "opname" : "OpTypeFloat",
310      "class"  : "Type-Declaration",
311      "opcode" : 22,
312      "operands" : [
313        { "kind" : "IdResult" },
314        { "kind" : "LiteralInteger", "name" : "'Width'" }
315      ]
316    },
317    {
318      "opname" : "OpTypeVector",
319      "class"  : "Type-Declaration",
320      "opcode" : 23,
321      "operands" : [
322        { "kind" : "IdResult" },
323        { "kind" : "IdRef",          "name" : "'Component Type'" },
324        { "kind" : "LiteralInteger", "name" : "'Component Count'" }
325      ]
326    },
327    {
328      "opname" : "OpTypeMatrix",
329      "class"  : "Type-Declaration",
330      "opcode" : 24,
331      "operands" : [
332        { "kind" : "IdResult" },
333        { "kind" : "IdRef",          "name" : "'Column Type'" },
334        { "kind" : "LiteralInteger", "name" : "'Column Count'" }
335      ],
336      "capabilities" : [ "Matrix" ]
337    },
338    {
339      "opname" : "OpTypeImage",
340      "class"  : "Type-Declaration",
341      "opcode" : 25,
342      "operands" : [
343        { "kind" : "IdResult" },
344        { "kind" : "IdRef",                               "name" : "'Sampled Type'" },
345        { "kind" : "Dim" },
346        { "kind" : "LiteralInteger",                      "name" : "'Depth'" },
347        { "kind" : "LiteralInteger",                      "name" : "'Arrayed'" },
348        { "kind" : "LiteralInteger",                      "name" : "'MS'" },
349        { "kind" : "LiteralInteger",                      "name" : "'Sampled'" },
350        { "kind" : "ImageFormat" },
351        { "kind" : "AccessQualifier", "quantifier" : "?" }
352      ]
353    },
354    {
355      "opname" : "OpTypeSampler",
356      "class"  : "Type-Declaration",
357      "opcode" : 26,
358      "operands" : [
359        { "kind" : "IdResult" }
360      ]
361    },
362    {
363      "opname" : "OpTypeSampledImage",
364      "class"  : "Type-Declaration",
365      "opcode" : 27,
366      "operands" : [
367        { "kind" : "IdResult" },
368        { "kind" : "IdRef",    "name" : "'Image Type'" }
369      ]
370    },
371    {
372      "opname" : "OpTypeArray",
373      "class"  : "Type-Declaration",
374      "opcode" : 28,
375      "operands" : [
376        { "kind" : "IdResult" },
377        { "kind" : "IdRef",    "name" : "'Element Type'" },
378        { "kind" : "IdRef",    "name" : "'Length'" }
379      ]
380    },
381    {
382      "opname" : "OpTypeRuntimeArray",
383      "class"  : "Type-Declaration",
384      "opcode" : 29,
385      "operands" : [
386        { "kind" : "IdResult" },
387        { "kind" : "IdRef",    "name" : "'Element Type'" }
388      ],
389      "capabilities" : [ "Shader" ]
390    },
391    {
392      "opname" : "OpTypeStruct",
393      "class"  : "Type-Declaration",
394      "opcode" : 30,
395      "operands" : [
396        { "kind" : "IdResult" },
397        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
398      ]
399    },
400    {
401      "opname" : "OpTypeOpaque",
402      "class"  : "Type-Declaration",
403      "opcode" : 31,
404      "operands" : [
405        { "kind" : "IdResult" },
406        { "kind" : "LiteralString", "name" : "The name of the opaque type." }
407      ],
408      "capabilities" : [ "Kernel" ]
409    },
410    {
411      "opname" : "OpTypePointer",
412      "class"  : "Type-Declaration",
413      "opcode" : 32,
414      "operands" : [
415        { "kind" : "IdResult" },
416        { "kind" : "StorageClass" },
417        { "kind" : "IdRef",        "name" : "'Type'" }
418      ]
419    },
420    {
421      "opname" : "OpTypeFunction",
422      "class"  : "Type-Declaration",
423      "opcode" : 33,
424      "operands" : [
425        { "kind" : "IdResult" },
426        { "kind" : "IdRef",                        "name" : "'Return Type'" },
427        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." }
428      ]
429    },
430    {
431      "opname" : "OpTypeEvent",
432      "class"  : "Type-Declaration",
433      "opcode" : 34,
434      "operands" : [
435        { "kind" : "IdResult" }
436      ],
437      "capabilities" : [ "Kernel" ]
438    },
439    {
440      "opname" : "OpTypeDeviceEvent",
441      "class"  : "Type-Declaration",
442      "opcode" : 35,
443      "operands" : [
444        { "kind" : "IdResult" }
445      ],
446      "capabilities" : [ "DeviceEnqueue" ]
447    },
448    {
449      "opname" : "OpTypeReserveId",
450      "class"  : "Type-Declaration",
451      "opcode" : 36,
452      "operands" : [
453        { "kind" : "IdResult" }
454      ],
455      "capabilities" : [ "Pipes" ]
456    },
457    {
458      "opname" : "OpTypeQueue",
459      "class"  : "Type-Declaration",
460      "opcode" : 37,
461      "operands" : [
462        { "kind" : "IdResult" }
463      ],
464      "capabilities" : [ "DeviceEnqueue" ]
465    },
466    {
467      "opname" : "OpTypePipe",
468      "class"  : "Type-Declaration",
469      "opcode" : 38,
470      "operands" : [
471        { "kind" : "IdResult" },
472        { "kind" : "AccessQualifier", "name" : "'Qualifier'" }
473      ],
474      "capabilities" : [ "Pipes" ]
475    },
476    {
477      "opname" : "OpTypeForwardPointer",
478      "class"  : "Type-Declaration",
479      "opcode" : 39,
480      "operands" : [
481        { "kind" : "IdRef",        "name" : "'Pointer Type'" },
482        { "kind" : "StorageClass" }
483      ],
484      "capabilities" : [
485        "Addresses",
486        "PhysicalStorageBufferAddresses"
487      ]
488    },
489    {
490      "opname" : "OpConstantTrue",
491      "class"  : "Constant-Creation",
492      "opcode" : 41,
493      "operands" : [
494        { "kind" : "IdResultType" },
495        { "kind" : "IdResult" }
496      ]
497    },
498    {
499      "opname" : "OpConstantFalse",
500      "class"  : "Constant-Creation",
501      "opcode" : 42,
502      "operands" : [
503        { "kind" : "IdResultType" },
504        { "kind" : "IdResult" }
505      ]
506    },
507    {
508      "opname" : "OpConstant",
509      "class"  : "Constant-Creation",
510      "opcode" : 43,
511      "operands" : [
512        { "kind" : "IdResultType" },
513        { "kind" : "IdResult" },
514        { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
515      ]
516    },
517    {
518      "opname" : "OpConstantComposite",
519      "class"  : "Constant-Creation",
520      "opcode" : 44,
521      "operands" : [
522        { "kind" : "IdResultType" },
523        { "kind" : "IdResult" },
524        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
525      ]
526    },
527    {
528      "opname" : "OpConstantSampler",
529      "class"  : "Constant-Creation",
530      "opcode" : 45,
531      "operands" : [
532        { "kind" : "IdResultType" },
533        { "kind" : "IdResult" },
534        { "kind" : "SamplerAddressingMode" },
535        { "kind" : "LiteralInteger",        "name" : "'Param'" },
536        { "kind" : "SamplerFilterMode" }
537      ],
538      "capabilities" : [ "LiteralSampler" ]
539    },
540    {
541      "opname" : "OpConstantNull",
542      "class"  : "Constant-Creation",
543      "opcode" : 46,
544      "operands" : [
545        { "kind" : "IdResultType" },
546        { "kind" : "IdResult" }
547      ]
548    },
549    {
550      "opname" : "OpSpecConstantTrue",
551      "class"  : "Constant-Creation",
552      "opcode" : 48,
553      "operands" : [
554        { "kind" : "IdResultType" },
555        { "kind" : "IdResult" }
556      ]
557    },
558    {
559      "opname" : "OpSpecConstantFalse",
560      "class"  : "Constant-Creation",
561      "opcode" : 49,
562      "operands" : [
563        { "kind" : "IdResultType" },
564        { "kind" : "IdResult" }
565      ]
566    },
567    {
568      "opname" : "OpSpecConstant",
569      "class"  : "Constant-Creation",
570      "opcode" : 50,
571      "operands" : [
572        { "kind" : "IdResultType" },
573        { "kind" : "IdResult" },
574        { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
575      ]
576    },
577    {
578      "opname" : "OpSpecConstantComposite",
579      "class"  : "Constant-Creation",
580      "opcode" : 51,
581      "operands" : [
582        { "kind" : "IdResultType" },
583        { "kind" : "IdResult" },
584        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
585      ]
586    },
587    {
588      "opname" : "OpSpecConstantOp",
589      "class"  : "Constant-Creation",
590      "opcode" : 52,
591      "operands" : [
592        { "kind" : "IdResultType" },
593        { "kind" : "IdResult" },
594        { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" }
595      ]
596    },
597    {
598      "opname" : "OpFunction",
599      "class"  : "Function",
600      "opcode" : 54,
601      "operands" : [
602        { "kind" : "IdResultType" },
603        { "kind" : "IdResult" },
604        { "kind" : "FunctionControl" },
605        { "kind" : "IdRef",           "name" : "'Function Type'" }
606      ]
607    },
608    {
609      "opname" : "OpFunctionParameter",
610      "class"  : "Function",
611      "opcode" : 55,
612      "operands" : [
613        { "kind" : "IdResultType" },
614        { "kind" : "IdResult" }
615      ]
616    },
617    {
618      "opname" : "OpFunctionEnd",
619      "class"  : "Function",
620      "opcode" : 56
621    },
622    {
623      "opname" : "OpFunctionCall",
624      "class"  : "Function",
625      "opcode" : 57,
626      "operands" : [
627        { "kind" : "IdResultType" },
628        { "kind" : "IdResult" },
629        { "kind" : "IdRef",                            "name" : "'Function'" },
630        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." }
631      ]
632    },
633    {
634      "opname" : "OpVariable",
635      "class"  : "Memory",
636      "opcode" : 59,
637      "operands" : [
638        { "kind" : "IdResultType" },
639        { "kind" : "IdResult" },
640        { "kind" : "StorageClass" },
641        { "kind" : "IdRef",        "quantifier" : "?", "name" : "'Initializer'" }
642      ]
643    },
644    {
645      "opname" : "OpImageTexelPointer",
646      "class"  : "Memory",
647      "opcode" : 60,
648      "operands" : [
649        { "kind" : "IdResultType" },
650        { "kind" : "IdResult" },
651        { "kind" : "IdRef",        "name" : "'Image'" },
652        { "kind" : "IdRef",        "name" : "'Coordinate'" },
653        { "kind" : "IdRef",        "name" : "'Sample'" }
654      ]
655    },
656    {
657      "opname" : "OpLoad",
658      "class"  : "Memory",
659      "opcode" : 61,
660      "operands" : [
661        { "kind" : "IdResultType" },
662        { "kind" : "IdResult" },
663        { "kind" : "IdRef",                            "name" : "'Pointer'" },
664        { "kind" : "MemoryAccess", "quantifier" : "?" }
665      ]
666    },
667    {
668      "opname" : "OpStore",
669      "class"  : "Memory",
670      "opcode" : 62,
671      "operands" : [
672        { "kind" : "IdRef",                            "name" : "'Pointer'" },
673        { "kind" : "IdRef",                            "name" : "'Object'" },
674        { "kind" : "MemoryAccess", "quantifier" : "?" }
675      ]
676    },
677    {
678      "opname" : "OpCopyMemory",
679      "class"  : "Memory",
680      "opcode" : 63,
681      "operands" : [
682        { "kind" : "IdRef",                            "name" : "'Target'" },
683        { "kind" : "IdRef",                            "name" : "'Source'" },
684        { "kind" : "MemoryAccess", "quantifier" : "?" },
685        { "kind" : "MemoryAccess", "quantifier" : "?" }
686      ]
687    },
688    {
689      "opname" : "OpCopyMemorySized",
690      "class"  : "Memory",
691      "opcode" : 64,
692      "operands" : [
693        { "kind" : "IdRef",                            "name" : "'Target'" },
694        { "kind" : "IdRef",                            "name" : "'Source'" },
695        { "kind" : "IdRef",                            "name" : "'Size'" },
696        { "kind" : "MemoryAccess", "quantifier" : "?" },
697        { "kind" : "MemoryAccess", "quantifier" : "?" }
698      ],
699      "capabilities" : [ "Addresses" ]
700    },
701    {
702      "opname" : "OpAccessChain",
703      "class"  : "Memory",
704      "opcode" : 65,
705      "operands" : [
706        { "kind" : "IdResultType" },
707        { "kind" : "IdResult" },
708        { "kind" : "IdRef",                            "name" : "'Base'" },
709        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
710      ]
711    },
712    {
713      "opname" : "OpInBoundsAccessChain",
714      "class"  : "Memory",
715      "opcode" : 66,
716      "operands" : [
717        { "kind" : "IdResultType" },
718        { "kind" : "IdResult" },
719        { "kind" : "IdRef",                            "name" : "'Base'" },
720        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
721      ]
722    },
723    {
724      "opname" : "OpPtrAccessChain",
725      "class"  : "Memory",
726      "opcode" : 67,
727      "operands" : [
728        { "kind" : "IdResultType" },
729        { "kind" : "IdResult" },
730        { "kind" : "IdRef",                            "name" : "'Base'" },
731        { "kind" : "IdRef",                            "name" : "'Element'" },
732        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
733      ],
734      "capabilities" : [
735        "Addresses",
736        "VariablePointers",
737        "VariablePointersStorageBuffer",
738        "PhysicalStorageBufferAddresses"
739      ]
740    },
741    {
742      "opname" : "OpArrayLength",
743      "class"  : "Memory",
744      "opcode" : 68,
745      "operands" : [
746        { "kind" : "IdResultType" },
747        { "kind" : "IdResult" },
748        { "kind" : "IdRef",          "name" : "'Structure'" },
749        { "kind" : "LiteralInteger", "name" : "'Array member'" }
750      ],
751      "capabilities" : [ "Shader" ]
752    },
753    {
754      "opname" : "OpGenericPtrMemSemantics",
755      "class"  : "Memory",
756      "opcode" : 69,
757      "operands" : [
758        { "kind" : "IdResultType" },
759        { "kind" : "IdResult" },
760        { "kind" : "IdRef",        "name" : "'Pointer'" }
761      ],
762      "capabilities" : [ "Kernel" ]
763    },
764    {
765      "opname" : "OpInBoundsPtrAccessChain",
766      "class"  : "Memory",
767      "opcode" : 70,
768      "operands" : [
769        { "kind" : "IdResultType" },
770        { "kind" : "IdResult" },
771        { "kind" : "IdRef",                            "name" : "'Base'" },
772        { "kind" : "IdRef",                            "name" : "'Element'" },
773        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Indexes'" }
774      ],
775      "capabilities" : [ "Addresses" ]
776    },
777    {
778      "opname" : "OpDecorate",
779      "class"  : "Annotation",
780      "opcode" : 71,
781      "operands" : [
782        { "kind" : "IdRef",      "name" : "'Target'" },
783        { "kind" : "Decoration" }
784      ]
785    },
786    {
787      "opname" : "OpMemberDecorate",
788      "class"  : "Annotation",
789      "opcode" : 72,
790      "operands" : [
791        { "kind" : "IdRef",          "name" : "'Structure Type'" },
792        { "kind" : "LiteralInteger", "name" : "'Member'" },
793        { "kind" : "Decoration" }
794      ]
795    },
796    {
797      "opname" : "OpDecorationGroup",
798      "class"  : "Annotation",
799      "opcode" : 73,
800      "operands" : [
801        { "kind" : "IdResult" }
802      ]
803    },
804    {
805      "opname" : "OpGroupDecorate",
806      "class"  : "Annotation",
807      "opcode" : 74,
808      "operands" : [
809        { "kind" : "IdRef",                     "name" : "'Decoration Group'" },
810        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" }
811      ]
812    },
813    {
814      "opname" : "OpGroupMemberDecorate",
815      "class"  : "Annotation",
816      "opcode" : 75,
817      "operands" : [
818        { "kind" : "IdRef",                                       "name" : "'Decoration Group'" },
819        { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" }
820      ]
821    },
822    {
823      "opname" : "OpVectorExtractDynamic",
824      "class"  : "Composite",
825      "opcode" : 77,
826      "operands" : [
827        { "kind" : "IdResultType" },
828        { "kind" : "IdResult" },
829        { "kind" : "IdRef",        "name" : "'Vector'" },
830        { "kind" : "IdRef",        "name" : "'Index'" }
831      ]
832    },
833    {
834      "opname" : "OpVectorInsertDynamic",
835      "class"  : "Composite",
836      "opcode" : 78,
837      "operands" : [
838        { "kind" : "IdResultType" },
839        { "kind" : "IdResult" },
840        { "kind" : "IdRef",        "name" : "'Vector'" },
841        { "kind" : "IdRef",        "name" : "'Component'" },
842        { "kind" : "IdRef",        "name" : "'Index'" }
843      ]
844    },
845    {
846      "opname" : "OpVectorShuffle",
847      "class"  : "Composite",
848      "opcode" : 79,
849      "operands" : [
850        { "kind" : "IdResultType" },
851        { "kind" : "IdResult" },
852        { "kind" : "IdRef",                              "name" : "'Vector 1'" },
853        { "kind" : "IdRef",                              "name" : "'Vector 2'" },
854        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" }
855      ]
856    },
857    {
858      "opname" : "OpCompositeConstruct",
859      "class"  : "Composite",
860      "opcode" : 80,
861      "operands" : [
862        { "kind" : "IdResultType" },
863        { "kind" : "IdResult" },
864        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
865      ]
866    },
867    {
868      "opname" : "OpCompositeExtract",
869      "class"  : "Composite",
870      "opcode" : 81,
871      "operands" : [
872        { "kind" : "IdResultType" },
873        { "kind" : "IdResult" },
874        { "kind" : "IdRef",                              "name" : "'Composite'" },
875        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
876      ]
877    },
878    {
879      "opname" : "OpCompositeInsert",
880      "class"  : "Composite",
881      "opcode" : 82,
882      "operands" : [
883        { "kind" : "IdResultType" },
884        { "kind" : "IdResult" },
885        { "kind" : "IdRef",                              "name" : "'Object'" },
886        { "kind" : "IdRef",                              "name" : "'Composite'" },
887        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
888      ]
889    },
890    {
891      "opname" : "OpCopyObject",
892      "class"  : "Composite",
893      "opcode" : 83,
894      "operands" : [
895        { "kind" : "IdResultType" },
896        { "kind" : "IdResult" },
897        { "kind" : "IdRef",        "name" : "'Operand'" }
898      ]
899    },
900    {
901      "opname" : "OpTranspose",
902      "class"  : "Composite",
903      "opcode" : 84,
904      "operands" : [
905        { "kind" : "IdResultType" },
906        { "kind" : "IdResult" },
907        { "kind" : "IdRef",        "name" : "'Matrix'" }
908      ],
909      "capabilities" : [ "Matrix" ]
910    },
911    {
912      "opname" : "OpSampledImage",
913      "class"  : "Image",
914      "opcode" : 86,
915      "operands" : [
916        { "kind" : "IdResultType" },
917        { "kind" : "IdResult" },
918        { "kind" : "IdRef",        "name" : "'Image'" },
919        { "kind" : "IdRef",        "name" : "'Sampler'" }
920      ]
921    },
922    {
923      "opname" : "OpImageSampleImplicitLod",
924      "class"  : "Image",
925      "opcode" : 87,
926      "operands" : [
927        { "kind" : "IdResultType" },
928        { "kind" : "IdResult" },
929        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
930        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
931        { "kind" : "ImageOperands", "quantifier" : "?" }
932      ],
933      "capabilities" : [ "Shader" ]
934    },
935    {
936      "opname" : "OpImageSampleExplicitLod",
937      "class"  : "Image",
938      "opcode" : 88,
939      "operands" : [
940        { "kind" : "IdResultType" },
941        { "kind" : "IdResult" },
942        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
943        { "kind" : "IdRef",         "name" : "'Coordinate'" },
944        { "kind" : "ImageOperands" }
945      ]
946    },
947    {
948      "opname" : "OpImageSampleDrefImplicitLod",
949      "class"  : "Image",
950      "opcode" : 89,
951      "operands" : [
952        { "kind" : "IdResultType" },
953        { "kind" : "IdResult" },
954        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
955        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
956        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
957        { "kind" : "ImageOperands", "quantifier" : "?" }
958      ],
959      "capabilities" : [ "Shader" ]
960    },
961    {
962      "opname" : "OpImageSampleDrefExplicitLod",
963      "class"  : "Image",
964      "opcode" : 90,
965      "operands" : [
966        { "kind" : "IdResultType" },
967        { "kind" : "IdResult" },
968        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
969        { "kind" : "IdRef",         "name" : "'Coordinate'" },
970        { "kind" : "IdRef",         "name" : "'D~ref~'" },
971        { "kind" : "ImageOperands" }
972      ],
973      "capabilities" : [ "Shader" ]
974    },
975    {
976      "opname" : "OpImageSampleProjImplicitLod",
977      "class"  : "Image",
978      "opcode" : 91,
979      "operands" : [
980        { "kind" : "IdResultType" },
981        { "kind" : "IdResult" },
982        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
983        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
984        { "kind" : "ImageOperands", "quantifier" : "?" }
985      ],
986      "capabilities" : [ "Shader" ]
987    },
988    {
989      "opname" : "OpImageSampleProjExplicitLod",
990      "class"  : "Image",
991      "opcode" : 92,
992      "operands" : [
993        { "kind" : "IdResultType" },
994        { "kind" : "IdResult" },
995        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
996        { "kind" : "IdRef",         "name" : "'Coordinate'" },
997        { "kind" : "ImageOperands" }
998      ],
999      "capabilities" : [ "Shader" ]
1000    },
1001    {
1002      "opname" : "OpImageSampleProjDrefImplicitLod",
1003      "class"  : "Image",
1004      "opcode" : 93,
1005      "operands" : [
1006        { "kind" : "IdResultType" },
1007        { "kind" : "IdResult" },
1008        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1009        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1010        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
1011        { "kind" : "ImageOperands", "quantifier" : "?" }
1012      ],
1013      "capabilities" : [ "Shader" ]
1014    },
1015    {
1016      "opname" : "OpImageSampleProjDrefExplicitLod",
1017      "class"  : "Image",
1018      "opcode" : 94,
1019      "operands" : [
1020        { "kind" : "IdResultType" },
1021        { "kind" : "IdResult" },
1022        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
1023        { "kind" : "IdRef",         "name" : "'Coordinate'" },
1024        { "kind" : "IdRef",         "name" : "'D~ref~'" },
1025        { "kind" : "ImageOperands" }
1026      ],
1027      "capabilities" : [ "Shader" ]
1028    },
1029    {
1030      "opname" : "OpImageFetch",
1031      "class"  : "Image",
1032      "opcode" : 95,
1033      "operands" : [
1034        { "kind" : "IdResultType" },
1035        { "kind" : "IdResult" },
1036        { "kind" : "IdRef",                             "name" : "'Image'" },
1037        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1038        { "kind" : "ImageOperands", "quantifier" : "?" }
1039      ]
1040    },
1041    {
1042      "opname" : "OpImageGather",
1043      "class"  : "Image",
1044      "opcode" : 96,
1045      "operands" : [
1046        { "kind" : "IdResultType" },
1047        { "kind" : "IdResult" },
1048        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1049        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1050        { "kind" : "IdRef",                             "name" : "'Component'" },
1051        { "kind" : "ImageOperands", "quantifier" : "?" }
1052      ],
1053      "capabilities" : [ "Shader" ]
1054    },
1055    {
1056      "opname" : "OpImageDrefGather",
1057      "class"  : "Image",
1058      "opcode" : 97,
1059      "operands" : [
1060        { "kind" : "IdResultType" },
1061        { "kind" : "IdResult" },
1062        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
1063        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1064        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
1065        { "kind" : "ImageOperands", "quantifier" : "?" }
1066      ],
1067      "capabilities" : [ "Shader" ]
1068    },
1069    {
1070      "opname" : "OpImageRead",
1071      "class"  : "Image",
1072      "opcode" : 98,
1073      "operands" : [
1074        { "kind" : "IdResultType" },
1075        { "kind" : "IdResult" },
1076        { "kind" : "IdRef",                             "name" : "'Image'" },
1077        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1078        { "kind" : "ImageOperands", "quantifier" : "?" }
1079      ]
1080    },
1081    {
1082      "opname" : "OpImageWrite",
1083      "class"  : "Image",
1084      "opcode" : 99,
1085      "operands" : [
1086        { "kind" : "IdRef",                             "name" : "'Image'" },
1087        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
1088        { "kind" : "IdRef",                             "name" : "'Texel'" },
1089        { "kind" : "ImageOperands", "quantifier" : "?" }
1090      ]
1091    },
1092    {
1093      "opname" : "OpImage",
1094      "class"  : "Image",
1095      "opcode" : 100,
1096      "operands" : [
1097        { "kind" : "IdResultType" },
1098        { "kind" : "IdResult" },
1099        { "kind" : "IdRef",        "name" : "'Sampled Image'" }
1100      ]
1101    },
1102    {
1103      "opname" : "OpImageQueryFormat",
1104      "class"  : "Image",
1105      "opcode" : 101,
1106      "operands" : [
1107        { "kind" : "IdResultType" },
1108        { "kind" : "IdResult" },
1109        { "kind" : "IdRef",        "name" : "'Image'" }
1110      ],
1111      "capabilities" : [ "Kernel" ]
1112    },
1113    {
1114      "opname" : "OpImageQueryOrder",
1115      "class"  : "Image",
1116      "opcode" : 102,
1117      "operands" : [
1118        { "kind" : "IdResultType" },
1119        { "kind" : "IdResult" },
1120        { "kind" : "IdRef",        "name" : "'Image'" }
1121      ],
1122      "capabilities" : [ "Kernel" ]
1123    },
1124    {
1125      "opname" : "OpImageQuerySizeLod",
1126      "class"  : "Image",
1127      "opcode" : 103,
1128      "operands" : [
1129        { "kind" : "IdResultType" },
1130        { "kind" : "IdResult" },
1131        { "kind" : "IdRef",        "name" : "'Image'" },
1132        { "kind" : "IdRef",        "name" : "'Level of Detail'" }
1133      ],
1134      "capabilities" : [ "Kernel", "ImageQuery" ]
1135    },
1136    {
1137      "opname" : "OpImageQuerySize",
1138      "class"  : "Image",
1139      "opcode" : 104,
1140      "operands" : [
1141        { "kind" : "IdResultType" },
1142        { "kind" : "IdResult" },
1143        { "kind" : "IdRef",        "name" : "'Image'" }
1144      ],
1145      "capabilities" : [ "Kernel", "ImageQuery" ]
1146    },
1147    {
1148      "opname" : "OpImageQueryLod",
1149      "class"  : "Image",
1150      "opcode" : 105,
1151      "operands" : [
1152        { "kind" : "IdResultType" },
1153        { "kind" : "IdResult" },
1154        { "kind" : "IdRef",        "name" : "'Sampled Image'" },
1155        { "kind" : "IdRef",        "name" : "'Coordinate'" }
1156      ],
1157      "capabilities" : [ "ImageQuery" ]
1158    },
1159    {
1160      "opname" : "OpImageQueryLevels",
1161      "class"  : "Image",
1162      "opcode" : 106,
1163      "operands" : [
1164        { "kind" : "IdResultType" },
1165        { "kind" : "IdResult" },
1166        { "kind" : "IdRef",        "name" : "'Image'" }
1167      ],
1168      "capabilities" : [ "Kernel", "ImageQuery" ]
1169    },
1170    {
1171      "opname" : "OpImageQuerySamples",
1172      "class"  : "Image",
1173      "opcode" : 107,
1174      "operands" : [
1175        { "kind" : "IdResultType" },
1176        { "kind" : "IdResult" },
1177        { "kind" : "IdRef",        "name" : "'Image'" }
1178      ],
1179      "capabilities" : [ "Kernel", "ImageQuery" ]
1180    },
1181    {
1182      "opname" : "OpConvertFToU",
1183      "class"  : "Conversion",
1184      "opcode" : 109,
1185      "operands" : [
1186        { "kind" : "IdResultType" },
1187        { "kind" : "IdResult" },
1188        { "kind" : "IdRef",        "name" : "'Float Value'" }
1189      ]
1190    },
1191    {
1192      "opname" : "OpConvertFToS",
1193      "class"  : "Conversion",
1194      "opcode" : 110,
1195      "operands" : [
1196        { "kind" : "IdResultType" },
1197        { "kind" : "IdResult" },
1198        { "kind" : "IdRef",        "name" : "'Float Value'" }
1199      ]
1200    },
1201    {
1202      "opname" : "OpConvertSToF",
1203      "class"  : "Conversion",
1204      "opcode" : 111,
1205      "operands" : [
1206        { "kind" : "IdResultType" },
1207        { "kind" : "IdResult" },
1208        { "kind" : "IdRef",        "name" : "'Signed Value'" }
1209      ]
1210    },
1211    {
1212      "opname" : "OpConvertUToF",
1213      "class"  : "Conversion",
1214      "opcode" : 112,
1215      "operands" : [
1216        { "kind" : "IdResultType" },
1217        { "kind" : "IdResult" },
1218        { "kind" : "IdRef",        "name" : "'Unsigned Value'" }
1219      ]
1220    },
1221    {
1222      "opname" : "OpUConvert",
1223      "class"  : "Conversion",
1224      "opcode" : 113,
1225      "operands" : [
1226        { "kind" : "IdResultType" },
1227        { "kind" : "IdResult" },
1228        { "kind" : "IdRef",        "name" : "'Unsigned Value'" }
1229      ]
1230    },
1231    {
1232      "opname" : "OpSConvert",
1233      "class"  : "Conversion",
1234      "opcode" : 114,
1235      "operands" : [
1236        { "kind" : "IdResultType" },
1237        { "kind" : "IdResult" },
1238        { "kind" : "IdRef",        "name" : "'Signed Value'" }
1239      ]
1240    },
1241    {
1242      "opname" : "OpFConvert",
1243      "class"  : "Conversion",
1244      "opcode" : 115,
1245      "operands" : [
1246        { "kind" : "IdResultType" },
1247        { "kind" : "IdResult" },
1248        { "kind" : "IdRef",        "name" : "'Float Value'" }
1249      ]
1250    },
1251    {
1252      "opname" : "OpQuantizeToF16",
1253      "class"  : "Conversion",
1254      "opcode" : 116,
1255      "operands" : [
1256        { "kind" : "IdResultType" },
1257        { "kind" : "IdResult" },
1258        { "kind" : "IdRef",        "name" : "'Value'" }
1259      ]
1260    },
1261    {
1262      "opname" : "OpConvertPtrToU",
1263      "class"  : "Conversion",
1264      "opcode" : 117,
1265      "operands" : [
1266        { "kind" : "IdResultType" },
1267        { "kind" : "IdResult" },
1268        { "kind" : "IdRef",        "name" : "'Pointer'" }
1269      ],
1270      "capabilities" : [
1271        "Addresses",
1272        "PhysicalStorageBufferAddresses"
1273      ]
1274    },
1275    {
1276      "opname" : "OpSatConvertSToU",
1277      "class"  : "Conversion",
1278      "opcode" : 118,
1279      "operands" : [
1280        { "kind" : "IdResultType" },
1281        { "kind" : "IdResult" },
1282        { "kind" : "IdRef",        "name" : "'Signed Value'" }
1283      ],
1284      "capabilities" : [ "Kernel" ]
1285    },
1286    {
1287      "opname" : "OpSatConvertUToS",
1288      "class"  : "Conversion",
1289      "opcode" : 119,
1290      "operands" : [
1291        { "kind" : "IdResultType" },
1292        { "kind" : "IdResult" },
1293        { "kind" : "IdRef",        "name" : "'Unsigned Value'" }
1294      ],
1295      "capabilities" : [ "Kernel" ]
1296    },
1297    {
1298      "opname" : "OpConvertUToPtr",
1299      "class"  : "Conversion",
1300      "opcode" : 120,
1301      "operands" : [
1302        { "kind" : "IdResultType" },
1303        { "kind" : "IdResult" },
1304        { "kind" : "IdRef",        "name" : "'Integer Value'" }
1305      ],
1306      "capabilities" : [
1307        "Addresses",
1308        "PhysicalStorageBufferAddresses"
1309      ]
1310    },
1311    {
1312      "opname" : "OpPtrCastToGeneric",
1313      "class"  : "Conversion",
1314      "opcode" : 121,
1315      "operands" : [
1316        { "kind" : "IdResultType" },
1317        { "kind" : "IdResult" },
1318        { "kind" : "IdRef",        "name" : "'Pointer'" }
1319      ],
1320      "capabilities" : [ "Kernel" ]
1321    },
1322    {
1323      "opname" : "OpGenericCastToPtr",
1324      "class"  : "Conversion",
1325      "opcode" : 122,
1326      "operands" : [
1327        { "kind" : "IdResultType" },
1328        { "kind" : "IdResult" },
1329        { "kind" : "IdRef",        "name" : "'Pointer'" }
1330      ],
1331      "capabilities" : [ "Kernel" ]
1332    },
1333    {
1334      "opname" : "OpGenericCastToPtrExplicit",
1335      "class"  : "Conversion",
1336      "opcode" : 123,
1337      "operands" : [
1338        { "kind" : "IdResultType" },
1339        { "kind" : "IdResult" },
1340        { "kind" : "IdRef",        "name" : "'Pointer'" },
1341        { "kind" : "StorageClass", "name" : "'Storage'" }
1342      ],
1343      "capabilities" : [ "Kernel" ]
1344    },
1345    {
1346      "opname" : "OpBitcast",
1347      "class"  : "Conversion",
1348      "opcode" : 124,
1349      "operands" : [
1350        { "kind" : "IdResultType" },
1351        { "kind" : "IdResult" },
1352        { "kind" : "IdRef",        "name" : "'Operand'" }
1353      ]
1354    },
1355    {
1356      "opname" : "OpSNegate",
1357      "class"  : "Arithmetic",
1358      "opcode" : 126,
1359      "operands" : [
1360        { "kind" : "IdResultType" },
1361        { "kind" : "IdResult" },
1362        { "kind" : "IdRef",        "name" : "'Operand'" }
1363      ]
1364    },
1365    {
1366      "opname" : "OpFNegate",
1367      "class"  : "Arithmetic",
1368      "opcode" : 127,
1369      "operands" : [
1370        { "kind" : "IdResultType" },
1371        { "kind" : "IdResult" },
1372        { "kind" : "IdRef",        "name" : "'Operand'" }
1373      ]
1374    },
1375    {
1376      "opname" : "OpIAdd",
1377      "class"  : "Arithmetic",
1378      "opcode" : 128,
1379      "operands" : [
1380        { "kind" : "IdResultType" },
1381        { "kind" : "IdResult" },
1382        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1383        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1384      ]
1385    },
1386    {
1387      "opname" : "OpFAdd",
1388      "class"  : "Arithmetic",
1389      "opcode" : 129,
1390      "operands" : [
1391        { "kind" : "IdResultType" },
1392        { "kind" : "IdResult" },
1393        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1394        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1395      ]
1396    },
1397    {
1398      "opname" : "OpISub",
1399      "class"  : "Arithmetic",
1400      "opcode" : 130,
1401      "operands" : [
1402        { "kind" : "IdResultType" },
1403        { "kind" : "IdResult" },
1404        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1405        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1406      ]
1407    },
1408    {
1409      "opname" : "OpFSub",
1410      "class"  : "Arithmetic",
1411      "opcode" : 131,
1412      "operands" : [
1413        { "kind" : "IdResultType" },
1414        { "kind" : "IdResult" },
1415        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1416        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1417      ]
1418    },
1419    {
1420      "opname" : "OpIMul",
1421      "class"  : "Arithmetic",
1422      "opcode" : 132,
1423      "operands" : [
1424        { "kind" : "IdResultType" },
1425        { "kind" : "IdResult" },
1426        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1427        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1428      ]
1429    },
1430    {
1431      "opname" : "OpFMul",
1432      "class"  : "Arithmetic",
1433      "opcode" : 133,
1434      "operands" : [
1435        { "kind" : "IdResultType" },
1436        { "kind" : "IdResult" },
1437        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1438        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1439      ]
1440    },
1441    {
1442      "opname" : "OpUDiv",
1443      "class"  : "Arithmetic",
1444      "opcode" : 134,
1445      "operands" : [
1446        { "kind" : "IdResultType" },
1447        { "kind" : "IdResult" },
1448        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1449        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1450      ]
1451    },
1452    {
1453      "opname" : "OpSDiv",
1454      "class"  : "Arithmetic",
1455      "opcode" : 135,
1456      "operands" : [
1457        { "kind" : "IdResultType" },
1458        { "kind" : "IdResult" },
1459        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1460        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1461      ]
1462    },
1463    {
1464      "opname" : "OpFDiv",
1465      "class"  : "Arithmetic",
1466      "opcode" : 136,
1467      "operands" : [
1468        { "kind" : "IdResultType" },
1469        { "kind" : "IdResult" },
1470        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1471        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1472      ]
1473    },
1474    {
1475      "opname" : "OpUMod",
1476      "class"  : "Arithmetic",
1477      "opcode" : 137,
1478      "operands" : [
1479        { "kind" : "IdResultType" },
1480        { "kind" : "IdResult" },
1481        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1482        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1483      ]
1484    },
1485    {
1486      "opname" : "OpSRem",
1487      "class"  : "Arithmetic",
1488      "opcode" : 138,
1489      "operands" : [
1490        { "kind" : "IdResultType" },
1491        { "kind" : "IdResult" },
1492        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1493        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1494      ]
1495    },
1496    {
1497      "opname" : "OpSMod",
1498      "class"  : "Arithmetic",
1499      "opcode" : 139,
1500      "operands" : [
1501        { "kind" : "IdResultType" },
1502        { "kind" : "IdResult" },
1503        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1504        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1505      ]
1506    },
1507    {
1508      "opname" : "OpFRem",
1509      "class"  : "Arithmetic",
1510      "opcode" : 140,
1511      "operands" : [
1512        { "kind" : "IdResultType" },
1513        { "kind" : "IdResult" },
1514        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1515        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1516      ]
1517    },
1518    {
1519      "opname" : "OpFMod",
1520      "class"  : "Arithmetic",
1521      "opcode" : 141,
1522      "operands" : [
1523        { "kind" : "IdResultType" },
1524        { "kind" : "IdResult" },
1525        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1526        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1527      ]
1528    },
1529    {
1530      "opname" : "OpVectorTimesScalar",
1531      "class"  : "Arithmetic",
1532      "opcode" : 142,
1533      "operands" : [
1534        { "kind" : "IdResultType" },
1535        { "kind" : "IdResult" },
1536        { "kind" : "IdRef",        "name" : "'Vector'" },
1537        { "kind" : "IdRef",        "name" : "'Scalar'" }
1538      ]
1539    },
1540    {
1541      "opname" : "OpMatrixTimesScalar",
1542      "class"  : "Arithmetic",
1543      "opcode" : 143,
1544      "operands" : [
1545        { "kind" : "IdResultType" },
1546        { "kind" : "IdResult" },
1547        { "kind" : "IdRef",        "name" : "'Matrix'" },
1548        { "kind" : "IdRef",        "name" : "'Scalar'" }
1549      ],
1550      "capabilities" : [ "Matrix" ]
1551    },
1552    {
1553      "opname" : "OpVectorTimesMatrix",
1554      "class"  : "Arithmetic",
1555      "opcode" : 144,
1556      "operands" : [
1557        { "kind" : "IdResultType" },
1558        { "kind" : "IdResult" },
1559        { "kind" : "IdRef",        "name" : "'Vector'" },
1560        { "kind" : "IdRef",        "name" : "'Matrix'" }
1561      ],
1562      "capabilities" : [ "Matrix" ]
1563    },
1564    {
1565      "opname" : "OpMatrixTimesVector",
1566      "class"  : "Arithmetic",
1567      "opcode" : 145,
1568      "operands" : [
1569        { "kind" : "IdResultType" },
1570        { "kind" : "IdResult" },
1571        { "kind" : "IdRef",        "name" : "'Matrix'" },
1572        { "kind" : "IdRef",        "name" : "'Vector'" }
1573      ],
1574      "capabilities" : [ "Matrix" ]
1575    },
1576    {
1577      "opname" : "OpMatrixTimesMatrix",
1578      "class"  : "Arithmetic",
1579      "opcode" : 146,
1580      "operands" : [
1581        { "kind" : "IdResultType" },
1582        { "kind" : "IdResult" },
1583        { "kind" : "IdRef",        "name" : "'LeftMatrix'" },
1584        { "kind" : "IdRef",        "name" : "'RightMatrix'" }
1585      ],
1586      "capabilities" : [ "Matrix" ]
1587    },
1588    {
1589      "opname" : "OpOuterProduct",
1590      "class"  : "Arithmetic",
1591      "opcode" : 147,
1592      "operands" : [
1593        { "kind" : "IdResultType" },
1594        { "kind" : "IdResult" },
1595        { "kind" : "IdRef",        "name" : "'Vector 1'" },
1596        { "kind" : "IdRef",        "name" : "'Vector 2'" }
1597      ],
1598      "capabilities" : [ "Matrix" ]
1599    },
1600    {
1601      "opname" : "OpDot",
1602      "class"  : "Arithmetic",
1603      "opcode" : 148,
1604      "operands" : [
1605        { "kind" : "IdResultType" },
1606        { "kind" : "IdResult" },
1607        { "kind" : "IdRef",        "name" : "'Vector 1'" },
1608        { "kind" : "IdRef",        "name" : "'Vector 2'" }
1609      ]
1610    },
1611    {
1612      "opname" : "OpIAddCarry",
1613      "class"  : "Arithmetic",
1614      "opcode" : 149,
1615      "operands" : [
1616        { "kind" : "IdResultType" },
1617        { "kind" : "IdResult" },
1618        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1619        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1620      ]
1621    },
1622    {
1623      "opname" : "OpISubBorrow",
1624      "class"  : "Arithmetic",
1625      "opcode" : 150,
1626      "operands" : [
1627        { "kind" : "IdResultType" },
1628        { "kind" : "IdResult" },
1629        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1630        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1631      ]
1632    },
1633    {
1634      "opname" : "OpUMulExtended",
1635      "class"  : "Arithmetic",
1636      "opcode" : 151,
1637      "operands" : [
1638        { "kind" : "IdResultType" },
1639        { "kind" : "IdResult" },
1640        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1641        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1642      ]
1643    },
1644    {
1645      "opname" : "OpSMulExtended",
1646      "class"  : "Arithmetic",
1647      "opcode" : 152,
1648      "operands" : [
1649        { "kind" : "IdResultType" },
1650        { "kind" : "IdResult" },
1651        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1652        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1653      ]
1654    },
1655    {
1656      "opname" : "OpAny",
1657      "class"  : "Relational_and_Logical",
1658      "opcode" : 154,
1659      "operands" : [
1660        { "kind" : "IdResultType" },
1661        { "kind" : "IdResult" },
1662        { "kind" : "IdRef",        "name" : "'Vector'" }
1663      ]
1664    },
1665    {
1666      "opname" : "OpAll",
1667      "class"  : "Relational_and_Logical",
1668      "opcode" : 155,
1669      "operands" : [
1670        { "kind" : "IdResultType" },
1671        { "kind" : "IdResult" },
1672        { "kind" : "IdRef",        "name" : "'Vector'" }
1673      ]
1674    },
1675    {
1676      "opname" : "OpIsNan",
1677      "class"  : "Relational_and_Logical",
1678      "opcode" : 156,
1679      "operands" : [
1680        { "kind" : "IdResultType" },
1681        { "kind" : "IdResult" },
1682        { "kind" : "IdRef",        "name" : "'x'" }
1683      ]
1684    },
1685    {
1686      "opname" : "OpIsInf",
1687      "class"  : "Relational_and_Logical",
1688      "opcode" : 157,
1689      "operands" : [
1690        { "kind" : "IdResultType" },
1691        { "kind" : "IdResult" },
1692        { "kind" : "IdRef",        "name" : "'x'" }
1693      ]
1694    },
1695    {
1696      "opname" : "OpIsFinite",
1697      "class"  : "Relational_and_Logical",
1698      "opcode" : 158,
1699      "operands" : [
1700        { "kind" : "IdResultType" },
1701        { "kind" : "IdResult" },
1702        { "kind" : "IdRef",        "name" : "'x'" }
1703      ],
1704      "capabilities" : [ "Kernel" ]
1705    },
1706    {
1707      "opname" : "OpIsNormal",
1708      "class"  : "Relational_and_Logical",
1709      "opcode" : 159,
1710      "operands" : [
1711        { "kind" : "IdResultType" },
1712        { "kind" : "IdResult" },
1713        { "kind" : "IdRef",        "name" : "'x'" }
1714      ],
1715      "capabilities" : [ "Kernel" ]
1716    },
1717    {
1718      "opname" : "OpSignBitSet",
1719      "class"  : "Relational_and_Logical",
1720      "opcode" : 160,
1721      "operands" : [
1722        { "kind" : "IdResultType" },
1723        { "kind" : "IdResult" },
1724        { "kind" : "IdRef",        "name" : "'x'" }
1725      ],
1726      "capabilities" : [ "Kernel" ]
1727    },
1728    {
1729      "opname" : "OpLessOrGreater",
1730      "class"  : "Relational_and_Logical",
1731      "opcode" : 161,
1732      "operands" : [
1733        { "kind" : "IdResultType" },
1734        { "kind" : "IdResult" },
1735        { "kind" : "IdRef",        "name" : "'x'" },
1736        { "kind" : "IdRef",        "name" : "'y'" }
1737      ],
1738      "capabilities" : [ "Kernel" ],
1739      "lastVersion" : "1.5"
1740    },
1741    {
1742      "opname" : "OpOrdered",
1743      "class"  : "Relational_and_Logical",
1744      "opcode" : 162,
1745      "operands" : [
1746        { "kind" : "IdResultType" },
1747        { "kind" : "IdResult" },
1748        { "kind" : "IdRef",        "name" : "'x'" },
1749        { "kind" : "IdRef",        "name" : "'y'" }
1750      ],
1751      "capabilities" : [ "Kernel" ]
1752    },
1753    {
1754      "opname" : "OpUnordered",
1755      "class"  : "Relational_and_Logical",
1756      "opcode" : 163,
1757      "operands" : [
1758        { "kind" : "IdResultType" },
1759        { "kind" : "IdResult" },
1760        { "kind" : "IdRef",        "name" : "'x'" },
1761        { "kind" : "IdRef",        "name" : "'y'" }
1762      ],
1763      "capabilities" : [ "Kernel" ]
1764    },
1765    {
1766      "opname" : "OpLogicalEqual",
1767      "class"  : "Relational_and_Logical",
1768      "opcode" : 164,
1769      "operands" : [
1770        { "kind" : "IdResultType" },
1771        { "kind" : "IdResult" },
1772        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1773        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1774      ]
1775    },
1776    {
1777      "opname" : "OpLogicalNotEqual",
1778      "class"  : "Relational_and_Logical",
1779      "opcode" : 165,
1780      "operands" : [
1781        { "kind" : "IdResultType" },
1782        { "kind" : "IdResult" },
1783        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1784        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1785      ]
1786    },
1787    {
1788      "opname" : "OpLogicalOr",
1789      "class"  : "Relational_and_Logical",
1790      "opcode" : 166,
1791      "operands" : [
1792        { "kind" : "IdResultType" },
1793        { "kind" : "IdResult" },
1794        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1795        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1796      ]
1797    },
1798    {
1799      "opname" : "OpLogicalAnd",
1800      "class"  : "Relational_and_Logical",
1801      "opcode" : 167,
1802      "operands" : [
1803        { "kind" : "IdResultType" },
1804        { "kind" : "IdResult" },
1805        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1806        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1807      ]
1808    },
1809    {
1810      "opname" : "OpLogicalNot",
1811      "class"  : "Relational_and_Logical",
1812      "opcode" : 168,
1813      "operands" : [
1814        { "kind" : "IdResultType" },
1815        { "kind" : "IdResult" },
1816        { "kind" : "IdRef",        "name" : "'Operand'" }
1817      ]
1818    },
1819    {
1820      "opname" : "OpSelect",
1821      "class"  : "Relational_and_Logical",
1822      "opcode" : 169,
1823      "operands" : [
1824        { "kind" : "IdResultType" },
1825        { "kind" : "IdResult" },
1826        { "kind" : "IdRef",        "name" : "'Condition'" },
1827        { "kind" : "IdRef",        "name" : "'Object 1'" },
1828        { "kind" : "IdRef",        "name" : "'Object 2'" }
1829      ]
1830    },
1831    {
1832      "opname" : "OpIEqual",
1833      "class"  : "Relational_and_Logical",
1834      "opcode" : 170,
1835      "operands" : [
1836        { "kind" : "IdResultType" },
1837        { "kind" : "IdResult" },
1838        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1839        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1840      ]
1841    },
1842    {
1843      "opname" : "OpINotEqual",
1844      "class"  : "Relational_and_Logical",
1845      "opcode" : 171,
1846      "operands" : [
1847        { "kind" : "IdResultType" },
1848        { "kind" : "IdResult" },
1849        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1850        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1851      ]
1852    },
1853    {
1854      "opname" : "OpUGreaterThan",
1855      "class"  : "Relational_and_Logical",
1856      "opcode" : 172,
1857      "operands" : [
1858        { "kind" : "IdResultType" },
1859        { "kind" : "IdResult" },
1860        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1861        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1862      ]
1863    },
1864    {
1865      "opname" : "OpSGreaterThan",
1866      "class"  : "Relational_and_Logical",
1867      "opcode" : 173,
1868      "operands" : [
1869        { "kind" : "IdResultType" },
1870        { "kind" : "IdResult" },
1871        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1872        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1873      ]
1874    },
1875    {
1876      "opname" : "OpUGreaterThanEqual",
1877      "class"  : "Relational_and_Logical",
1878      "opcode" : 174,
1879      "operands" : [
1880        { "kind" : "IdResultType" },
1881        { "kind" : "IdResult" },
1882        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1883        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1884      ]
1885    },
1886    {
1887      "opname" : "OpSGreaterThanEqual",
1888      "class"  : "Relational_and_Logical",
1889      "opcode" : 175,
1890      "operands" : [
1891        { "kind" : "IdResultType" },
1892        { "kind" : "IdResult" },
1893        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1894        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1895      ]
1896    },
1897    {
1898      "opname" : "OpULessThan",
1899      "class"  : "Relational_and_Logical",
1900      "opcode" : 176,
1901      "operands" : [
1902        { "kind" : "IdResultType" },
1903        { "kind" : "IdResult" },
1904        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1905        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1906      ]
1907    },
1908    {
1909      "opname" : "OpSLessThan",
1910      "class"  : "Relational_and_Logical",
1911      "opcode" : 177,
1912      "operands" : [
1913        { "kind" : "IdResultType" },
1914        { "kind" : "IdResult" },
1915        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1916        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1917      ]
1918    },
1919    {
1920      "opname" : "OpULessThanEqual",
1921      "class"  : "Relational_and_Logical",
1922      "opcode" : 178,
1923      "operands" : [
1924        { "kind" : "IdResultType" },
1925        { "kind" : "IdResult" },
1926        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1927        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1928      ]
1929    },
1930    {
1931      "opname" : "OpSLessThanEqual",
1932      "class"  : "Relational_and_Logical",
1933      "opcode" : 179,
1934      "operands" : [
1935        { "kind" : "IdResultType" },
1936        { "kind" : "IdResult" },
1937        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1938        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1939      ]
1940    },
1941    {
1942      "opname" : "OpFOrdEqual",
1943      "class"  : "Relational_and_Logical",
1944      "opcode" : 180,
1945      "operands" : [
1946        { "kind" : "IdResultType" },
1947        { "kind" : "IdResult" },
1948        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1949        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1950      ]
1951    },
1952    {
1953      "opname" : "OpFUnordEqual",
1954      "class"  : "Relational_and_Logical",
1955      "opcode" : 181,
1956      "operands" : [
1957        { "kind" : "IdResultType" },
1958        { "kind" : "IdResult" },
1959        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1960        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1961      ]
1962    },
1963    {
1964      "opname" : "OpFOrdNotEqual",
1965      "class"  : "Relational_and_Logical",
1966      "opcode" : 182,
1967      "operands" : [
1968        { "kind" : "IdResultType" },
1969        { "kind" : "IdResult" },
1970        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1971        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1972      ]
1973    },
1974    {
1975      "opname" : "OpFUnordNotEqual",
1976      "class"  : "Relational_and_Logical",
1977      "opcode" : 183,
1978      "operands" : [
1979        { "kind" : "IdResultType" },
1980        { "kind" : "IdResult" },
1981        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1982        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1983      ]
1984    },
1985    {
1986      "opname" : "OpFOrdLessThan",
1987      "class"  : "Relational_and_Logical",
1988      "opcode" : 184,
1989      "operands" : [
1990        { "kind" : "IdResultType" },
1991        { "kind" : "IdResult" },
1992        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1993        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1994      ]
1995    },
1996    {
1997      "opname" : "OpFUnordLessThan",
1998      "class"  : "Relational_and_Logical",
1999      "opcode" : 185,
2000      "operands" : [
2001        { "kind" : "IdResultType" },
2002        { "kind" : "IdResult" },
2003        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2004        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2005      ]
2006    },
2007    {
2008      "opname" : "OpFOrdGreaterThan",
2009      "class"  : "Relational_and_Logical",
2010      "opcode" : 186,
2011      "operands" : [
2012        { "kind" : "IdResultType" },
2013        { "kind" : "IdResult" },
2014        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2015        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2016      ]
2017    },
2018    {
2019      "opname" : "OpFUnordGreaterThan",
2020      "class"  : "Relational_and_Logical",
2021      "opcode" : 187,
2022      "operands" : [
2023        { "kind" : "IdResultType" },
2024        { "kind" : "IdResult" },
2025        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2026        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2027      ]
2028    },
2029    {
2030      "opname" : "OpFOrdLessThanEqual",
2031      "class"  : "Relational_and_Logical",
2032      "opcode" : 188,
2033      "operands" : [
2034        { "kind" : "IdResultType" },
2035        { "kind" : "IdResult" },
2036        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2037        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2038      ]
2039    },
2040    {
2041      "opname" : "OpFUnordLessThanEqual",
2042      "class"  : "Relational_and_Logical",
2043      "opcode" : 189,
2044      "operands" : [
2045        { "kind" : "IdResultType" },
2046        { "kind" : "IdResult" },
2047        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2048        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2049      ]
2050    },
2051    {
2052      "opname" : "OpFOrdGreaterThanEqual",
2053      "class"  : "Relational_and_Logical",
2054      "opcode" : 190,
2055      "operands" : [
2056        { "kind" : "IdResultType" },
2057        { "kind" : "IdResult" },
2058        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2059        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2060      ]
2061    },
2062    {
2063      "opname" : "OpFUnordGreaterThanEqual",
2064      "class"  : "Relational_and_Logical",
2065      "opcode" : 191,
2066      "operands" : [
2067        { "kind" : "IdResultType" },
2068        { "kind" : "IdResult" },
2069        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2070        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2071      ]
2072    },
2073    {
2074      "opname" : "OpShiftRightLogical",
2075      "class"  : "Bit",
2076      "opcode" : 194,
2077      "operands" : [
2078        { "kind" : "IdResultType" },
2079        { "kind" : "IdResult" },
2080        { "kind" : "IdRef",        "name" : "'Base'" },
2081        { "kind" : "IdRef",        "name" : "'Shift'" }
2082      ]
2083    },
2084    {
2085      "opname" : "OpShiftRightArithmetic",
2086      "class"  : "Bit",
2087      "opcode" : 195,
2088      "operands" : [
2089        { "kind" : "IdResultType" },
2090        { "kind" : "IdResult" },
2091        { "kind" : "IdRef",        "name" : "'Base'" },
2092        { "kind" : "IdRef",        "name" : "'Shift'" }
2093      ]
2094    },
2095    {
2096      "opname" : "OpShiftLeftLogical",
2097      "class"  : "Bit",
2098      "opcode" : 196,
2099      "operands" : [
2100        { "kind" : "IdResultType" },
2101        { "kind" : "IdResult" },
2102        { "kind" : "IdRef",        "name" : "'Base'" },
2103        { "kind" : "IdRef",        "name" : "'Shift'" }
2104      ]
2105    },
2106    {
2107      "opname" : "OpBitwiseOr",
2108      "class"  : "Bit",
2109      "opcode" : 197,
2110      "operands" : [
2111        { "kind" : "IdResultType" },
2112        { "kind" : "IdResult" },
2113        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2114        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2115      ]
2116    },
2117    {
2118      "opname" : "OpBitwiseXor",
2119      "class"  : "Bit",
2120      "opcode" : 198,
2121      "operands" : [
2122        { "kind" : "IdResultType" },
2123        { "kind" : "IdResult" },
2124        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2125        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2126      ]
2127    },
2128    {
2129      "opname" : "OpBitwiseAnd",
2130      "class"  : "Bit",
2131      "opcode" : 199,
2132      "operands" : [
2133        { "kind" : "IdResultType" },
2134        { "kind" : "IdResult" },
2135        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2136        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2137      ]
2138    },
2139    {
2140      "opname" : "OpNot",
2141      "class"  : "Bit",
2142      "opcode" : 200,
2143      "operands" : [
2144        { "kind" : "IdResultType" },
2145        { "kind" : "IdResult" },
2146        { "kind" : "IdRef",        "name" : "'Operand'" }
2147      ]
2148    },
2149    {
2150      "opname" : "OpBitFieldInsert",
2151      "class"  : "Bit",
2152      "opcode" : 201,
2153      "operands" : [
2154        { "kind" : "IdResultType" },
2155        { "kind" : "IdResult" },
2156        { "kind" : "IdRef",        "name" : "'Base'" },
2157        { "kind" : "IdRef",        "name" : "'Insert'" },
2158        { "kind" : "IdRef",        "name" : "'Offset'" },
2159        { "kind" : "IdRef",        "name" : "'Count'" }
2160      ],
2161      "capabilities" : [ "Shader", "BitInstructions" ]
2162    },
2163    {
2164      "opname" : "OpBitFieldSExtract",
2165      "class"  : "Bit",
2166      "opcode" : 202,
2167      "operands" : [
2168        { "kind" : "IdResultType" },
2169        { "kind" : "IdResult" },
2170        { "kind" : "IdRef",        "name" : "'Base'" },
2171        { "kind" : "IdRef",        "name" : "'Offset'" },
2172        { "kind" : "IdRef",        "name" : "'Count'" }
2173      ],
2174      "capabilities" : [ "Shader", "BitInstructions" ]
2175    },
2176    {
2177      "opname" : "OpBitFieldUExtract",
2178      "class"  : "Bit",
2179      "opcode" : 203,
2180      "operands" : [
2181        { "kind" : "IdResultType" },
2182        { "kind" : "IdResult" },
2183        { "kind" : "IdRef",        "name" : "'Base'" },
2184        { "kind" : "IdRef",        "name" : "'Offset'" },
2185        { "kind" : "IdRef",        "name" : "'Count'" }
2186      ],
2187      "capabilities" : [ "Shader", "BitInstructions" ]
2188    },
2189    {
2190      "opname" : "OpBitReverse",
2191      "class"  : "Bit",
2192      "opcode" : 204,
2193      "operands" : [
2194        { "kind" : "IdResultType" },
2195        { "kind" : "IdResult" },
2196        { "kind" : "IdRef",        "name" : "'Base'" }
2197      ],
2198      "capabilities" : [ "Shader", "BitInstructions" ]
2199    },
2200    {
2201      "opname" : "OpBitCount",
2202      "class"  : "Bit",
2203      "opcode" : 205,
2204      "operands" : [
2205        { "kind" : "IdResultType" },
2206        { "kind" : "IdResult" },
2207        { "kind" : "IdRef",        "name" : "'Base'" }
2208      ]
2209    },
2210    {
2211      "opname" : "OpDPdx",
2212      "class"  : "Derivative",
2213      "opcode" : 207,
2214      "operands" : [
2215        { "kind" : "IdResultType" },
2216        { "kind" : "IdResult" },
2217        { "kind" : "IdRef",        "name" : "'P'" }
2218      ],
2219      "capabilities" : [ "Shader" ]
2220    },
2221    {
2222      "opname" : "OpDPdy",
2223      "class"  : "Derivative",
2224      "opcode" : 208,
2225      "operands" : [
2226        { "kind" : "IdResultType" },
2227        { "kind" : "IdResult" },
2228        { "kind" : "IdRef",        "name" : "'P'" }
2229      ],
2230      "capabilities" : [ "Shader" ]
2231    },
2232    {
2233      "opname" : "OpFwidth",
2234      "class"  : "Derivative",
2235      "opcode" : 209,
2236      "operands" : [
2237        { "kind" : "IdResultType" },
2238        { "kind" : "IdResult" },
2239        { "kind" : "IdRef",        "name" : "'P'" }
2240      ],
2241      "capabilities" : [ "Shader" ]
2242    },
2243    {
2244      "opname" : "OpDPdxFine",
2245      "class"  : "Derivative",
2246      "opcode" : 210,
2247      "operands" : [
2248        { "kind" : "IdResultType" },
2249        { "kind" : "IdResult" },
2250        { "kind" : "IdRef",        "name" : "'P'" }
2251      ],
2252      "capabilities" : [ "DerivativeControl" ]
2253    },
2254    {
2255      "opname" : "OpDPdyFine",
2256      "class"  : "Derivative",
2257      "opcode" : 211,
2258      "operands" : [
2259        { "kind" : "IdResultType" },
2260        { "kind" : "IdResult" },
2261        { "kind" : "IdRef",        "name" : "'P'" }
2262      ],
2263      "capabilities" : [ "DerivativeControl" ]
2264    },
2265    {
2266      "opname" : "OpFwidthFine",
2267      "class"  : "Derivative",
2268      "opcode" : 212,
2269      "operands" : [
2270        { "kind" : "IdResultType" },
2271        { "kind" : "IdResult" },
2272        { "kind" : "IdRef",        "name" : "'P'" }
2273      ],
2274      "capabilities" : [ "DerivativeControl" ]
2275    },
2276    {
2277      "opname" : "OpDPdxCoarse",
2278      "class"  : "Derivative",
2279      "opcode" : 213,
2280      "operands" : [
2281        { "kind" : "IdResultType" },
2282        { "kind" : "IdResult" },
2283        { "kind" : "IdRef",        "name" : "'P'" }
2284      ],
2285      "capabilities" : [ "DerivativeControl" ]
2286    },
2287    {
2288      "opname" : "OpDPdyCoarse",
2289      "class"  : "Derivative",
2290      "opcode" : 214,
2291      "operands" : [
2292        { "kind" : "IdResultType" },
2293        { "kind" : "IdResult" },
2294        { "kind" : "IdRef",        "name" : "'P'" }
2295      ],
2296      "capabilities" : [ "DerivativeControl" ]
2297    },
2298    {
2299      "opname" : "OpFwidthCoarse",
2300      "class"  : "Derivative",
2301      "opcode" : 215,
2302      "operands" : [
2303        { "kind" : "IdResultType" },
2304        { "kind" : "IdResult" },
2305        { "kind" : "IdRef",        "name" : "'P'" }
2306      ],
2307      "capabilities" : [ "DerivativeControl" ]
2308    },
2309    {
2310      "opname" : "OpEmitVertex",
2311      "class"  : "Primitive",
2312      "opcode" : 218,
2313      "capabilities" : [ "Geometry" ]
2314    },
2315    {
2316      "opname" : "OpEndPrimitive",
2317      "class"  : "Primitive",
2318      "opcode" : 219,
2319      "capabilities" : [ "Geometry" ]
2320    },
2321    {
2322      "opname" : "OpEmitStreamVertex",
2323      "class"  : "Primitive",
2324      "opcode" : 220,
2325      "operands" : [
2326        { "kind" : "IdRef", "name" : "'Stream'" }
2327      ],
2328      "capabilities" : [ "GeometryStreams" ]
2329    },
2330    {
2331      "opname" : "OpEndStreamPrimitive",
2332      "class"  : "Primitive",
2333      "opcode" : 221,
2334      "operands" : [
2335        { "kind" : "IdRef", "name" : "'Stream'" }
2336      ],
2337      "capabilities" : [ "GeometryStreams" ]
2338    },
2339    {
2340      "opname" : "OpControlBarrier",
2341      "class"  : "Barrier",
2342      "opcode" : 224,
2343      "operands" : [
2344        { "kind" : "IdScope",           "name" : "'Execution'" },
2345        { "kind" : "IdScope",           "name" : "'Memory'" },
2346        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2347      ]
2348    },
2349    {
2350      "opname" : "OpMemoryBarrier",
2351      "class"  : "Barrier",
2352      "opcode" : 225,
2353      "operands" : [
2354        { "kind" : "IdScope",           "name" : "'Memory'" },
2355        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2356      ]
2357    },
2358    {
2359      "opname" : "OpAtomicLoad",
2360      "class"  : "Atomic",
2361      "opcode" : 227,
2362      "operands" : [
2363        { "kind" : "IdResultType" },
2364        { "kind" : "IdResult" },
2365        { "kind" : "IdRef",             "name" : "'Pointer'" },
2366        { "kind" : "IdScope",           "name" : "'Memory'" },
2367        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2368      ]
2369    },
2370    {
2371      "opname" : "OpAtomicStore",
2372      "class"  : "Atomic",
2373      "opcode" : 228,
2374      "operands" : [
2375        { "kind" : "IdRef",             "name" : "'Pointer'" },
2376        { "kind" : "IdScope",           "name" : "'Memory'" },
2377        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2378        { "kind" : "IdRef",             "name" : "'Value'" }
2379      ]
2380    },
2381    {
2382      "opname" : "OpAtomicExchange",
2383      "class"  : "Atomic",
2384      "opcode" : 229,
2385      "operands" : [
2386        { "kind" : "IdResultType" },
2387        { "kind" : "IdResult" },
2388        { "kind" : "IdRef",             "name" : "'Pointer'" },
2389        { "kind" : "IdScope",           "name" : "'Memory'" },
2390        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2391        { "kind" : "IdRef",             "name" : "'Value'" }
2392      ]
2393    },
2394    {
2395      "opname" : "OpAtomicCompareExchange",
2396      "class"  : "Atomic",
2397      "opcode" : 230,
2398      "operands" : [
2399        { "kind" : "IdResultType" },
2400        { "kind" : "IdResult" },
2401        { "kind" : "IdRef",             "name" : "'Pointer'" },
2402        { "kind" : "IdScope",           "name" : "'Memory'" },
2403        { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2404        { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2405        { "kind" : "IdRef",             "name" : "'Value'" },
2406        { "kind" : "IdRef",             "name" : "'Comparator'" }
2407      ]
2408    },
2409    {
2410      "opname" : "OpAtomicCompareExchangeWeak",
2411      "class"  : "Atomic",
2412      "opcode" : 231,
2413      "operands" : [
2414        { "kind" : "IdResultType" },
2415        { "kind" : "IdResult" },
2416        { "kind" : "IdRef",             "name" : "'Pointer'" },
2417        { "kind" : "IdScope",           "name" : "'Memory'" },
2418        { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2419        { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2420        { "kind" : "IdRef",             "name" : "'Value'" },
2421        { "kind" : "IdRef",             "name" : "'Comparator'" }
2422      ],
2423      "capabilities" : [ "Kernel" ],
2424      "lastVersion" : "1.3"
2425    },
2426    {
2427      "opname" : "OpAtomicIIncrement",
2428      "class"  : "Atomic",
2429      "opcode" : 232,
2430      "operands" : [
2431        { "kind" : "IdResultType" },
2432        { "kind" : "IdResult" },
2433        { "kind" : "IdRef",             "name" : "'Pointer'" },
2434        { "kind" : "IdScope",           "name" : "'Memory'" },
2435        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2436      ]
2437    },
2438    {
2439      "opname" : "OpAtomicIDecrement",
2440      "class"  : "Atomic",
2441      "opcode" : 233,
2442      "operands" : [
2443        { "kind" : "IdResultType" },
2444        { "kind" : "IdResult" },
2445        { "kind" : "IdRef",             "name" : "'Pointer'" },
2446        { "kind" : "IdScope",           "name" : "'Memory'" },
2447        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2448      ]
2449    },
2450    {
2451      "opname" : "OpAtomicIAdd",
2452      "class"  : "Atomic",
2453      "opcode" : 234,
2454      "operands" : [
2455        { "kind" : "IdResultType" },
2456        { "kind" : "IdResult" },
2457        { "kind" : "IdRef",             "name" : "'Pointer'" },
2458        { "kind" : "IdScope",           "name" : "'Memory'" },
2459        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2460        { "kind" : "IdRef",             "name" : "'Value'" }
2461      ]
2462    },
2463    {
2464      "opname" : "OpAtomicISub",
2465      "class"  : "Atomic",
2466      "opcode" : 235,
2467      "operands" : [
2468        { "kind" : "IdResultType" },
2469        { "kind" : "IdResult" },
2470        { "kind" : "IdRef",             "name" : "'Pointer'" },
2471        { "kind" : "IdScope",           "name" : "'Memory'" },
2472        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2473        { "kind" : "IdRef",             "name" : "'Value'" }
2474      ]
2475    },
2476    {
2477      "opname" : "OpAtomicSMin",
2478      "class"  : "Atomic",
2479      "opcode" : 236,
2480      "operands" : [
2481        { "kind" : "IdResultType" },
2482        { "kind" : "IdResult" },
2483        { "kind" : "IdRef",             "name" : "'Pointer'" },
2484        { "kind" : "IdScope",           "name" : "'Memory'" },
2485        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2486        { "kind" : "IdRef",             "name" : "'Value'" }
2487      ]
2488    },
2489    {
2490      "opname" : "OpAtomicUMin",
2491      "class"  : "Atomic",
2492      "opcode" : 237,
2493      "operands" : [
2494        { "kind" : "IdResultType" },
2495        { "kind" : "IdResult" },
2496        { "kind" : "IdRef",             "name" : "'Pointer'" },
2497        { "kind" : "IdScope",           "name" : "'Memory'" },
2498        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2499        { "kind" : "IdRef",             "name" : "'Value'" }
2500      ]
2501    },
2502    {
2503      "opname" : "OpAtomicSMax",
2504      "class"  : "Atomic",
2505      "opcode" : 238,
2506      "operands" : [
2507        { "kind" : "IdResultType" },
2508        { "kind" : "IdResult" },
2509        { "kind" : "IdRef",             "name" : "'Pointer'" },
2510        { "kind" : "IdScope",           "name" : "'Memory'" },
2511        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2512        { "kind" : "IdRef",             "name" : "'Value'" }
2513      ]
2514    },
2515    {
2516      "opname" : "OpAtomicUMax",
2517      "class"  : "Atomic",
2518      "opcode" : 239,
2519      "operands" : [
2520        { "kind" : "IdResultType" },
2521        { "kind" : "IdResult" },
2522        { "kind" : "IdRef",             "name" : "'Pointer'" },
2523        { "kind" : "IdScope",           "name" : "'Memory'" },
2524        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2525        { "kind" : "IdRef",             "name" : "'Value'" }
2526      ]
2527    },
2528    {
2529      "opname" : "OpAtomicAnd",
2530      "class"  : "Atomic",
2531      "opcode" : 240,
2532      "operands" : [
2533        { "kind" : "IdResultType" },
2534        { "kind" : "IdResult" },
2535        { "kind" : "IdRef",             "name" : "'Pointer'" },
2536        { "kind" : "IdScope",           "name" : "'Memory'" },
2537        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2538        { "kind" : "IdRef",             "name" : "'Value'" }
2539      ]
2540    },
2541    {
2542      "opname" : "OpAtomicOr",
2543      "class"  : "Atomic",
2544      "opcode" : 241,
2545      "operands" : [
2546        { "kind" : "IdResultType" },
2547        { "kind" : "IdResult" },
2548        { "kind" : "IdRef",             "name" : "'Pointer'" },
2549        { "kind" : "IdScope",           "name" : "'Memory'" },
2550        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2551        { "kind" : "IdRef",             "name" : "'Value'" }
2552      ]
2553    },
2554    {
2555      "opname" : "OpAtomicXor",
2556      "class"  : "Atomic",
2557      "opcode" : 242,
2558      "operands" : [
2559        { "kind" : "IdResultType" },
2560        { "kind" : "IdResult" },
2561        { "kind" : "IdRef",             "name" : "'Pointer'" },
2562        { "kind" : "IdScope",           "name" : "'Memory'" },
2563        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2564        { "kind" : "IdRef",             "name" : "'Value'" }
2565      ]
2566    },
2567    {
2568      "opname" : "OpPhi",
2569      "class"  : "Control-Flow",
2570      "opcode" : 245,
2571      "operands" : [
2572        { "kind" : "IdResultType" },
2573        { "kind" : "IdResult" },
2574        { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" }
2575      ]
2576    },
2577    {
2578      "opname" : "OpLoopMerge",
2579      "class"  : "Control-Flow",
2580      "opcode" : 246,
2581      "operands" : [
2582        { "kind" : "IdRef",       "name" : "'Merge Block'" },
2583        { "kind" : "IdRef",       "name" : "'Continue Target'" },
2584        { "kind" : "LoopControl" }
2585      ]
2586    },
2587    {
2588      "opname" : "OpSelectionMerge",
2589      "class"  : "Control-Flow",
2590      "opcode" : 247,
2591      "operands" : [
2592        { "kind" : "IdRef",            "name" : "'Merge Block'" },
2593        { "kind" : "SelectionControl" }
2594      ]
2595    },
2596    {
2597      "opname" : "OpLabel",
2598      "class"  : "Control-Flow",
2599      "opcode" : 248,
2600      "operands" : [
2601        { "kind" : "IdResult" }
2602      ]
2603    },
2604    {
2605      "opname" : "OpBranch",
2606      "class"  : "Control-Flow",
2607      "opcode" : 249,
2608      "operands" : [
2609        { "kind" : "IdRef", "name" : "'Target Label'" }
2610      ]
2611    },
2612    {
2613      "opname" : "OpBranchConditional",
2614      "class"  : "Control-Flow",
2615      "opcode" : 250,
2616      "operands" : [
2617        { "kind" : "IdRef",                              "name" : "'Condition'" },
2618        { "kind" : "IdRef",                              "name" : "'True Label'" },
2619        { "kind" : "IdRef",                              "name" : "'False Label'" },
2620        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" }
2621      ]
2622    },
2623    {
2624      "opname" : "OpSwitch",
2625      "class"  : "Control-Flow",
2626      "opcode" : 251,
2627      "operands" : [
2628        { "kind" : "IdRef",                                       "name" : "'Selector'" },
2629        { "kind" : "IdRef",                                       "name" : "'Default'" },
2630        { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" }
2631      ]
2632    },
2633    {
2634      "opname" : "OpKill",
2635      "class"  : "Control-Flow",
2636      "opcode" : 252,
2637      "capabilities" : [ "Shader" ]
2638    },
2639    {
2640      "opname" : "OpReturn",
2641      "class"  : "Control-Flow",
2642      "opcode" : 253
2643    },
2644    {
2645      "opname" : "OpReturnValue",
2646      "class"  : "Control-Flow",
2647      "opcode" : 254,
2648      "operands" : [
2649        { "kind" : "IdRef", "name" : "'Value'" }
2650      ]
2651    },
2652    {
2653      "opname" : "OpUnreachable",
2654      "class"  : "Control-Flow",
2655      "opcode" : 255
2656    },
2657    {
2658      "opname" : "OpLifetimeStart",
2659      "class"  : "Control-Flow",
2660      "opcode" : 256,
2661      "operands" : [
2662        { "kind" : "IdRef",          "name" : "'Pointer'" },
2663        { "kind" : "LiteralInteger", "name" : "'Size'" }
2664      ],
2665      "capabilities" : [ "Kernel" ]
2666    },
2667    {
2668      "opname" : "OpLifetimeStop",
2669      "class"  : "Control-Flow",
2670      "opcode" : 257,
2671      "operands" : [
2672        { "kind" : "IdRef",          "name" : "'Pointer'" },
2673        { "kind" : "LiteralInteger", "name" : "'Size'" }
2674      ],
2675      "capabilities" : [ "Kernel" ]
2676    },
2677    {
2678      "opname" : "OpGroupAsyncCopy",
2679      "class"  : "Group",
2680      "opcode" : 259,
2681      "operands" : [
2682        { "kind" : "IdResultType" },
2683        { "kind" : "IdResult" },
2684        { "kind" : "IdScope",      "name" : "'Execution'" },
2685        { "kind" : "IdRef",        "name" : "'Destination'" },
2686        { "kind" : "IdRef",        "name" : "'Source'" },
2687        { "kind" : "IdRef",        "name" : "'Num Elements'" },
2688        { "kind" : "IdRef",        "name" : "'Stride'" },
2689        { "kind" : "IdRef",        "name" : "'Event'" }
2690      ],
2691      "capabilities" : [ "Kernel" ]
2692    },
2693    {
2694      "opname" : "OpGroupWaitEvents",
2695      "class"  : "Group",
2696      "opcode" : 260,
2697      "operands" : [
2698        { "kind" : "IdScope", "name" : "'Execution'" },
2699        { "kind" : "IdRef",   "name" : "'Num Events'" },
2700        { "kind" : "IdRef",   "name" : "'Events List'" }
2701      ],
2702      "capabilities" : [ "Kernel" ]
2703    },
2704    {
2705      "opname" : "OpGroupAll",
2706      "class"  : "Group",
2707      "opcode" : 261,
2708      "operands" : [
2709        { "kind" : "IdResultType" },
2710        { "kind" : "IdResult" },
2711        { "kind" : "IdScope",      "name" : "'Execution'" },
2712        { "kind" : "IdRef",        "name" : "'Predicate'" }
2713      ],
2714      "capabilities" : [ "Groups" ]
2715    },
2716    {
2717      "opname" : "OpGroupAny",
2718      "class"  : "Group",
2719      "opcode" : 262,
2720      "operands" : [
2721        { "kind" : "IdResultType" },
2722        { "kind" : "IdResult" },
2723        { "kind" : "IdScope",      "name" : "'Execution'" },
2724        { "kind" : "IdRef",        "name" : "'Predicate'" }
2725      ],
2726      "capabilities" : [ "Groups" ]
2727    },
2728    {
2729      "opname" : "OpGroupBroadcast",
2730      "class"  : "Group",
2731      "opcode" : 263,
2732      "operands" : [
2733        { "kind" : "IdResultType" },
2734        { "kind" : "IdResult" },
2735        { "kind" : "IdScope",      "name" : "'Execution'" },
2736        { "kind" : "IdRef",        "name" : "'Value'" },
2737        { "kind" : "IdRef",        "name" : "'LocalId'" }
2738      ],
2739      "capabilities" : [ "Groups" ]
2740    },
2741    {
2742      "opname" : "OpGroupIAdd",
2743      "class"  : "Group",
2744      "opcode" : 264,
2745      "operands" : [
2746        { "kind" : "IdResultType" },
2747        { "kind" : "IdResult" },
2748        { "kind" : "IdScope",        "name" : "'Execution'" },
2749        { "kind" : "GroupOperation", "name" : "'Operation'" },
2750        { "kind" : "IdRef",          "name" : "'X'" }
2751      ],
2752      "capabilities" : [ "Groups" ]
2753    },
2754    {
2755      "opname" : "OpGroupFAdd",
2756      "class"  : "Group",
2757      "opcode" : 265,
2758      "operands" : [
2759        { "kind" : "IdResultType" },
2760        { "kind" : "IdResult" },
2761        { "kind" : "IdScope",        "name" : "'Execution'" },
2762        { "kind" : "GroupOperation", "name" : "'Operation'" },
2763        { "kind" : "IdRef",          "name" : "'X'" }
2764      ],
2765      "capabilities" : [ "Groups" ]
2766    },
2767    {
2768      "opname" : "OpGroupFMin",
2769      "class"  : "Group",
2770      "opcode" : 266,
2771      "operands" : [
2772        { "kind" : "IdResultType" },
2773        { "kind" : "IdResult" },
2774        { "kind" : "IdScope",        "name" : "'Execution'" },
2775        { "kind" : "GroupOperation", "name" : "'Operation'" },
2776        { "kind" : "IdRef",          "name" : "'X'" }
2777      ],
2778      "capabilities" : [ "Groups" ]
2779    },
2780    {
2781      "opname" : "OpGroupUMin",
2782      "class"  : "Group",
2783      "opcode" : 267,
2784      "operands" : [
2785        { "kind" : "IdResultType" },
2786        { "kind" : "IdResult" },
2787        { "kind" : "IdScope",        "name" : "'Execution'" },
2788        { "kind" : "GroupOperation", "name" : "'Operation'" },
2789        { "kind" : "IdRef",          "name" : "'X'" }
2790      ],
2791      "capabilities" : [ "Groups" ]
2792    },
2793    {
2794      "opname" : "OpGroupSMin",
2795      "class"  : "Group",
2796      "opcode" : 268,
2797      "operands" : [
2798        { "kind" : "IdResultType" },
2799        { "kind" : "IdResult" },
2800        { "kind" : "IdScope",        "name" : "'Execution'" },
2801        { "kind" : "GroupOperation", "name" : "'Operation'" },
2802        { "kind" : "IdRef",          "name" : "'X'" }
2803      ],
2804      "capabilities" : [ "Groups" ]
2805    },
2806    {
2807      "opname" : "OpGroupFMax",
2808      "class"  : "Group",
2809      "opcode" : 269,
2810      "operands" : [
2811        { "kind" : "IdResultType" },
2812        { "kind" : "IdResult" },
2813        { "kind" : "IdScope",        "name" : "'Execution'" },
2814        { "kind" : "GroupOperation", "name" : "'Operation'" },
2815        { "kind" : "IdRef",          "name" : "'X'" }
2816      ],
2817      "capabilities" : [ "Groups" ]
2818    },
2819    {
2820      "opname" : "OpGroupUMax",
2821      "class"  : "Group",
2822      "opcode" : 270,
2823      "operands" : [
2824        { "kind" : "IdResultType" },
2825        { "kind" : "IdResult" },
2826        { "kind" : "IdScope",        "name" : "'Execution'" },
2827        { "kind" : "GroupOperation", "name" : "'Operation'" },
2828        { "kind" : "IdRef",          "name" : "'X'" }
2829      ],
2830      "capabilities" : [ "Groups" ]
2831    },
2832    {
2833      "opname" : "OpGroupSMax",
2834      "class"  : "Group",
2835      "opcode" : 271,
2836      "operands" : [
2837        { "kind" : "IdResultType" },
2838        { "kind" : "IdResult" },
2839        { "kind" : "IdScope",        "name" : "'Execution'" },
2840        { "kind" : "GroupOperation", "name" : "'Operation'" },
2841        { "kind" : "IdRef",          "name" : "'X'" }
2842      ],
2843      "capabilities" : [ "Groups" ]
2844    },
2845    {
2846      "opname" : "OpReadPipe",
2847      "class"  : "Pipe",
2848      "opcode" : 274,
2849      "operands" : [
2850        { "kind" : "IdResultType" },
2851        { "kind" : "IdResult" },
2852        { "kind" : "IdRef",        "name" : "'Pipe'" },
2853        { "kind" : "IdRef",        "name" : "'Pointer'" },
2854        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2855        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2856      ],
2857      "capabilities" : [ "Pipes" ]
2858    },
2859    {
2860      "opname" : "OpWritePipe",
2861      "class"  : "Pipe",
2862      "opcode" : 275,
2863      "operands" : [
2864        { "kind" : "IdResultType" },
2865        { "kind" : "IdResult" },
2866        { "kind" : "IdRef",        "name" : "'Pipe'" },
2867        { "kind" : "IdRef",        "name" : "'Pointer'" },
2868        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2869        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2870      ],
2871      "capabilities" : [ "Pipes" ]
2872    },
2873    {
2874      "opname" : "OpReservedReadPipe",
2875      "class"  : "Pipe",
2876      "opcode" : 276,
2877      "operands" : [
2878        { "kind" : "IdResultType" },
2879        { "kind" : "IdResult" },
2880        { "kind" : "IdRef",        "name" : "'Pipe'" },
2881        { "kind" : "IdRef",        "name" : "'Reserve Id'" },
2882        { "kind" : "IdRef",        "name" : "'Index'" },
2883        { "kind" : "IdRef",        "name" : "'Pointer'" },
2884        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2885        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2886      ],
2887      "capabilities" : [ "Pipes" ]
2888    },
2889    {
2890      "opname" : "OpReservedWritePipe",
2891      "class"  : "Pipe",
2892      "opcode" : 277,
2893      "operands" : [
2894        { "kind" : "IdResultType" },
2895        { "kind" : "IdResult" },
2896        { "kind" : "IdRef",        "name" : "'Pipe'" },
2897        { "kind" : "IdRef",        "name" : "'Reserve Id'" },
2898        { "kind" : "IdRef",        "name" : "'Index'" },
2899        { "kind" : "IdRef",        "name" : "'Pointer'" },
2900        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2901        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2902      ],
2903      "capabilities" : [ "Pipes" ]
2904    },
2905    {
2906      "opname" : "OpReserveReadPipePackets",
2907      "class"  : "Pipe",
2908      "opcode" : 278,
2909      "operands" : [
2910        { "kind" : "IdResultType" },
2911        { "kind" : "IdResult" },
2912        { "kind" : "IdRef",        "name" : "'Pipe'" },
2913        { "kind" : "IdRef",        "name" : "'Num Packets'" },
2914        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2915        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2916      ],
2917      "capabilities" : [ "Pipes" ]
2918    },
2919    {
2920      "opname" : "OpReserveWritePipePackets",
2921      "class"  : "Pipe",
2922      "opcode" : 279,
2923      "operands" : [
2924        { "kind" : "IdResultType" },
2925        { "kind" : "IdResult" },
2926        { "kind" : "IdRef",        "name" : "'Pipe'" },
2927        { "kind" : "IdRef",        "name" : "'Num Packets'" },
2928        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2929        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2930      ],
2931      "capabilities" : [ "Pipes" ]
2932    },
2933    {
2934      "opname" : "OpCommitReadPipe",
2935      "class"  : "Pipe",
2936      "opcode" : 280,
2937      "operands" : [
2938        { "kind" : "IdRef", "name" : "'Pipe'" },
2939        { "kind" : "IdRef", "name" : "'Reserve Id'" },
2940        { "kind" : "IdRef", "name" : "'Packet Size'" },
2941        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2942      ],
2943      "capabilities" : [ "Pipes" ]
2944    },
2945    {
2946      "opname" : "OpCommitWritePipe",
2947      "class"  : "Pipe",
2948      "opcode" : 281,
2949      "operands" : [
2950        { "kind" : "IdRef", "name" : "'Pipe'" },
2951        { "kind" : "IdRef", "name" : "'Reserve Id'" },
2952        { "kind" : "IdRef", "name" : "'Packet Size'" },
2953        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2954      ],
2955      "capabilities" : [ "Pipes" ]
2956    },
2957    {
2958      "opname" : "OpIsValidReserveId",
2959      "class"  : "Pipe",
2960      "opcode" : 282,
2961      "operands" : [
2962        { "kind" : "IdResultType" },
2963        { "kind" : "IdResult" },
2964        { "kind" : "IdRef",        "name" : "'Reserve Id'" }
2965      ],
2966      "capabilities" : [ "Pipes" ]
2967    },
2968    {
2969      "opname" : "OpGetNumPipePackets",
2970      "class"  : "Pipe",
2971      "opcode" : 283,
2972      "operands" : [
2973        { "kind" : "IdResultType" },
2974        { "kind" : "IdResult" },
2975        { "kind" : "IdRef",        "name" : "'Pipe'" },
2976        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2977        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2978      ],
2979      "capabilities" : [ "Pipes" ]
2980    },
2981    {
2982      "opname" : "OpGetMaxPipePackets",
2983      "class"  : "Pipe",
2984      "opcode" : 284,
2985      "operands" : [
2986        { "kind" : "IdResultType" },
2987        { "kind" : "IdResult" },
2988        { "kind" : "IdRef",        "name" : "'Pipe'" },
2989        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2990        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2991      ],
2992      "capabilities" : [ "Pipes" ]
2993    },
2994    {
2995      "opname" : "OpGroupReserveReadPipePackets",
2996      "class"  : "Pipe",
2997      "opcode" : 285,
2998      "operands" : [
2999        { "kind" : "IdResultType" },
3000        { "kind" : "IdResult" },
3001        { "kind" : "IdScope",      "name" : "'Execution'" },
3002        { "kind" : "IdRef",        "name" : "'Pipe'" },
3003        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3004        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3005        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3006      ],
3007      "capabilities" : [ "Pipes" ]
3008    },
3009    {
3010      "opname" : "OpGroupReserveWritePipePackets",
3011      "class"  : "Pipe",
3012      "opcode" : 286,
3013      "operands" : [
3014        { "kind" : "IdResultType" },
3015        { "kind" : "IdResult" },
3016        { "kind" : "IdScope",      "name" : "'Execution'" },
3017        { "kind" : "IdRef",        "name" : "'Pipe'" },
3018        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3019        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3020        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3021      ],
3022      "capabilities" : [ "Pipes" ]
3023    },
3024    {
3025      "opname" : "OpGroupCommitReadPipe",
3026      "class"  : "Pipe",
3027      "opcode" : 287,
3028      "operands" : [
3029        { "kind" : "IdScope", "name" : "'Execution'" },
3030        { "kind" : "IdRef",   "name" : "'Pipe'" },
3031        { "kind" : "IdRef",   "name" : "'Reserve Id'" },
3032        { "kind" : "IdRef",   "name" : "'Packet Size'" },
3033        { "kind" : "IdRef",   "name" : "'Packet Alignment'" }
3034      ],
3035      "capabilities" : [ "Pipes" ]
3036    },
3037    {
3038      "opname" : "OpGroupCommitWritePipe",
3039      "class"  : "Pipe",
3040      "opcode" : 288,
3041      "operands" : [
3042        { "kind" : "IdScope", "name" : "'Execution'" },
3043        { "kind" : "IdRef",   "name" : "'Pipe'" },
3044        { "kind" : "IdRef",   "name" : "'Reserve Id'" },
3045        { "kind" : "IdRef",   "name" : "'Packet Size'" },
3046        { "kind" : "IdRef",   "name" : "'Packet Alignment'" }
3047      ],
3048      "capabilities" : [ "Pipes" ]
3049    },
3050    {
3051      "opname" : "OpEnqueueMarker",
3052      "class"  : "Device-Side_Enqueue",
3053      "opcode" : 291,
3054      "operands" : [
3055        { "kind" : "IdResultType" },
3056        { "kind" : "IdResult" },
3057        { "kind" : "IdRef",        "name" : "'Queue'" },
3058        { "kind" : "IdRef",        "name" : "'Num Events'" },
3059        { "kind" : "IdRef",        "name" : "'Wait Events'" },
3060        { "kind" : "IdRef",        "name" : "'Ret Event'" }
3061      ],
3062      "capabilities" : [ "DeviceEnqueue" ]
3063    },
3064    {
3065      "opname" : "OpEnqueueKernel",
3066      "class"  : "Device-Side_Enqueue",
3067      "opcode" : 292,
3068      "operands" : [
3069        { "kind" : "IdResultType" },
3070        { "kind" : "IdResult" },
3071        { "kind" : "IdRef",                            "name" : "'Queue'" },
3072        { "kind" : "IdRef",                            "name" : "'Flags'" },
3073        { "kind" : "IdRef",                            "name" : "'ND Range'" },
3074        { "kind" : "IdRef",                            "name" : "'Num Events'" },
3075        { "kind" : "IdRef",                            "name" : "'Wait Events'" },
3076        { "kind" : "IdRef",                            "name" : "'Ret Event'" },
3077        { "kind" : "IdRef",                            "name" : "'Invoke'" },
3078        { "kind" : "IdRef",                            "name" : "'Param'" },
3079        { "kind" : "IdRef",                            "name" : "'Param Size'" },
3080        { "kind" : "IdRef",                            "name" : "'Param Align'" },
3081        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Local Size'" }
3082      ],
3083      "capabilities" : [ "DeviceEnqueue" ]
3084    },
3085    {
3086      "opname" : "OpGetKernelNDrangeSubGroupCount",
3087      "class"  : "Device-Side_Enqueue",
3088      "opcode" : 293,
3089      "operands" : [
3090        { "kind" : "IdResultType" },
3091        { "kind" : "IdResult" },
3092        { "kind" : "IdRef",        "name" : "'ND Range'" },
3093        { "kind" : "IdRef",        "name" : "'Invoke'" },
3094        { "kind" : "IdRef",        "name" : "'Param'" },
3095        { "kind" : "IdRef",        "name" : "'Param Size'" },
3096        { "kind" : "IdRef",        "name" : "'Param Align'" }
3097      ],
3098      "capabilities" : [ "DeviceEnqueue" ]
3099    },
3100    {
3101      "opname" : "OpGetKernelNDrangeMaxSubGroupSize",
3102      "class"  : "Device-Side_Enqueue",
3103      "opcode" : 294,
3104      "operands" : [
3105        { "kind" : "IdResultType" },
3106        { "kind" : "IdResult" },
3107        { "kind" : "IdRef",        "name" : "'ND Range'" },
3108        { "kind" : "IdRef",        "name" : "'Invoke'" },
3109        { "kind" : "IdRef",        "name" : "'Param'" },
3110        { "kind" : "IdRef",        "name" : "'Param Size'" },
3111        { "kind" : "IdRef",        "name" : "'Param Align'" }
3112      ],
3113      "capabilities" : [ "DeviceEnqueue" ]
3114    },
3115    {
3116      "opname" : "OpGetKernelWorkGroupSize",
3117      "class"  : "Device-Side_Enqueue",
3118      "opcode" : 295,
3119      "operands" : [
3120        { "kind" : "IdResultType" },
3121        { "kind" : "IdResult" },
3122        { "kind" : "IdRef",        "name" : "'Invoke'" },
3123        { "kind" : "IdRef",        "name" : "'Param'" },
3124        { "kind" : "IdRef",        "name" : "'Param Size'" },
3125        { "kind" : "IdRef",        "name" : "'Param Align'" }
3126      ],
3127      "capabilities" : [ "DeviceEnqueue" ]
3128    },
3129    {
3130      "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple",
3131      "class"  : "Device-Side_Enqueue",
3132      "opcode" : 296,
3133      "operands" : [
3134        { "kind" : "IdResultType" },
3135        { "kind" : "IdResult" },
3136        { "kind" : "IdRef",        "name" : "'Invoke'" },
3137        { "kind" : "IdRef",        "name" : "'Param'" },
3138        { "kind" : "IdRef",        "name" : "'Param Size'" },
3139        { "kind" : "IdRef",        "name" : "'Param Align'" }
3140      ],
3141      "capabilities" : [ "DeviceEnqueue" ]
3142    },
3143    {
3144      "opname" : "OpRetainEvent",
3145      "class"  : "Device-Side_Enqueue",
3146      "opcode" : 297,
3147      "operands" : [
3148        { "kind" : "IdRef", "name" : "'Event'" }
3149      ],
3150      "capabilities" : [ "DeviceEnqueue" ]
3151    },
3152    {
3153      "opname" : "OpReleaseEvent",
3154      "class"  : "Device-Side_Enqueue",
3155      "opcode" : 298,
3156      "operands" : [
3157        { "kind" : "IdRef", "name" : "'Event'" }
3158      ],
3159      "capabilities" : [ "DeviceEnqueue" ]
3160    },
3161    {
3162      "opname" : "OpCreateUserEvent",
3163      "class"  : "Device-Side_Enqueue",
3164      "opcode" : 299,
3165      "operands" : [
3166        { "kind" : "IdResultType" },
3167        { "kind" : "IdResult" }
3168      ],
3169      "capabilities" : [ "DeviceEnqueue" ]
3170    },
3171    {
3172      "opname" : "OpIsValidEvent",
3173      "class"  : "Device-Side_Enqueue",
3174      "opcode" : 300,
3175      "operands" : [
3176        { "kind" : "IdResultType" },
3177        { "kind" : "IdResult" },
3178        { "kind" : "IdRef",        "name" : "'Event'" }
3179      ],
3180      "capabilities" : [ "DeviceEnqueue" ]
3181    },
3182    {
3183      "opname" : "OpSetUserEventStatus",
3184      "class"  : "Device-Side_Enqueue",
3185      "opcode" : 301,
3186      "operands" : [
3187        { "kind" : "IdRef", "name" : "'Event'" },
3188        { "kind" : "IdRef", "name" : "'Status'" }
3189      ],
3190      "capabilities" : [ "DeviceEnqueue" ]
3191    },
3192    {
3193      "opname" : "OpCaptureEventProfilingInfo",
3194      "class"  : "Device-Side_Enqueue",
3195      "opcode" : 302,
3196      "operands" : [
3197        { "kind" : "IdRef", "name" : "'Event'" },
3198        { "kind" : "IdRef", "name" : "'Profiling Info'" },
3199        { "kind" : "IdRef", "name" : "'Value'" }
3200      ],
3201      "capabilities" : [ "DeviceEnqueue" ]
3202    },
3203    {
3204      "opname" : "OpGetDefaultQueue",
3205      "class"  : "Device-Side_Enqueue",
3206      "opcode" : 303,
3207      "operands" : [
3208        { "kind" : "IdResultType" },
3209        { "kind" : "IdResult" }
3210      ],
3211      "capabilities" : [ "DeviceEnqueue" ]
3212    },
3213    {
3214      "opname" : "OpBuildNDRange",
3215      "class"  : "Device-Side_Enqueue",
3216      "opcode" : 304,
3217      "operands" : [
3218        { "kind" : "IdResultType" },
3219        { "kind" : "IdResult" },
3220        { "kind" : "IdRef",        "name" : "'GlobalWorkSize'" },
3221        { "kind" : "IdRef",        "name" : "'LocalWorkSize'" },
3222        { "kind" : "IdRef",        "name" : "'GlobalWorkOffset'" }
3223      ],
3224      "capabilities" : [ "DeviceEnqueue" ]
3225    },
3226    {
3227      "opname" : "OpImageSparseSampleImplicitLod",
3228      "class"  : "Image",
3229      "opcode" : 305,
3230      "operands" : [
3231        { "kind" : "IdResultType" },
3232        { "kind" : "IdResult" },
3233        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3234        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3235        { "kind" : "ImageOperands", "quantifier" : "?" }
3236      ],
3237      "capabilities" : [ "SparseResidency" ]
3238    },
3239    {
3240      "opname" : "OpImageSparseSampleExplicitLod",
3241      "class"  : "Image",
3242      "opcode" : 306,
3243      "operands" : [
3244        { "kind" : "IdResultType" },
3245        { "kind" : "IdResult" },
3246        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3247        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3248        { "kind" : "ImageOperands" }
3249      ],
3250      "capabilities" : [ "SparseResidency" ]
3251    },
3252    {
3253      "opname" : "OpImageSparseSampleDrefImplicitLod",
3254      "class"  : "Image",
3255      "opcode" : 307,
3256      "operands" : [
3257        { "kind" : "IdResultType" },
3258        { "kind" : "IdResult" },
3259        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3260        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3261        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3262        { "kind" : "ImageOperands", "quantifier" : "?" }
3263      ],
3264      "capabilities" : [ "SparseResidency" ]
3265    },
3266    {
3267      "opname" : "OpImageSparseSampleDrefExplicitLod",
3268      "class"  : "Image",
3269      "opcode" : 308,
3270      "operands" : [
3271        { "kind" : "IdResultType" },
3272        { "kind" : "IdResult" },
3273        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3274        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3275        { "kind" : "IdRef",         "name" : "'D~ref~'" },
3276        { "kind" : "ImageOperands" }
3277      ],
3278      "capabilities" : [ "SparseResidency" ]
3279    },
3280    {
3281      "opname" : "OpImageSparseSampleProjImplicitLod",
3282      "class"  : "Image",
3283      "opcode" : 309,
3284      "operands" : [
3285        { "kind" : "IdResultType" },
3286        { "kind" : "IdResult" },
3287        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3288        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3289        { "kind" : "ImageOperands", "quantifier" : "?" }
3290      ],
3291      "capabilities" : [ "SparseResidency" ],
3292      "version" : "None"
3293    },
3294    {
3295      "opname" : "OpImageSparseSampleProjExplicitLod",
3296      "class"  : "Image",
3297      "opcode" : 310,
3298      "operands" : [
3299        { "kind" : "IdResultType" },
3300        { "kind" : "IdResult" },
3301        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3302        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3303        { "kind" : "ImageOperands" }
3304      ],
3305      "capabilities" : [ "SparseResidency" ],
3306      "version" : "None"
3307    },
3308    {
3309      "opname" : "OpImageSparseSampleProjDrefImplicitLod",
3310      "class"  : "Image",
3311      "opcode" : 311,
3312      "operands" : [
3313        { "kind" : "IdResultType" },
3314        { "kind" : "IdResult" },
3315        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3316        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3317        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3318        { "kind" : "ImageOperands", "quantifier" : "?" }
3319      ],
3320      "capabilities" : [ "SparseResidency" ],
3321      "version" : "None"
3322    },
3323    {
3324      "opname" : "OpImageSparseSampleProjDrefExplicitLod",
3325      "class"  : "Image",
3326      "opcode" : 312,
3327      "operands" : [
3328        { "kind" : "IdResultType" },
3329        { "kind" : "IdResult" },
3330        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3331        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3332        { "kind" : "IdRef",         "name" : "'D~ref~'" },
3333        { "kind" : "ImageOperands" }
3334      ],
3335      "capabilities" : [ "SparseResidency" ],
3336      "version" : "None"
3337    },
3338    {
3339      "opname" : "OpImageSparseFetch",
3340      "class"  : "Image",
3341      "opcode" : 313,
3342      "operands" : [
3343        { "kind" : "IdResultType" },
3344        { "kind" : "IdResult" },
3345        { "kind" : "IdRef",                             "name" : "'Image'" },
3346        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3347        { "kind" : "ImageOperands", "quantifier" : "?" }
3348      ],
3349      "capabilities" : [ "SparseResidency" ]
3350    },
3351    {
3352      "opname" : "OpImageSparseGather",
3353      "class"  : "Image",
3354      "opcode" : 314,
3355      "operands" : [
3356        { "kind" : "IdResultType" },
3357        { "kind" : "IdResult" },
3358        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3359        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3360        { "kind" : "IdRef",                             "name" : "'Component'" },
3361        { "kind" : "ImageOperands", "quantifier" : "?" }
3362      ],
3363      "capabilities" : [ "SparseResidency" ]
3364    },
3365    {
3366      "opname" : "OpImageSparseDrefGather",
3367      "class"  : "Image",
3368      "opcode" : 315,
3369      "operands" : [
3370        { "kind" : "IdResultType" },
3371        { "kind" : "IdResult" },
3372        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3373        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3374        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3375        { "kind" : "ImageOperands", "quantifier" : "?" }
3376      ],
3377      "capabilities" : [ "SparseResidency" ]
3378    },
3379    {
3380      "opname" : "OpImageSparseTexelsResident",
3381      "class"  : "Image",
3382      "opcode" : 316,
3383      "operands" : [
3384        { "kind" : "IdResultType" },
3385        { "kind" : "IdResult" },
3386        { "kind" : "IdRef",        "name" : "'Resident Code'" }
3387      ],
3388      "capabilities" : [ "SparseResidency" ]
3389    },
3390    {
3391      "opname" : "OpNoLine",
3392      "class"  : "Debug",
3393      "opcode" : 317
3394    },
3395    {
3396      "opname" : "OpAtomicFlagTestAndSet",
3397      "class"  : "Atomic",
3398      "opcode" : 318,
3399      "operands" : [
3400        { "kind" : "IdResultType" },
3401        { "kind" : "IdResult" },
3402        { "kind" : "IdRef",             "name" : "'Pointer'" },
3403        { "kind" : "IdScope",           "name" : "'Memory'" },
3404        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3405      ],
3406      "capabilities" : [ "Kernel" ]
3407    },
3408    {
3409      "opname" : "OpAtomicFlagClear",
3410      "class"  : "Atomic",
3411      "opcode" : 319,
3412      "operands" : [
3413        { "kind" : "IdRef",             "name" : "'Pointer'" },
3414        { "kind" : "IdScope",           "name" : "'Memory'" },
3415        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3416      ],
3417      "capabilities" : [ "Kernel" ]
3418    },
3419    {
3420      "opname" : "OpImageSparseRead",
3421      "class"  : "Image",
3422      "opcode" : 320,
3423      "operands" : [
3424        { "kind" : "IdResultType" },
3425        { "kind" : "IdResult" },
3426        { "kind" : "IdRef",                             "name" : "'Image'" },
3427        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3428        { "kind" : "ImageOperands", "quantifier" : "?" }
3429      ],
3430      "capabilities" : [ "SparseResidency" ]
3431    },
3432    {
3433      "opname" : "OpSizeOf",
3434      "class"  : "Miscellaneous",
3435      "opcode" : 321,
3436      "operands" : [
3437        { "kind" : "IdResultType" },
3438        { "kind" : "IdResult" },
3439        { "kind" : "IdRef", "name" : "'Pointer'" }
3440      ],
3441      "capabilities" : [ "Addresses" ],
3442      "version" : "1.1"
3443    },
3444    {
3445      "opname" : "OpTypePipeStorage",
3446      "class"  : "Type-Declaration",
3447      "opcode" : 322,
3448      "operands" : [
3449        { "kind" : "IdResult" }
3450      ],
3451      "capabilities" : [ "PipeStorage" ],
3452      "version" : "1.1"
3453    },
3454    {
3455      "opname" : "OpConstantPipeStorage",
3456      "class"  : "Pipe",
3457      "opcode" : 323,
3458      "operands" : [
3459        { "kind" : "IdResultType" },
3460        { "kind" : "IdResult" },
3461        { "kind" : "LiteralInteger", "name" : "'Packet Size'" },
3462        { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" },
3463        { "kind" : "LiteralInteger", "name" : "'Capacity'" }
3464      ],
3465      "capabilities" : [ "PipeStorage" ],
3466      "version" : "1.1"
3467    },
3468    {
3469      "opname" : "OpCreatePipeFromPipeStorage",
3470      "class"  : "Pipe",
3471      "opcode" : 324,
3472      "operands" : [
3473        { "kind" : "IdResultType" },
3474        { "kind" : "IdResult" },
3475        { "kind" : "IdRef", "name" : "'Pipe Storage'" }
3476      ],
3477      "capabilities" : [ "PipeStorage" ],
3478      "version" : "1.1"
3479    },
3480    {
3481      "opname" : "OpGetKernelLocalSizeForSubgroupCount",
3482      "class"  : "Device-Side_Enqueue",
3483      "opcode" : 325,
3484      "operands" : [
3485        { "kind" : "IdResultType" },
3486        { "kind" : "IdResult" },
3487        { "kind" : "IdRef", "name" : "'Subgroup Count'" },
3488        { "kind" : "IdRef", "name" : "'Invoke'" },
3489        { "kind" : "IdRef", "name" : "'Param'" },
3490        { "kind" : "IdRef", "name" : "'Param Size'" },
3491        { "kind" : "IdRef", "name" : "'Param Align'" }
3492      ],
3493      "capabilities" : [ "SubgroupDispatch" ],
3494      "version" : "1.1"
3495    },
3496    {
3497      "opname" : "OpGetKernelMaxNumSubgroups",
3498      "class"  : "Device-Side_Enqueue",
3499      "opcode" : 326,
3500      "operands" : [
3501        { "kind" : "IdResultType" },
3502        { "kind" : "IdResult" },
3503        { "kind" : "IdRef", "name" : "'Invoke'" },
3504        { "kind" : "IdRef", "name" : "'Param'" },
3505        { "kind" : "IdRef", "name" : "'Param Size'" },
3506        { "kind" : "IdRef", "name" : "'Param Align'" }
3507      ],
3508      "capabilities" : [ "SubgroupDispatch" ],
3509      "version" : "1.1"
3510    },
3511    {
3512      "opname" : "OpTypeNamedBarrier",
3513      "class"  : "Type-Declaration",
3514      "opcode" : 327,
3515      "operands" : [
3516        { "kind" : "IdResult" }
3517      ],
3518      "capabilities" : [ "NamedBarrier" ],
3519      "version" : "1.1"
3520    },
3521    {
3522      "opname" : "OpNamedBarrierInitialize",
3523      "class"  : "Barrier",
3524      "opcode" : 328,
3525      "operands" : [
3526        { "kind" : "IdResultType" },
3527        { "kind" : "IdResult" },
3528        { "kind" : "IdRef", "name" : "'Subgroup Count'" }
3529      ],
3530      "capabilities" : [ "NamedBarrier" ],
3531      "version" : "1.1"
3532    },
3533    {
3534      "opname" : "OpMemoryNamedBarrier",
3535      "class"  : "Barrier",
3536      "opcode" : 329,
3537      "operands" : [
3538        { "kind" : "IdRef", "name" : "'Named Barrier'" },
3539        { "kind" : "IdScope", "name" : "'Memory'" },
3540        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3541      ],
3542      "capabilities" : [ "NamedBarrier" ],
3543      "version" : "1.1"
3544    },
3545    {
3546      "opname" : "OpModuleProcessed",
3547      "class"  : "Debug",
3548      "opcode" : 330,
3549      "operands" : [
3550        { "kind" : "LiteralString", "name" : "'Process'" }
3551      ],
3552      "version" : "1.1"
3553    },
3554    {
3555      "opname" : "OpExecutionModeId",
3556      "class"  : "Mode-Setting",
3557      "opcode" : 331,
3558      "operands" : [
3559        { "kind" : "IdRef", "name" : "'Entry Point'" },
3560        { "kind" : "ExecutionMode", "name" : "'Mode'" }
3561      ],
3562      "version" : "1.2"
3563    },
3564    {
3565      "opname" : "OpDecorateId",
3566      "class"  : "Annotation",
3567      "opcode" : 332,
3568      "operands" : [
3569        { "kind" : "IdRef", "name" : "'Target'" },
3570        { "kind" : "Decoration" }
3571      ],
3572      "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
3573      "version" : "1.2"
3574    },
3575    {
3576      "opname" : "OpGroupNonUniformElect",
3577      "class"  : "Non-Uniform",
3578      "opcode" : 333,
3579      "operands" : [
3580        { "kind" : "IdResultType" },
3581        { "kind" : "IdResult" },
3582        { "kind" : "IdScope", "name" : "'Execution'" }
3583      ],
3584      "capabilities" : [ "GroupNonUniform" ],
3585      "version" : "1.3"
3586    },
3587    {
3588      "opname" : "OpGroupNonUniformAll",
3589      "class"  : "Non-Uniform",
3590      "opcode" : 334,
3591      "operands" : [
3592        { "kind" : "IdResultType" },
3593        { "kind" : "IdResult" },
3594        { "kind" : "IdScope", "name" : "'Execution'" },
3595        { "kind" : "IdRef", "name" : "'Predicate'" }
3596      ],
3597      "capabilities" : [ "GroupNonUniformVote" ],
3598      "version" : "1.3"
3599    },
3600    {
3601      "opname" : "OpGroupNonUniformAny",
3602      "class"  : "Non-Uniform",
3603      "opcode" : 335,
3604      "operands" : [
3605        { "kind" : "IdResultType" },
3606        { "kind" : "IdResult" },
3607        { "kind" : "IdScope", "name" : "'Execution'" },
3608        { "kind" : "IdRef", "name" : "'Predicate'" }
3609      ],
3610      "capabilities" : [ "GroupNonUniformVote" ],
3611      "version" : "1.3"
3612    },
3613    {
3614      "opname" : "OpGroupNonUniformAllEqual",
3615      "class"  : "Non-Uniform",
3616      "opcode" : 336,
3617      "operands" : [
3618        { "kind" : "IdResultType" },
3619        { "kind" : "IdResult" },
3620        { "kind" : "IdScope", "name" : "'Execution'" },
3621        { "kind" : "IdRef", "name" : "'Value'" }
3622      ],
3623      "capabilities" : [ "GroupNonUniformVote" ],
3624      "version" : "1.3"
3625    },
3626    {
3627      "opname" : "OpGroupNonUniformBroadcast",
3628      "class"  : "Non-Uniform",
3629      "opcode" : 337,
3630      "operands" : [
3631        { "kind" : "IdResultType" },
3632        { "kind" : "IdResult" },
3633        { "kind" : "IdScope", "name" : "'Execution'" },
3634        { "kind" : "IdRef", "name" : "'Value'" },
3635        { "kind" : "IdRef", "name" : "'Id'" }
3636      ],
3637      "capabilities" : [ "GroupNonUniformBallot" ],
3638      "version" : "1.3"
3639    },
3640    {
3641      "opname" : "OpGroupNonUniformBroadcastFirst",
3642      "class"  : "Non-Uniform",
3643      "opcode" : 338,
3644      "operands" : [
3645        { "kind" : "IdResultType" },
3646        { "kind" : "IdResult" },
3647        { "kind" : "IdScope", "name" : "'Execution'" },
3648        { "kind" : "IdRef", "name" : "'Value'" }
3649      ],
3650      "capabilities" : [ "GroupNonUniformBallot" ],
3651      "version" : "1.3"
3652    },
3653    {
3654      "opname" : "OpGroupNonUniformBallot",
3655      "class"  : "Non-Uniform",
3656      "opcode" : 339,
3657      "operands" : [
3658        { "kind" : "IdResultType" },
3659        { "kind" : "IdResult" },
3660        { "kind" : "IdScope", "name" : "'Execution'" },
3661        { "kind" : "IdRef", "name" : "'Predicate'" }
3662      ],
3663      "capabilities" : [ "GroupNonUniformBallot" ],
3664      "version" : "1.3"
3665    },
3666    {
3667      "opname" : "OpGroupNonUniformInverseBallot",
3668      "class"  : "Non-Uniform",
3669      "opcode" : 340,
3670      "operands" : [
3671        { "kind" : "IdResultType" },
3672        { "kind" : "IdResult" },
3673        { "kind" : "IdScope", "name" : "'Execution'" },
3674        { "kind" : "IdRef", "name" : "'Value'" }
3675      ],
3676      "capabilities" : [ "GroupNonUniformBallot" ],
3677      "version" : "1.3"
3678    },
3679    {
3680      "opname" : "OpGroupNonUniformBallotBitExtract",
3681      "class"  : "Non-Uniform",
3682      "opcode" : 341,
3683      "operands" : [
3684        { "kind" : "IdResultType" },
3685        { "kind" : "IdResult" },
3686        { "kind" : "IdScope", "name" : "'Execution'" },
3687        { "kind" : "IdRef", "name" : "'Value'" },
3688        { "kind" : "IdRef", "name" : "'Index'" }
3689      ],
3690      "capabilities" : [ "GroupNonUniformBallot" ],
3691      "version" : "1.3"
3692    },
3693    {
3694      "opname" : "OpGroupNonUniformBallotBitCount",
3695      "class"  : "Non-Uniform",
3696      "opcode" : 342,
3697      "operands" : [
3698        { "kind" : "IdResultType" },
3699        { "kind" : "IdResult" },
3700        { "kind" : "IdScope", "name" : "'Execution'" },
3701        { "kind" : "GroupOperation", "name" : "'Operation'" },
3702        { "kind" : "IdRef", "name" : "'Value'" }
3703      ],
3704      "capabilities" : [ "GroupNonUniformBallot" ],
3705      "version" : "1.3"
3706    },
3707    {
3708      "opname" : "OpGroupNonUniformBallotFindLSB",
3709      "class"  : "Non-Uniform",
3710      "opcode" : 343,
3711      "operands" : [
3712        { "kind" : "IdResultType" },
3713        { "kind" : "IdResult" },
3714        { "kind" : "IdScope", "name" : "'Execution'" },
3715        { "kind" : "IdRef", "name" : "'Value'" }
3716      ],
3717      "capabilities" : [ "GroupNonUniformBallot" ],
3718      "version" : "1.3"
3719    },
3720    {
3721      "opname" : "OpGroupNonUniformBallotFindMSB",
3722      "class"  : "Non-Uniform",
3723      "opcode" : 344,
3724      "operands" : [
3725        { "kind" : "IdResultType" },
3726        { "kind" : "IdResult" },
3727        { "kind" : "IdScope", "name" : "'Execution'" },
3728        { "kind" : "IdRef", "name" : "'Value'" }
3729      ],
3730      "capabilities" : [ "GroupNonUniformBallot" ],
3731      "version" : "1.3"
3732    },
3733    {
3734      "opname" : "OpGroupNonUniformShuffle",
3735      "class"  : "Non-Uniform",
3736      "opcode" : 345,
3737      "operands" : [
3738        { "kind" : "IdResultType" },
3739        { "kind" : "IdResult" },
3740        { "kind" : "IdScope", "name" : "'Execution'" },
3741        { "kind" : "IdRef", "name" : "'Value'" },
3742        { "kind" : "IdRef", "name" : "'Id'" }
3743      ],
3744      "capabilities" : [ "GroupNonUniformShuffle" ],
3745      "version" : "1.3"
3746    },
3747    {
3748      "opname" : "OpGroupNonUniformShuffleXor",
3749      "class"  : "Non-Uniform",
3750      "opcode" : 346,
3751      "operands" : [
3752        { "kind" : "IdResultType" },
3753        { "kind" : "IdResult" },
3754        { "kind" : "IdScope", "name" : "'Execution'" },
3755        { "kind" : "IdRef", "name" : "'Value'" },
3756        { "kind" : "IdRef", "name" : "'Mask'" }
3757      ],
3758      "capabilities" : [ "GroupNonUniformShuffle" ],
3759      "version" : "1.3"
3760    },
3761    {
3762      "opname" : "OpGroupNonUniformShuffleUp",
3763      "class"  : "Non-Uniform",
3764      "opcode" : 347,
3765      "operands" : [
3766        { "kind" : "IdResultType" },
3767        { "kind" : "IdResult" },
3768        { "kind" : "IdScope", "name" : "'Execution'" },
3769        { "kind" : "IdRef", "name" : "'Value'" },
3770        { "kind" : "IdRef", "name" : "'Delta'" }
3771      ],
3772      "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3773      "version" : "1.3"
3774    },
3775    {
3776      "opname" : "OpGroupNonUniformShuffleDown",
3777      "class"  : "Non-Uniform",
3778      "opcode" : 348,
3779      "operands" : [
3780        { "kind" : "IdResultType" },
3781        { "kind" : "IdResult" },
3782        { "kind" : "IdScope", "name" : "'Execution'" },
3783        { "kind" : "IdRef", "name" : "'Value'" },
3784        { "kind" : "IdRef", "name" : "'Delta'" }
3785      ],
3786      "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3787      "version" : "1.3"
3788    },
3789    {
3790      "opname" : "OpGroupNonUniformIAdd",
3791      "class"  : "Non-Uniform",
3792      "opcode" : 349,
3793      "operands" : [
3794        { "kind" : "IdResultType" },
3795        { "kind" : "IdResult" },
3796        { "kind" : "IdScope", "name" : "'Execution'" },
3797        { "kind" : "GroupOperation", "name" : "'Operation'" },
3798        { "kind" : "IdRef", "name" : "'Value'" },
3799        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3800      ],
3801      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3802      "version" : "1.3"
3803    },
3804    {
3805      "opname" : "OpGroupNonUniformFAdd",
3806      "class"  : "Non-Uniform",
3807      "opcode" : 350,
3808      "operands" : [
3809        { "kind" : "IdResultType" },
3810        { "kind" : "IdResult" },
3811        { "kind" : "IdScope", "name" : "'Execution'" },
3812        { "kind" : "GroupOperation", "name" : "'Operation'" },
3813        { "kind" : "IdRef", "name" : "'Value'" },
3814        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3815      ],
3816      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3817      "version" : "1.3"
3818    },
3819    {
3820      "opname" : "OpGroupNonUniformIMul",
3821      "class"  : "Non-Uniform",
3822      "opcode" : 351,
3823      "operands" : [
3824        { "kind" : "IdResultType" },
3825        { "kind" : "IdResult" },
3826        { "kind" : "IdScope", "name" : "'Execution'" },
3827        { "kind" : "GroupOperation", "name" : "'Operation'" },
3828        { "kind" : "IdRef", "name" : "'Value'" },
3829        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3830      ],
3831      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3832      "version" : "1.3"
3833    },
3834    {
3835      "opname" : "OpGroupNonUniformFMul",
3836      "class"  : "Non-Uniform",
3837      "opcode" : 352,
3838      "operands" : [
3839        { "kind" : "IdResultType" },
3840        { "kind" : "IdResult" },
3841        { "kind" : "IdScope", "name" : "'Execution'" },
3842        { "kind" : "GroupOperation", "name" : "'Operation'" },
3843        { "kind" : "IdRef", "name" : "'Value'" },
3844        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3845      ],
3846      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3847      "version" : "1.3"
3848    },
3849    {
3850      "opname" : "OpGroupNonUniformSMin",
3851      "class"  : "Non-Uniform",
3852      "opcode" : 353,
3853      "operands" : [
3854        { "kind" : "IdResultType" },
3855        { "kind" : "IdResult" },
3856        { "kind" : "IdScope", "name" : "'Execution'" },
3857        { "kind" : "GroupOperation", "name" : "'Operation'" },
3858        { "kind" : "IdRef", "name" : "'Value'" },
3859        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3860      ],
3861      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3862      "version" : "1.3"
3863    },
3864    {
3865      "opname" : "OpGroupNonUniformUMin",
3866      "class"  : "Non-Uniform",
3867      "opcode" : 354,
3868      "operands" : [
3869        { "kind" : "IdResultType" },
3870        { "kind" : "IdResult" },
3871        { "kind" : "IdScope", "name" : "'Execution'" },
3872        { "kind" : "GroupOperation", "name" : "'Operation'" },
3873        { "kind" : "IdRef", "name" : "'Value'" },
3874        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3875      ],
3876      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3877      "version" : "1.3"
3878    },
3879    {
3880      "opname" : "OpGroupNonUniformFMin",
3881      "class"  : "Non-Uniform",
3882      "opcode" : 355,
3883      "operands" : [
3884        { "kind" : "IdResultType" },
3885        { "kind" : "IdResult" },
3886        { "kind" : "IdScope", "name" : "'Execution'" },
3887        { "kind" : "GroupOperation", "name" : "'Operation'" },
3888        { "kind" : "IdRef", "name" : "'Value'" },
3889        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3890      ],
3891      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3892      "version" : "1.3"
3893    },
3894    {
3895      "opname" : "OpGroupNonUniformSMax",
3896      "class"  : "Non-Uniform",
3897      "opcode" : 356,
3898      "operands" : [
3899        { "kind" : "IdResultType" },
3900        { "kind" : "IdResult" },
3901        { "kind" : "IdScope", "name" : "'Execution'" },
3902        { "kind" : "GroupOperation", "name" : "'Operation'" },
3903        { "kind" : "IdRef", "name" : "'Value'" },
3904        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3905      ],
3906      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3907      "version" : "1.3"
3908    },
3909    {
3910      "opname" : "OpGroupNonUniformUMax",
3911      "class"  : "Non-Uniform",
3912      "opcode" : 357,
3913      "operands" : [
3914        { "kind" : "IdResultType" },
3915        { "kind" : "IdResult" },
3916        { "kind" : "IdScope", "name" : "'Execution'" },
3917        { "kind" : "GroupOperation", "name" : "'Operation'" },
3918        { "kind" : "IdRef", "name" : "'Value'" },
3919        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3920      ],
3921      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3922      "version" : "1.3"
3923    },
3924    {
3925      "opname" : "OpGroupNonUniformFMax",
3926      "class"  : "Non-Uniform",
3927      "opcode" : 358,
3928      "operands" : [
3929        { "kind" : "IdResultType" },
3930        { "kind" : "IdResult" },
3931        { "kind" : "IdScope", "name" : "'Execution'" },
3932        { "kind" : "GroupOperation", "name" : "'Operation'" },
3933        { "kind" : "IdRef", "name" : "'Value'" },
3934        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3935      ],
3936      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3937      "version" : "1.3"
3938    },
3939    {
3940      "opname" : "OpGroupNonUniformBitwiseAnd",
3941      "class"  : "Non-Uniform",
3942      "opcode" : 359,
3943      "operands" : [
3944        { "kind" : "IdResultType" },
3945        { "kind" : "IdResult" },
3946        { "kind" : "IdScope", "name" : "'Execution'" },
3947        { "kind" : "GroupOperation", "name" : "'Operation'" },
3948        { "kind" : "IdRef", "name" : "'Value'" },
3949        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3950      ],
3951      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3952      "version" : "1.3"
3953    },
3954    {
3955      "opname" : "OpGroupNonUniformBitwiseOr",
3956      "class"  : "Non-Uniform",
3957      "opcode" : 360,
3958      "operands" : [
3959        { "kind" : "IdResultType" },
3960        { "kind" : "IdResult" },
3961        { "kind" : "IdScope", "name" : "'Execution'" },
3962        { "kind" : "GroupOperation", "name" : "'Operation'" },
3963        { "kind" : "IdRef", "name" : "'Value'" },
3964        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3965      ],
3966      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3967      "version" : "1.3"
3968    },
3969    {
3970      "opname" : "OpGroupNonUniformBitwiseXor",
3971      "class"  : "Non-Uniform",
3972      "opcode" : 361,
3973      "operands" : [
3974        { "kind" : "IdResultType" },
3975        { "kind" : "IdResult" },
3976        { "kind" : "IdScope", "name" : "'Execution'" },
3977        { "kind" : "GroupOperation", "name" : "'Operation'" },
3978        { "kind" : "IdRef", "name" : "'Value'" },
3979        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3980      ],
3981      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3982      "version" : "1.3"
3983    },
3984    {
3985      "opname" : "OpGroupNonUniformLogicalAnd",
3986      "class"  : "Non-Uniform",
3987      "opcode" : 362,
3988      "operands" : [
3989        { "kind" : "IdResultType" },
3990        { "kind" : "IdResult" },
3991        { "kind" : "IdScope", "name" : "'Execution'" },
3992        { "kind" : "GroupOperation", "name" : "'Operation'" },
3993        { "kind" : "IdRef", "name" : "'Value'" },
3994        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3995      ],
3996      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3997      "version" : "1.3"
3998    },
3999    {
4000      "opname" : "OpGroupNonUniformLogicalOr",
4001      "class"  : "Non-Uniform",
4002      "opcode" : 363,
4003      "operands" : [
4004        { "kind" : "IdResultType" },
4005        { "kind" : "IdResult" },
4006        { "kind" : "IdScope", "name" : "'Execution'" },
4007        { "kind" : "GroupOperation", "name" : "'Operation'" },
4008        { "kind" : "IdRef", "name" : "'Value'" },
4009        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4010      ],
4011      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4012      "version" : "1.3"
4013    },
4014    {
4015      "opname" : "OpGroupNonUniformLogicalXor",
4016      "class"  : "Non-Uniform",
4017      "opcode" : 364,
4018      "operands" : [
4019        { "kind" : "IdResultType" },
4020        { "kind" : "IdResult" },
4021        { "kind" : "IdScope", "name" : "'Execution'" },
4022        { "kind" : "GroupOperation", "name" : "'Operation'" },
4023        { "kind" : "IdRef", "name" : "'Value'" },
4024        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4025      ],
4026      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4027      "version" : "1.3"
4028    },
4029    {
4030      "opname" : "OpGroupNonUniformQuadBroadcast",
4031      "class"  : "Non-Uniform",
4032      "opcode" : 365,
4033      "operands" : [
4034        { "kind" : "IdResultType" },
4035        { "kind" : "IdResult" },
4036        { "kind" : "IdScope", "name" : "'Execution'" },
4037        { "kind" : "IdRef", "name" : "'Value'" },
4038        { "kind" : "IdRef", "name" : "'Index'" }
4039      ],
4040      "capabilities" : [ "GroupNonUniformQuad" ],
4041      "version" : "1.3"
4042    },
4043    {
4044      "opname" : "OpGroupNonUniformQuadSwap",
4045      "class"  : "Non-Uniform",
4046      "opcode" : 366,
4047      "operands" : [
4048        { "kind" : "IdResultType" },
4049        { "kind" : "IdResult" },
4050        { "kind" : "IdScope", "name" : "'Execution'" },
4051        { "kind" : "IdRef", "name" : "'Value'" },
4052        { "kind" : "IdRef", "name" : "'Direction'" }
4053      ],
4054      "capabilities" : [ "GroupNonUniformQuad" ],
4055      "version" : "1.3"
4056    },
4057    {
4058      "opname" : "OpCopyLogical",
4059      "class"  : "Composite",
4060      "opcode" : 400,
4061      "operands" : [
4062        { "kind" : "IdResultType" },
4063        { "kind" : "IdResult" },
4064        { "kind" : "IdRef",        "name" : "'Operand'" }
4065      ],
4066      "version" : "1.4"
4067    },
4068    {
4069      "opname" : "OpPtrEqual",
4070      "class"  : "Memory",
4071      "opcode" : 401,
4072      "operands" : [
4073        { "kind" : "IdResultType" },
4074        { "kind" : "IdResult" },
4075        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4076        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4077      ],
4078      "version" : "1.4"
4079    },
4080    {
4081      "opname" : "OpPtrNotEqual",
4082      "class"  : "Memory",
4083      "opcode" : 402,
4084      "operands" : [
4085        { "kind" : "IdResultType" },
4086        { "kind" : "IdResult" },
4087        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4088        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4089      ],
4090      "version" : "1.4"
4091    },
4092    {
4093      "opname" : "OpPtrDiff",
4094      "class"  : "Memory",
4095      "opcode" : 403,
4096      "operands" : [
4097        { "kind" : "IdResultType" },
4098        { "kind" : "IdResult" },
4099        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4100        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4101      ],
4102      "capabilities" : [ "Addresses", "VariablePointers", "VariablePointersStorageBuffer" ],
4103      "version" : "1.4"
4104    },
4105    {
4106      "opname" : "OpTerminateInvocation",
4107      "class"  : "Control-Flow",
4108      "opcode" : 4416,
4109      "extensions" : [
4110        "SPV_KHR_terminate_invocation"
4111      ],
4112      "capabilities" : [ "Shader" ],
4113      "version" : "1.6"
4114    },
4115    {
4116      "opname" : "OpSubgroupBallotKHR",
4117      "class"  : "Group",
4118      "opcode" : 4421,
4119      "operands" : [
4120        { "kind" : "IdResultType" },
4121        { "kind" : "IdResult" },
4122        { "kind" : "IdRef", "name" : "'Predicate'" }
4123      ],
4124      "capabilities" : [ "SubgroupBallotKHR" ],
4125      "extensions" : [ "SPV_KHR_shader_ballot" ],
4126      "version" : "None"
4127    },
4128    {
4129      "opname" : "OpSubgroupFirstInvocationKHR",
4130      "class"  : "Group",
4131      "opcode" : 4422,
4132      "operands" : [
4133        { "kind" : "IdResultType" },
4134        { "kind" : "IdResult" },
4135        { "kind" : "IdRef", "name" : "'Value'" }
4136      ],
4137      "capabilities" : [ "SubgroupBallotKHR" ],
4138      "extensions" : [ "SPV_KHR_shader_ballot" ],
4139      "version" : "None"
4140    },
4141    {
4142      "opname" : "OpSubgroupAllKHR",
4143      "class"  : "Group",
4144      "opcode" : 4428,
4145      "operands" : [
4146        { "kind" : "IdResultType" },
4147        { "kind" : "IdResult" },
4148        { "kind" : "IdRef", "name" : "'Predicate'" }
4149      ],
4150      "extensions" : [
4151        "SPV_KHR_subgroup_vote"
4152      ],
4153      "capabilities" : [ "SubgroupVoteKHR" ],
4154      "version" : "None"
4155    },
4156    {
4157      "opname" : "OpSubgroupAnyKHR",
4158      "class"  : "Group",
4159      "opcode" : 4429,
4160      "operands" : [
4161        { "kind" : "IdResultType" },
4162        { "kind" : "IdResult" },
4163        { "kind" : "IdRef", "name" : "'Predicate'" }
4164      ],
4165      "extensions" : [
4166        "SPV_KHR_subgroup_vote"
4167      ],
4168      "capabilities" : [ "SubgroupVoteKHR" ],
4169      "version" : "None"
4170    },
4171    {
4172      "opname" : "OpSubgroupAllEqualKHR",
4173      "class"  : "Group",
4174      "opcode" : 4430,
4175      "operands" : [
4176        { "kind" : "IdResultType" },
4177        { "kind" : "IdResult" },
4178        { "kind" : "IdRef", "name" : "'Predicate'" }
4179      ],
4180      "extensions" : [
4181        "SPV_KHR_subgroup_vote"
4182      ],
4183      "capabilities" : [ "SubgroupVoteKHR" ],
4184      "version" : "None"
4185    },
4186    {
4187      "opname" : "OpGroupNonUniformRotateKHR",
4188      "class"  : "Group",
4189      "opcode" : 4431,
4190      "operands" : [
4191        { "kind" : "IdResultType" },
4192        { "kind" : "IdResult" },
4193        { "kind" : "IdScope", "name" : "'Execution'" },
4194        { "kind" : "IdRef", "name" : "'Value'" },
4195        { "kind" : "IdRef", "name" : "'Delta'" },
4196        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4197      ],
4198      "capabilities" : [ "GroupNonUniformRotateKHR" ],
4199      "version" : "None"
4200    },
4201    {
4202      "opname" : "OpSubgroupReadInvocationKHR",
4203      "class"  : "Group",
4204      "opcode" : 4432,
4205      "operands" : [
4206        { "kind" : "IdResultType" },
4207        { "kind" : "IdResult" },
4208        { "kind" : "IdRef", "name" : "'Value'" },
4209        { "kind" : "IdRef", "name" : "'Index'" }
4210      ],
4211      "capabilities" : [ "SubgroupBallotKHR" ],
4212      "extensions" : [ "SPV_KHR_shader_ballot" ],
4213      "version" : "None"
4214    },
4215    {
4216      "opname" : "OpTraceRayKHR",
4217      "class"  : "Reserved",
4218      "opcode" : 4445,
4219      "operands" : [
4220
4221        { "kind" : "IdRef", "name" : "'Accel'" },
4222        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4223        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4224        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4225        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4226        { "kind" : "IdRef", "name" : "'Miss Index'" },
4227        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4228        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4229        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4230        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4231        { "kind" : "IdRef", "name" : "'Payload'" }
4232      ],
4233      "capabilities" : [ "RayTracingKHR" ],
4234      "extensions" : [ "SPV_KHR_ray_tracing" ],
4235      "version" : "None"
4236    },
4237    {
4238      "opname" : "OpExecuteCallableKHR",
4239      "class"  : "Reserved",
4240      "opcode" : 4446,
4241      "operands" : [
4242
4243        { "kind" : "IdRef", "name" : "'SBT Index'" },
4244        { "kind" : "IdRef", "name" : "'Callable Data'" }
4245      ],
4246      "capabilities" : [ "RayTracingKHR" ],
4247      "extensions" : [ "SPV_KHR_ray_tracing" ],
4248      "version" : "None"
4249    },
4250    {
4251      "opname" : "OpConvertUToAccelerationStructureKHR",
4252      "class"  : "Reserved",
4253      "opcode" : 4447,
4254      "operands" : [
4255        { "kind" : "IdResultType" },
4256        { "kind" : "IdResult" },
4257        { "kind" : "IdRef",        "name" : "'Accel'" }
4258      ],
4259      "capabilities" : [ "RayTracingKHR", "RayQueryKHR" ],
4260      "extensions" : [ "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4261      "version" : "None"
4262    },
4263    {
4264      "opname" : "OpIgnoreIntersectionKHR",
4265      "class"  : "Reserved",
4266      "opcode" : 4448,
4267      "capabilities" : [ "RayTracingKHR" ],
4268      "extensions" : [ "SPV_KHR_ray_tracing" ],
4269      "version" : "None"
4270    },
4271    {
4272      "opname" : "OpTerminateRayKHR",
4273      "class"  : "Reserved",
4274      "opcode" : 4449,
4275      "capabilities" : [ "RayTracingKHR" ],
4276      "extensions" : [ "SPV_KHR_ray_tracing" ],
4277      "version" : "None"
4278    },
4279    {
4280      "opname" : "OpSDot",
4281      "class"  : "Arithmetic",
4282      "opcode" : 4450,
4283      "operands" : [
4284        { "kind" : "IdResultType" },
4285        { "kind" : "IdResult" },
4286        { "kind" : "IdRef", "name" : "'Vector 1'" },
4287        { "kind" : "IdRef", "name" : "'Vector 2'" },
4288        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4289      ],
4290      "capabilities" : [ "DotProduct" ],
4291      "version" : "1.6"
4292    },
4293    {
4294      "opname" : "OpSDotKHR",
4295      "class"  : "Arithmetic",
4296      "opcode" : 4450,
4297      "operands" : [
4298        { "kind" : "IdResultType" },
4299        { "kind" : "IdResult" },
4300        { "kind" : "IdRef", "name" : "'Vector 1'" },
4301        { "kind" : "IdRef", "name" : "'Vector 2'" },
4302        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4303      ],
4304      "capabilities" : [ "DotProductKHR" ],
4305      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4306      "version" : "1.6"
4307    },
4308    {
4309      "opname" : "OpUDot",
4310      "class"  : "Arithmetic",
4311      "opcode" : 4451,
4312      "operands" : [
4313        { "kind" : "IdResultType" },
4314        { "kind" : "IdResult" },
4315        { "kind" : "IdRef", "name" : "'Vector 1'" },
4316        { "kind" : "IdRef", "name" : "'Vector 2'" },
4317        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4318      ],
4319      "capabilities" : [ "DotProduct" ],
4320      "version" : "1.6"
4321    },
4322    {
4323      "opname" : "OpUDotKHR",
4324      "class"  : "Arithmetic",
4325      "opcode" : 4451,
4326      "operands" : [
4327        { "kind" : "IdResultType" },
4328        { "kind" : "IdResult" },
4329        { "kind" : "IdRef", "name" : "'Vector 1'" },
4330        { "kind" : "IdRef", "name" : "'Vector 2'" },
4331        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4332      ],
4333      "capabilities" : [ "DotProductKHR" ],
4334      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4335      "version" : "1.6"
4336    },
4337    {
4338      "opname" : "OpSUDot",
4339      "class"  : "Arithmetic",
4340      "opcode" : 4452,
4341      "operands" : [
4342        { "kind" : "IdResultType" },
4343        { "kind" : "IdResult" },
4344        { "kind" : "IdRef", "name" : "'Vector 1'" },
4345        { "kind" : "IdRef", "name" : "'Vector 2'" },
4346        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4347      ],
4348      "capabilities" : [ "DotProduct" ],
4349      "version" : "1.6"
4350    },
4351    {
4352      "opname" : "OpSUDotKHR",
4353      "class"  : "Arithmetic",
4354      "opcode" : 4452,
4355      "operands" : [
4356        { "kind" : "IdResultType" },
4357        { "kind" : "IdResult" },
4358        { "kind" : "IdRef", "name" : "'Vector 1'" },
4359        { "kind" : "IdRef", "name" : "'Vector 2'" },
4360        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4361      ],
4362      "capabilities" : [ "DotProductKHR" ],
4363      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4364      "version" : "1.6"
4365    },
4366    {
4367      "opname" : "OpSDotAccSat",
4368      "class"  : "Arithmetic",
4369      "opcode" : 4453,
4370      "operands" : [
4371        { "kind" : "IdResultType" },
4372        { "kind" : "IdResult" },
4373        { "kind" : "IdRef", "name" : "'Vector 1'" },
4374        { "kind" : "IdRef", "name" : "'Vector 2'" },
4375        { "kind" : "IdRef", "name" : "'Accumulator'" },
4376        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4377      ],
4378      "capabilities" : [ "DotProduct" ],
4379      "version" : "1.6"
4380    },
4381    {
4382      "opname" : "OpSDotAccSatKHR",
4383      "class"  : "Arithmetic",
4384      "opcode" : 4453,
4385      "operands" : [
4386        { "kind" : "IdResultType" },
4387        { "kind" : "IdResult" },
4388        { "kind" : "IdRef", "name" : "'Vector 1'" },
4389        { "kind" : "IdRef", "name" : "'Vector 2'" },
4390        { "kind" : "IdRef", "name" : "'Accumulator'" },
4391        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4392      ],
4393      "capabilities" : [ "DotProductKHR" ],
4394      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4395      "version" : "1.6"
4396    },
4397    {
4398      "opname" : "OpUDotAccSat",
4399      "class"  : "Arithmetic",
4400      "opcode" : 4454,
4401      "operands" : [
4402        { "kind" : "IdResultType" },
4403        { "kind" : "IdResult" },
4404        { "kind" : "IdRef", "name" : "'Vector 1'" },
4405        { "kind" : "IdRef", "name" : "'Vector 2'" },
4406        { "kind" : "IdRef", "name" : "'Accumulator'" },
4407        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4408      ],
4409      "capabilities" : [ "DotProduct" ],
4410      "version" : "1.6"
4411    },
4412    {
4413      "opname" : "OpUDotAccSatKHR",
4414      "class"  : "Arithmetic",
4415      "opcode" : 4454,
4416      "operands" : [
4417        { "kind" : "IdResultType" },
4418        { "kind" : "IdResult" },
4419        { "kind" : "IdRef", "name" : "'Vector 1'" },
4420        { "kind" : "IdRef", "name" : "'Vector 2'" },
4421        { "kind" : "IdRef", "name" : "'Accumulator'" },
4422        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4423      ],
4424      "capabilities" : [ "DotProductKHR" ],
4425      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4426      "version" : "1.6"
4427    },
4428    {
4429      "opname" : "OpSUDotAccSat",
4430      "class"  : "Arithmetic",
4431      "opcode" : 4455,
4432      "operands" : [
4433        { "kind" : "IdResultType" },
4434        { "kind" : "IdResult" },
4435        { "kind" : "IdRef", "name" : "'Vector 1'" },
4436        { "kind" : "IdRef", "name" : "'Vector 2'" },
4437        { "kind" : "IdRef", "name" : "'Accumulator'" },
4438        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4439      ],
4440      "capabilities" : [ "DotProduct" ],
4441      "version" : "1.6"
4442    },
4443    {
4444      "opname" : "OpSUDotAccSatKHR",
4445      "class"  : "Arithmetic",
4446      "opcode" : 4455,
4447      "operands" : [
4448        { "kind" : "IdResultType" },
4449        { "kind" : "IdResult" },
4450        { "kind" : "IdRef", "name" : "'Vector 1'" },
4451        { "kind" : "IdRef", "name" : "'Vector 2'" },
4452        { "kind" : "IdRef", "name" : "'Accumulator'" },
4453        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4454      ],
4455      "capabilities" : [ "DotProductKHR" ],
4456      "extensions" : [ "SPV_KHR_integer_dot_product" ],
4457      "version" : "1.6"
4458    },
4459    {
4460        "opname" : "OpTypeRayQueryKHR",
4461        "class" : "Reserved",
4462        "opcode" : 4472,
4463        "operands" : [
4464            { "kind" : "IdResult" }
4465        ],
4466        "capabilities" : [ "RayQueryKHR" ],
4467        "extensions" : [ "SPV_KHR_ray_query" ],
4468        "version" : "None"
4469    },
4470    {
4471        "opname" : "OpRayQueryInitializeKHR",
4472        "class" : "Reserved",
4473        "opcode" : 4473,
4474        "operands" : [
4475            {
4476                "kind" : "IdRef",
4477                "name" : "'RayQuery'"
4478            },
4479            {
4480                "kind" : "IdRef",
4481                "name" : "'Accel'"
4482            },
4483            {
4484                "kind" : "IdRef",
4485                "name" : "'RayFlags'"
4486            },
4487            {
4488                "kind" : "IdRef",
4489                "name" : "'CullMask'"
4490            },
4491            {
4492                "kind" : "IdRef",
4493                "name" : "'RayOrigin'"
4494            },
4495            {
4496                "kind" : "IdRef",
4497                "name" : "'RayTMin'"
4498            },
4499            {
4500                "kind" : "IdRef",
4501                "name" : "'RayDirection'"
4502            },
4503            {
4504                "kind" : "IdRef",
4505                "name" : "'RayTMax'"
4506            }
4507
4508        ],
4509        "capabilities" : [ "RayQueryKHR" ],
4510        "extensions" : [ "SPV_KHR_ray_query" ],
4511        "version" : "None"
4512    },
4513    {
4514        "opname" : "OpRayQueryTerminateKHR",
4515        "class" : "Reserved",
4516        "opcode" : 4474,
4517        "operands" : [
4518            {
4519                "kind" : "IdRef",
4520                "name" : "'RayQuery'"
4521            }
4522        ],
4523        "capabilities" : [ "RayQueryKHR" ],
4524        "extensions" : [ "SPV_KHR_ray_query" ],
4525        "version" : "None"
4526    },
4527    {
4528        "opname" : "OpRayQueryGenerateIntersectionKHR",
4529        "class" : "Reserved",
4530        "opcode" : 4475,
4531        "operands" : [
4532            {
4533                "kind" : "IdRef",
4534                "name" : "'RayQuery'"
4535            },
4536            {
4537                "kind" : "IdRef",
4538                "name" : "'HitT'"
4539            }
4540        ],
4541        "capabilities" : [ "RayQueryKHR" ],
4542        "extensions" : [ "SPV_KHR_ray_query" ],
4543        "version" : "None"
4544    },
4545    {
4546        "opname" : "OpRayQueryConfirmIntersectionKHR",
4547        "class" : "Reserved",
4548        "opcode" : 4476,
4549        "operands" : [
4550            {
4551                "kind" : "IdRef",
4552                "name" : "'RayQuery'"
4553            }
4554        ],
4555        "capabilities" : [ "RayQueryKHR" ],
4556        "extensions" : [ "SPV_KHR_ray_query" ],
4557        "version" : "None"
4558    },
4559    {
4560        "opname" : "OpRayQueryProceedKHR",
4561        "class" : "Reserved",
4562        "opcode" : 4477,
4563        "operands" : [
4564            { "kind" : "IdResultType" },
4565            { "kind" : "IdResult" },
4566            {
4567                "kind" : "IdRef",
4568                "name" : "'RayQuery'"
4569            }
4570        ],
4571        "capabilities" : [ "RayQueryKHR" ],
4572        "extensions" : [ "SPV_KHR_ray_query" ],
4573        "version" : "None"
4574    },
4575    {
4576        "opname" : "OpRayQueryGetIntersectionTypeKHR",
4577        "class" : "Reserved",
4578        "opcode" : 4479,
4579        "operands" : [
4580            { "kind" : "IdResultType" },
4581            { "kind" : "IdResult" },
4582            {
4583                "kind" : "IdRef",
4584                "name" : "'RayQuery'"
4585            },
4586            {
4587                "kind" : "IdRef",
4588                "name" : "'Intersection'"
4589            }
4590        ],
4591        "capabilities" : [ "RayQueryKHR" ],
4592        "extensions" : [ "SPV_KHR_ray_query" ],
4593        "version" : "None"
4594    },
4595    {
4596      "opname" : "OpGroupIAddNonUniformAMD",
4597      "class"  : "Group",
4598      "opcode" : 5000,
4599      "operands" : [
4600        { "kind" : "IdResultType" },
4601        { "kind" : "IdResult" },
4602        { "kind" : "IdScope",        "name" : "'Execution'" },
4603        { "kind" : "GroupOperation", "name" : "'Operation'" },
4604        { "kind" : "IdRef",          "name" : "'X'" }
4605      ],
4606      "capabilities" : [ "Groups" ],
4607      "extensions" : [ "SPV_AMD_shader_ballot" ],
4608      "version" : "None"
4609    },
4610    {
4611      "opname" : "OpGroupFAddNonUniformAMD",
4612      "class"  : "Group",
4613      "opcode" : 5001,
4614      "operands" : [
4615        { "kind" : "IdResultType" },
4616        { "kind" : "IdResult" },
4617        { "kind" : "IdScope",        "name" : "'Execution'" },
4618        { "kind" : "GroupOperation", "name" : "'Operation'" },
4619        { "kind" : "IdRef",          "name" : "'X'" }
4620      ],
4621      "capabilities" : [ "Groups" ],
4622      "extensions" : [ "SPV_AMD_shader_ballot" ],
4623      "version" : "None"
4624    },
4625    {
4626      "opname" : "OpGroupFMinNonUniformAMD",
4627      "class"  : "Group",
4628      "opcode" : 5002,
4629      "operands" : [
4630        { "kind" : "IdResultType" },
4631        { "kind" : "IdResult" },
4632        { "kind" : "IdScope",        "name" : "'Execution'" },
4633        { "kind" : "GroupOperation", "name" : "'Operation'" },
4634        { "kind" : "IdRef",          "name" : "'X'" }
4635      ],
4636      "capabilities" : [ "Groups" ],
4637      "extensions" : [ "SPV_AMD_shader_ballot" ],
4638      "version" : "None"
4639    },
4640    {
4641      "opname" : "OpGroupUMinNonUniformAMD",
4642      "class"  : "Group",
4643      "opcode" : 5003,
4644      "operands" : [
4645        { "kind" : "IdResultType" },
4646        { "kind" : "IdResult" },
4647        { "kind" : "IdScope",        "name" : "'Execution'" },
4648        { "kind" : "GroupOperation", "name" : "'Operation'" },
4649        { "kind" : "IdRef",          "name" : "'X'" }
4650      ],
4651      "capabilities" : [ "Groups" ],
4652      "extensions" : [ "SPV_AMD_shader_ballot" ],
4653      "version" : "None"
4654    },
4655    {
4656      "opname" : "OpGroupSMinNonUniformAMD",
4657      "class"  : "Group",
4658      "opcode" : 5004,
4659      "operands" : [
4660        { "kind" : "IdResultType" },
4661        { "kind" : "IdResult" },
4662        { "kind" : "IdScope",        "name" : "'Execution'" },
4663        { "kind" : "GroupOperation", "name" : "'Operation'" },
4664        { "kind" : "IdRef",          "name" : "'X'" }
4665      ],
4666      "capabilities" : [ "Groups" ],
4667      "extensions" : [ "SPV_AMD_shader_ballot" ],
4668      "version" : "None"
4669    },
4670    {
4671      "opname" : "OpGroupFMaxNonUniformAMD",
4672      "class"  : "Group",
4673      "opcode" : 5005,
4674      "operands" : [
4675        { "kind" : "IdResultType" },
4676        { "kind" : "IdResult" },
4677        { "kind" : "IdScope",        "name" : "'Execution'" },
4678        { "kind" : "GroupOperation", "name" : "'Operation'" },
4679        { "kind" : "IdRef",          "name" : "'X'" }
4680      ],
4681      "capabilities" : [ "Groups" ],
4682      "extensions" : [ "SPV_AMD_shader_ballot" ],
4683      "version" : "None"
4684    },
4685    {
4686      "opname" : "OpGroupUMaxNonUniformAMD",
4687      "class"  : "Group",
4688      "opcode" : 5006,
4689      "operands" : [
4690        { "kind" : "IdResultType" },
4691        { "kind" : "IdResult" },
4692        { "kind" : "IdScope",        "name" : "'Execution'" },
4693        { "kind" : "GroupOperation", "name" : "'Operation'" },
4694        { "kind" : "IdRef",          "name" : "'X'" }
4695      ],
4696      "capabilities" : [ "Groups" ],
4697      "extensions" : [ "SPV_AMD_shader_ballot" ],
4698      "version" : "None"
4699    },
4700    {
4701      "opname" : "OpGroupSMaxNonUniformAMD",
4702      "class"  : "Group",
4703      "opcode" : 5007,
4704      "operands" : [
4705        { "kind" : "IdResultType" },
4706        { "kind" : "IdResult" },
4707        { "kind" : "IdScope",        "name" : "'Execution'" },
4708        { "kind" : "GroupOperation", "name" : "'Operation'" },
4709        { "kind" : "IdRef",          "name" : "'X'" }
4710      ],
4711      "capabilities" : [ "Groups" ],
4712      "extensions" : [ "SPV_AMD_shader_ballot" ],
4713      "version" : "None"
4714    },
4715    {
4716      "opname" : "OpFragmentMaskFetchAMD",
4717      "class"  : "Reserved",
4718      "opcode" : 5011,
4719      "operands" : [
4720        { "kind" : "IdResultType" },
4721        { "kind" : "IdResult" },
4722        { "kind" : "IdRef", "name" : "'Image'" },
4723        { "kind" : "IdRef", "name" : "'Coordinate'" }
4724      ],
4725      "capabilities" : [ "FragmentMaskAMD" ],
4726      "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
4727      "version" : "None"
4728    },
4729    {
4730      "opname" : "OpFragmentFetchAMD",
4731      "class"  : "Reserved",
4732      "opcode" : 5012,
4733      "operands" : [
4734        { "kind" : "IdResultType" },
4735        { "kind" : "IdResult" },
4736        { "kind" : "IdRef", "name" : "'Image'" },
4737        { "kind" : "IdRef", "name" : "'Coordinate'" },
4738        { "kind" : "IdRef", "name" : "'Fragment Index'" }
4739      ],
4740      "capabilities" : [ "FragmentMaskAMD" ],
4741      "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
4742      "version" : "None"
4743    },
4744    {
4745      "opname" : "OpReadClockKHR",
4746      "class"  : "Reserved",
4747      "opcode" : 5056,
4748      "operands" : [
4749        { "kind" : "IdResultType" },
4750        { "kind" : "IdResult" },
4751        { "kind" : "IdScope", "name" : "'Scope'" }
4752      ],
4753      "capabilities" : [ "ShaderClockKHR" ],
4754      "extensions" : [ "SPV_KHR_shader_clock" ],
4755      "version" : "None"
4756    },
4757    {
4758      "opname" : "OpImageSampleFootprintNV",
4759      "class"  : "Image",
4760      "opcode" : 5283,
4761      "operands" : [
4762        { "kind" : "IdResultType" },
4763        { "kind" : "IdResult" },
4764        { "kind" : "IdRef", "name" : "'Sampled Image'" },
4765        { "kind" : "IdRef", "name" : "'Coordinate'" },
4766        { "kind" : "IdRef", "name" : "'Granularity'" },
4767        { "kind" : "IdRef", "name" : "'Coarse'" },
4768        { "kind" : "ImageOperands", "quantifier" : "?" }
4769      ],
4770      "capabilities" : [ "ImageFootprintNV" ],
4771      "extensions" : [ "SPV_NV_shader_image_footprint" ],
4772      "version" : "None"
4773    },
4774    {
4775      "opname" : "OpGroupNonUniformPartitionNV",
4776      "class"  : "Non-Uniform",
4777      "opcode" : 5296,
4778      "operands" : [
4779        { "kind" : "IdResultType" },
4780        { "kind" : "IdResult" },
4781        { "kind" : "IdRef", "name" : "'Value'" }
4782      ],
4783      "capabilities" : [ "GroupNonUniformPartitionedNV" ],
4784      "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
4785      "version" : "None"
4786    },
4787    {
4788      "opname" : "OpWritePackedPrimitiveIndices4x8NV",
4789      "class"  : "Reserved",
4790      "opcode" : 5299,
4791      "operands" : [
4792        { "kind" : "IdRef", "name" : "'Index Offset'" },
4793        { "kind" : "IdRef", "name" : "'Packed Indices'" }
4794      ],
4795      "capabilities" : [ "MeshShadingNV" ],
4796      "extensions" : [ "SPV_NV_mesh_shader" ],
4797      "version" : "None"
4798    },
4799    {
4800      "opname" : "OpReportIntersectionNV",
4801      "class"  : "Reserved",
4802      "opcode" : 5334,
4803      "operands" : [
4804        { "kind" : "IdResultType" },
4805        { "kind" : "IdResult" },
4806        { "kind" : "IdRef", "name" : "'Hit'" },
4807        { "kind" : "IdRef", "name" : "'HitKind'" }
4808      ],
4809      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
4810      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4811      "version" : "None"
4812    },
4813    {
4814      "opname" : "OpReportIntersectionKHR",
4815      "class"  : "Reserved",
4816      "opcode" : 5334,
4817      "operands" : [
4818        { "kind" : "IdResultType" },
4819        { "kind" : "IdResult" },
4820        { "kind" : "IdRef", "name" : "'Hit'" },
4821        { "kind" : "IdRef", "name" : "'HitKind'" }
4822      ],
4823      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
4824      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4825      "version" : "None"
4826    },
4827    {
4828      "opname" : "OpIgnoreIntersectionNV",
4829      "class"  : "Reserved",
4830      "opcode" : 5335,
4831      "capabilities" : [ "RayTracingNV" ],
4832      "extensions" : [ "SPV_NV_ray_tracing" ],
4833      "version" : "None"
4834    },
4835    {
4836      "opname" : "OpTerminateRayNV",
4837      "class"  : "Reserved",
4838      "opcode" : 5336,
4839      "capabilities" : [ "RayTracingNV" ],
4840      "extensions" : [ "SPV_NV_ray_tracing" ],
4841      "version" : "None"
4842    },
4843    {
4844      "opname" : "OpTraceNV",
4845      "class"  : "Reserved",
4846      "opcode" : 5337,
4847      "operands" : [
4848
4849        { "kind" : "IdRef", "name" : "'Accel'" },
4850        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4851        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4852        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4853        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4854        { "kind" : "IdRef", "name" : "'Miss Index'" },
4855        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4856        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4857        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4858        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4859        { "kind" : "IdRef", "name" : "'PayloadId'" }
4860      ],
4861      "capabilities" : [ "RayTracingNV" ],
4862      "extensions" : [ "SPV_NV_ray_tracing" ],
4863      "version" : "None"
4864    },
4865    {
4866      "opname" : "OpTraceMotionNV",
4867      "class"  : "Reserved",
4868      "opcode" : 5338,
4869      "operands" : [
4870
4871        { "kind" : "IdRef", "name" : "'Accel'" },
4872        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4873        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4874        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4875        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4876        { "kind" : "IdRef", "name" : "'Miss Index'" },
4877        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4878        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4879        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4880        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4881        { "kind" : "IdRef", "name" : "'Time'" },
4882        { "kind" : "IdRef", "name" : "'PayloadId'" }
4883      ],
4884      "capabilities" : [ "RayTracingMotionBlurNV" ],
4885      "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
4886      "version" : "None"
4887    },
4888    {
4889      "opname" : "OpTraceRayMotionNV",
4890      "class"  : "Reserved",
4891      "opcode" : 5339,
4892      "operands" : [
4893
4894        { "kind" : "IdRef", "name" : "'Accel'" },
4895        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4896        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4897        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4898        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4899        { "kind" : "IdRef", "name" : "'Miss Index'" },
4900        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4901        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4902        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4903        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4904        { "kind" : "IdRef", "name" : "'Time'" },
4905        { "kind" : "IdRef", "name" : "'Payload'" }
4906      ],
4907      "capabilities" : [ "RayTracingMotionBlurNV" ],
4908      "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
4909      "version" : "None"
4910    },
4911    {
4912      "opname" : "OpTypeAccelerationStructureNV",
4913      "class"  : "Reserved",
4914      "opcode" : 5341,
4915      "operands" : [
4916        { "kind" : "IdResult" }
4917      ],
4918      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
4919      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4920      "version" : "None"
4921    },
4922    {
4923      "opname" : "OpTypeAccelerationStructureKHR",
4924      "class"  : "Reserved",
4925      "opcode" : 5341,
4926      "operands" : [
4927        { "kind" : "IdResult" }
4928      ],
4929      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
4930      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4931      "version" : "None"
4932    },
4933    {
4934      "opname" : "OpExecuteCallableNV",
4935      "class"  : "Reserved",
4936      "opcode" : 5344,
4937      "operands" : [
4938
4939        { "kind" : "IdRef", "name" : "'SBT Index'" },
4940        { "kind" : "IdRef", "name" : "'Callable DataId'" }
4941      ],
4942      "capabilities" : [ "RayTracingNV" ],
4943      "extensions" : [ "SPV_NV_ray_tracing" ],
4944      "version" : "None"
4945    },
4946    {
4947      "opname" : "OpTypeCooperativeMatrixNV",
4948      "class"  : "Reserved",
4949      "opcode" : 5358,
4950      "operands" : [
4951        { "kind" : "IdResult" },
4952        { "kind" : "IdRef",        "name" : "'Component Type'" },
4953        { "kind" : "IdScope",      "name" : "'Execution'" },
4954        { "kind" : "IdRef",        "name" : "'Rows'" },
4955        { "kind" : "IdRef",        "name" : "'Columns'" }
4956      ],
4957      "capabilities" : [ "CooperativeMatrixNV" ],
4958      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4959      "version" : "None"
4960    },
4961    {
4962      "opname" : "OpCooperativeMatrixLoadNV",
4963      "class"  : "Reserved",
4964      "opcode" : 5359,
4965      "operands" : [
4966        { "kind" : "IdResultType" },
4967        { "kind" : "IdResult" },
4968        { "kind" : "IdRef",             "name" : "'Pointer'" },
4969        { "kind" : "IdRef",             "name" : "'Stride'" },
4970        { "kind" : "IdRef",             "name" : "'Column Major'" },
4971        { "kind" : "MemoryAccess",      "quantifier" : "?" }
4972      ],
4973      "capabilities" : [ "CooperativeMatrixNV" ],
4974      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4975      "version" : "None"
4976    },
4977    {
4978      "opname" : "OpCooperativeMatrixStoreNV",
4979      "class"  : "Reserved",
4980      "opcode" : 5360,
4981      "operands" : [
4982        { "kind" : "IdRef",             "name" : "'Pointer'" },
4983        { "kind" : "IdRef",             "name" : "'Object'" },
4984        { "kind" : "IdRef",             "name" : "'Stride'" },
4985        { "kind" : "IdRef",             "name" : "'Column Major'" },
4986        { "kind" : "MemoryAccess",      "quantifier" : "?" }
4987      ],
4988      "capabilities" : [ "CooperativeMatrixNV" ],
4989      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4990      "version" : "None"
4991    },
4992    {
4993      "opname" : "OpCooperativeMatrixMulAddNV",
4994      "class"  : "Reserved",
4995      "opcode" : 5361,
4996      "operands" : [
4997        { "kind" : "IdResultType" },
4998        { "kind" : "IdResult" },
4999        { "kind" : "IdRef",             "name" : "'A'" },
5000        { "kind" : "IdRef",             "name" : "'B'" },
5001        { "kind" : "IdRef",             "name" : "'C'" }
5002      ],
5003      "capabilities" : [ "CooperativeMatrixNV" ],
5004      "extensions" : [ "SPV_NV_cooperative_matrix" ],
5005      "version" : "None"
5006    },
5007    {
5008      "opname" : "OpCooperativeMatrixLengthNV",
5009      "class"  : "Reserved",
5010      "opcode" : 5362,
5011      "operands" : [
5012        { "kind" : "IdResultType" },
5013        { "kind" : "IdResult" },
5014        { "kind" : "IdRef",        "name" : "'Type'" }
5015      ],
5016      "capabilities" : [ "CooperativeMatrixNV" ],
5017      "extensions" : [ "SPV_NV_cooperative_matrix" ],
5018      "version" : "None"
5019    },
5020    {
5021      "opname" : "OpBeginInvocationInterlockEXT",
5022      "class"  : "Reserved",
5023      "opcode" : 5364,
5024      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
5025      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
5026      "version" : "None"
5027    },
5028    {
5029      "opname" : "OpEndInvocationInterlockEXT",
5030      "class"  : "Reserved",
5031      "opcode" : 5365,
5032      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
5033      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
5034      "version" : "None"
5035    },
5036    {
5037      "opname" : "OpDemoteToHelperInvocation",
5038      "class"  : "Control-Flow",
5039      "opcode" : 5380,
5040      "capabilities" : [ "DemoteToHelperInvocation" ],
5041      "version" : "1.6"
5042    },
5043    {
5044      "opname" : "OpDemoteToHelperInvocationEXT",
5045      "class"  : "Control-Flow",
5046      "opcode" : 5380,
5047      "capabilities" : [ "DemoteToHelperInvocationEXT" ],
5048      "version" : "1.6"
5049    },
5050    {
5051      "opname" : "OpIsHelperInvocationEXT",
5052      "class"  : "Reserved",
5053      "opcode" : 5381,
5054      "operands" : [
5055        { "kind" : "IdResultType" },
5056        { "kind" : "IdResult" }
5057      ],
5058      "capabilities" : [ "DemoteToHelperInvocationEXT" ],
5059      "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
5060      "version" : "None"
5061    },
5062    {
5063      "opname" : "OpConvertUToImageNV",
5064      "class"  : "Reserved",
5065      "opcode" : 5391,
5066      "operands" : [
5067        { "kind" : "IdResultType" },
5068        { "kind" : "IdResult" },
5069        { "kind" : "IdRef", "name" : "'Operand'" }
5070      ],
5071      "capabilities" : [ "BindlessTextureNV" ],
5072      "version" : "None"
5073    },
5074    {
5075      "opname" : "OpConvertUToSamplerNV",
5076      "class"  : "Reserved",
5077      "opcode" : 5392,
5078      "operands" : [
5079        { "kind" : "IdResultType" },
5080        { "kind" : "IdResult" },
5081        { "kind" : "IdRef", "name" : "'Operand'" }
5082      ],
5083      "capabilities" : [ "BindlessTextureNV" ],
5084      "version" : "None"
5085    },
5086    {
5087      "opname" : "OpConvertImageToUNV",
5088      "class"  : "Reserved",
5089      "opcode" : 5393,
5090      "operands" : [
5091        { "kind" : "IdResultType" },
5092        { "kind" : "IdResult" },
5093        { "kind" : "IdRef", "name" : "'Operand'" }
5094      ],
5095      "capabilities" : [ "BindlessTextureNV" ],
5096      "version" : "None"
5097    },
5098    {
5099      "opname" : "OpConvertSamplerToUNV",
5100      "class"  : "Reserved",
5101      "opcode" : 5394,
5102      "operands" : [
5103        { "kind" : "IdResultType" },
5104        { "kind" : "IdResult" },
5105        { "kind" : "IdRef", "name" : "'Operand'" }
5106      ],
5107      "capabilities" : [ "BindlessTextureNV" ],
5108      "version" : "None"
5109    },
5110    {
5111      "opname" : "OpConvertUToSampledImageNV",
5112      "class"  : "Reserved",
5113      "opcode" : 5395,
5114      "operands" : [
5115        { "kind" : "IdResultType" },
5116        { "kind" : "IdResult" },
5117        { "kind" : "IdRef", "name" : "'Operand'" }
5118      ],
5119      "capabilities" : [ "BindlessTextureNV" ],
5120      "version" : "None"
5121    },
5122    {
5123      "opname" : "OpConvertSampledImageToUNV",
5124      "class"  : "Reserved",
5125      "opcode" : 5396,
5126      "operands" : [
5127        { "kind" : "IdResultType" },
5128        { "kind" : "IdResult" },
5129        { "kind" : "IdRef", "name" : "'Operand'" }
5130      ],
5131      "capabilities" : [ "BindlessTextureNV" ],
5132      "version" : "None"
5133    },
5134    {
5135      "opname" : "OpSamplerImageAddressingModeNV",
5136      "class"  : "Reserved",
5137      "opcode" : 5397,
5138      "operands" : [
5139        { "kind" : "LiteralInteger", "name" : "'Bit Width'" }
5140      ],
5141      "capabilities" : [ "BindlessTextureNV" ],
5142      "version" : "None"
5143    },
5144    {
5145      "opname" : "OpSubgroupShuffleINTEL",
5146      "class"  : "Group",
5147      "opcode" : 5571,
5148      "operands" : [
5149        { "kind" : "IdResultType" },
5150        { "kind" : "IdResult" },
5151        { "kind" : "IdRef", "name" : "'Data'" },
5152        { "kind" : "IdRef", "name" : "'InvocationId'" }
5153      ],
5154      "capabilities" : [ "SubgroupShuffleINTEL" ],
5155      "version" : "None"
5156    },
5157    {
5158      "opname" : "OpSubgroupShuffleDownINTEL",
5159      "class"  : "Group",
5160      "opcode" : 5572,
5161      "operands" : [
5162        { "kind" : "IdResultType" },
5163        { "kind" : "IdResult" },
5164        { "kind" : "IdRef", "name" : "'Current'" },
5165        { "kind" : "IdRef", "name" : "'Next'" },
5166        { "kind" : "IdRef", "name" : "'Delta'" }
5167      ],
5168      "capabilities" : [ "SubgroupShuffleINTEL" ],
5169      "version" : "None"
5170    },
5171    {
5172      "opname" : "OpSubgroupShuffleUpINTEL",
5173      "class"  : "Group",
5174      "opcode" : 5573,
5175      "operands" : [
5176        { "kind" : "IdResultType" },
5177        { "kind" : "IdResult" },
5178        { "kind" : "IdRef", "name" : "'Previous'" },
5179        { "kind" : "IdRef", "name" : "'Current'" },
5180        { "kind" : "IdRef", "name" : "'Delta'" }
5181      ],
5182      "capabilities" : [ "SubgroupShuffleINTEL" ],
5183      "version" : "None"
5184    },
5185    {
5186      "opname" : "OpSubgroupShuffleXorINTEL",
5187      "class"  : "Group",
5188      "opcode" : 5574,
5189      "operands" : [
5190        { "kind" : "IdResultType" },
5191        { "kind" : "IdResult" },
5192        { "kind" : "IdRef", "name" : "'Data'" },
5193        { "kind" : "IdRef", "name" : "'Value'" }
5194      ],
5195      "capabilities" : [ "SubgroupShuffleINTEL" ],
5196      "version" : "None"
5197    },
5198    {
5199      "opname" : "OpSubgroupBlockReadINTEL",
5200      "class"  : "Group",
5201      "opcode" : 5575,
5202      "operands" : [
5203        { "kind" : "IdResultType" },
5204        { "kind" : "IdResult" },
5205        { "kind" : "IdRef", "name" : "'Ptr'" }
5206      ],
5207      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
5208      "version" : "None"
5209    },
5210    {
5211      "opname" : "OpSubgroupBlockWriteINTEL",
5212      "class"  : "Group",
5213      "opcode" : 5576,
5214      "operands" : [
5215        { "kind" : "IdRef", "name" : "'Ptr'" },
5216        { "kind" : "IdRef", "name" : "'Data'" }
5217      ],
5218      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
5219      "version" : "None"
5220    },
5221    {
5222      "opname" : "OpSubgroupImageBlockReadINTEL",
5223      "class"  : "Group",
5224      "opcode" : 5577,
5225      "operands" : [
5226        { "kind" : "IdResultType" },
5227        { "kind" : "IdResult" },
5228        { "kind" : "IdRef", "name" : "'Image'" },
5229        { "kind" : "IdRef", "name" : "'Coordinate'" }
5230      ],
5231      "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
5232      "version" : "None"
5233    },
5234    {
5235      "opname" : "OpSubgroupImageBlockWriteINTEL",
5236      "class"  : "Group",
5237      "opcode" : 5578,
5238      "operands" : [
5239        { "kind" : "IdRef", "name" : "'Image'" },
5240        { "kind" : "IdRef", "name" : "'Coordinate'" },
5241        { "kind" : "IdRef", "name" : "'Data'" }
5242      ],
5243      "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
5244      "version" : "None"
5245    },
5246    {
5247      "opname" : "OpSubgroupImageMediaBlockReadINTEL",
5248      "class"  : "Group",
5249      "opcode" : 5580,
5250      "operands" : [
5251        { "kind" : "IdResultType" },
5252        { "kind" : "IdResult" },
5253        { "kind" : "IdRef", "name" : "'Image'" },
5254        { "kind" : "IdRef", "name" : "'Coordinate'" },
5255        { "kind" : "IdRef", "name" : "'Width'" },
5256        { "kind" : "IdRef", "name" : "'Height'" }
5257      ],
5258      "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
5259      "version" : "None"
5260    },
5261    {
5262      "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
5263      "class"  : "Group",
5264      "opcode" : 5581,
5265      "operands" : [
5266        { "kind" : "IdRef", "name" : "'Image'" },
5267        { "kind" : "IdRef", "name" : "'Coordinate'" },
5268        { "kind" : "IdRef", "name" : "'Width'" },
5269        { "kind" : "IdRef", "name" : "'Height'" },
5270        { "kind" : "IdRef", "name" : "'Data'" }
5271      ],
5272      "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
5273      "version" : "None"
5274    },
5275    {
5276      "opname" : "OpUCountLeadingZerosINTEL",
5277      "class"  : "Reserved",
5278      "opcode" : 5585,
5279      "operands" : [
5280        { "kind" : "IdResultType" },
5281        { "kind" : "IdResult" },
5282        { "kind" : "IdRef",        "name" : "'Operand'" }
5283      ],
5284      "capabilities" : [ "IntegerFunctions2INTEL" ],
5285      "version" : "None"
5286    },
5287    {
5288      "opname" : "OpUCountTrailingZerosINTEL",
5289      "class"  : "Reserved",
5290      "opcode" : 5586,
5291      "operands" : [
5292        { "kind" : "IdResultType" },
5293        { "kind" : "IdResult" },
5294        { "kind" : "IdRef",        "name" : "'Operand'" }
5295      ],
5296      "capabilities" : [ "IntegerFunctions2INTEL" ],
5297      "version" : "None"
5298    },
5299    {
5300      "opname" : "OpAbsISubINTEL",
5301      "class"  : "Reserved",
5302      "opcode" : 5587,
5303      "operands" : [
5304        { "kind" : "IdResultType" },
5305        { "kind" : "IdResult" },
5306        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5307        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5308      ],
5309      "capabilities" : [ "IntegerFunctions2INTEL" ],
5310      "version" : "None"
5311    },
5312    {
5313      "opname" : "OpAbsUSubINTEL",
5314      "class"  : "Reserved",
5315      "opcode" : 5588,
5316      "operands" : [
5317        { "kind" : "IdResultType" },
5318        { "kind" : "IdResult" },
5319        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5320        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5321      ],
5322      "capabilities" : [ "IntegerFunctions2INTEL" ],
5323      "version" : "None"
5324    },
5325    {
5326      "opname" : "OpIAddSatINTEL",
5327      "class"  : "Reserved",
5328      "opcode" : 5589,
5329      "operands" : [
5330        { "kind" : "IdResultType" },
5331        { "kind" : "IdResult" },
5332        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5333        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5334      ],
5335      "capabilities" : [ "IntegerFunctions2INTEL" ],
5336      "version" : "None"
5337    },
5338    {
5339      "opname" : "OpUAddSatINTEL",
5340      "class"  : "Reserved",
5341      "opcode" : 5590,
5342      "operands" : [
5343        { "kind" : "IdResultType" },
5344        { "kind" : "IdResult" },
5345        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5346        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5347      ],
5348      "capabilities" : [ "IntegerFunctions2INTEL" ],
5349      "version" : "None"
5350    },
5351    {
5352      "opname" : "OpIAverageINTEL",
5353      "class"  : "Reserved",
5354      "opcode" : 5591,
5355      "operands" : [
5356        { "kind" : "IdResultType" },
5357        { "kind" : "IdResult" },
5358        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5359        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5360      ],
5361      "capabilities" : [ "IntegerFunctions2INTEL" ],
5362      "version" : "None"
5363    },
5364    {
5365      "opname" : "OpUAverageINTEL",
5366      "class"  : "Reserved",
5367      "opcode" : 5592,
5368      "operands" : [
5369        { "kind" : "IdResultType" },
5370        { "kind" : "IdResult" },
5371        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5372        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5373      ],
5374      "capabilities" : [ "IntegerFunctions2INTEL" ],
5375      "version" : "None"
5376    },
5377    {
5378      "opname" : "OpIAverageRoundedINTEL",
5379      "class"  : "Reserved",
5380      "opcode" : 5593,
5381      "operands" : [
5382        { "kind" : "IdResultType" },
5383        { "kind" : "IdResult" },
5384        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5385        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5386      ],
5387      "capabilities" : [ "IntegerFunctions2INTEL" ],
5388      "version" : "None"
5389    },
5390    {
5391      "opname" : "OpUAverageRoundedINTEL",
5392      "class"  : "Reserved",
5393      "opcode" : 5594,
5394      "operands" : [
5395        { "kind" : "IdResultType" },
5396        { "kind" : "IdResult" },
5397        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5398        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5399      ],
5400      "capabilities" : [ "IntegerFunctions2INTEL" ],
5401      "version" : "None"
5402    },
5403    {
5404      "opname" : "OpISubSatINTEL",
5405      "class"  : "Reserved",
5406      "opcode" : 5595,
5407      "operands" : [
5408        { "kind" : "IdResultType" },
5409        { "kind" : "IdResult" },
5410        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5411        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5412      ],
5413      "capabilities" : [ "IntegerFunctions2INTEL" ],
5414      "version" : "None"
5415    },
5416    {
5417      "opname" : "OpUSubSatINTEL",
5418      "class"  : "Reserved",
5419      "opcode" : 5596,
5420      "operands" : [
5421        { "kind" : "IdResultType" },
5422        { "kind" : "IdResult" },
5423        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5424        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5425      ],
5426      "capabilities" : [ "IntegerFunctions2INTEL" ],
5427      "version" : "None"
5428    },
5429    {
5430      "opname" : "OpIMul32x16INTEL",
5431      "class"  : "Reserved",
5432      "opcode" : 5597,
5433      "operands" : [
5434        { "kind" : "IdResultType" },
5435        { "kind" : "IdResult" },
5436        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5437        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5438      ],
5439      "capabilities" : [ "IntegerFunctions2INTEL" ],
5440      "version" : "None"
5441    },
5442    {
5443      "opname" : "OpUMul32x16INTEL",
5444      "class"  : "Reserved",
5445      "opcode" : 5598,
5446      "operands" : [
5447        { "kind" : "IdResultType" },
5448        { "kind" : "IdResult" },
5449        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5450        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5451      ],
5452      "capabilities" : [ "IntegerFunctions2INTEL" ],
5453      "version" : "None"
5454    },
5455    {
5456      "opname" : "OpConstantFunctionPointerINTEL",
5457      "class"  : "@exclude",
5458      "opcode" : 5600,
5459      "operands" : [
5460        { "kind" : "IdResultType" },
5461        { "kind" : "IdResult" },
5462        { "kind" : "IdRef",        "name" : "'Function'" }
5463      ],
5464      "capabilities" : [ "FunctionPointersINTEL" ],
5465      "extensions" : [ "SPV_INTEL_function_pointers" ],
5466      "version" : "None"
5467    },
5468    {
5469      "opname" : "OpFunctionPointerCallINTEL",
5470      "class"  : "@exclude",
5471      "opcode" : 5601,
5472      "operands" : [
5473        { "kind" : "IdResultType" },
5474        { "kind" : "IdResult" },
5475        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1'" }
5476      ],
5477      "capabilities" : [ "FunctionPointersINTEL" ],
5478      "extensions" : [ "SPV_INTEL_function_pointers" ],
5479      "version" : "None"
5480    },
5481    {
5482      "opname" : "OpAsmTargetINTEL",
5483      "class"  : "@exclude",
5484      "opcode" : 5609,
5485      "operands" : [
5486        { "kind" : "IdResultType" },
5487        { "kind" : "IdResult" },
5488        { "kind" : "LiteralString", "name" : "'Asm target'" }
5489      ],
5490      "capabilities" : [ "AsmINTEL" ],
5491      "version" : "None"
5492    },
5493    {
5494      "opname" : "OpAsmINTEL",
5495      "class"  : "@exclude",
5496      "opcode" : 5610,
5497      "operands" : [
5498        { "kind" : "IdResultType" },
5499        { "kind" : "IdResult" },
5500        { "kind" : "IdRef", "name" : "'Asm type'" },
5501        { "kind" : "IdRef", "name" : "'Target'" },
5502        { "kind" : "LiteralString", "name" : "'Asm instructions'" },
5503        { "kind" : "LiteralString", "name" : "'Constraints'" }
5504      ],
5505      "capabilities" : [ "AsmINTEL" ],
5506      "version" : "None"
5507    },
5508    {
5509      "opname" : "OpAsmCallINTEL",
5510      "class"  : "@exclude",
5511      "opcode" : 5611,
5512      "operands" : [
5513        { "kind" : "IdResultType" },
5514        { "kind" : "IdResult" },
5515        { "kind" : "IdRef", "name" : "'Asm'" },
5516        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0'" }
5517      ],
5518      "capabilities" : [ "AsmINTEL" ],
5519      "version" : "None"
5520    },
5521    {
5522      "opname" : "OpAtomicFMinEXT",
5523      "class"  : "Atomic",
5524      "opcode" : 5614,
5525      "operands" : [
5526        { "kind" : "IdResultType" },
5527        { "kind" : "IdResult" },
5528        { "kind" : "IdRef",             "name" : "'Pointer'" },
5529        { "kind" : "IdScope",           "name" : "'Memory'" },
5530        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
5531        { "kind" : "IdRef",             "name" : "'Value'" }
5532      ],
5533      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ],
5534      "version" : "None"
5535    },
5536    {
5537      "opname" : "OpAtomicFMaxEXT",
5538      "class"  : "Atomic",
5539      "opcode" : 5615,
5540      "operands" : [
5541        { "kind" : "IdResultType" },
5542        { "kind" : "IdResult" },
5543        { "kind" : "IdRef",             "name" : "'Pointer'" },
5544        { "kind" : "IdScope",           "name" : "'Memory'" },
5545        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
5546        { "kind" : "IdRef",             "name" : "'Value'" }
5547      ],
5548      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ],
5549      "version" : "None"
5550    },
5551    {
5552      "opname" : "OpAssumeTrueKHR",
5553      "class"  : "Miscellaneous",
5554      "opcode" : 5630,
5555      "operands" : [
5556        { "kind" : "IdRef", "name" : "'Condition'" }
5557      ],
5558      "capabilities" : [ "ExpectAssumeKHR" ],
5559      "extensions" : [ "SPV_KHR_expect_assume" ],
5560      "version" : "None"
5561    },
5562    {
5563      "opname" : "OpExpectKHR",
5564      "class"  : "Miscellaneous",
5565      "opcode" : 5631,
5566      "operands" : [
5567        { "kind" : "IdResultType" },
5568        { "kind" : "IdResult" },
5569        { "kind" : "IdRef", "name" : "'Value'" },
5570        { "kind" : "IdRef", "name" : "'ExpectedValue'" }
5571      ],
5572      "capabilities" : [ "ExpectAssumeKHR" ],
5573      "extensions" : [ "SPV_KHR_expect_assume" ],
5574      "version" : "None"
5575    },
5576    {
5577      "opname" : "OpDecorateString",
5578      "class"  : "Annotation",
5579      "opcode" : 5632,
5580      "operands" : [
5581        { "kind" : "IdRef",         "name" : "'Target'" },
5582        { "kind" : "Decoration" }
5583      ],
5584      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5585      "version" : "1.4"
5586    },
5587    {
5588      "opname" : "OpDecorateStringGOOGLE",
5589      "class"  : "Annotation",
5590      "opcode" : 5632,
5591      "operands" : [
5592        { "kind" : "IdRef",         "name" : "'Target'" },
5593        { "kind" : "Decoration" }
5594      ],
5595      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5596      "version" : "1.4"
5597    },
5598    {
5599      "opname" : "OpMemberDecorateString",
5600      "class"  : "Annotation",
5601      "opcode" : 5633,
5602      "operands" : [
5603        { "kind" : "IdRef",          "name" : "'Struct Type'" },
5604        { "kind" : "LiteralInteger", "name" : "'Member'" },
5605        { "kind" : "Decoration" }
5606      ],
5607      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5608      "version" : "1.4"
5609    },
5610    {
5611      "opname" : "OpMemberDecorateStringGOOGLE",
5612      "class"  : "Annotation",
5613      "opcode" : 5633,
5614      "operands" : [
5615        { "kind" : "IdRef",          "name" : "'Struct Type'" },
5616        { "kind" : "LiteralInteger", "name" : "'Member'" },
5617        { "kind" : "Decoration" }
5618      ],
5619      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5620      "version" : "1.4"
5621    },
5622    {
5623      "opname" : "OpVmeImageINTEL",
5624      "class"  : "@exclude",
5625      "opcode" : 5699,
5626      "operands" : [
5627        { "kind" : "IdResultType" },
5628        { "kind" : "IdResult" },
5629        { "kind" : "IdRef", "name" : "'Image Type'" },
5630        { "kind" : "IdRef", "name" : "'Sampler'" }
5631      ],
5632      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5633      "version" : "None"
5634    },
5635    {
5636      "opname" : "OpTypeVmeImageINTEL",
5637      "class"  : "@exclude",
5638      "opcode" : 5700,
5639      "operands" : [
5640        { "kind" : "IdResult" },
5641        { "kind" : "IdRef", "name" : "'Image Type'" }
5642      ],
5643      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5644      "version" : "None"
5645    },
5646    {
5647      "opname" : "OpTypeAvcImePayloadINTEL",
5648      "class"  : "@exclude",
5649      "opcode" : 5701,
5650      "operands" : [
5651        { "kind" : "IdResult" }
5652      ],
5653      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5654      "version" : "None"
5655    },
5656    {
5657      "opname" : "OpTypeAvcRefPayloadINTEL",
5658      "class"  : "@exclude",
5659      "opcode" : 5702,
5660      "operands" : [
5661        { "kind" : "IdResult" }
5662      ],
5663      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5664      "version" : "None"
5665    },
5666    {
5667      "opname" : "OpTypeAvcSicPayloadINTEL",
5668      "class"  : "@exclude",
5669      "opcode" : 5703,
5670      "operands" : [
5671        { "kind" : "IdResult" }
5672      ],
5673      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5674      "version" : "None"
5675    },
5676    {
5677      "opname" : "OpTypeAvcMcePayloadINTEL",
5678      "class"  : "@exclude",
5679      "opcode" : 5704,
5680      "operands" : [
5681        { "kind" : "IdResult" }
5682      ],
5683      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5684      "version" : "None"
5685    },
5686    {
5687      "opname" : "OpTypeAvcMceResultINTEL",
5688      "class"  : "@exclude",
5689      "opcode" : 5705,
5690      "operands" : [
5691        { "kind" : "IdResult" }
5692      ],
5693      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5694      "version" : "None"
5695    },
5696    {
5697      "opname" : "OpTypeAvcImeResultINTEL",
5698      "class"  : "@exclude",
5699      "opcode" : 5706,
5700      "operands" : [
5701        { "kind" : "IdResult" }
5702      ],
5703      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5704      "version" : "None"
5705    },
5706    {
5707      "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
5708      "class"  : "@exclude",
5709      "opcode" : 5707,
5710      "operands" : [
5711        { "kind" : "IdResult" }
5712      ],
5713      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5714      "version" : "None"
5715    },
5716    {
5717      "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
5718      "class"  : "@exclude",
5719      "opcode" : 5708,
5720      "operands" : [
5721        { "kind" : "IdResult" }
5722      ],
5723      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5724      "version" : "None"
5725    },
5726    {
5727      "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
5728      "class"  : "@exclude",
5729      "opcode" : 5709,
5730      "operands" : [
5731        { "kind" : "IdResult" }
5732      ],
5733      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5734      "version" : "None"
5735    },
5736    {
5737      "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
5738      "class"  : "@exclude",
5739      "opcode" : 5710,
5740      "operands" : [
5741        { "kind" : "IdResult" }
5742      ],
5743      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5744      "version" : "None"
5745    },
5746    {
5747      "opname" : "OpTypeAvcRefResultINTEL",
5748      "class"  : "@exclude",
5749      "opcode" : 5711,
5750      "operands" : [
5751        { "kind" : "IdResult" }
5752      ],
5753      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5754      "version" : "None"
5755    },
5756    {
5757      "opname" : "OpTypeAvcSicResultINTEL",
5758      "class"  : "@exclude",
5759      "opcode" : 5712,
5760      "operands" : [
5761        { "kind" : "IdResult" }
5762      ],
5763      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5764      "version" : "None"
5765    },
5766    {
5767      "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
5768      "class"  : "@exclude",
5769      "opcode" : 5713,
5770      "operands" : [
5771        { "kind" : "IdResultType" },
5772        { "kind" : "IdResult" },
5773        { "kind" : "IdRef", "name" : "'Slice Type'" },
5774        { "kind" : "IdRef", "name" : "'Qp'" }
5775      ],
5776      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5777      "version" : "None"
5778    },
5779    {
5780      "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
5781      "class"  : "@exclude",
5782      "opcode" : 5714,
5783      "operands" : [
5784        { "kind" : "IdResultType" },
5785        { "kind" : "IdResult" },
5786        { "kind" : "IdRef", "name" : "'Reference Base Penalty'" },
5787        { "kind" : "IdRef", "name" : "'Payload'" }
5788      ],
5789      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5790      "version" : "None"
5791    },
5792    {
5793      "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
5794      "class"  : "@exclude",
5795      "opcode" : 5715,
5796      "operands" : [
5797        { "kind" : "IdResultType" },
5798        { "kind" : "IdResult" },
5799        { "kind" : "IdRef", "name" : "'Slice Type'" },
5800        { "kind" : "IdRef", "name" : "'Qp'" }
5801      ],
5802      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5803      "version" : "None"
5804    },
5805    {
5806      "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
5807      "class"  : "@exclude",
5808      "opcode" : 5716,
5809      "operands" : [
5810        { "kind" : "IdResultType" },
5811        { "kind" : "IdResult" },
5812        { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
5813        { "kind" : "IdRef", "name" : "'Payload'" }
5814      ],
5815      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5816      "version" : "None"
5817    },
5818    {
5819      "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
5820      "class"  : "@exclude",
5821      "opcode" : 5717,
5822      "operands" : [
5823        { "kind" : "IdResultType" },
5824        { "kind" : "IdResult" },
5825        { "kind" : "IdRef", "name" : "'Slice Type'" },
5826        { "kind" : "IdRef", "name" : "'Qp'" }
5827      ],
5828      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5829      "version" : "None"
5830    },
5831    {
5832      "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
5833      "class"  : "@exclude",
5834      "opcode" : 5718,
5835      "operands" : [
5836        { "kind" : "IdResultType" },
5837        { "kind" : "IdResult" },
5838        { "kind" : "IdRef", "name" : "'Direction Cost'" },
5839        { "kind" : "IdRef", "name" : "'Payload'" }
5840      ],
5841      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5842      "version" : "None"
5843    },
5844    {
5845      "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
5846      "class"  : "@exclude",
5847      "opcode" : 5719,
5848      "operands" : [
5849        { "kind" : "IdResultType" },
5850        { "kind" : "IdResult" },
5851        { "kind" : "IdRef", "name" : "'Slice Type'" },
5852        { "kind" : "IdRef", "name" : "'Qp'" }
5853      ],
5854      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5855      "version" : "None"
5856    },
5857    {
5858      "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
5859      "class"  : "@exclude",
5860      "opcode" : 5720,
5861      "operands" : [
5862        { "kind" : "IdResultType" },
5863        { "kind" : "IdResult" },
5864        { "kind" : "IdRef", "name" : "'Slice Type'" },
5865        { "kind" : "IdRef", "name" : "'Qp'" }
5866      ],
5867      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5868      "version" : "None"
5869    },
5870    {
5871      "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
5872      "class"  : "@exclude",
5873      "opcode" : 5721,
5874      "operands" : [
5875        { "kind" : "IdResultType" },
5876        { "kind" : "IdResult" }
5877      ],
5878      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5879      "version" : "None"
5880    },
5881    {
5882      "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
5883      "class"  : "@exclude",
5884      "opcode" : 5722,
5885      "operands" : [
5886        { "kind" : "IdResultType" },
5887        { "kind" : "IdResult" }
5888      ],
5889      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5890      "version" : "None"
5891    },
5892    {
5893      "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
5894      "class"  : "@exclude",
5895      "opcode" : 5723,
5896      "operands" : [
5897        { "kind" : "IdResultType" },
5898        { "kind" : "IdResult" }
5899      ],
5900      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5901      "version" : "None"
5902    },
5903    {
5904      "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
5905      "class"  : "@exclude",
5906      "opcode" : 5724,
5907      "operands" : [
5908        { "kind" : "IdResultType" },
5909        { "kind" : "IdResult" },
5910        { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" },
5911        { "kind" : "IdRef", "name" : "'Packed Cost Table'" },
5912        { "kind" : "IdRef", "name" : "'Cost Precision'" },
5913        { "kind" : "IdRef", "name" : "'Payload'" }
5914      ],
5915      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5916      "version" : "None"
5917    },
5918    {
5919      "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
5920      "class"  : "@exclude",
5921      "opcode" : 5725,
5922      "operands" : [
5923        { "kind" : "IdResultType" },
5924        { "kind" : "IdResult" },
5925        { "kind" : "IdRef", "name" : "'Slice Type'" },
5926        { "kind" : "IdRef", "name" : "'Qp'" }
5927      ],
5928      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5929      "version" : "None"
5930    },
5931    {
5932      "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
5933      "class"  : "@exclude",
5934      "opcode" : 5726,
5935      "operands" : [
5936        { "kind" : "IdResultType" },
5937        { "kind" : "IdResult" }
5938      ],
5939      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5940      "version" : "None"
5941    },
5942    {
5943      "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
5944      "class"  : "@exclude",
5945      "opcode" : 5727,
5946      "operands" : [
5947        { "kind" : "IdResultType" },
5948        { "kind" : "IdResult" }
5949      ],
5950      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5951      "version" : "None"
5952    },
5953    {
5954      "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
5955      "class"  : "@exclude",
5956      "opcode" : 5728,
5957      "operands" : [
5958        { "kind" : "IdResultType" },
5959        { "kind" : "IdResult" },
5960        { "kind" : "IdRef", "name" : "'Payload'" }
5961      ],
5962      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5963      "version" : "None"
5964    },
5965    {
5966      "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
5967      "class"  : "@exclude",
5968      "opcode" : 5729,
5969      "operands" : [
5970        { "kind" : "IdResultType" },
5971        { "kind" : "IdResult" },
5972        { "kind" : "IdRef", "name" : "'Source Field Polarity'" },
5973        { "kind" : "IdRef", "name" : "'Payload'" }
5974      ],
5975      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5976      "version" : "None"
5977    },
5978    {
5979      "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
5980      "class"  : "@exclude",
5981      "opcode" : 5730,
5982      "operands" : [
5983        { "kind" : "IdResultType" },
5984        { "kind" : "IdResult" },
5985        { "kind" : "IdRef", "name" : "'Reference Field Polarity'" },
5986        { "kind" : "IdRef", "name" : "'Payload'" }
5987      ],
5988      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5989      "version" : "None"
5990    },
5991    {
5992      "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
5993      "class"  : "@exclude",
5994      "opcode" : 5731,
5995      "operands" : [
5996        { "kind" : "IdResultType" },
5997        { "kind" : "IdResult" },
5998        { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" },
5999        { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" },
6000        { "kind" : "IdRef", "name" : "'Payload'" }
6001      ],
6002      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6003      "version" : "None"
6004    },
6005    {
6006      "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
6007      "class"  : "@exclude",
6008      "opcode" : 5732,
6009      "operands" : [
6010        { "kind" : "IdResultType" },
6011        { "kind" : "IdResult" },
6012        { "kind" : "IdRef", "name" : "'Payload'" }
6013      ],
6014      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6015      "version" : "None"
6016    },
6017    {
6018      "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
6019      "class"  : "@exclude",
6020      "opcode" : 5733,
6021      "operands" : [
6022        { "kind" : "IdResultType" },
6023        { "kind" : "IdResult" },
6024        { "kind" : "IdRef", "name" : "'Payload'" }
6025      ],
6026      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6027      "version" : "None"
6028    },
6029    {
6030      "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
6031      "class"  : "@exclude",
6032      "opcode" : 5734,
6033      "operands" : [
6034        { "kind" : "IdResultType" },
6035        { "kind" : "IdResult" },
6036        { "kind" : "IdRef", "name" : "'Payload'" }
6037      ],
6038      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6039      "version" : "None"
6040    },
6041    {
6042      "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
6043      "class"  : "@exclude",
6044      "opcode" : 5735,
6045      "operands" : [
6046        { "kind" : "IdResultType" },
6047        { "kind" : "IdResult" },
6048        { "kind" : "IdRef", "name" : "'Payload'" }
6049      ],
6050      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6051      "version" : "None"
6052    },
6053    {
6054      "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
6055      "class"  : "@exclude",
6056      "opcode" : 5736,
6057      "operands" : [
6058        { "kind" : "IdResultType" },
6059        { "kind" : "IdResult" },
6060        { "kind" : "IdRef", "name" : "'Payload'" }
6061      ],
6062      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6063      "version" : "None"
6064    },
6065    {
6066      "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
6067      "class"  : "@exclude",
6068      "opcode" : 5737,
6069      "operands" : [
6070        { "kind" : "IdResultType" },
6071        { "kind" : "IdResult" },
6072        { "kind" : "IdRef", "name" : "'Payload'" }
6073      ],
6074      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6075      "version" : "None"
6076    },
6077    {
6078      "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
6079      "class"  : "@exclude",
6080      "opcode" : 5738,
6081      "operands" : [
6082        { "kind" : "IdResultType" },
6083        { "kind" : "IdResult" },
6084        { "kind" : "IdRef", "name" : "'Payload'" }
6085      ],
6086      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6087      "version" : "None"
6088    },
6089    {
6090      "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
6091      "class"  : "@exclude",
6092      "opcode" : 5739,
6093      "operands" : [
6094        { "kind" : "IdResultType" },
6095        { "kind" : "IdResult" },
6096        { "kind" : "IdRef", "name" : "'Payload'" }
6097      ],
6098      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6099      "version" : "None"
6100    },
6101    {
6102      "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
6103      "class"  : "@exclude",
6104      "opcode" : 5740,
6105      "operands" : [
6106        { "kind" : "IdResultType" },
6107        { "kind" : "IdResult" },
6108        { "kind" : "IdRef", "name" : "'Payload'" }
6109      ],
6110      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6111      "version" : "None"
6112    },
6113    {
6114      "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
6115      "class"  : "@exclude",
6116      "opcode" : 5741,
6117      "operands" : [
6118        { "kind" : "IdResultType" },
6119        { "kind" : "IdResult" },
6120        { "kind" : "IdRef", "name" : "'Payload'" }
6121      ],
6122      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6123      "version" : "None"
6124    },
6125    {
6126      "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
6127      "class"  : "@exclude",
6128      "opcode" : 5742,
6129      "operands" : [
6130        { "kind" : "IdResultType" },
6131        { "kind" : "IdResult" },
6132        { "kind" : "IdRef", "name" : "'Payload'" }
6133      ],
6134      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6135      "version" : "None"
6136    },
6137    {
6138      "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
6139      "class"  : "@exclude",
6140      "opcode" : 5743,
6141      "operands" : [
6142        { "kind" : "IdResultType" },
6143        { "kind" : "IdResult" },
6144        { "kind" : "IdRef", "name" : "'Payload'" }
6145      ],
6146      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6147      "version" : "None"
6148    },
6149    {
6150      "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
6151      "class"  : "@exclude",
6152      "opcode" : 5744,
6153      "operands" : [
6154        { "kind" : "IdResultType" },
6155        { "kind" : "IdResult" },
6156        { "kind" : "IdRef", "name" : "'Payload'" }
6157      ],
6158      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6159      "version" : "None"
6160    },
6161    {
6162      "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
6163      "class"  : "@exclude",
6164      "opcode" : 5745,
6165      "operands" : [
6166        { "kind" : "IdResultType" },
6167        { "kind" : "IdResult" },
6168        { "kind" : "IdRef", "name" : "'Payload'" }
6169      ],
6170      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6171      "version" : "None"
6172    },
6173    {
6174      "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
6175      "class"  : "@exclude",
6176      "opcode" : 5746,
6177      "operands" : [
6178        { "kind" : "IdResultType" },
6179        { "kind" : "IdResult" },
6180        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6181        { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" },
6182        { "kind" : "IdRef", "name" : "'Payload'" }
6183      ],
6184      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6185      "version" : "None"
6186    },
6187    {
6188      "opname" : "OpSubgroupAvcImeInitializeINTEL",
6189      "class"  : "@exclude",
6190      "opcode" : 5747,
6191      "operands" : [
6192        { "kind" : "IdResultType" },
6193        { "kind" : "IdResult" },
6194        { "kind" : "IdRef", "name" : "'Src Coord'" },
6195        { "kind" : "IdRef", "name" : "'Partition Mask'" },
6196        { "kind" : "IdRef", "name" : "'SAD Adjustment'" }
6197      ],
6198      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6199      "version" : "None"
6200    },
6201    {
6202      "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
6203      "class"  : "@exclude",
6204      "opcode" : 5748,
6205      "operands" : [
6206        { "kind" : "IdResultType" },
6207        { "kind" : "IdResult" },
6208        { "kind" : "IdRef", "name" : "'Ref Offset'" },
6209        { "kind" : "IdRef", "name" : "'Search Window Config'" },
6210        { "kind" : "IdRef", "name" : "'Payload'" }
6211      ],
6212      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6213      "version" : "None"
6214    },
6215    {
6216      "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
6217      "class"  : "@exclude",
6218      "opcode" : 5749,
6219      "operands" : [
6220        { "kind" : "IdResultType" },
6221        { "kind" : "IdResult" },
6222        { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" },
6223        { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" },
6224        { "kind" : "IdRef", "name" : "'id> Search Window Config'" },
6225        { "kind" : "IdRef", "name" : "'Payload'" }
6226      ],
6227      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6228      "version" : "None"
6229    },
6230    {
6231      "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
6232      "class"  : "@exclude",
6233      "opcode" : 5750,
6234      "operands" : [
6235        { "kind" : "IdResultType" },
6236        { "kind" : "IdResult" },
6237        { "kind" : "IdRef", "name" : "'Search Window Config'" },
6238        { "kind" : "IdRef", "name" : "'Dual Ref'" }
6239      ],
6240      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6241      "version" : "None"
6242    },
6243    {
6244      "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
6245      "class"  : "@exclude",
6246      "opcode" : 5751,
6247      "operands" : [
6248        { "kind" : "IdResultType" },
6249        { "kind" : "IdResult" },
6250        { "kind" : "IdRef", "name" : "'Ref Offset'" },
6251        { "kind" : "IdRef", "name" : "'Src Coord'" },
6252        { "kind" : "IdRef", "name" : "'Ref Window Size'" },
6253        { "kind" : "IdRef", "name" : "'Image Size'" }
6254      ],
6255      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6256      "version" : "None"
6257    },
6258    {
6259      "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
6260      "class"  : "@exclude",
6261      "opcode" : 5752,
6262      "operands" : [
6263        { "kind" : "IdResultType" },
6264        { "kind" : "IdResult" },
6265        { "kind" : "IdRef", "name" : "'Payload'" }
6266      ],
6267      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6268      "version" : "None"
6269    },
6270    {
6271      "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
6272      "class"  : "@exclude",
6273      "opcode" : 5753,
6274      "operands" : [
6275        { "kind" : "IdResultType" },
6276        { "kind" : "IdResult" },
6277        { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" },
6278        { "kind" : "IdRef", "name" : "'Payload'" }
6279      ],
6280      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6281      "version" : "None"
6282    },
6283    {
6284      "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
6285      "class"  : "@exclude",
6286      "opcode" : 5754,
6287      "operands" : [
6288        { "kind" : "IdResultType" },
6289        { "kind" : "IdResult" },
6290        { "kind" : "IdRef", "name" : "'Payload'" }
6291      ],
6292      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6293      "version" : "None"
6294    },
6295    {
6296      "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
6297      "class"  : "@exclude",
6298      "opcode" : 5755,
6299      "operands" : [
6300        { "kind" : "IdResultType" },
6301        { "kind" : "IdResult" },
6302        { "kind" : "IdRef", "name" : "'Threshold'" },
6303        { "kind" : "IdRef", "name" : "'Payload'" }
6304      ],
6305      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6306      "version" : "None"
6307    },
6308    {
6309      "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
6310      "class"  : "@exclude",
6311      "opcode" : 5756,
6312      "operands" : [
6313        { "kind" : "IdResultType" },
6314        { "kind" : "IdResult" },
6315        { "kind" : "IdRef", "name" : "'Packed Sad Weights'" },
6316        { "kind" : "IdRef", "name" : "'Payload'" }
6317      ],
6318      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6319      "version" : "None"
6320    },
6321    {
6322      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
6323      "class"  : "@exclude",
6324      "opcode" : 5757,
6325      "operands" : [
6326        { "kind" : "IdResultType" },
6327        { "kind" : "IdResult" },
6328        { "kind" : "IdRef", "name" : "'Src Image'" },
6329        { "kind" : "IdRef", "name" : "'Ref Image'" },
6330        { "kind" : "IdRef", "name" : "'Payload'" }
6331      ],
6332      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6333      "version" : "None"
6334    },
6335    {
6336      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
6337      "class"  : "@exclude",
6338      "opcode" : 5758,
6339      "operands" : [
6340        { "kind" : "IdResultType" },
6341        { "kind" : "IdResult" },
6342        { "kind" : "IdRef", "name" : "'Src Image'" },
6343        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6344        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6345        { "kind" : "IdRef", "name" : "'Payload'" }
6346      ],
6347      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6348      "version" : "None"
6349    },
6350    {
6351      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
6352      "class"  : "@exclude",
6353      "opcode" : 5759,
6354      "operands" : [
6355        { "kind" : "IdResultType" },
6356        { "kind" : "IdResult" },
6357        { "kind" : "IdRef", "name" : "'Src Image'" },
6358        { "kind" : "IdRef", "name" : "'Ref Image'" },
6359        { "kind" : "IdRef", "name" : "'Payload'" },
6360        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6361      ],
6362      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6363      "version" : "None"
6364    },
6365    {
6366      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
6367      "class"  : "@exclude",
6368      "opcode" : 5760,
6369      "operands" : [
6370        { "kind" : "IdResultType" },
6371        { "kind" : "IdResult" },
6372        { "kind" : "IdRef", "name" : "'Src Image'" },
6373        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6374        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6375        { "kind" : "IdRef", "name" : "'Payload'" },
6376        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6377      ],
6378      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6379      "version" : "None"
6380    },
6381    {
6382      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
6383      "class"  : "@exclude",
6384      "opcode" : 5761,
6385      "operands" : [
6386        { "kind" : "IdResultType" },
6387        { "kind" : "IdResult" },
6388        { "kind" : "IdRef", "name" : "'Src Image'" },
6389        { "kind" : "IdRef", "name" : "'Ref Image'" },
6390        { "kind" : "IdRef", "name" : "'Payload'" }
6391      ],
6392      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6393      "version" : "None"
6394    },
6395    {
6396      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
6397      "class"  : "@exclude",
6398      "opcode" : 5762,
6399      "operands" : [
6400        { "kind" : "IdResultType" },
6401        { "kind" : "IdResult" },
6402        { "kind" : "IdRef", "name" : "'Src Image'" },
6403        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6404        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6405        { "kind" : "IdRef", "name" : "'Payload'" }
6406      ],
6407      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6408      "version" : "None"
6409    },
6410    {
6411      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
6412      "class"  : "@exclude",
6413      "opcode" : 5763,
6414      "operands" : [
6415        { "kind" : "IdResultType" },
6416        { "kind" : "IdResult" },
6417        { "kind" : "IdRef", "name" : "'Src Image'" },
6418        { "kind" : "IdRef", "name" : "'Ref Image'" },
6419        { "kind" : "IdRef", "name" : "'Payload'" },
6420        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6421      ],
6422      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6423      "version" : "None"
6424    },
6425    {
6426      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
6427      "class"  : "@exclude",
6428      "opcode" : 5764,
6429      "operands" : [
6430        { "kind" : "IdResultType" },
6431        { "kind" : "IdResult" },
6432        { "kind" : "IdRef", "name" : "'Src Image'" },
6433        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6434        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6435        { "kind" : "IdRef", "name" : "'Payload'" },
6436        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6437      ],
6438      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6439      "version" : "None"
6440    },
6441    {
6442      "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
6443      "class"  : "@exclude",
6444      "opcode" : 5765,
6445      "operands" : [
6446        { "kind" : "IdResultType" },
6447        { "kind" : "IdResult" },
6448        { "kind" : "IdRef", "name" : "'Payload'" }
6449      ],
6450      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6451      "version" : "None"
6452    },
6453    {
6454      "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
6455      "class"  : "@exclude",
6456      "opcode" : 5766,
6457      "operands" : [
6458        { "kind" : "IdResultType" },
6459        { "kind" : "IdResult" },
6460        { "kind" : "IdRef", "name" : "'Payload'" }
6461      ],
6462      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6463      "version" : "None"
6464    },
6465    {
6466      "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
6467      "class"  : "@exclude",
6468      "opcode" : 5767,
6469      "operands" : [
6470        { "kind" : "IdResultType" },
6471        { "kind" : "IdResult" },
6472        { "kind" : "IdRef", "name" : "'Payload'" }
6473      ],
6474      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6475      "version" : "None"
6476    },
6477    {
6478      "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
6479      "class"  : "@exclude",
6480      "opcode" : 5768,
6481      "operands" : [
6482        { "kind" : "IdResultType" },
6483        { "kind" : "IdResult" },
6484        { "kind" : "IdRef", "name" : "'Payload'" }
6485      ],
6486      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6487      "version" : "None"
6488    },
6489    {
6490      "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
6491      "class"  : "@exclude",
6492      "opcode" : 5769,
6493      "operands" : [
6494        { "kind" : "IdResultType" },
6495        { "kind" : "IdResult" },
6496        { "kind" : "IdRef", "name" : "'Payload'" }
6497      ],
6498      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6499      "version" : "None"
6500    },
6501    {
6502      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
6503      "class"  : "@exclude",
6504      "opcode" : 5770,
6505      "operands" : [
6506        { "kind" : "IdResultType" },
6507        { "kind" : "IdResult" },
6508        { "kind" : "IdRef", "name" : "'Payload'" },
6509        { "kind" : "IdRef", "name" : "'Major Shape'" }
6510      ],
6511      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6512      "version" : "None"
6513    },
6514    {
6515      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
6516      "class"  : "@exclude",
6517      "opcode" : 5771,
6518      "operands" : [
6519        { "kind" : "IdResultType" },
6520        { "kind" : "IdResult" },
6521        { "kind" : "IdRef", "name" : "'Payload'" },
6522        { "kind" : "IdRef", "name" : "'Major Shape'" }
6523      ],
6524      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6525      "version" : "None"
6526    },
6527    {
6528      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
6529      "class"  : "@exclude",
6530      "opcode" : 5772,
6531      "operands" : [
6532        { "kind" : "IdResultType" },
6533        { "kind" : "IdResult" },
6534        { "kind" : "IdRef", "name" : "'Payload'" },
6535        { "kind" : "IdRef", "name" : "'Major Shape'" }
6536      ],
6537      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6538      "version" : "None"
6539    },
6540    {
6541      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
6542      "class"  : "@exclude",
6543      "opcode" : 5773,
6544      "operands" : [
6545        { "kind" : "IdResultType" },
6546        { "kind" : "IdResult" },
6547        { "kind" : "IdRef", "name" : "'Payload'" },
6548        { "kind" : "IdRef", "name" : "'Major Shape'" },
6549        { "kind" : "IdRef", "name" : "'Direction'" }
6550      ],
6551      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6552      "version" : "None"
6553    },
6554    {
6555      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
6556      "class"  : "@exclude",
6557      "opcode" : 5774,
6558      "operands" : [
6559        { "kind" : "IdResultType" },
6560        { "kind" : "IdResult" },
6561        { "kind" : "IdRef", "name" : "'Payload'" },
6562        { "kind" : "IdRef", "name" : "'Major Shape'" },
6563        { "kind" : "IdRef", "name" : "'Direction'" }
6564      ],
6565      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6566      "version" : "None"
6567    },
6568    {
6569      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
6570      "class"  : "@exclude",
6571      "opcode" : 5775,
6572      "operands" : [
6573        { "kind" : "IdResultType" },
6574        { "kind" : "IdResult" },
6575        { "kind" : "IdRef", "name" : "'Payload'" },
6576        { "kind" : "IdRef", "name" : "'Major Shape'" },
6577        { "kind" : "IdRef", "name" : "'Direction'" }
6578      ],
6579      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6580      "version" : "None"
6581    },
6582    {
6583      "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
6584      "class"  : "@exclude",
6585      "opcode" : 5776,
6586      "operands" : [
6587        { "kind" : "IdResultType" },
6588        { "kind" : "IdResult" },
6589        { "kind" : "IdRef", "name" : "'Image Select'" },
6590        { "kind" : "IdRef", "name" : "'Payload'" }
6591      ],
6592      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6593      "version" : "None"
6594    },
6595    {
6596      "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
6597      "class"  : "@exclude",
6598      "opcode" : 5777,
6599      "operands" : [
6600        { "kind" : "IdResultType" },
6601        { "kind" : "IdResult" },
6602        { "kind" : "IdRef", "name" : "'Payload'" }
6603      ],
6604      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6605      "version" : "None"
6606    },
6607    {
6608      "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
6609      "class"  : "@exclude",
6610      "opcode" : 5778,
6611      "operands" : [
6612        { "kind" : "IdResultType" },
6613        { "kind" : "IdResult" },
6614        { "kind" : "IdRef", "name" : "'Payload'" }
6615      ],
6616      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6617      "version" : "None"
6618    },
6619    {
6620      "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
6621      "class"  : "@exclude",
6622      "opcode" : 5779,
6623      "operands" : [
6624        { "kind" : "IdResultType" },
6625        { "kind" : "IdResult" },
6626        { "kind" : "IdRef", "name" : "'Payload'" }
6627      ],
6628      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6629      "version" : "None"
6630    },
6631    {
6632      "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
6633      "class"  : "@exclude",
6634      "opcode" : 5780,
6635      "operands" : [
6636        { "kind" : "IdResultType" },
6637        { "kind" : "IdResult" },
6638        { "kind" : "IdRef", "name" : "'Payload'" }
6639      ],
6640      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6641      "version" : "None"
6642    },
6643    {
6644      "opname" : "OpSubgroupAvcFmeInitializeINTEL",
6645      "class"  : "@exclude",
6646      "opcode" : 5781,
6647      "operands" : [
6648        { "kind" : "IdResultType" },
6649        { "kind" : "IdResult" },
6650        { "kind" : "IdRef", "name" : "'Src Coord'" },
6651        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6652        { "kind" : "IdRef", "name" : "'Major Shapes'" },
6653        { "kind" : "IdRef", "name" : "'Minor Shapes'" },
6654        { "kind" : "IdRef", "name" : "'Direction'" },
6655        { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
6656        { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
6657      ],
6658      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6659      "version" : "None"
6660    },
6661    {
6662      "opname" : "OpSubgroupAvcBmeInitializeINTEL",
6663      "class"  : "@exclude",
6664      "opcode" : 5782,
6665      "operands" : [
6666        { "kind" : "IdResultType" },
6667        { "kind" : "IdResult" },
6668        { "kind" : "IdRef", "name" : "'Src Coord'" },
6669        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6670        { "kind" : "IdRef", "name" : "'Major Shapes'" },
6671        { "kind" : "IdRef", "name" : "'Minor Shapes'" },
6672        { "kind" : "IdRef", "name" : "'Direction'" },
6673        { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
6674        { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
6675        { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
6676      ],
6677      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6678      "version" : "None"
6679    },
6680    {
6681      "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
6682      "class"  : "@exclude",
6683      "opcode" : 5783,
6684      "operands" : [
6685        { "kind" : "IdResultType" },
6686        { "kind" : "IdResult" },
6687        { "kind" : "IdRef", "name" : "'Payload'" }
6688      ],
6689      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6690      "version" : "None"
6691    },
6692    {
6693      "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
6694      "class"  : "@exclude",
6695      "opcode" : 5784,
6696      "operands" : [
6697        { "kind" : "IdResultType" },
6698        { "kind" : "IdResult" },
6699        { "kind" : "IdRef", "name" : "'Payload'" }
6700      ],
6701      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6702      "version" : "None"
6703    },
6704    {
6705      "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
6706      "class"  : "@exclude",
6707      "opcode" : 5785,
6708      "operands" : [
6709        { "kind" : "IdResultType" },
6710        { "kind" : "IdResult" },
6711        { "kind" : "IdRef", "name" : "'Payload'" }
6712      ],
6713      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6714      "version" : "None"
6715    },
6716    {
6717      "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
6718      "class"  : "@exclude",
6719      "opcode" : 5786,
6720      "operands" : [
6721        { "kind" : "IdResultType" },
6722        { "kind" : "IdResult" },
6723        { "kind" : "IdRef", "name" : "'Src Image'" },
6724        { "kind" : "IdRef", "name" : "'Ref Image'" },
6725        { "kind" : "IdRef", "name" : "'Payload'" }
6726      ],
6727      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6728      "version" : "None"
6729    },
6730    {
6731      "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
6732      "class"  : "@exclude",
6733      "opcode" : 5787,
6734      "operands" : [
6735        { "kind" : "IdResultType" },
6736        { "kind" : "IdResult" },
6737        { "kind" : "IdRef", "name" : "'Src Image'" },
6738        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6739        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6740        { "kind" : "IdRef", "name" : "'Payload'" }
6741      ],
6742      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6743      "version" : "None"
6744    },
6745    {
6746      "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
6747      "class"  : "@exclude",
6748      "opcode" : 5788,
6749      "operands" : [
6750        { "kind" : "IdResultType" },
6751        { "kind" : "IdResult" },
6752        { "kind" : "IdRef", "name" : "'Src Image'" },
6753        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6754        { "kind" : "IdRef", "name" : "'Payload'" }
6755      ],
6756      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6757      "version" : "None"
6758    },
6759    {
6760      "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
6761      "class"  : "@exclude",
6762      "opcode" : 5789,
6763      "operands" : [
6764        { "kind" : "IdResultType" },
6765        { "kind" : "IdResult" },
6766        { "kind" : "IdRef", "name" : "'Src Image'" },
6767        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6768        { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
6769        { "kind" : "IdRef", "name" : "'Payload'" }
6770      ],
6771      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6772      "version" : "None"
6773    },
6774    {
6775      "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
6776      "class"  : "@exclude",
6777      "opcode" : 5790,
6778      "operands" : [
6779        { "kind" : "IdResultType" },
6780        { "kind" : "IdResult" },
6781        { "kind" : "IdRef", "name" : "'Payload'" }
6782      ],
6783      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6784      "version" : "None"
6785    },
6786    {
6787      "opname" : "OpSubgroupAvcSicInitializeINTEL",
6788      "class"  : "@exclude",
6789      "opcode" : 5791,
6790      "operands" : [
6791        { "kind" : "IdResultType" },
6792        { "kind" : "IdResult" },
6793        { "kind" : "IdRef", "name" : "'Src Coord'" }
6794      ],
6795      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6796      "version" : "None"
6797    },
6798    {
6799      "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
6800      "class"  : "@exclude",
6801      "opcode" : 5792,
6802      "operands" : [
6803        { "kind" : "IdResultType" },
6804        { "kind" : "IdResult" },
6805        { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
6806        { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" },
6807        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6808        { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
6809        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6810        { "kind" : "IdRef", "name" : "'Payload'" }
6811      ],
6812      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6813      "version" : "None"
6814    },
6815    {
6816      "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
6817      "class"  : "@exclude",
6818      "opcode" : 5793,
6819      "operands" : [
6820        { "kind" : "IdResultType" },
6821        { "kind" : "IdResult" },
6822        { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
6823        { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
6824        { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
6825        { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
6826        { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
6827        { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
6828        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6829        { "kind" : "IdRef", "name" : "'Payload'" }
6830      ],
6831      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6832      "version" : "None"
6833    },
6834    {
6835      "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
6836      "class"  : "@exclude",
6837      "opcode" : 5794,
6838      "operands" : [
6839        { "kind" : "IdResultType" },
6840        { "kind" : "IdResult" },
6841        { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
6842        { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
6843        { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
6844        { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
6845        { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
6846        { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
6847        { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" },
6848        { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" },
6849        { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" },
6850        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6851        { "kind" : "IdRef", "name" : "'Payload'" }
6852      ],
6853      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6854      "version" : "None"
6855    },
6856    {
6857      "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
6858      "class"  : "@exclude",
6859      "opcode" : 5795,
6860      "operands" : [
6861        { "kind" : "IdResultType" },
6862        { "kind" : "IdResult" },
6863        { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
6864        { "kind" : "IdRef", "name" : "'Direction'" }
6865      ],
6866      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6867      "version" : "None"
6868    },
6869    {
6870      "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
6871      "class"  : "@exclude",
6872      "opcode" : 5796,
6873      "operands" : [
6874        { "kind" : "IdResultType" },
6875        { "kind" : "IdResult" },
6876        { "kind" : "IdRef", "name" : "'Payload'" }
6877      ],
6878      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6879      "version" : "None"
6880    },
6881    {
6882      "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
6883      "class"  : "@exclude",
6884      "opcode" : 5797,
6885      "operands" : [
6886        { "kind" : "IdResultType" },
6887        { "kind" : "IdResult" },
6888        { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
6889        { "kind" : "IdRef", "name" : "'Payload'" }
6890      ],
6891      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6892      "version" : "None"
6893    },
6894    {
6895      "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
6896      "class"  : "@exclude",
6897      "opcode" : 5798,
6898      "operands" : [
6899        { "kind" : "IdResultType" },
6900        { "kind" : "IdResult" },
6901        { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" },
6902        { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" },
6903        { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" },
6904        { "kind" : "IdRef", "name" : "'Payload'" }
6905      ],
6906      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6907      "version" : "None"
6908    },
6909    {
6910      "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
6911      "class"  : "@exclude",
6912      "opcode" : 5799,
6913      "operands" : [
6914        { "kind" : "IdResultType" },
6915        { "kind" : "IdResult" },
6916        { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" },
6917        { "kind" : "IdRef", "name" : "'Payload'" }
6918      ],
6919      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6920      "version" : "None"
6921    },
6922    {
6923      "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
6924      "class"  : "@exclude",
6925      "opcode" : 5800,
6926      "operands" : [
6927        { "kind" : "IdResultType" },
6928        { "kind" : "IdResult" },
6929        { "kind" : "IdRef", "name" : "'Payload'" }
6930      ],
6931      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6932      "version" : "None"
6933    },
6934    {
6935      "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
6936      "class"  : "@exclude",
6937      "opcode" : 5801,
6938      "operands" : [
6939        { "kind" : "IdResultType" },
6940        { "kind" : "IdResult" },
6941        { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" },
6942        { "kind" : "IdRef", "name" : "'Payload'" }
6943      ],
6944      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6945      "version" : "None"
6946    },
6947    {
6948      "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
6949      "class"  : "@exclude",
6950      "opcode" : 5802,
6951      "operands" : [
6952        { "kind" : "IdResultType" },
6953        { "kind" : "IdResult" },
6954        { "kind" : "IdRef", "name" : "'Block Based Skip Type'" },
6955        { "kind" : "IdRef", "name" : "'Payload'" }
6956      ],
6957      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6958      "version" : "None"
6959    },
6960    {
6961      "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
6962      "class"  : "@exclude",
6963      "opcode" : 5803,
6964      "operands" : [
6965        { "kind" : "IdResultType" },
6966        { "kind" : "IdResult" },
6967        { "kind" : "IdRef", "name" : "'Src Image'" },
6968        { "kind" : "IdRef", "name" : "'Payload'" }
6969      ],
6970      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6971      "version" : "None"
6972    },
6973    {
6974      "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
6975      "class"  : "@exclude",
6976      "opcode" : 5804,
6977      "operands" : [
6978        { "kind" : "IdResultType" },
6979        { "kind" : "IdResult" },
6980        { "kind" : "IdRef", "name" : "'Src Image'" },
6981        { "kind" : "IdRef", "name" : "'Ref Image'" },
6982        { "kind" : "IdRef", "name" : "'Payload'" }
6983      ],
6984      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6985      "version" : "None"
6986    },
6987    {
6988      "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
6989      "class"  : "@exclude",
6990      "opcode" : 5805,
6991      "operands" : [
6992        { "kind" : "IdResultType" },
6993        { "kind" : "IdResult" },
6994        { "kind" : "IdRef", "name" : "'Src Image'" },
6995        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6996        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6997        { "kind" : "IdRef", "name" : "'Payload'" }
6998      ],
6999      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7000      "version" : "None"
7001    },
7002    {
7003      "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
7004      "class"  : "@exclude",
7005      "opcode" : 5806,
7006      "operands" : [
7007        { "kind" : "IdResultType" },
7008        { "kind" : "IdResult" },
7009        { "kind" : "IdRef", "name" : "'Src Image'" },
7010        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
7011        { "kind" : "IdRef", "name" : "'Payload'" }
7012      ],
7013      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7014      "version" : "None"
7015    },
7016    {
7017      "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
7018      "class"  : "@exclude",
7019      "opcode" : 5807,
7020      "operands" : [
7021        { "kind" : "IdResultType" },
7022        { "kind" : "IdResult" },
7023        { "kind" : "IdRef", "name" : "'Src Image'" },
7024        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
7025        { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
7026        { "kind" : "IdRef", "name" : "'Payload'" }
7027      ],
7028      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7029      "version" : "None"
7030    },
7031    {
7032      "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
7033      "class"  : "@exclude",
7034      "opcode" : 5808,
7035      "operands" : [
7036        { "kind" : "IdResultType" },
7037        { "kind" : "IdResult" },
7038        { "kind" : "IdRef", "name" : "'Payload'" }
7039      ],
7040      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7041      "version" : "None"
7042    },
7043    {
7044      "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
7045      "class"  : "@exclude",
7046      "opcode" : 5809,
7047      "operands" : [
7048        { "kind" : "IdResultType" },
7049        { "kind" : "IdResult" },
7050        { "kind" : "IdRef", "name" : "'Payload'" }
7051      ],
7052      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7053      "version" : "None"
7054    },
7055    {
7056      "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
7057      "class"  : "@exclude",
7058      "opcode" : 5810,
7059      "operands" : [
7060        { "kind" : "IdResultType" },
7061        { "kind" : "IdResult" },
7062        { "kind" : "IdRef", "name" : "'Payload'" }
7063      ],
7064      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7065      "version" : "None"
7066    },
7067    {
7068      "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
7069      "class"  : "@exclude",
7070      "opcode" : 5811,
7071      "operands" : [
7072        { "kind" : "IdResultType" },
7073        { "kind" : "IdResult" },
7074        { "kind" : "IdRef", "name" : "'Payload'" }
7075      ],
7076      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7077      "version" : "None"
7078    },
7079    {
7080      "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
7081      "class"  : "@exclude",
7082      "opcode" : 5812,
7083      "operands" : [
7084        { "kind" : "IdResultType" },
7085        { "kind" : "IdResult" },
7086        { "kind" : "IdRef", "name" : "'Payload'" }
7087      ],
7088      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7089      "version" : "None"
7090    },
7091    {
7092      "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
7093      "class"  : "@exclude",
7094      "opcode" : 5813,
7095      "operands" : [
7096        { "kind" : "IdResultType" },
7097        { "kind" : "IdResult" },
7098        { "kind" : "IdRef", "name" : "'Payload'" }
7099      ],
7100      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
7101      "version" : "None"
7102    },
7103    {
7104      "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
7105      "class"  : "@exclude",
7106      "opcode" : 5814,
7107      "operands" : [
7108        { "kind" : "IdResultType" },
7109        { "kind" : "IdResult" },
7110        { "kind" : "IdRef", "name" : "'Payload'" }
7111      ],
7112      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7113      "version" : "None"
7114    },
7115    {
7116      "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
7117      "class"  : "@exclude",
7118      "opcode" : 5815,
7119      "operands" : [
7120        { "kind" : "IdResultType" },
7121        { "kind" : "IdResult" },
7122        { "kind" : "IdRef", "name" : "'Payload'" }
7123      ],
7124      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
7125      "version" : "None"
7126    },
7127    {
7128      "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
7129      "class"  : "@exclude",
7130      "opcode" : 5816,
7131      "operands" : [
7132        { "kind" : "IdResultType" },
7133        { "kind" : "IdResult" },
7134        { "kind" : "IdRef", "name" : "'Payload'" }
7135      ],
7136      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
7137      "version" : "None"
7138    },
7139    {
7140      "opname" : "OpVariableLengthArrayINTEL",
7141      "class"  : "@exclude",
7142      "opcode" : 5818,
7143      "operands" : [
7144        { "kind" : "IdResultType" },
7145        { "kind" : "IdResult" },
7146        { "kind" : "IdRef", "name" : "'Lenght'" }
7147      ],
7148      "capabilities" : [ "VariableLengthArrayINTEL" ],
7149      "version" : "None"
7150    },
7151    {
7152      "opname" : "OpSaveMemoryINTEL",
7153      "class"  : "@exclude",
7154      "opcode" : 5819,
7155      "operands" : [
7156        { "kind" : "IdResultType" },
7157        { "kind" : "IdResult" }
7158      ],
7159      "capabilities" : [ "VariableLengthArrayINTEL" ],
7160      "version" : "None"
7161    },
7162    {
7163      "opname" : "OpRestoreMemoryINTEL",
7164      "class"  : "@exclude",
7165      "opcode" : 5820,
7166      "operands" : [
7167        { "kind" : "IdRef", "name" : "'Ptr'" }
7168      ],
7169      "capabilities" : [ "VariableLengthArrayINTEL" ],
7170      "version" : "None"
7171    },
7172    {
7173      "opname" : "OpArbitraryFloatSinCosPiINTEL",
7174      "class"  : "@exclude",
7175      "opcode" : 5840,
7176      "operands" : [
7177        { "kind" : "IdResultType" },
7178        { "kind" : "IdResult" },
7179        { "kind" : "IdRef", "name" : "'A'" },
7180        { "kind" : "LiteralInteger", "name" : "'M1'" },
7181        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7182        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
7183        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7184        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7185        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7186      ],
7187      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7188      "version" : "None"
7189    },
7190    {
7191      "opname" : "OpArbitraryFloatCastINTEL",
7192      "class"  : "@exclude",
7193      "opcode" : 5841,
7194      "operands" : [
7195        { "kind" : "IdResultType" },
7196        { "kind" : "IdResult" },
7197        { "kind" : "IdRef", "name" : "'A'" },
7198        { "kind" : "LiteralInteger", "name" : "'M1'" },
7199        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7200        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7201        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7202        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7203      ],
7204      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7205      "version" : "None"
7206    },
7207    {
7208      "opname" : "OpArbitraryFloatCastFromIntINTEL",
7209      "class"  : "@exclude",
7210      "opcode" : 5842,
7211      "operands" : [
7212        { "kind" : "IdResultType" },
7213        { "kind" : "IdResult" },
7214        { "kind" : "IdRef", "name" : "'A'" },
7215        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7216        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
7217        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7218        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7219        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7220      ],
7221      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7222      "version" : "None"
7223    },
7224    {
7225      "opname" : "OpArbitraryFloatCastToIntINTEL",
7226      "class"  : "@exclude",
7227      "opcode" : 5843,
7228      "operands" : [
7229        { "kind" : "IdResultType" },
7230        { "kind" : "IdResult" },
7231        { "kind" : "IdRef", "name" : "'A'" },
7232        { "kind" : "LiteralInteger", "name" : "'M1'" },
7233        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7234        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7235        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7236      ],
7237      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7238      "version" : "None"
7239    },
7240    {
7241      "opname" : "OpArbitraryFloatAddINTEL",
7242      "class"  : "@exclude",
7243      "opcode" : 5846,
7244      "operands" : [
7245        { "kind" : "IdResultType" },
7246        { "kind" : "IdResult" },
7247        { "kind" : "IdRef", "name" : "'A'" },
7248        { "kind" : "LiteralInteger", "name" : "'M1'" },
7249        { "kind" : "IdRef", "name" : "'B'" },
7250        { "kind" : "LiteralInteger", "name" : "'M2'" },
7251        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7252        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7253        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7254        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7255      ],
7256      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7257      "version" : "None"
7258    },
7259    {
7260      "opname" : "OpArbitraryFloatSubINTEL",
7261      "class"  : "@exclude",
7262      "opcode" : 5847,
7263      "operands" : [
7264        { "kind" : "IdResultType" },
7265        { "kind" : "IdResult" },
7266        { "kind" : "IdRef", "name" : "'A'" },
7267        { "kind" : "LiteralInteger", "name" : "'M1'" },
7268        { "kind" : "IdRef", "name" : "'B'" },
7269        { "kind" : "LiteralInteger", "name" : "'M2'" },
7270        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7271        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7272        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7273        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7274      ],
7275      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7276      "version" : "None"
7277    },
7278    {
7279      "opname" : "OpArbitraryFloatMulINTEL",
7280      "class"  : "@exclude",
7281      "opcode" : 5848,
7282      "operands" : [
7283        { "kind" : "IdResultType" },
7284        { "kind" : "IdResult" },
7285        { "kind" : "IdRef", "name" : "'A'" },
7286        { "kind" : "LiteralInteger", "name" : "'M1'" },
7287        { "kind" : "IdRef", "name" : "'B'" },
7288        { "kind" : "LiteralInteger", "name" : "'M2'" },
7289        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7290        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7291        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7292        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7293      ],
7294      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7295      "version" : "None"
7296    },
7297    {
7298      "opname" : "OpArbitraryFloatDivINTEL",
7299      "class"  : "@exclude",
7300      "opcode" : 5849,
7301      "operands" : [
7302        { "kind" : "IdResultType" },
7303        { "kind" : "IdResult" },
7304        { "kind" : "IdRef", "name" : "'A'" },
7305        { "kind" : "LiteralInteger", "name" : "'M1'" },
7306        { "kind" : "IdRef", "name" : "'B'" },
7307        { "kind" : "LiteralInteger", "name" : "'M2'" },
7308        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7309        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7310        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7311        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7312      ],
7313      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7314      "version" : "None"
7315    },
7316    {
7317      "opname" : "OpArbitraryFloatGTINTEL",
7318      "class"  : "@exclude",
7319      "opcode" : 5850,
7320      "operands" : [
7321        { "kind" : "IdResultType" },
7322        { "kind" : "IdResult" },
7323        { "kind" : "IdRef", "name" : "'A'" },
7324        { "kind" : "LiteralInteger", "name" : "'M1'" },
7325        { "kind" : "IdRef", "name" : "'B'" },
7326        { "kind" : "LiteralInteger", "name" : "'M2'" }
7327      ],
7328      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7329      "version" : "None"
7330    },
7331    {
7332      "opname" : "OpArbitraryFloatGEINTEL",
7333      "class"  : "@exclude",
7334      "opcode" : 5851,
7335      "operands" : [
7336        { "kind" : "IdResultType" },
7337        { "kind" : "IdResult" },
7338        { "kind" : "IdRef", "name" : "'A'" },
7339        { "kind" : "LiteralInteger", "name" : "'M1'" },
7340        { "kind" : "IdRef", "name" : "'B'" },
7341        { "kind" : "LiteralInteger", "name" : "'M2'" }
7342      ],
7343      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7344      "version" : "None"
7345    },
7346    {
7347      "opname" : "OpArbitraryFloatLTINTEL",
7348      "class"  : "@exclude",
7349      "opcode" : 5852,
7350      "operands" : [
7351        { "kind" : "IdResultType" },
7352        { "kind" : "IdResult" },
7353        { "kind" : "IdRef", "name" : "'A'" },
7354        { "kind" : "LiteralInteger", "name" : "'M1'" },
7355        { "kind" : "IdRef", "name" : "'B'" },
7356        { "kind" : "LiteralInteger", "name" : "'M2'" }
7357      ],
7358      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7359      "version" : "None"
7360    },
7361    {
7362      "opname" : "OpArbitraryFloatLEINTEL",
7363      "class"  : "@exclude",
7364      "opcode" : 5853,
7365      "operands" : [
7366        { "kind" : "IdResultType" },
7367        { "kind" : "IdResult" },
7368        { "kind" : "IdRef", "name" : "'A'" },
7369        { "kind" : "LiteralInteger", "name" : "'M1'" },
7370        { "kind" : "IdRef", "name" : "'B'" },
7371        { "kind" : "LiteralInteger", "name" : "'M2'" }
7372      ],
7373      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7374      "version" : "None"
7375    },
7376    {
7377      "opname" : "OpArbitraryFloatEQINTEL",
7378      "class"  : "@exclude",
7379      "opcode" : 5854,
7380      "operands" : [
7381        { "kind" : "IdResultType" },
7382        { "kind" : "IdResult" },
7383        { "kind" : "IdRef", "name" : "'A'" },
7384        { "kind" : "LiteralInteger", "name" : "'M1'" },
7385        { "kind" : "IdRef", "name" : "'B'" },
7386        { "kind" : "LiteralInteger", "name" : "'M2'" }
7387      ],
7388      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7389      "version" : "None"
7390    },
7391    {
7392      "opname" : "OpArbitraryFloatRecipINTEL",
7393      "class"  : "@exclude",
7394      "opcode" : 5855,
7395      "operands" : [
7396        { "kind" : "IdResultType" },
7397        { "kind" : "IdResult" },
7398        { "kind" : "IdRef", "name" : "'A'" },
7399        { "kind" : "LiteralInteger", "name" : "'M1'" },
7400        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7401        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7402        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7403        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7404      ],
7405      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7406      "version" : "None"
7407    },
7408    {
7409      "opname" : "OpArbitraryFloatRSqrtINTEL",
7410      "class"  : "@exclude",
7411      "opcode" : 5856,
7412      "operands" : [
7413        { "kind" : "IdResultType" },
7414        { "kind" : "IdResult" },
7415        { "kind" : "IdRef", "name" : "'A'" },
7416        { "kind" : "LiteralInteger", "name" : "'M1'" },
7417        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7418        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7419        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7420        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7421      ],
7422      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7423      "version" : "None"
7424    },
7425    {
7426      "opname" : "OpArbitraryFloatCbrtINTEL",
7427      "class"  : "@exclude",
7428      "opcode" : 5857,
7429      "operands" : [
7430        { "kind" : "IdResultType" },
7431        { "kind" : "IdResult" },
7432        { "kind" : "IdRef", "name" : "'A'" },
7433        { "kind" : "LiteralInteger", "name" : "'M1'" },
7434        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7435        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7436        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7437        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7438      ],
7439      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7440      "version" : "None"
7441    },
7442    {
7443      "opname" : "OpArbitraryFloatHypotINTEL",
7444      "class"  : "@exclude",
7445      "opcode" : 5858,
7446      "operands" : [
7447        { "kind" : "IdResultType" },
7448        { "kind" : "IdResult" },
7449        { "kind" : "IdRef", "name" : "'A'" },
7450        { "kind" : "LiteralInteger", "name" : "'M1'" },
7451        { "kind" : "IdRef", "name" : "'B'" },
7452        { "kind" : "LiteralInteger", "name" : "'M2'" },
7453        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7454        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7455        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7456        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7457      ],
7458      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7459      "version" : "None"
7460    },
7461    {
7462      "opname" : "OpArbitraryFloatSqrtINTEL",
7463      "class"  : "@exclude",
7464      "opcode" : 5859,
7465      "operands" : [
7466        { "kind" : "IdResultType" },
7467        { "kind" : "IdResult" },
7468        { "kind" : "IdRef", "name" : "'A'" },
7469        { "kind" : "LiteralInteger", "name" : "'M1'" },
7470        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7471        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7472        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7473        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7474      ],
7475      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7476      "version" : "None"
7477    },
7478    {
7479      "opname" : "OpArbitraryFloatLogINTEL",
7480      "class"  : "@exclude",
7481      "opcode" : 5860,
7482      "operands" : [
7483        { "kind" : "IdResultType" },
7484        { "kind" : "IdResult" },
7485        { "kind" : "IdRef", "name" : "'A'" },
7486        { "kind" : "LiteralInteger", "name" : "'M1'" },
7487        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7488        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7489        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7490        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7491      ],
7492      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7493      "version" : "None"
7494    },
7495    {
7496      "opname" : "OpArbitraryFloatLog2INTEL",
7497      "class"  : "@exclude",
7498      "opcode" : 5861,
7499      "operands" : [
7500        { "kind" : "IdResultType" },
7501        { "kind" : "IdResult" },
7502        { "kind" : "IdRef", "name" : "'A'" },
7503        { "kind" : "LiteralInteger", "name" : "'M1'" },
7504        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7505        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7506        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7507        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7508      ],
7509      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7510      "version" : "None"
7511    },
7512    {
7513      "opname" : "OpArbitraryFloatLog10INTEL",
7514      "class"  : "@exclude",
7515      "opcode" : 5862,
7516      "operands" : [
7517        { "kind" : "IdResultType" },
7518        { "kind" : "IdResult" },
7519        { "kind" : "IdRef", "name" : "'A'" },
7520        { "kind" : "LiteralInteger", "name" : "'M1'" },
7521        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7522        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7523        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7524        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7525      ],
7526      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7527      "version" : "None"
7528    },
7529    {
7530      "opname" : "OpArbitraryFloatLog1pINTEL",
7531      "class"  : "@exclude",
7532      "opcode" : 5863,
7533      "operands" : [
7534        { "kind" : "IdResultType" },
7535        { "kind" : "IdResult" },
7536        { "kind" : "IdRef", "name" : "'A'" },
7537        { "kind" : "LiteralInteger", "name" : "'M1'" },
7538        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7539        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7540        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7541        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7542      ],
7543      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7544      "version" : "None"
7545    },
7546    {
7547      "opname" : "OpArbitraryFloatExpINTEL",
7548      "class"  : "@exclude",
7549      "opcode" : 5864,
7550      "operands" : [
7551        { "kind" : "IdResultType" },
7552        { "kind" : "IdResult" },
7553        { "kind" : "IdRef", "name" : "'A'" },
7554        { "kind" : "LiteralInteger", "name" : "'M1'" },
7555        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7556        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7557        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7558        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7559      ],
7560      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7561      "version" : "None"
7562    },
7563    {
7564      "opname" : "OpArbitraryFloatExp2INTEL",
7565      "class"  : "@exclude",
7566      "opcode" : 5865,
7567      "operands" : [
7568        { "kind" : "IdResultType" },
7569        { "kind" : "IdResult" },
7570        { "kind" : "IdRef", "name" : "'A'" },
7571        { "kind" : "LiteralInteger", "name" : "'M1'" },
7572        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7573        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7574        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7575        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7576      ],
7577      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7578      "version" : "None"
7579    },
7580    {
7581      "opname" : "OpArbitraryFloatExp10INTEL",
7582      "class"  : "@exclude",
7583      "opcode" : 5866,
7584      "operands" : [
7585        { "kind" : "IdResultType" },
7586        { "kind" : "IdResult" },
7587        { "kind" : "IdRef", "name" : "'A'" },
7588        { "kind" : "LiteralInteger", "name" : "'M1'" },
7589        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7590        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7591        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7592        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7593      ],
7594      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7595      "version" : "None"
7596    },
7597    {
7598      "opname" : "OpArbitraryFloatExpm1INTEL",
7599      "class"  : "@exclude",
7600      "opcode" : 5867,
7601      "operands" : [
7602        { "kind" : "IdResultType" },
7603        { "kind" : "IdResult" },
7604        { "kind" : "IdRef", "name" : "'A'" },
7605        { "kind" : "LiteralInteger", "name" : "'M1'" },
7606        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7607        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7608        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7609        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7610      ],
7611      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7612      "version" : "None"
7613    },
7614    {
7615      "opname" : "OpArbitraryFloatSinINTEL",
7616      "class"  : "@exclude",
7617      "opcode" : 5868,
7618      "operands" : [
7619        { "kind" : "IdResultType" },
7620        { "kind" : "IdResult" },
7621        { "kind" : "IdRef", "name" : "'A'" },
7622        { "kind" : "LiteralInteger", "name" : "'M1'" },
7623        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7624        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7625        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7626        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7627      ],
7628      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7629      "version" : "None"
7630    },
7631    {
7632      "opname" : "OpArbitraryFloatCosINTEL",
7633      "class"  : "@exclude",
7634      "opcode" : 5869,
7635      "operands" : [
7636        { "kind" : "IdResultType" },
7637        { "kind" : "IdResult" },
7638        { "kind" : "IdRef", "name" : "'A'" },
7639        { "kind" : "LiteralInteger", "name" : "'M1'" },
7640        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7641        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7642        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7643        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7644      ],
7645      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7646      "version" : "None"
7647    },
7648    {
7649      "opname" : "OpArbitraryFloatSinCosINTEL",
7650      "class"  : "@exclude",
7651      "opcode" : 5870,
7652      "operands" : [
7653        { "kind" : "IdResultType" },
7654        { "kind" : "IdResult" },
7655        { "kind" : "IdRef", "name" : "'A'" },
7656        { "kind" : "LiteralInteger", "name" : "'M1'" },
7657        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7658        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7659        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7660        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7661      ],
7662      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7663      "version" : "None"
7664    },
7665    {
7666      "opname" : "OpArbitraryFloatSinPiINTEL",
7667      "class"  : "@exclude",
7668      "opcode" : 5871,
7669      "operands" : [
7670        { "kind" : "IdResultType" },
7671        { "kind" : "IdResult" },
7672        { "kind" : "IdRef", "name" : "'A'" },
7673        { "kind" : "LiteralInteger", "name" : "'M1'" },
7674        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7675        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7676        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7677        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7678      ],
7679      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7680      "version" : "None"
7681    },
7682    {
7683      "opname" : "OpArbitraryFloatCosPiINTEL",
7684      "class"  : "@exclude",
7685      "opcode" : 5872,
7686      "operands" : [
7687        { "kind" : "IdResultType" },
7688        { "kind" : "IdResult" },
7689        { "kind" : "IdRef", "name" : "'A'" },
7690        { "kind" : "LiteralInteger", "name" : "'M1'" },
7691        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7692        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7693        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7694        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7695      ],
7696      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7697      "version" : "None"
7698    },
7699    {
7700      "opname" : "OpArbitraryFloatASinINTEL",
7701      "class"  : "@exclude",
7702      "opcode" : 5873,
7703      "operands" : [
7704        { "kind" : "IdResultType" },
7705        { "kind" : "IdResult" },
7706        { "kind" : "IdRef", "name" : "'A'" },
7707        { "kind" : "LiteralInteger", "name" : "'M1'" },
7708        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7709        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7710        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7711        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7712      ],
7713      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7714      "version" : "None"
7715    },
7716    {
7717      "opname" : "OpArbitraryFloatASinPiINTEL",
7718      "class"  : "@exclude",
7719      "opcode" : 5874,
7720      "operands" : [
7721        { "kind" : "IdResultType" },
7722        { "kind" : "IdResult" },
7723        { "kind" : "IdRef", "name" : "'A'" },
7724        { "kind" : "LiteralInteger", "name" : "'M1'" },
7725        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7726        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7727        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7728        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7729      ],
7730      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7731      "version" : "None"
7732    },
7733    {
7734      "opname" : "OpArbitraryFloatACosINTEL",
7735      "class"  : "@exclude",
7736      "opcode" : 5875,
7737      "operands" : [
7738        { "kind" : "IdResultType" },
7739        { "kind" : "IdResult" },
7740        { "kind" : "IdRef", "name" : "'A'" },
7741        { "kind" : "LiteralInteger", "name" : "'M1'" },
7742        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7743        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7744        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7745        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7746      ],
7747      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7748      "version" : "None"
7749    },
7750    {
7751      "opname" : "OpArbitraryFloatACosPiINTEL",
7752      "class"  : "@exclude",
7753      "opcode" : 5876,
7754      "operands" : [
7755        { "kind" : "IdResultType" },
7756        { "kind" : "IdResult" },
7757        { "kind" : "IdRef", "name" : "'A'" },
7758        { "kind" : "LiteralInteger", "name" : "'M1'" },
7759        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7760        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7761        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7762        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7763      ],
7764      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7765      "version" : "None"
7766    },
7767    {
7768      "opname" : "OpArbitraryFloatATanINTEL",
7769      "class"  : "@exclude",
7770      "opcode" : 5877,
7771      "operands" : [
7772        { "kind" : "IdResultType" },
7773        { "kind" : "IdResult" },
7774        { "kind" : "IdRef", "name" : "'A'" },
7775        { "kind" : "LiteralInteger", "name" : "'M1'" },
7776        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7777        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7778        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7779        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7780      ],
7781      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7782      "version" : "None"
7783    },
7784    {
7785      "opname" : "OpArbitraryFloatATanPiINTEL",
7786      "class"  : "@exclude",
7787      "opcode" : 5878,
7788      "operands" : [
7789        { "kind" : "IdResultType" },
7790        { "kind" : "IdResult" },
7791        { "kind" : "IdRef", "name" : "'A'" },
7792        { "kind" : "LiteralInteger", "name" : "'M1'" },
7793        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7794        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7795        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7796        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7797      ],
7798      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7799      "version" : "None"
7800    },
7801    {
7802      "opname" : "OpArbitraryFloatATan2INTEL",
7803      "class"  : "@exclude",
7804      "opcode" : 5879,
7805      "operands" : [
7806        { "kind" : "IdResultType" },
7807        { "kind" : "IdResult" },
7808        { "kind" : "IdRef", "name" : "'A'" },
7809        { "kind" : "LiteralInteger", "name" : "'M1'" },
7810        { "kind" : "IdRef", "name" : "'B'" },
7811        { "kind" : "LiteralInteger", "name" : "'M2'" },
7812        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7813        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7814        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7815        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7816      ],
7817      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7818      "version" : "None"
7819    },
7820    {
7821      "opname" : "OpArbitraryFloatPowINTEL",
7822      "class"  : "@exclude",
7823      "opcode" : 5880,
7824      "operands" : [
7825        { "kind" : "IdResultType" },
7826        { "kind" : "IdResult" },
7827        { "kind" : "IdRef", "name" : "'A'" },
7828        { "kind" : "LiteralInteger", "name" : "'M1'" },
7829        { "kind" : "IdRef", "name" : "'B'" },
7830        { "kind" : "LiteralInteger", "name" : "'M2'" },
7831        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7832        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7833        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7834        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7835      ],
7836      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7837      "version" : "None"
7838    },
7839    {
7840      "opname" : "OpArbitraryFloatPowRINTEL",
7841      "class"  : "@exclude",
7842      "opcode" : 5881,
7843      "operands" : [
7844        { "kind" : "IdResultType" },
7845        { "kind" : "IdResult" },
7846        { "kind" : "IdRef", "name" : "'A'" },
7847        { "kind" : "LiteralInteger", "name" : "'M1'" },
7848        { "kind" : "IdRef", "name" : "'B'" },
7849        { "kind" : "LiteralInteger", "name" : "'M2'" },
7850        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7851        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7852        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7853        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7854      ],
7855      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7856      "version" : "None"
7857    },
7858    {
7859      "opname" : "OpArbitraryFloatPowNINTEL",
7860      "class"  : "@exclude",
7861      "opcode" : 5882,
7862      "operands" : [
7863        { "kind" : "IdResultType" },
7864        { "kind" : "IdResult" },
7865        { "kind" : "IdRef", "name" : "'A'" },
7866        { "kind" : "LiteralInteger", "name" : "'M1'" },
7867        { "kind" : "IdRef", "name" : "'B'" },
7868        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7869        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7870        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7871        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7872      ],
7873      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7874      "version" : "None"
7875    },
7876    {
7877      "opname" : "OpLoopControlINTEL",
7878      "class"  : "Reserved",
7879      "opcode" : 5887,
7880      "operands" : [
7881        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Loop Control Parameters'" }
7882      ],
7883      "capabilities" : [ "UnstructuredLoopControlsINTEL" ],
7884      "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
7885      "version" : "None"
7886    },
7887    {
7888      "opname" : "OpAliasDomainDeclINTEL",
7889      "class"  : "@exclude",
7890      "opcode" : 5911,
7891      "operands" : [
7892        { "kind" : "IdResult"},
7893        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" }
7894      ],
7895      "capabilities" : [ "MemoryAccessAliasingINTEL" ],
7896      "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
7897      "version" : "None"
7898    },
7899    {
7900      "opname" : "OpAliasScopeDeclINTEL",
7901      "class"  : "@exclude",
7902      "opcode" : 5912,
7903      "operands" : [
7904        { "kind" : "IdResult"},
7905        { "kind" : "IdRef", "name" : "'Alias Domain'"},
7906        { "kind" : "IdRef", "quantifier" : "?", "name" : "'Name'" }
7907      ],
7908      "capabilities" : [ "MemoryAccessAliasingINTEL" ],
7909      "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
7910      "version" : "None"
7911    },
7912    {
7913      "opname" : "OpAliasScopeListDeclINTEL",
7914      "class"  : "@exclude",
7915      "opcode" : 5913,
7916      "operands" : [
7917        { "kind" : "IdResult"},
7918        { "kind" : "IdRef", "quantifier" : "*", "name" : "'AliasScope1, AliasScope2, ...'" }
7919      ],
7920      "capabilities" : [ "MemoryAccessAliasingINTEL" ],
7921      "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
7922      "version" : "None"
7923    },
7924    {
7925      "opname" : "OpFixedSqrtINTEL",
7926      "class"  : "@exclude",
7927      "opcode" : 5923,
7928      "operands" : [
7929        { "kind" : "IdResultType" },
7930        { "kind" : "IdResult" },
7931        { "kind" : "IdRef", "name" : "'Input Type'" },
7932        { "kind" : "IdRef", "name" : "'Input'" },
7933        { "kind" : "LiteralInteger", "name" : "'S'" },
7934        { "kind" : "LiteralInteger", "name" : "'I'" },
7935        { "kind" : "LiteralInteger", "name" : "'rI'" },
7936        { "kind" : "LiteralInteger", "name" : "'Q'" },
7937        { "kind" : "LiteralInteger", "name" : "'O'" }
7938      ],
7939      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7940      "version" : "None"
7941    },
7942    {
7943      "opname" : "OpFixedRecipINTEL",
7944      "class"  : "@exclude",
7945      "opcode" : 5924,
7946      "operands" : [
7947        { "kind" : "IdResultType" },
7948        { "kind" : "IdResult" },
7949        { "kind" : "IdRef", "name" : "'Input Type'" },
7950        { "kind" : "IdRef", "name" : "'Input'" },
7951        { "kind" : "LiteralInteger", "name" : "'S'" },
7952        { "kind" : "LiteralInteger", "name" : "'I'" },
7953        { "kind" : "LiteralInteger", "name" : "'rI'" },
7954        { "kind" : "LiteralInteger", "name" : "'Q'" },
7955        { "kind" : "LiteralInteger", "name" : "'O'" }
7956      ],
7957      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7958      "version" : "None"
7959    },
7960    {
7961      "opname" : "OpFixedRsqrtINTEL",
7962      "class"  : "@exclude",
7963      "opcode" : 5925,
7964      "operands" : [
7965        { "kind" : "IdResultType" },
7966        { "kind" : "IdResult" },
7967        { "kind" : "IdRef", "name" : "'Input Type'" },
7968        { "kind" : "IdRef", "name" : "'Input'" },
7969        { "kind" : "LiteralInteger", "name" : "'S'" },
7970        { "kind" : "LiteralInteger", "name" : "'I'" },
7971        { "kind" : "LiteralInteger", "name" : "'rI'" },
7972        { "kind" : "LiteralInteger", "name" : "'Q'" },
7973        { "kind" : "LiteralInteger", "name" : "'O'" }
7974      ],
7975      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7976      "version" : "None"
7977    },
7978    {
7979      "opname" : "OpFixedSinINTEL",
7980      "class"  : "@exclude",
7981      "opcode" : 5926,
7982      "operands" : [
7983        { "kind" : "IdResultType" },
7984        { "kind" : "IdResult" },
7985        { "kind" : "IdRef", "name" : "'Input Type'" },
7986        { "kind" : "IdRef", "name" : "'Input'" },
7987        { "kind" : "LiteralInteger", "name" : "'S'" },
7988        { "kind" : "LiteralInteger", "name" : "'I'" },
7989        { "kind" : "LiteralInteger", "name" : "'rI'" },
7990        { "kind" : "LiteralInteger", "name" : "'Q'" },
7991        { "kind" : "LiteralInteger", "name" : "'O'" }
7992      ],
7993      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7994      "version" : "None"
7995    },
7996    {
7997      "opname" : "OpFixedCosINTEL",
7998      "class"  : "@exclude",
7999      "opcode" : 5927,
8000      "operands" : [
8001        { "kind" : "IdResultType" },
8002        { "kind" : "IdResult" },
8003        { "kind" : "IdRef", "name" : "'Input Type'" },
8004        { "kind" : "IdRef", "name" : "'Input'" },
8005        { "kind" : "LiteralInteger", "name" : "'S'" },
8006        { "kind" : "LiteralInteger", "name" : "'I'" },
8007        { "kind" : "LiteralInteger", "name" : "'rI'" },
8008        { "kind" : "LiteralInteger", "name" : "'Q'" },
8009        { "kind" : "LiteralInteger", "name" : "'O'" }
8010      ],
8011      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8012      "version" : "None"
8013    },
8014    {
8015      "opname" : "OpFixedSinCosINTEL",
8016      "class"  : "@exclude",
8017      "opcode" : 5928,
8018      "operands" : [
8019        { "kind" : "IdResultType" },
8020        { "kind" : "IdResult" },
8021        { "kind" : "IdRef", "name" : "'Input Type'" },
8022        { "kind" : "IdRef", "name" : "'Input'" },
8023        { "kind" : "LiteralInteger", "name" : "'S'" },
8024        { "kind" : "LiteralInteger", "name" : "'I'" },
8025        { "kind" : "LiteralInteger", "name" : "'rI'" },
8026        { "kind" : "LiteralInteger", "name" : "'Q'" },
8027        { "kind" : "LiteralInteger", "name" : "'O'" }
8028      ],
8029      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8030      "version" : "None"
8031    },
8032    {
8033      "opname" : "OpFixedSinPiINTEL",
8034      "class"  : "@exclude",
8035      "opcode" : 5929,
8036      "operands" : [
8037        { "kind" : "IdResultType" },
8038        { "kind" : "IdResult" },
8039        { "kind" : "IdRef", "name" : "'Input Type'" },
8040        { "kind" : "IdRef", "name" : "'Input'" },
8041        { "kind" : "LiteralInteger", "name" : "'S'" },
8042        { "kind" : "LiteralInteger", "name" : "'I'" },
8043        { "kind" : "LiteralInteger", "name" : "'rI'" },
8044        { "kind" : "LiteralInteger", "name" : "'Q'" },
8045        { "kind" : "LiteralInteger", "name" : "'O'" }
8046      ],
8047      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8048      "version" : "None"
8049    },
8050    {
8051      "opname" : "OpFixedCosPiINTEL",
8052      "class"  : "@exclude",
8053      "opcode" : 5930,
8054      "operands" : [
8055        { "kind" : "IdResultType" },
8056        { "kind" : "IdResult" },
8057        { "kind" : "IdRef", "name" : "'Input Type'" },
8058        { "kind" : "IdRef", "name" : "'Input'" },
8059        { "kind" : "LiteralInteger", "name" : "'S'" },
8060        { "kind" : "LiteralInteger", "name" : "'I'" },
8061        { "kind" : "LiteralInteger", "name" : "'rI'" },
8062        { "kind" : "LiteralInteger", "name" : "'Q'" },
8063        { "kind" : "LiteralInteger", "name" : "'O'" }
8064      ],
8065      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8066      "version" : "None"
8067    },
8068    {
8069      "opname" : "OpFixedSinCosPiINTEL",
8070      "class"  : "@exclude",
8071      "opcode" : 5931,
8072      "operands" : [
8073        { "kind" : "IdResultType" },
8074        { "kind" : "IdResult" },
8075        { "kind" : "IdRef", "name" : "'Input Type'" },
8076        { "kind" : "IdRef", "name" : "'Input'" },
8077        { "kind" : "LiteralInteger", "name" : "'S'" },
8078        { "kind" : "LiteralInteger", "name" : "'I'" },
8079        { "kind" : "LiteralInteger", "name" : "'rI'" },
8080        { "kind" : "LiteralInteger", "name" : "'Q'" },
8081        { "kind" : "LiteralInteger", "name" : "'O'" }
8082      ],
8083      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8084      "version" : "None"
8085    },
8086    {
8087      "opname" : "OpFixedLogINTEL",
8088      "class"  : "@exclude",
8089      "opcode" : 5932,
8090      "operands" : [
8091        { "kind" : "IdResultType" },
8092        { "kind" : "IdResult" },
8093        { "kind" : "IdRef", "name" : "'Input Type'" },
8094        { "kind" : "IdRef", "name" : "'Input'" },
8095        { "kind" : "LiteralInteger", "name" : "'S'" },
8096        { "kind" : "LiteralInteger", "name" : "'I'" },
8097        { "kind" : "LiteralInteger", "name" : "'rI'" },
8098        { "kind" : "LiteralInteger", "name" : "'Q'" },
8099        { "kind" : "LiteralInteger", "name" : "'O'" }
8100      ],
8101      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8102      "version" : "None"
8103    },
8104    {
8105      "opname" : "OpFixedExpINTEL",
8106      "class"  : "@exclude",
8107      "opcode" : 5933,
8108      "operands" : [
8109        { "kind" : "IdResultType" },
8110        { "kind" : "IdResult" },
8111        { "kind" : "IdRef", "name" : "'Input Type'" },
8112        { "kind" : "IdRef", "name" : "'Input'" },
8113        { "kind" : "LiteralInteger", "name" : "'S'" },
8114        { "kind" : "LiteralInteger", "name" : "'I'" },
8115        { "kind" : "LiteralInteger", "name" : "'rI'" },
8116        { "kind" : "LiteralInteger", "name" : "'Q'" },
8117        { "kind" : "LiteralInteger", "name" : "'O'" }
8118      ],
8119      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
8120      "version" : "None"
8121    },
8122    {
8123      "opname" : "OpPtrCastToCrossWorkgroupINTEL",
8124      "class"  : "@exclude",
8125      "opcode" : 5934,
8126      "operands" : [
8127        { "kind" : "IdResultType" },
8128        { "kind" : "IdResult" },
8129        { "kind" : "IdRef", "name" : "'Pointer'" }
8130      ],
8131      "capabilities" : [ "USMStorageClassesINTEL" ],
8132      "version" : "None"
8133    },
8134    {
8135      "opname" : "OpCrossWorkgroupCastToPtrINTEL",
8136      "class"  : "@exclude",
8137      "opcode" : 5938,
8138      "operands" : [
8139        { "kind" : "IdResultType" },
8140        { "kind" : "IdResult" },
8141        { "kind" : "IdRef", "name" : "'Pointer'" }
8142      ],
8143      "capabilities" : [ "USMStorageClassesINTEL" ],
8144      "version" : "None"
8145    },
8146    {
8147      "opname" : "OpReadPipeBlockingINTEL",
8148      "class"  : "Pipe",
8149      "opcode" : 5946,
8150      "operands" : [
8151        { "kind" : "IdResultType" },
8152        { "kind" : "IdResult" },
8153        { "kind" : "IdRef", "name" : "'Packet Size'" },
8154        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
8155      ],
8156      "capabilities" : [ "BlockingPipesINTEL" ],
8157      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
8158      "version" : "None"
8159    },
8160    {
8161      "opname" : "OpWritePipeBlockingINTEL",
8162      "class"  : "Pipe",
8163      "opcode" : 5947,
8164      "operands" : [
8165        { "kind" : "IdResultType" },
8166        { "kind" : "IdResult" },
8167        { "kind" : "IdRef", "name" : "'Packet Size'" },
8168        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
8169      ],
8170      "capabilities" : [ "BlockingPipesINTEL" ],
8171      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
8172      "version" : "None"
8173    },
8174    {
8175      "opname" : "OpFPGARegINTEL",
8176      "class"  : "Reserved",
8177      "opcode" : 5949,
8178      "operands" : [
8179        { "kind" : "IdResultType" },
8180        { "kind" : "IdResult" },
8181        { "kind" : "IdRef", "name" : "'Result'" },
8182        { "kind" : "IdRef", "name" : "'Input'" }
8183      ],
8184      "capabilities" : [ "FPGARegINTEL" ],
8185      "extensions" : [ "SPV_INTEL_fpga_reg" ],
8186      "version" : "None"
8187    },
8188    {
8189        "opname" : "OpRayQueryGetRayTMinKHR",
8190        "class" : "Reserved",
8191        "opcode" : 6016,
8192        "operands" : [
8193            { "kind" : "IdResultType" },
8194            { "kind" : "IdResult" },
8195            {
8196                "kind" : "IdRef",
8197                "name" : "'RayQuery'"
8198            }
8199        ],
8200        "capabilities" : [ "RayQueryKHR" ],
8201        "extensions" : [ "SPV_KHR_ray_query" ],
8202        "version" : "None"
8203    },
8204    {
8205        "opname" : "OpRayQueryGetRayFlagsKHR",
8206        "class" : "Reserved",
8207        "opcode" : 6017,
8208        "operands" : [
8209            { "kind" : "IdResultType" },
8210            { "kind" : "IdResult" },
8211            {
8212                "kind" : "IdRef",
8213                "name" : "'RayQuery'"
8214            }
8215        ],
8216        "capabilities" : [ "RayQueryKHR" ],
8217        "extensions" : [ "SPV_KHR_ray_query" ],
8218        "version" : "None"
8219    },
8220    {
8221        "opname" : "OpRayQueryGetIntersectionTKHR",
8222        "class" : "Reserved",
8223        "opcode" : 6018,
8224        "operands" : [
8225            { "kind" : "IdResultType" },
8226            { "kind" : "IdResult" },
8227            {
8228                "kind" : "IdRef",
8229                "name" : "'RayQuery'"
8230            },
8231            {
8232                "kind" : "IdRef",
8233                "name" : "'Intersection'"
8234            }
8235        ],
8236        "capabilities" : [ "RayQueryKHR" ],
8237        "extensions" : [ "SPV_KHR_ray_query" ],
8238        "version" : "None"
8239    },
8240    {
8241        "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR",
8242        "class" : "Reserved",
8243        "opcode" : 6019,
8244        "operands" : [
8245            { "kind" : "IdResultType" },
8246            { "kind" : "IdResult" },
8247            {
8248                "kind" : "IdRef",
8249                "name" : "'RayQuery'"
8250            },
8251            {
8252                "kind" : "IdRef",
8253                "name" : "'Intersection'"
8254            }
8255        ],
8256        "capabilities" : [ "RayQueryKHR" ],
8257        "extensions" : [ "SPV_KHR_ray_query" ],
8258        "version" : "None"
8259    },
8260    {
8261        "opname" : "OpRayQueryGetIntersectionInstanceIdKHR",
8262        "class" : "Reserved",
8263        "opcode" : 6020,
8264        "operands" : [
8265            { "kind" : "IdResultType" },
8266            { "kind" : "IdResult" },
8267            {
8268                "kind" : "IdRef",
8269                "name" : "'RayQuery'"
8270            },
8271            {
8272                "kind" : "IdRef",
8273                "name" : "'Intersection'"
8274            }
8275        ],
8276        "capabilities" : [ "RayQueryKHR" ],
8277        "extensions" : [ "SPV_KHR_ray_query" ],
8278        "version" : "None"
8279    },
8280    {
8281        "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR",
8282        "class" : "Reserved",
8283        "opcode" : 6021,
8284        "operands" : [
8285            { "kind" : "IdResultType" },
8286            { "kind" : "IdResult" },
8287            {
8288                "kind" : "IdRef",
8289                "name" : "'RayQuery'"
8290            },
8291            {
8292                "kind" : "IdRef",
8293                "name" : "'Intersection'"
8294            }
8295        ],
8296        "capabilities" : [ "RayQueryKHR" ],
8297        "extensions" : [ "SPV_KHR_ray_query" ],
8298        "version" : "None"
8299    },
8300    {
8301        "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR",
8302        "class" : "Reserved",
8303        "opcode" : 6022,
8304        "operands" : [
8305            { "kind" : "IdResultType" },
8306            { "kind" : "IdResult" },
8307            {
8308                "kind" : "IdRef",
8309                "name" : "'RayQuery'"
8310            },
8311            {
8312                "kind" : "IdRef",
8313                "name" : "'Intersection'"
8314            }
8315        ],
8316        "capabilities" : [ "RayQueryKHR" ],
8317        "extensions" : [ "SPV_KHR_ray_query" ],
8318        "version" : "None"
8319    },
8320    {
8321        "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR",
8322        "class" : "Reserved",
8323        "opcode" : 6023,
8324        "operands" : [
8325            { "kind" : "IdResultType" },
8326            { "kind" : "IdResult" },
8327            {
8328                "kind" : "IdRef",
8329                "name" : "'RayQuery'"
8330            },
8331            {
8332                "kind" : "IdRef",
8333                "name" : "'Intersection'"
8334            }
8335        ],
8336        "capabilities" : [ "RayQueryKHR" ],
8337        "extensions" : [ "SPV_KHR_ray_query" ],
8338        "version" : "None"
8339    },
8340    {
8341        "opname" : "OpRayQueryGetIntersectionBarycentricsKHR",
8342        "class" : "Reserved",
8343        "opcode" : 6024,
8344        "operands" : [
8345            { "kind" : "IdResultType" },
8346            { "kind" : "IdResult" },
8347            {
8348                "kind" : "IdRef",
8349                "name" : "'RayQuery'"
8350            },
8351            {
8352                "kind" : "IdRef",
8353                "name" : "'Intersection'"
8354            }
8355        ],
8356        "capabilities" : [ "RayQueryKHR" ],
8357        "extensions" : [ "SPV_KHR_ray_query" ],
8358        "version" : "None"
8359    },
8360    {
8361        "opname" : "OpRayQueryGetIntersectionFrontFaceKHR",
8362        "class" : "Reserved",
8363        "opcode" : 6025,
8364        "operands" : [
8365            { "kind" : "IdResultType" },
8366            { "kind" : "IdResult" },
8367            {
8368                "kind" : "IdRef",
8369                "name" : "'RayQuery'"
8370            },
8371            {
8372                "kind" : "IdRef",
8373                "name" : "'Intersection'"
8374            }
8375        ],
8376        "capabilities" : [ "RayQueryKHR" ],
8377        "extensions" : [ "SPV_KHR_ray_query" ],
8378        "version" : "None"
8379    },
8380    {
8381        "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
8382        "class" : "Reserved",
8383        "opcode" : 6026,
8384        "operands" : [
8385            { "kind" : "IdResultType" },
8386            { "kind" : "IdResult" },
8387            {
8388                "kind" : "IdRef",
8389                "name" : "'RayQuery'"
8390            }
8391        ],
8392        "capabilities" : [ "RayQueryKHR" ],
8393        "extensions" : [ "SPV_KHR_ray_query" ],
8394        "version" : "None"
8395    },
8396    {
8397        "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR",
8398        "class" : "Reserved",
8399        "opcode" : 6027,
8400        "operands" : [
8401            { "kind" : "IdResultType" },
8402            { "kind" : "IdResult" },
8403            {
8404                "kind" : "IdRef",
8405                "name" : "'RayQuery'"
8406            },
8407            {
8408                "kind" : "IdRef",
8409                "name" : "'Intersection'"
8410            }
8411        ],
8412        "capabilities" : [ "RayQueryKHR" ],
8413        "extensions" : [ "SPV_KHR_ray_query" ],
8414        "version" : "None"
8415    },
8416    {
8417        "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR",
8418        "class" : "Reserved",
8419        "opcode" : 6028,
8420        "operands" : [
8421            { "kind" : "IdResultType" },
8422            { "kind" : "IdResult" },
8423            {
8424                "kind" : "IdRef",
8425                "name" : "'RayQuery'"
8426            },
8427            {
8428                "kind" : "IdRef",
8429                "name" : "'Intersection'"
8430            }
8431        ],
8432        "capabilities" : [ "RayQueryKHR" ],
8433        "extensions" : [ "SPV_KHR_ray_query" ],
8434        "version" : "None"
8435    },
8436    {
8437        "opname" : "OpRayQueryGetWorldRayDirectionKHR",
8438        "class" : "Reserved",
8439        "opcode" : 6029,
8440        "operands" : [
8441            { "kind" : "IdResultType" },
8442            { "kind" : "IdResult" },
8443            {
8444                "kind" : "IdRef",
8445                "name" : "'RayQuery'"
8446            }
8447        ],
8448        "capabilities" : [ "RayQueryKHR" ],
8449        "extensions" : [ "SPV_KHR_ray_query" ],
8450        "version" : "None"
8451    },
8452    {
8453        "opname" : "OpRayQueryGetWorldRayOriginKHR",
8454        "class" : "Reserved",
8455        "opcode" : 6030,
8456        "operands" : [
8457            { "kind" : "IdResultType" },
8458            { "kind" : "IdResult" },
8459            {
8460                "kind" : "IdRef",
8461                "name" : "'RayQuery'"
8462            }
8463        ],
8464        "capabilities" : [ "RayQueryKHR" ],
8465        "extensions" : [ "SPV_KHR_ray_query" ],
8466        "version" : "None"
8467    },
8468    {
8469        "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR",
8470        "class" : "Reserved",
8471        "opcode" : 6031,
8472        "operands" : [
8473            { "kind" : "IdResultType" },
8474            { "kind" : "IdResult" },
8475            {
8476                "kind" : "IdRef",
8477                "name" : "'RayQuery'"
8478            },
8479            {
8480                "kind" : "IdRef",
8481                "name" : "'Intersection'"
8482            }
8483        ],
8484        "capabilities" : [ "RayQueryKHR" ],
8485        "extensions" : [ "SPV_KHR_ray_query" ],
8486        "version" : "None"
8487    },
8488    {
8489        "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR",
8490        "class" : "Reserved",
8491        "opcode" : 6032,
8492        "operands" : [
8493            { "kind" : "IdResultType" },
8494            { "kind" : "IdResult" },
8495            {
8496                "kind" : "IdRef",
8497                "name" : "'RayQuery'"
8498            },
8499             {
8500                "kind" : "IdRef",
8501                "name" : "'Intersection'"
8502            }
8503        ],
8504        "capabilities" : [ "RayQueryKHR" ],
8505        "extensions" : [ "SPV_KHR_ray_query" ],
8506        "version" : "None"
8507    },
8508    {
8509      "opname" : "OpAtomicFAddEXT",
8510      "class"  : "Atomic",
8511      "opcode" : 6035,
8512      "operands" : [
8513        { "kind" : "IdResultType" },
8514        { "kind" : "IdResult" },
8515        { "kind" : "IdRef",             "name" : "'Pointer'" },
8516        { "kind" : "IdScope",           "name" : "'Memory'" },
8517        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
8518        { "kind" : "IdRef",             "name" : "'Value'" }
8519      ],
8520      "capabilities" : [ "AtomicFloat16AddEXT", "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ],
8521      "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
8522      "version" : "None"
8523    },
8524    {
8525      "opname" : "OpTypeBufferSurfaceINTEL",
8526      "class"  : "Type-Declaration",
8527      "opcode" : 6086,
8528      "operands" : [
8529        { "kind" : "IdResult" },
8530        {
8531          "kind" : "AccessQualifier",
8532          "name" : "'AccessQualifier'"
8533        }
8534      ],
8535      "capabilities" : [ "VectorComputeINTEL" ],
8536      "version" : "None"
8537    },
8538    {
8539      "opname" : "OpTypeStructContinuedINTEL",
8540      "class"  : "Type-Declaration",
8541      "opcode" : 6090,
8542      "operands" : [
8543        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
8544      ],
8545      "capabilities" : [ "LongConstantCompositeINTEL" ],
8546      "version" : "None"
8547    },
8548    {
8549      "opname" : "OpConstantCompositeContinuedINTEL",
8550      "class"  : "Constant-Creation",
8551      "opcode" : 6091,
8552      "operands" : [
8553        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
8554      ],
8555      "capabilities" : [ "LongConstantCompositeINTEL" ],
8556      "version" : "None"
8557    },
8558    {
8559      "opname" : "OpSpecConstantCompositeContinuedINTEL",
8560      "class"  : "Constant-Creation",
8561      "opcode" : 6092,
8562      "operands" : [
8563        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
8564      ],
8565      "capabilities" : [ "LongConstantCompositeINTEL" ],
8566      "version" : "None"
8567    },
8568    {
8569      "opname" : "OpControlBarrierArriveINTEL",
8570      "class"  : "Barrier",
8571      "opcode" : 6142,
8572      "operands" : [
8573        { "kind" : "IdScope",           "name" : "'Execution'" },
8574        { "kind" : "IdScope",           "name" : "'Memory'" },
8575        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
8576      ],
8577      "capabilities" : [ "SplitBarrierINTEL" ],
8578      "version" : "None"
8579    },
8580    {
8581      "opname" : "OpControlBarrierWaitINTEL",
8582      "class"  : "Barrier",
8583      "opcode" : 6143,
8584      "operands" : [
8585        { "kind" : "IdScope",           "name" : "'Execution'" },
8586        { "kind" : "IdScope",           "name" : "'Memory'" },
8587        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
8588      ],
8589      "capabilities" : [ "SplitBarrierINTEL" ],
8590      "version" : "None"
8591    },
8592    {
8593      "opname" : "OpGroupIMulKHR",
8594      "class"  : "Group",
8595      "opcode" : 6401,
8596      "operands" : [
8597        { "kind" : "IdResultType" },
8598        { "kind" : "IdResult" },
8599        { "kind" : "IdScope",        "name" : "'Execution'" },
8600        { "kind" : "GroupOperation", "name" : "'Operation'" },
8601        { "kind" : "IdRef",          "name" : "'X'" }
8602      ],
8603      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8604      "version" : "None"
8605    },
8606    {
8607      "opname" : "OpGroupFMulKHR",
8608      "class"  : "Group",
8609      "opcode" : 6402,
8610      "operands" : [
8611        { "kind" : "IdResultType" },
8612        { "kind" : "IdResult" },
8613        { "kind" : "IdScope",        "name" : "'Execution'" },
8614        { "kind" : "GroupOperation", "name" : "'Operation'" },
8615        { "kind" : "IdRef",          "name" : "'X'" }
8616      ],
8617      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8618      "version" : "None"
8619    },
8620    {
8621      "opname" : "OpGroupBitwiseAndKHR",
8622      "class"  : "Group",
8623      "opcode" : 6403,
8624      "operands" : [
8625        { "kind" : "IdResultType" },
8626        { "kind" : "IdResult" },
8627        { "kind" : "IdScope",        "name" : "'Execution'" },
8628        { "kind" : "GroupOperation", "name" : "'Operation'" },
8629        { "kind" : "IdRef",          "name" : "'X'" }
8630      ],
8631      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8632      "version" : "None"
8633    },
8634    {
8635      "opname" : "OpGroupBitwiseOrKHR",
8636      "class"  : "Group",
8637      "opcode" : 6404,
8638      "operands" : [
8639        { "kind" : "IdResultType" },
8640        { "kind" : "IdResult" },
8641        { "kind" : "IdScope",        "name" : "'Execution'" },
8642        { "kind" : "GroupOperation", "name" : "'Operation'" },
8643        { "kind" : "IdRef",          "name" : "'X'" }
8644      ],
8645      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8646      "version" : "None"
8647    },
8648    {
8649      "opname" : "OpGroupBitwiseXorKHR",
8650      "class"  : "Group",
8651      "opcode" : 6405,
8652      "operands" : [
8653        { "kind" : "IdResultType" },
8654        { "kind" : "IdResult" },
8655        { "kind" : "IdScope",        "name" : "'Execution'" },
8656        { "kind" : "GroupOperation", "name" : "'Operation'" },
8657        { "kind" : "IdRef",          "name" : "'X'" }
8658      ],
8659      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8660      "version" : "None"
8661    },
8662    {
8663      "opname" : "OpGroupLogicalAndKHR",
8664      "class"  : "Group",
8665      "opcode" : 6406,
8666      "operands" : [
8667        { "kind" : "IdResultType" },
8668        { "kind" : "IdResult" },
8669        { "kind" : "IdScope",        "name" : "'Execution'" },
8670        { "kind" : "GroupOperation", "name" : "'Operation'" },
8671        { "kind" : "IdRef",          "name" : "'X'" }
8672      ],
8673      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8674      "version" : "None"
8675    },
8676    {
8677      "opname" : "OpGroupLogicalOrKHR",
8678      "class"  : "Group",
8679      "opcode" : 6407,
8680      "operands" : [
8681        { "kind" : "IdResultType" },
8682        { "kind" : "IdResult" },
8683        { "kind" : "IdScope",        "name" : "'Execution'" },
8684        { "kind" : "GroupOperation", "name" : "'Operation'" },
8685        { "kind" : "IdRef",          "name" : "'X'" }
8686      ],
8687      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8688      "version" : "None"
8689    },
8690    {
8691      "opname" : "OpGroupLogicalXorKHR",
8692      "class"  : "Group",
8693      "opcode" : 6408,
8694      "operands" : [
8695        { "kind" : "IdResultType" },
8696        { "kind" : "IdResult" },
8697        { "kind" : "IdScope",        "name" : "'Execution'" },
8698        { "kind" : "GroupOperation", "name" : "'Operation'" },
8699        { "kind" : "IdRef",          "name" : "'X'" }
8700      ],
8701      "capabilities" : [ "GroupUniformArithmeticKHR" ],
8702      "version" : "None"
8703    }
8704  ],
8705  "operand_kinds" : [
8706    {
8707      "category" : "BitEnum",
8708      "kind" : "ImageOperands",
8709      "enumerants" : [
8710        {
8711          "enumerant" : "None",
8712          "value" : "0x0000"
8713        },
8714        {
8715          "enumerant" : "Bias",
8716          "value" : "0x0001",
8717          "capabilities" : [ "Shader" ],
8718          "parameters" : [
8719            { "kind" : "IdRef" }
8720          ]
8721        },
8722        {
8723          "enumerant" : "Lod",
8724          "value" : "0x0002",
8725          "parameters" : [
8726            { "kind" : "IdRef" }
8727          ]
8728        },
8729        {
8730          "enumerant" : "Grad",
8731          "value" : "0x0004",
8732          "parameters" : [
8733            { "kind" : "IdRef" },
8734            { "kind" : "IdRef" }
8735          ]
8736        },
8737        {
8738          "enumerant" : "ConstOffset",
8739          "value" : "0x0008",
8740          "parameters" : [
8741            { "kind" : "IdRef" }
8742          ]
8743        },
8744        {
8745          "enumerant" : "Offset",
8746          "value" : "0x0010",
8747          "capabilities" : [ "ImageGatherExtended" ],
8748          "parameters" : [
8749            { "kind" : "IdRef" }
8750          ]
8751        },
8752        {
8753          "enumerant" : "ConstOffsets",
8754          "value" : "0x0020",
8755          "capabilities" : [ "ImageGatherExtended" ],
8756          "parameters" : [
8757            { "kind" : "IdRef" }
8758          ]
8759        },
8760        {
8761          "enumerant" : "Sample",
8762          "value" : "0x0040",
8763          "parameters" : [
8764            { "kind" : "IdRef" }
8765          ]
8766        },
8767        {
8768          "enumerant" : "MinLod",
8769          "value" : "0x0080",
8770          "capabilities" : [ "MinLod" ],
8771          "parameters" : [
8772            { "kind" : "IdRef" }
8773          ]
8774        },
8775        {
8776          "enumerant" : "MakeTexelAvailable",
8777          "value" : "0x0100",
8778          "capabilities" : [ "VulkanMemoryModel" ],
8779          "parameters" : [
8780            { "kind" : "IdScope" }
8781          ],
8782          "version" : "1.5"
8783        },
8784        {
8785          "enumerant" : "MakeTexelAvailableKHR",
8786          "value" : "0x0100",
8787          "capabilities" : [ "VulkanMemoryModel" ],
8788          "parameters" : [
8789            { "kind" : "IdScope" }
8790          ],
8791          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8792          "version" : "1.5"
8793        },
8794        {
8795          "enumerant" : "MakeTexelVisible",
8796          "value" : "0x0200",
8797          "capabilities" : [ "VulkanMemoryModel" ],
8798          "parameters" : [
8799            { "kind" : "IdScope" }
8800          ],
8801          "version" : "1.5"
8802        },
8803        {
8804          "enumerant" : "MakeTexelVisibleKHR",
8805          "value" : "0x0200",
8806          "capabilities" : [ "VulkanMemoryModel" ],
8807          "parameters" : [
8808            { "kind" : "IdScope" }
8809          ],
8810          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8811          "version" : "1.5"
8812        },
8813        {
8814          "enumerant" : "NonPrivateTexel",
8815          "value" : "0x0400",
8816          "capabilities" : [ "VulkanMemoryModel" ],
8817          "version" : "1.5"
8818        },
8819        {
8820          "enumerant" : "NonPrivateTexelKHR",
8821          "value" : "0x0400",
8822          "capabilities" : [ "VulkanMemoryModel" ],
8823          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8824          "version" : "1.5"
8825        },
8826        {
8827          "enumerant" : "VolatileTexel",
8828          "value" : "0x0800",
8829          "capabilities" : [ "VulkanMemoryModel" ],
8830          "version" : "1.5"
8831        },
8832        {
8833          "enumerant" : "VolatileTexelKHR",
8834          "value" : "0x0800",
8835          "capabilities" : [ "VulkanMemoryModel" ],
8836          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8837          "version" : "1.5"
8838        },
8839        {
8840          "enumerant" : "SignExtend",
8841          "value" : "0x1000",
8842          "version" : "1.4"
8843        },
8844        {
8845          "enumerant" : "ZeroExtend",
8846          "value" : "0x2000",
8847          "version" : "1.4"
8848        },
8849        {
8850          "enumerant" : "Nontemporal",
8851          "value" : "0x4000",
8852          "version" : "1.6"
8853        },
8854        {
8855          "enumerant" : "Offsets",
8856          "value" : "0x10000",
8857          "parameters" : [
8858            { "kind" : "IdRef" }
8859          ]
8860        }
8861      ]
8862    },
8863    {
8864      "category" : "BitEnum",
8865      "kind" : "FPFastMathMode",
8866      "enumerants" : [
8867        {
8868          "enumerant" : "None",
8869          "value" : "0x0000"
8870        },
8871        {
8872          "enumerant" : "NotNaN",
8873          "value" : "0x0001"
8874        },
8875        {
8876          "enumerant" : "NotInf",
8877          "value" : "0x0002"
8878        },
8879        {
8880          "enumerant" : "NSZ",
8881          "value" : "0x0004"
8882        },
8883        {
8884          "enumerant" : "AllowRecip",
8885          "value" : "0x0008"
8886        },
8887        {
8888          "enumerant" : "Fast",
8889          "value" : "0x0010"
8890        },
8891        {
8892          "enumerant" : "AllowContractFastINTEL",
8893          "value" : "0x10000",
8894          "capabilities" : [ "FPFastMathModeINTEL" ],
8895          "version" : "None"
8896        },
8897        {
8898          "enumerant" : "AllowReassocINTEL",
8899          "value" : "0x20000",
8900          "capabilities" : [ "FPFastMathModeINTEL" ],
8901          "version" : "None"
8902        }
8903      ]
8904    },
8905    {
8906      "category" : "BitEnum",
8907      "kind" : "SelectionControl",
8908      "enumerants" : [
8909        {
8910          "enumerant" : "None",
8911          "value" : "0x0000"
8912        },
8913        {
8914          "enumerant" : "Flatten",
8915          "value" : "0x0001"
8916        },
8917        {
8918          "enumerant" : "DontFlatten",
8919          "value" : "0x0002"
8920        }
8921      ]
8922    },
8923    {
8924      "category" : "BitEnum",
8925      "kind" : "LoopControl",
8926      "enumerants" : [
8927        {
8928          "enumerant" : "None",
8929          "value" : "0x0000"
8930        },
8931        {
8932          "enumerant" : "Unroll",
8933          "value" : "0x0001"
8934        },
8935        {
8936          "enumerant" : "DontUnroll",
8937          "value" : "0x0002"
8938        },
8939        {
8940          "enumerant" : "DependencyInfinite",
8941          "value" : "0x0004",
8942          "version" : "1.1"
8943        },
8944        {
8945          "enumerant" : "DependencyLength",
8946          "value" : "0x0008",
8947          "parameters" : [
8948            { "kind" : "LiteralInteger" }
8949          ],
8950          "version" : "1.1"
8951        },
8952        {
8953          "enumerant" : "MinIterations",
8954          "value" : "0x0010",
8955          "parameters" : [
8956            { "kind" : "LiteralInteger" }
8957          ],
8958          "version" : "1.4"
8959        },
8960        {
8961          "enumerant" : "MaxIterations",
8962          "value" : "0x0020",
8963          "parameters" : [
8964            { "kind" : "LiteralInteger" }
8965          ],
8966          "version" : "1.4"
8967        },
8968        {
8969          "enumerant" : "IterationMultiple",
8970          "value" : "0x0040",
8971          "parameters" : [
8972            { "kind" : "LiteralInteger" }
8973          ],
8974          "version" : "1.4"
8975        },
8976        {
8977          "enumerant" : "PeelCount",
8978          "value" : "0x0080",
8979          "parameters" : [
8980            { "kind" : "LiteralInteger" }
8981          ],
8982          "version" : "1.4"
8983        },
8984        {
8985          "enumerant" : "PartialCount",
8986          "value" : "0x0100",
8987          "parameters" : [
8988            { "kind" : "LiteralInteger" }
8989          ],
8990          "version" : "1.4"
8991        },
8992        {
8993          "enumerant" : "InitiationIntervalINTEL",
8994          "value" : "0x10000",
8995          "parameters" : [
8996            { "kind" : "LiteralInteger" }
8997          ],
8998          "capabilities" : [ "FPGALoopControlsINTEL" ],
8999          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9000          "version" : "None"
9001        },
9002        {
9003          "enumerant" : "MaxConcurrencyINTEL",
9004          "value" : "0x20000",
9005          "parameters" : [
9006            { "kind" : "LiteralInteger" }
9007          ],
9008          "capabilities" : [ "FPGALoopControlsINTEL" ],
9009          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9010          "version" : "None"
9011        },
9012        {
9013          "enumerant" : "DependencyArrayINTEL",
9014          "value" : "0x40000",
9015          "parameters" : [
9016            { "kind" : "LiteralInteger" }
9017          ],
9018          "capabilities" : [ "FPGALoopControlsINTEL" ],
9019          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9020          "version" : "None"
9021        },
9022        {
9023          "enumerant" : "PipelineEnableINTEL",
9024          "value" : "0x80000",
9025          "parameters" : [
9026            { "kind" : "LiteralInteger" }
9027          ],
9028          "capabilities" : [ "FPGALoopControlsINTEL" ],
9029          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9030          "version" : "None"
9031        },
9032        {
9033          "enumerant" : "LoopCoalesceINTEL",
9034          "value" : "0x100000",
9035          "parameters" : [
9036            { "kind" : "LiteralInteger" }
9037          ],
9038          "capabilities" : [ "FPGALoopControlsINTEL" ],
9039          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9040          "version" : "None"
9041        },
9042        {
9043          "enumerant" : "MaxInterleavingINTEL",
9044          "value" : "0x200000",
9045          "parameters" : [
9046            { "kind" : "LiteralInteger" }
9047          ],
9048          "capabilities" : [ "FPGALoopControlsINTEL" ],
9049          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9050          "version" : "None"
9051        },
9052        {
9053          "enumerant" : "SpeculatedIterationsINTEL",
9054          "value" : "0x400000",
9055          "parameters" : [
9056            { "kind" : "LiteralInteger" }
9057          ],
9058          "capabilities" : [ "FPGALoopControlsINTEL" ],
9059          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9060          "version" : "None"
9061        },
9062        {
9063          "enumerant" : "NoFusionINTEL",
9064          "value" : "0x800000",
9065          "parameters" : [
9066            { "kind" : "LiteralInteger" }
9067          ],
9068          "capabilities" : [ "FPGALoopControlsINTEL" ],
9069          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
9070          "version" : "None"
9071        }
9072      ]
9073    },
9074    {
9075      "category" : "BitEnum",
9076      "kind" : "FunctionControl",
9077      "enumerants" : [
9078        {
9079          "enumerant" : "None",
9080          "value" : "0x0000"
9081        },
9082        {
9083          "enumerant" : "Inline",
9084          "value" : "0x0001"
9085        },
9086        {
9087          "enumerant" : "DontInline",
9088          "value" : "0x0002"
9089        },
9090        {
9091          "enumerant" : "Pure",
9092          "value" : "0x0004"
9093        },
9094        {
9095          "enumerant" : "Const",
9096          "value" : "0x0008"
9097        },
9098        {
9099          "enumerant" : "OptNoneINTEL",
9100          "value" : "0x10000",
9101          "capabilities" : [  "OptNoneINTEL" ],
9102          "version" : "None"
9103        }
9104      ]
9105    },
9106    {
9107      "category" : "BitEnum",
9108      "kind" : "MemorySemantics",
9109      "enumerants" : [
9110        {
9111          "enumerant" : "Relaxed",
9112          "value" : "0x0000"
9113        },
9114        {
9115          "enumerant" : "None",
9116          "value" : "0x0000"
9117        },
9118        {
9119          "enumerant" : "Acquire",
9120          "value" : "0x0002"
9121        },
9122        {
9123          "enumerant" : "Release",
9124          "value" : "0x0004"
9125        },
9126        {
9127          "enumerant" : "AcquireRelease",
9128          "value" : "0x0008"
9129        },
9130        {
9131          "enumerant" : "SequentiallyConsistent",
9132          "value" : "0x0010"
9133        },
9134        {
9135          "enumerant" : "UniformMemory",
9136          "value" : "0x0040",
9137          "capabilities" : [ "Shader" ]
9138        },
9139        {
9140          "enumerant" : "SubgroupMemory",
9141          "value" : "0x0080"
9142        },
9143        {
9144          "enumerant" : "WorkgroupMemory",
9145          "value" : "0x0100"
9146        },
9147        {
9148          "enumerant" : "CrossWorkgroupMemory",
9149          "value" : "0x0200"
9150        },
9151        {
9152          "enumerant" : "AtomicCounterMemory",
9153          "value" : "0x0400",
9154          "capabilities" : [ "AtomicStorage" ]
9155        },
9156        {
9157          "enumerant" : "ImageMemory",
9158          "value" : "0x0800"
9159        },
9160        {
9161          "enumerant" : "OutputMemory",
9162          "value" : "0x1000",
9163          "capabilities" : [ "VulkanMemoryModel" ],
9164          "version" : "1.5"
9165        },
9166        {
9167          "enumerant" : "OutputMemoryKHR",
9168          "value" : "0x1000",
9169          "capabilities" : [ "VulkanMemoryModel" ],
9170          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9171          "version" : "1.5"
9172        },
9173        {
9174          "enumerant" : "MakeAvailable",
9175          "value" : "0x2000",
9176          "capabilities" : [ "VulkanMemoryModel" ],
9177          "version" : "1.5"
9178        },
9179        {
9180          "enumerant" : "MakeAvailableKHR",
9181          "value" : "0x2000",
9182          "capabilities" : [ "VulkanMemoryModel" ],
9183          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9184          "version" : "1.5"
9185        },
9186        {
9187          "enumerant" : "MakeVisible",
9188          "value" : "0x4000",
9189          "capabilities" : [ "VulkanMemoryModel" ],
9190          "version" : "1.5"
9191        },
9192        {
9193          "enumerant" : "MakeVisibleKHR",
9194          "value" : "0x4000",
9195          "capabilities" : [ "VulkanMemoryModel" ],
9196          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9197          "version" : "1.5"
9198        },
9199        {
9200          "enumerant" : "Volatile",
9201          "value" : "0x8000",
9202          "capabilities" : [ "VulkanMemoryModel" ],
9203          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9204          "version" : "1.5"
9205        }
9206      ]
9207    },
9208    {
9209      "category" : "BitEnum",
9210      "kind" : "MemoryAccess",
9211      "enumerants" : [
9212        {
9213          "enumerant" : "None",
9214          "value" : "0x0000"
9215        },
9216        {
9217          "enumerant" : "Volatile",
9218          "value" : "0x0001"
9219        },
9220        {
9221          "enumerant" : "Aligned",
9222          "value" : "0x0002",
9223          "parameters" : [
9224            { "kind" : "LiteralInteger" }
9225          ]
9226        },
9227        {
9228          "enumerant" : "Nontemporal",
9229          "value" : "0x0004"
9230        },
9231        {
9232          "enumerant" : "MakePointerAvailable",
9233          "value" : "0x0008",
9234          "parameters" : [
9235            { "kind" : "IdScope" }
9236          ],
9237          "capabilities" : [ "VulkanMemoryModel" ],
9238          "version" : "1.5"
9239        },
9240        {
9241          "enumerant" : "MakePointerAvailableKHR",
9242          "value" : "0x0008",
9243          "parameters" : [
9244            { "kind" : "IdScope" }
9245          ],
9246          "capabilities" : [ "VulkanMemoryModel" ],
9247          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9248          "version" : "1.5"
9249        },
9250        {
9251          "enumerant" : "MakePointerVisible",
9252          "value" : "0x0010",
9253          "parameters" : [
9254            { "kind" : "IdScope" }
9255          ],
9256          "capabilities" : [ "VulkanMemoryModel" ],
9257          "version" : "1.5"
9258        },
9259        {
9260          "enumerant" : "MakePointerVisibleKHR",
9261          "value" : "0x0010",
9262          "parameters" : [
9263            { "kind" : "IdScope" }
9264          ],
9265          "capabilities" : [ "VulkanMemoryModel" ],
9266          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9267          "version" : "1.5"
9268        },
9269        {
9270          "enumerant" : "NonPrivatePointer",
9271          "value" : "0x0020",
9272          "capabilities" : [ "VulkanMemoryModel" ],
9273          "version" : "1.5"
9274        },
9275        {
9276          "enumerant" : "NonPrivatePointerKHR",
9277          "value" : "0x0020",
9278          "capabilities" : [ "VulkanMemoryModel" ],
9279          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9280          "version" : "1.5"
9281        },
9282        {
9283          "enumerant" : "AliasScopeINTELMask",
9284          "value" : "0x10000",
9285          "parameters" : [
9286            { "kind" : "IdRef" }
9287          ],
9288          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
9289          "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
9290          "version" : "None"
9291        },
9292        {
9293          "enumerant" : "NoAliasINTELMask",
9294          "parameters" : [
9295            { "kind" : "IdRef" }
9296          ],
9297          "value" : "0x20000",
9298          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
9299          "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
9300          "version" : "None"
9301        }
9302      ]
9303    },
9304    {
9305      "category" : "BitEnum",
9306      "kind" : "KernelProfilingInfo",
9307      "enumerants" : [
9308        {
9309          "enumerant" : "None",
9310          "value" : "0x0000"
9311        },
9312        {
9313          "enumerant" : "CmdExecTime",
9314          "value" : "0x0001",
9315          "capabilities" : [ "Kernel" ]
9316        }
9317      ]
9318    },
9319    {
9320      "category" : "BitEnum",
9321      "kind" : "RayFlags",
9322      "enumerants" : [
9323        {
9324          "enumerant" : "NoneKHR",
9325          "value" : "0x0000",
9326          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9327          "version" : "None"
9328        },
9329        {
9330          "enumerant" : "OpaqueKHR",
9331          "value" : "0x0001",
9332          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9333          "version" : "None"
9334        },
9335        {
9336          "enumerant" : "NoOpaqueKHR",
9337          "value" : "0x0002",
9338          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9339          "version" : "None"
9340        },
9341        {
9342          "enumerant" : "TerminateOnFirstHitKHR",
9343          "value" : "0x0004",
9344          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9345          "version" : "None"
9346        },
9347        {
9348          "enumerant" : "SkipClosestHitShaderKHR",
9349          "value" : "0x0008",
9350          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9351          "version" : "None"
9352        },
9353        {
9354          "enumerant" : "CullBackFacingTrianglesKHR",
9355          "value" : "0x0010",
9356          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9357          "version" : "None"
9358        },
9359        {
9360          "enumerant" : "CullFrontFacingTrianglesKHR",
9361          "value" : "0x0020",
9362          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9363          "version" : "None"
9364        },
9365        {
9366          "enumerant" : "CullOpaqueKHR",
9367          "value" : "0x0040",
9368          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9369          "version" : "None"
9370        },
9371        {
9372          "enumerant" : "CullNoOpaqueKHR",
9373          "value" : "0x0080",
9374          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
9375          "version" : "None"
9376        },
9377        {
9378          "enumerant" : "SkipTrianglesKHR",
9379          "value" : "0x0100",
9380          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
9381          "version" : "None"
9382        },
9383        {
9384          "enumerant" : "SkipAABBsKHR",
9385          "value" : "0x0200",
9386          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
9387          "version" : "None"
9388        }
9389      ]
9390    },
9391    {
9392      "category" : "BitEnum",
9393      "kind" : "FragmentShadingRate",
9394      "enumerants" : [
9395        {
9396          "enumerant" : "Vertical2Pixels",
9397          "value" : "0x0001",
9398          "capabilities" : [ "FragmentShadingRateKHR" ],
9399          "version" : "None"
9400        },
9401        {
9402          "enumerant" : "Vertical4Pixels",
9403          "value" : "0x0002",
9404          "capabilities" : [ "FragmentShadingRateKHR" ],
9405          "version" : "None"
9406        },
9407        {
9408          "enumerant" : "Horizontal2Pixels",
9409          "value" : "0x0004",
9410          "capabilities" : [ "FragmentShadingRateKHR" ],
9411          "version" : "None"
9412        },
9413        {
9414          "enumerant" : "Horizontal4Pixels",
9415          "value" : "0x0008",
9416          "capabilities" : [ "FragmentShadingRateKHR" ],
9417          "version" : "None"
9418        }
9419      ]
9420    },
9421    {
9422      "category" : "ValueEnum",
9423      "kind" : "SourceLanguage",
9424      "enumerants" : [
9425        {
9426          "enumerant" : "Unknown",
9427          "value" : 0
9428        },
9429        {
9430          "enumerant" : "ESSL",
9431          "value" : 1
9432        },
9433        {
9434          "enumerant" : "GLSL",
9435          "value" : 2
9436        },
9437        {
9438          "enumerant" : "OpenCL_C",
9439          "value" : 3
9440        },
9441        {
9442          "enumerant" : "OpenCL_CPP",
9443          "value" : 4
9444        },
9445        {
9446          "enumerant" : "HLSL",
9447          "value" : 5
9448        },
9449        {
9450          "enumerant" : "CPP_for_OpenCL",
9451          "value" : 6
9452        },
9453        {
9454          "enumerant" : "SYCL",
9455          "value" : 7
9456        }
9457      ]
9458    },
9459    {
9460      "category" : "ValueEnum",
9461      "kind" : "ExecutionModel",
9462      "enumerants" : [
9463        {
9464          "enumerant" : "Vertex",
9465          "value" : 0,
9466          "capabilities" : [ "Shader" ]
9467        },
9468        {
9469          "enumerant" : "TessellationControl",
9470          "value" : 1,
9471          "capabilities" : [ "Tessellation" ]
9472        },
9473        {
9474          "enumerant" : "TessellationEvaluation",
9475          "value" : 2,
9476          "capabilities" : [ "Tessellation" ]
9477        },
9478        {
9479          "enumerant" : "Geometry",
9480          "value" : 3,
9481          "capabilities" : [ "Geometry" ]
9482        },
9483        {
9484          "enumerant" : "Fragment",
9485          "value" : 4,
9486          "capabilities" : [ "Shader" ]
9487        },
9488        {
9489          "enumerant" : "GLCompute",
9490          "value" : 5,
9491          "capabilities" : [ "Shader" ]
9492        },
9493        {
9494          "enumerant" : "Kernel",
9495          "value" : 6,
9496          "capabilities" : [ "Kernel" ]
9497        },
9498        {
9499          "enumerant" : "TaskNV",
9500          "value" : 5267,
9501          "capabilities" : [ "MeshShadingNV" ],
9502          "version" : "None"
9503        },
9504        {
9505          "enumerant" : "MeshNV",
9506          "value" : 5268,
9507          "capabilities" : [ "MeshShadingNV" ],
9508          "version" : "None"
9509        },
9510        {
9511          "enumerant" : "RayGenerationNV",
9512          "value" : 5313,
9513          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9514          "version" : "None"
9515        },
9516        {
9517          "enumerant" : "RayGenerationKHR",
9518          "value" : 5313,
9519          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9520          "version" : "None"
9521        },
9522        {
9523          "enumerant" : "IntersectionNV",
9524          "value" : 5314,
9525          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9526          "version" : "None"
9527        },
9528        {
9529          "enumerant" : "IntersectionKHR",
9530          "value" : 5314,
9531          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9532          "version" : "None"
9533        },
9534        {
9535          "enumerant" : "AnyHitNV",
9536          "value" : 5315,
9537          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9538          "version" : "None"
9539        },
9540        {
9541          "enumerant" : "AnyHitKHR",
9542          "value" : 5315,
9543          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9544          "version" : "None"
9545        },
9546        {
9547          "enumerant" : "ClosestHitNV",
9548          "value" : 5316,
9549          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9550          "version" : "None"
9551        },
9552        {
9553          "enumerant" : "ClosestHitKHR",
9554          "value" : 5316,
9555          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9556          "version" : "None"
9557        },
9558        {
9559          "enumerant" : "MissNV",
9560          "value" : 5317,
9561          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9562          "version" : "None"
9563        },
9564        {
9565          "enumerant" : "MissKHR",
9566          "value" : 5317,
9567          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9568          "version" : "None"
9569        },
9570        {
9571          "enumerant" : "CallableNV",
9572          "value" : 5318,
9573          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9574          "version" : "None"
9575        },
9576        {
9577          "enumerant" : "CallableKHR",
9578          "value" : 5318,
9579          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9580          "version" : "None"
9581        }
9582      ]
9583    },
9584    {
9585      "category" : "ValueEnum",
9586      "kind" : "AddressingModel",
9587      "enumerants" : [
9588        {
9589          "enumerant" : "Logical",
9590          "value" : 0
9591        },
9592        {
9593          "enumerant" : "Physical32",
9594          "value" : 1,
9595          "capabilities" : [ "Addresses" ]
9596        },
9597        {
9598          "enumerant" : "Physical64",
9599          "value" : 2,
9600          "capabilities" : [ "Addresses" ]
9601        },
9602        {
9603          "enumerant" : "PhysicalStorageBuffer64",
9604          "value" : 5348,
9605          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
9606          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9607          "version" : "1.5"
9608        },
9609        {
9610          "enumerant" : "PhysicalStorageBuffer64EXT",
9611          "value" : 5348,
9612          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9613          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9614          "version" : "1.5"
9615        }
9616      ]
9617    },
9618    {
9619      "category" : "ValueEnum",
9620      "kind" : "MemoryModel",
9621      "enumerants" : [
9622        {
9623          "enumerant" : "Simple",
9624          "value" : 0,
9625          "capabilities" : [ "Shader" ]
9626        },
9627        {
9628          "enumerant" : "GLSL450",
9629          "value" : 1,
9630          "capabilities" : [ "Shader" ]
9631        },
9632        {
9633          "enumerant" : "OpenCL",
9634          "value" : 2,
9635          "capabilities" : [ "Kernel" ]
9636        },
9637        {
9638          "enumerant" : "Vulkan",
9639          "value" : 3,
9640          "capabilities" : [ "VulkanMemoryModel" ],
9641          "version" : "1.5"
9642        },
9643        {
9644          "enumerant" : "VulkanKHR",
9645          "value" : 3,
9646          "capabilities" : [ "VulkanMemoryModel" ],
9647          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9648          "version" : "1.5"
9649        }
9650      ]
9651    },
9652    {
9653      "category" : "ValueEnum",
9654      "kind" : "ExecutionMode",
9655      "enumerants" : [
9656        {
9657          "enumerant" : "Invocations",
9658          "value" : 0,
9659          "capabilities" : [ "Geometry" ],
9660          "parameters" : [
9661            { "kind" : "LiteralInteger", "name" : "'Number of <<Invocation,invocations>>'" }
9662          ]
9663        },
9664        {
9665          "enumerant" : "SpacingEqual",
9666          "value" : 1,
9667          "capabilities" : [ "Tessellation" ]
9668        },
9669        {
9670          "enumerant" : "SpacingFractionalEven",
9671          "value" : 2,
9672          "capabilities" : [ "Tessellation" ]
9673        },
9674        {
9675          "enumerant" : "SpacingFractionalOdd",
9676          "value" : 3,
9677          "capabilities" : [ "Tessellation" ]
9678        },
9679        {
9680          "enumerant" : "VertexOrderCw",
9681          "value" : 4,
9682          "capabilities" : [ "Tessellation" ]
9683        },
9684        {
9685          "enumerant" : "VertexOrderCcw",
9686          "value" : 5,
9687          "capabilities" : [ "Tessellation" ]
9688        },
9689        {
9690          "enumerant" : "PixelCenterInteger",
9691          "value" : 6,
9692          "capabilities" : [ "Shader" ]
9693        },
9694        {
9695          "enumerant" : "OriginUpperLeft",
9696          "value" : 7,
9697          "capabilities" : [ "Shader" ]
9698        },
9699        {
9700          "enumerant" : "OriginLowerLeft",
9701          "value" : 8,
9702          "capabilities" : [ "Shader" ]
9703        },
9704        {
9705          "enumerant" : "EarlyFragmentTests",
9706          "value" : 9,
9707          "capabilities" : [ "Shader" ]
9708        },
9709        {
9710          "enumerant" : "PointMode",
9711          "value" : 10,
9712          "capabilities" : [ "Tessellation" ]
9713        },
9714        {
9715          "enumerant" : "Xfb",
9716          "value" : 11,
9717          "capabilities" : [ "TransformFeedback" ]
9718        },
9719        {
9720          "enumerant" : "DepthReplacing",
9721          "value" : 12,
9722          "capabilities" : [ "Shader" ]
9723        },
9724        {
9725          "enumerant" : "DepthGreater",
9726          "value" : 14,
9727          "capabilities" : [ "Shader" ]
9728        },
9729        {
9730          "enumerant" : "DepthLess",
9731          "value" : 15,
9732          "capabilities" : [ "Shader" ]
9733        },
9734        {
9735          "enumerant" : "DepthUnchanged",
9736          "value" : 16,
9737          "capabilities" : [ "Shader" ]
9738        },
9739        {
9740          "enumerant" : "LocalSize",
9741          "value" : 17,
9742          "parameters" : [
9743            { "kind" : "LiteralInteger", "name" : "'x size'" },
9744            { "kind" : "LiteralInteger", "name" : "'y size'" },
9745            { "kind" : "LiteralInteger", "name" : "'z size'" }
9746          ]
9747        },
9748        {
9749          "enumerant" : "LocalSizeHint",
9750          "value" : 18,
9751          "capabilities" : [ "Kernel" ],
9752          "parameters" : [
9753            { "kind" : "LiteralInteger", "name" : "'x size'" },
9754            { "kind" : "LiteralInteger", "name" : "'y size'" },
9755            { "kind" : "LiteralInteger", "name" : "'z size'" }
9756          ]
9757        },
9758        {
9759          "enumerant" : "InputPoints",
9760          "value" : 19,
9761          "capabilities" : [ "Geometry" ]
9762        },
9763        {
9764          "enumerant" : "InputLines",
9765          "value" : 20,
9766          "capabilities" : [ "Geometry" ]
9767        },
9768        {
9769          "enumerant" : "InputLinesAdjacency",
9770          "value" : 21,
9771          "capabilities" : [ "Geometry" ]
9772        },
9773        {
9774          "enumerant" : "Triangles",
9775          "value" : 22,
9776          "capabilities" : [ "Geometry", "Tessellation" ]
9777        },
9778        {
9779          "enumerant" : "InputTrianglesAdjacency",
9780          "value" : 23,
9781          "capabilities" : [ "Geometry" ]
9782        },
9783        {
9784          "enumerant" : "Quads",
9785          "value" : 24,
9786          "capabilities" : [ "Tessellation" ]
9787        },
9788        {
9789          "enumerant" : "Isolines",
9790          "value" : 25,
9791          "capabilities" : [ "Tessellation" ]
9792        },
9793        {
9794          "enumerant" : "OutputVertices",
9795          "value" : 26,
9796          "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV" ],
9797          "parameters" : [
9798            { "kind" : "LiteralInteger", "name" : "'Vertex count'" }
9799          ]
9800        },
9801        {
9802          "enumerant" : "OutputPoints",
9803          "value" : 27,
9804          "capabilities" : [ "Geometry", "MeshShadingNV" ]
9805        },
9806        {
9807          "enumerant" : "OutputLineStrip",
9808          "value" : 28,
9809          "capabilities" : [ "Geometry" ]
9810        },
9811        {
9812          "enumerant" : "OutputTriangleStrip",
9813          "value" : 29,
9814          "capabilities" : [ "Geometry" ]
9815        },
9816        {
9817          "enumerant" : "VecTypeHint",
9818          "value" : 30,
9819          "capabilities" : [ "Kernel" ],
9820          "parameters" : [
9821            { "kind" : "LiteralInteger", "name" : "'Vector type'" }
9822          ]
9823        },
9824        {
9825          "enumerant" : "ContractionOff",
9826          "value" : 31,
9827          "capabilities" : [ "Kernel" ]
9828        },
9829        {
9830          "enumerant" : "Initializer",
9831          "value" : 33,
9832          "capabilities" : [ "Kernel" ],
9833          "version" : "1.1"
9834        },
9835        {
9836          "enumerant" : "Finalizer",
9837          "value" : 34,
9838          "capabilities" : [ "Kernel" ],
9839          "version" : "1.1"
9840        },
9841        {
9842          "enumerant" : "SubgroupSize",
9843          "value" : 35,
9844          "capabilities" : [ "SubgroupDispatch" ],
9845          "parameters" : [
9846            { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
9847          ],
9848          "version" : "1.1"
9849        },
9850        {
9851          "enumerant" : "SubgroupsPerWorkgroup",
9852          "value" : 36,
9853          "capabilities" : [ "SubgroupDispatch" ],
9854          "parameters" : [
9855            { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
9856          ],
9857          "version" : "1.1"
9858        },
9859        {
9860          "enumerant" : "SubgroupsPerWorkgroupId",
9861          "value" : 37,
9862          "capabilities" : [ "SubgroupDispatch" ],
9863          "parameters" : [
9864            { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
9865          ],
9866          "version" : "1.2"
9867        },
9868        {
9869          "enumerant" : "LocalSizeId",
9870          "value" : 38,
9871          "parameters" : [
9872            { "kind" : "IdRef", "name" : "'x size'" },
9873            { "kind" : "IdRef", "name" : "'y size'" },
9874            { "kind" : "IdRef", "name" : "'z size'" }
9875          ],
9876          "version" : "1.2"
9877        },
9878        {
9879          "enumerant" : "LocalSizeHintId",
9880          "value" : 39,
9881          "capabilities" : [ "Kernel" ],
9882          "parameters" : [
9883            { "kind" : "IdRef", "name" : "'x size hint'" },
9884            { "kind" : "IdRef", "name" : "'y size hint'" },
9885            { "kind" : "IdRef", "name" : "'z size hint'" }
9886          ],
9887          "version" : "1.2"
9888        },
9889        {
9890          "enumerant" : "SubgroupUniformControlFlowKHR",
9891          "value" : 4421,
9892          "capabilities" : [ "Shader" ],
9893          "extensions" : [ "SPV_KHR_subgroup_uniform_control_flow" ],
9894          "version" : "None"
9895        },
9896        {
9897          "enumerant" : "PostDepthCoverage",
9898          "value" : 4446,
9899          "capabilities" : [ "SampleMaskPostDepthCoverage" ],
9900          "extensions" : [ "SPV_KHR_post_depth_coverage" ],
9901          "version" : "None"
9902        },
9903        {
9904          "enumerant" : "DenormPreserve",
9905          "value" : 4459,
9906          "capabilities" : [ "DenormPreserve" ],
9907          "extensions" : [ "SPV_KHR_float_controls" ],
9908          "parameters" : [
9909            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9910          ],
9911          "version" : "1.4"
9912        },
9913        {
9914          "enumerant" : "DenormFlushToZero",
9915          "value" : 4460,
9916          "capabilities" : [ "DenormFlushToZero" ],
9917          "extensions" : [ "SPV_KHR_float_controls" ],
9918          "parameters" : [
9919            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9920          ],
9921          "version" : "1.4"
9922        },
9923        {
9924          "enumerant" : "SignedZeroInfNanPreserve",
9925          "value" : 4461,
9926          "capabilities" : [ "SignedZeroInfNanPreserve" ],
9927          "extensions" : [ "SPV_KHR_float_controls" ],
9928          "parameters" : [
9929            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9930          ],
9931          "version" : "1.4"
9932        },
9933        {
9934          "enumerant" : "RoundingModeRTE",
9935          "value" : 4462,
9936          "capabilities" : [ "RoundingModeRTE" ],
9937          "extensions" : [ "SPV_KHR_float_controls" ],
9938          "parameters" : [
9939            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9940          ],
9941          "version" : "1.4"
9942        },
9943        {
9944          "enumerant" : "RoundingModeRTZ",
9945          "value" : 4463,
9946          "capabilities" : [ "RoundingModeRTZ" ],
9947          "extensions" : [ "SPV_KHR_float_controls" ],
9948          "parameters" : [
9949            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9950          ],
9951          "version" : "1.4"
9952        },
9953        {
9954          "enumerant": "EarlyAndLateFragmentTestsAMD",
9955          "value": 5017,
9956          "capabilities": [ "Shader" ],
9957          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests" ],
9958          "version": "None"
9959        },
9960        {
9961          "enumerant" : "StencilRefReplacingEXT",
9962          "value" : 5027,
9963          "capabilities" : [ "StencilExportEXT" ],
9964          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
9965          "version" : "None"
9966        },
9967        {
9968          "enumerant": "StencilRefUnchangedFrontAMD",
9969          "value": 5079,
9970          "capabilities": [ "StencilExportEXT" ],
9971          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
9972          "version": "None"
9973        },
9974        {
9975          "enumerant": "StencilRefGreaterFrontAMD",
9976          "value": 5080,
9977          "capabilities": [ "StencilExportEXT" ],
9978          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
9979          "version": "None"
9980        },
9981        {
9982          "enumerant": "StencilRefLessFrontAMD",
9983          "value": 5081,
9984          "capabilities": [ "StencilExportEXT" ],
9985          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
9986          "version": "None"
9987        },
9988        {
9989          "enumerant": "StencilRefUnchangedBackAMD",
9990          "value": 5082,
9991          "capabilities": [ "StencilExportEXT" ],
9992          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
9993          "version": "None"
9994        },
9995        {
9996          "enumerant": "StencilRefGreaterBackAMD",
9997          "value": 5083,
9998          "capabilities": [ "StencilExportEXT" ],
9999          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
10000          "version": "None"
10001        },
10002        {
10003          "enumerant": "StencilRefLessBackAMD",
10004          "value": 5084,
10005          "capabilities": [ "StencilExportEXT" ],
10006          "extensions": [ "SPV_AMD_shader_early_and_late_fragment_tests", "SPV_EXT_shader_stencil_export" ],
10007          "version": "None"
10008        },
10009        {
10010          "enumerant" : "OutputLinesNV",
10011          "value" : 5269,
10012          "capabilities" : [ "MeshShadingNV" ],
10013          "extensions" : [ "SPV_NV_mesh_shader" ],
10014          "version" : "None"
10015        },
10016        {
10017          "enumerant" : "OutputPrimitivesNV",
10018          "value" : 5270,
10019          "capabilities" : [ "MeshShadingNV" ],
10020          "parameters" : [
10021            { "kind" : "LiteralInteger", "name" : "'Primitive count'" }
10022          ],
10023          "extensions" : [ "SPV_NV_mesh_shader" ],
10024          "version" : "None"
10025        },
10026        {
10027          "enumerant" : "DerivativeGroupQuadsNV",
10028          "value" : 5289,
10029          "capabilities" : [ "ComputeDerivativeGroupQuadsNV" ],
10030          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
10031          "version" : "None"
10032        },
10033        {
10034          "enumerant" : "DerivativeGroupLinearNV",
10035          "value" : 5290,
10036          "capabilities" : [ "ComputeDerivativeGroupLinearNV" ],
10037          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
10038          "version" : "None"
10039        },
10040        {
10041          "enumerant" : "OutputTrianglesNV",
10042          "value" : 5298,
10043          "capabilities" : [ "MeshShadingNV" ],
10044          "extensions" : [ "SPV_NV_mesh_shader" ],
10045          "version" : "None"
10046        },
10047        {
10048          "enumerant" : "PixelInterlockOrderedEXT",
10049          "value" : 5366,
10050          "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
10051          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
10052          "version" : "None"
10053        },
10054        {
10055          "enumerant" : "PixelInterlockUnorderedEXT",
10056          "value" : 5367,
10057          "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
10058          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
10059          "version" : "None"
10060        },
10061        {
10062          "enumerant" : "SampleInterlockOrderedEXT",
10063          "value" : 5368,
10064          "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
10065          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
10066          "version" : "None"
10067        },
10068        {
10069          "enumerant" : "SampleInterlockUnorderedEXT",
10070          "value" : 5369,
10071          "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
10072          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
10073          "version" : "None"
10074        },
10075        {
10076          "enumerant" : "ShadingRateInterlockOrderedEXT",
10077          "value" : 5370,
10078          "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
10079          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
10080          "version" : "None"
10081        },
10082        {
10083          "enumerant" : "ShadingRateInterlockUnorderedEXT",
10084          "value" : 5371,
10085          "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
10086          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
10087          "version" : "None"
10088        },
10089        {
10090          "enumerant" : "SharedLocalMemorySizeINTEL",
10091          "value" : 5618,
10092          "parameters" : [
10093            { "kind" : "LiteralInteger", "name" : "'Size'" }
10094          ],
10095          "capabilities" : [ "VectorComputeINTEL" ],
10096          "version" : "None"
10097        },
10098        {
10099          "enumerant" : "RoundingModeRTPINTEL",
10100          "value" : 5620,
10101          "parameters" : [
10102            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
10103          ],
10104          "capabilities" : [ "RoundToInfinityINTEL" ],
10105          "version" : "None"
10106        },
10107        {
10108          "enumerant" : "RoundingModeRTNINTEL",
10109          "value" : 5621,
10110          "parameters" : [
10111            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
10112          ],
10113          "capabilities" : [ "RoundToInfinityINTEL" ],
10114          "version" : "None"
10115        },
10116        {
10117          "enumerant" : "FloatingPointModeALTINTEL",
10118          "value" : 5622,
10119          "parameters" : [
10120            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
10121          ],
10122          "capabilities" : [ "RoundToInfinityINTEL" ],
10123          "version" : "None"
10124        },
10125        {
10126          "enumerant" : "FloatingPointModeIEEEINTEL",
10127          "value" : 5623,
10128          "parameters" : [
10129            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
10130          ],
10131          "capabilities" : [ "RoundToInfinityINTEL" ],
10132          "version" : "None"
10133        },
10134        {
10135          "enumerant" : "MaxWorkgroupSizeINTEL",
10136          "value" : 5893,
10137          "parameters" : [
10138            { "kind" : "LiteralInteger", "name" : "'max_x_size'" },
10139            { "kind" : "LiteralInteger", "name" : "'max_y_size'" },
10140            { "kind" : "LiteralInteger", "name" : "'max_z_size'" }
10141          ],
10142          "capabilities" : [ "KernelAttributesINTEL" ],
10143          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
10144          "version" : "None"
10145        },
10146        {
10147          "enumerant" : "MaxWorkDimINTEL",
10148          "value" : 5894,
10149          "parameters" : [
10150            { "kind" : "LiteralInteger", "name" : "'max_dimensions'" }
10151          ],
10152          "capabilities" : [ "KernelAttributesINTEL" ],
10153          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
10154          "version" : "None"
10155        },
10156        {
10157          "enumerant" : "NoGlobalOffsetINTEL",
10158          "value" : 5895,
10159          "capabilities" : [ "KernelAttributesINTEL" ],
10160          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
10161          "version" : "None"
10162        },
10163        {
10164          "enumerant" : "NumSIMDWorkitemsINTEL",
10165          "value" : 5896,
10166          "parameters" : [
10167            { "kind" : "LiteralInteger", "name" : "'vector_width'" }
10168          ],
10169          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
10170          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
10171          "version" : "None"
10172        },
10173        {
10174          "enumerant" : "SchedulerTargetFmaxMhzINTEL",
10175          "value" : 5903,
10176          "parameters" : [
10177            { "kind" : "LiteralInteger", "name" : "'target_fmax'" }
10178          ],
10179          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
10180          "version" : "None"
10181        },
10182        {
10183          "enumerant" : "NamedBarrierCountINTEL",
10184          "value" : 6417,
10185          "parameters" : [
10186            { "kind" : "LiteralInteger", "name" : "'Barrier Count'" }
10187          ],
10188          "capabilities" : [ "VectorComputeINTEL" ],
10189          "version" : "None"
10190        }
10191      ]
10192    },
10193    {
10194      "category" : "ValueEnum",
10195      "kind" : "StorageClass",
10196      "enumerants" : [
10197        {
10198          "enumerant" : "UniformConstant",
10199          "value" : 0
10200        },
10201        {
10202          "enumerant" : "Input",
10203          "value" : 1
10204        },
10205        {
10206          "enumerant" : "Uniform",
10207          "value" : 2,
10208          "capabilities" : [ "Shader" ]
10209        },
10210        {
10211          "enumerant" : "Output",
10212          "value" : 3,
10213          "capabilities" : [ "Shader" ]
10214        },
10215        {
10216          "enumerant" : "Workgroup",
10217          "value" : 4
10218        },
10219        {
10220          "enumerant" : "CrossWorkgroup",
10221          "value" : 5
10222        },
10223        {
10224          "enumerant" : "Private",
10225          "value" : 6,
10226          "capabilities" : [ "Shader", "VectorComputeINTEL" ]
10227        },
10228        {
10229          "enumerant" : "Function",
10230          "value" : 7
10231        },
10232        {
10233          "enumerant" : "Generic",
10234          "value" : 8,
10235          "capabilities" : [ "GenericPointer" ]
10236        },
10237        {
10238          "enumerant" : "PushConstant",
10239          "value" : 9,
10240          "capabilities" : [ "Shader" ]
10241        },
10242        {
10243          "enumerant" : "AtomicCounter",
10244          "value" : 10,
10245          "capabilities" : [ "AtomicStorage" ]
10246        },
10247        {
10248          "enumerant" : "Image",
10249          "value" : 11
10250        },
10251        {
10252          "enumerant" : "StorageBuffer",
10253          "value" : 12,
10254          "extensions" : [
10255            "SPV_KHR_storage_buffer_storage_class",
10256            "SPV_KHR_variable_pointers"
10257          ],
10258          "capabilities" : [ "Shader" ],
10259          "version" : "1.3"
10260        },
10261        {
10262          "enumerant" : "CallableDataNV",
10263          "value" : 5328,
10264          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10265          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10266          "version" : "None"
10267        },
10268        {
10269          "enumerant" : "CallableDataKHR",
10270          "value" : 5328,
10271          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10272          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10273          "version" : "None"
10274        },
10275        {
10276          "enumerant" : "IncomingCallableDataNV",
10277          "value" : 5329,
10278          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10279          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10280          "version" : "None"
10281        },
10282        {
10283          "enumerant" : "IncomingCallableDataKHR",
10284          "value" : 5329,
10285          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10286          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10287          "version" : "None"
10288        },
10289        {
10290          "enumerant" : "RayPayloadNV",
10291          "value" : 5338,
10292          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10293          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10294          "version" : "None"
10295        },
10296        {
10297          "enumerant" : "RayPayloadKHR",
10298          "value" : 5338,
10299          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10300          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10301          "version" : "None"
10302        },
10303        {
10304          "enumerant" : "HitAttributeNV",
10305          "value" : 5339,
10306          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10307          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10308          "version" : "None"
10309        },
10310        {
10311          "enumerant" : "HitAttributeKHR",
10312          "value" : 5339,
10313          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10314          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10315          "version" : "None"
10316        },
10317        {
10318          "enumerant" : "IncomingRayPayloadNV",
10319          "value" : 5342,
10320          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10321          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10322          "version" : "None"
10323        },
10324        {
10325          "enumerant" : "IncomingRayPayloadKHR",
10326          "value" : 5342,
10327          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10328          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10329          "version" : "None"
10330        },
10331        {
10332          "enumerant" : "ShaderRecordBufferNV",
10333          "value" : 5343,
10334          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10335          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10336          "version" : "None"
10337        },
10338        {
10339          "enumerant" : "ShaderRecordBufferKHR",
10340          "value" : 5343,
10341          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10342          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
10343          "version" : "None"
10344        },
10345        {
10346          "enumerant" : "PhysicalStorageBuffer",
10347          "value" : 5349,
10348          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
10349          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
10350          "version" : "1.5"
10351        },
10352        {
10353          "enumerant" : "PhysicalStorageBufferEXT",
10354          "value" : 5349,
10355          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
10356          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
10357          "version" : "1.5"
10358        },
10359        {
10360          "enumerant" : "CodeSectionINTEL",
10361          "value" : 5605,
10362          "extensions" : [ "SPV_INTEL_function_pointers" ],
10363          "capabilities" : [ "FunctionPointersINTEL" ],
10364          "version" : "None"
10365        },
10366        {
10367          "enumerant" : "DeviceOnlyINTEL",
10368          "value" : 5936,
10369          "extensions" : [
10370            "SPV_INTEL_usm_storage_classes"
10371          ],
10372          "capabilities" : [ "USMStorageClassesINTEL" ],
10373          "version" : "None"
10374        },
10375        {
10376          "enumerant" : "HostOnlyINTEL",
10377          "value" : 5937,
10378          "extensions" : [
10379            "SPV_INTEL_usm_storage_classes"
10380          ],
10381          "capabilities" : [ "USMStorageClassesINTEL" ],
10382          "version" : "None"
10383        }
10384      ]
10385    },
10386    {
10387      "category" : "ValueEnum",
10388      "kind" : "Dim",
10389      "enumerants" : [
10390        {
10391          "enumerant" : "1D",
10392          "value" : 0,
10393          "capabilities" : [ "Sampled1D", "Image1D" ]
10394        },
10395        {
10396          "enumerant" : "2D",
10397          "value" : 1,
10398          "capabilities" : [ "Shader", "Kernel", "ImageMSArray" ]
10399        },
10400        {
10401          "enumerant" : "3D",
10402          "value" : 2
10403        },
10404        {
10405          "enumerant" : "Cube",
10406          "value" : 3,
10407          "capabilities" : [ "Shader", "ImageCubeArray" ]
10408        },
10409        {
10410          "enumerant" : "Rect",
10411          "value" : 4,
10412          "capabilities" : [ "SampledRect", "ImageRect" ]
10413        },
10414        {
10415          "enumerant" : "Buffer",
10416          "value" : 5,
10417          "capabilities" : [ "SampledBuffer", "ImageBuffer" ]
10418        },
10419        {
10420          "enumerant" : "SubpassData",
10421          "value" : 6,
10422          "capabilities" : [ "InputAttachment" ]
10423        }
10424      ]
10425    },
10426    {
10427      "category" : "ValueEnum",
10428      "kind" : "SamplerAddressingMode",
10429      "enumerants" : [
10430        {
10431          "enumerant" : "None",
10432          "value" : 0,
10433          "capabilities" : [ "Kernel" ]
10434        },
10435        {
10436          "enumerant" : "ClampToEdge",
10437          "value" : 1,
10438          "capabilities" : [ "Kernel" ]
10439        },
10440        {
10441          "enumerant" : "Clamp",
10442          "value" : 2,
10443          "capabilities" : [ "Kernel" ]
10444        },
10445        {
10446          "enumerant" : "Repeat",
10447          "value" : 3,
10448          "capabilities" : [ "Kernel" ]
10449        },
10450        {
10451          "enumerant" : "RepeatMirrored",
10452          "value" : 4,
10453          "capabilities" : [ "Kernel" ]
10454        }
10455      ]
10456    },
10457    {
10458      "category" : "ValueEnum",
10459      "kind" : "SamplerFilterMode",
10460      "enumerants" : [
10461        {
10462          "enumerant" : "Nearest",
10463          "value" : 0,
10464          "capabilities" : [ "Kernel" ]
10465        },
10466        {
10467          "enumerant" : "Linear",
10468          "value" : 1,
10469          "capabilities" : [ "Kernel" ]
10470        }
10471      ]
10472    },
10473    {
10474      "category" : "ValueEnum",
10475      "kind" : "ImageFormat",
10476      "enumerants" : [
10477        {
10478          "enumerant" : "Unknown",
10479          "value" : 0
10480        },
10481        {
10482          "enumerant" : "Rgba32f",
10483          "value" : 1,
10484          "capabilities" : [ "Shader" ]
10485        },
10486        {
10487          "enumerant" : "Rgba16f",
10488          "value" : 2,
10489          "capabilities" : [ "Shader" ]
10490        },
10491        {
10492          "enumerant" : "R32f",
10493          "value" : 3,
10494          "capabilities" : [ "Shader" ]
10495        },
10496        {
10497          "enumerant" : "Rgba8",
10498          "value" : 4,
10499          "capabilities" : [ "Shader" ]
10500        },
10501        {
10502          "enumerant" : "Rgba8Snorm",
10503          "value" : 5,
10504          "capabilities" : [ "Shader" ]
10505        },
10506        {
10507          "enumerant" : "Rg32f",
10508          "value" : 6,
10509          "capabilities" : [ "StorageImageExtendedFormats" ]
10510        },
10511        {
10512          "enumerant" : "Rg16f",
10513          "value" : 7,
10514          "capabilities" : [ "StorageImageExtendedFormats" ]
10515        },
10516        {
10517          "enumerant" : "R11fG11fB10f",
10518          "value" : 8,
10519          "capabilities" : [ "StorageImageExtendedFormats" ]
10520        },
10521        {
10522          "enumerant" : "R16f",
10523          "value" : 9,
10524          "capabilities" : [ "StorageImageExtendedFormats" ]
10525        },
10526        {
10527          "enumerant" : "Rgba16",
10528          "value" : 10,
10529          "capabilities" : [ "StorageImageExtendedFormats" ]
10530        },
10531        {
10532          "enumerant" : "Rgb10A2",
10533          "value" : 11,
10534          "capabilities" : [ "StorageImageExtendedFormats" ]
10535        },
10536        {
10537          "enumerant" : "Rg16",
10538          "value" : 12,
10539          "capabilities" : [ "StorageImageExtendedFormats" ]
10540        },
10541        {
10542          "enumerant" : "Rg8",
10543          "value" : 13,
10544          "capabilities" : [ "StorageImageExtendedFormats" ]
10545        },
10546        {
10547          "enumerant" : "R16",
10548          "value" : 14,
10549          "capabilities" : [ "StorageImageExtendedFormats" ]
10550        },
10551        {
10552          "enumerant" : "R8",
10553          "value" : 15,
10554          "capabilities" : [ "StorageImageExtendedFormats" ]
10555        },
10556        {
10557          "enumerant" : "Rgba16Snorm",
10558          "value" : 16,
10559          "capabilities" : [ "StorageImageExtendedFormats" ]
10560        },
10561        {
10562          "enumerant" : "Rg16Snorm",
10563          "value" : 17,
10564          "capabilities" : [ "StorageImageExtendedFormats" ]
10565        },
10566        {
10567          "enumerant" : "Rg8Snorm",
10568          "value" : 18,
10569          "capabilities" : [ "StorageImageExtendedFormats" ]
10570        },
10571        {
10572          "enumerant" : "R16Snorm",
10573          "value" : 19,
10574          "capabilities" : [ "StorageImageExtendedFormats" ]
10575        },
10576        {
10577          "enumerant" : "R8Snorm",
10578          "value" : 20,
10579          "capabilities" : [ "StorageImageExtendedFormats" ]
10580        },
10581        {
10582          "enumerant" : "Rgba32i",
10583          "value" : 21,
10584          "capabilities" : [ "Shader" ]
10585        },
10586        {
10587          "enumerant" : "Rgba16i",
10588          "value" : 22,
10589          "capabilities" : [ "Shader" ]
10590        },
10591        {
10592          "enumerant" : "Rgba8i",
10593          "value" : 23,
10594          "capabilities" : [ "Shader" ]
10595        },
10596        {
10597          "enumerant" : "R32i",
10598          "value" : 24,
10599          "capabilities" : [ "Shader" ]
10600        },
10601        {
10602          "enumerant" : "Rg32i",
10603          "value" : 25,
10604          "capabilities" : [ "StorageImageExtendedFormats" ]
10605        },
10606        {
10607          "enumerant" : "Rg16i",
10608          "value" : 26,
10609          "capabilities" : [ "StorageImageExtendedFormats" ]
10610        },
10611        {
10612          "enumerant" : "Rg8i",
10613          "value" : 27,
10614          "capabilities" : [ "StorageImageExtendedFormats" ]
10615        },
10616        {
10617          "enumerant" : "R16i",
10618          "value" : 28,
10619          "capabilities" : [ "StorageImageExtendedFormats" ]
10620        },
10621        {
10622          "enumerant" : "R8i",
10623          "value" : 29,
10624          "capabilities" : [ "StorageImageExtendedFormats" ]
10625        },
10626        {
10627          "enumerant" : "Rgba32ui",
10628          "value" : 30,
10629          "capabilities" : [ "Shader" ]
10630        },
10631        {
10632          "enumerant" : "Rgba16ui",
10633          "value" : 31,
10634          "capabilities" : [ "Shader" ]
10635        },
10636        {
10637          "enumerant" : "Rgba8ui",
10638          "value" : 32,
10639          "capabilities" : [ "Shader" ]
10640        },
10641        {
10642          "enumerant" : "R32ui",
10643          "value" : 33,
10644          "capabilities" : [ "Shader" ]
10645        },
10646        {
10647          "enumerant" : "Rgb10a2ui",
10648          "value" : 34,
10649          "capabilities" : [ "StorageImageExtendedFormats" ]
10650        },
10651        {
10652          "enumerant" : "Rg32ui",
10653          "value" : 35,
10654          "capabilities" : [ "StorageImageExtendedFormats" ]
10655        },
10656        {
10657          "enumerant" : "Rg16ui",
10658          "value" : 36,
10659          "capabilities" : [ "StorageImageExtendedFormats" ]
10660        },
10661        {
10662          "enumerant" : "Rg8ui",
10663          "value" : 37,
10664          "capabilities" : [ "StorageImageExtendedFormats" ]
10665        },
10666        {
10667          "enumerant" : "R16ui",
10668          "value" : 38,
10669          "capabilities" : [ "StorageImageExtendedFormats" ]
10670        },
10671        {
10672          "enumerant" : "R8ui",
10673          "value" : 39,
10674          "capabilities" : [ "StorageImageExtendedFormats" ]
10675        },
10676	{
10677          "enumerant" : "R64ui",
10678          "value" : 40,
10679          "capabilities" : [ "Int64ImageEXT" ]
10680        },
10681        {
10682          "enumerant" : "R64i",
10683          "value" : 41,
10684          "capabilities" : [ "Int64ImageEXT" ]
10685        }
10686      ]
10687    },
10688    {
10689      "category" : "ValueEnum",
10690      "kind" : "ImageChannelOrder",
10691      "enumerants" : [
10692        {
10693          "enumerant" : "R",
10694          "value" : 0,
10695          "capabilities" : [ "Kernel" ]
10696        },
10697        {
10698          "enumerant" : "A",
10699          "value" : 1,
10700          "capabilities" : [ "Kernel" ]
10701        },
10702        {
10703          "enumerant" : "RG",
10704          "value" : 2,
10705          "capabilities" : [ "Kernel" ]
10706        },
10707        {
10708          "enumerant" : "RA",
10709          "value" : 3,
10710          "capabilities" : [ "Kernel" ]
10711        },
10712        {
10713          "enumerant" : "RGB",
10714          "value" : 4,
10715          "capabilities" : [ "Kernel" ]
10716        },
10717        {
10718          "enumerant" : "RGBA",
10719          "value" : 5,
10720          "capabilities" : [ "Kernel" ]
10721        },
10722        {
10723          "enumerant" : "BGRA",
10724          "value" : 6,
10725          "capabilities" : [ "Kernel" ]
10726        },
10727        {
10728          "enumerant" : "ARGB",
10729          "value" : 7,
10730          "capabilities" : [ "Kernel" ]
10731        },
10732        {
10733          "enumerant" : "Intensity",
10734          "value" : 8,
10735          "capabilities" : [ "Kernel" ]
10736        },
10737        {
10738          "enumerant" : "Luminance",
10739          "value" : 9,
10740          "capabilities" : [ "Kernel" ]
10741        },
10742        {
10743          "enumerant" : "Rx",
10744          "value" : 10,
10745          "capabilities" : [ "Kernel" ]
10746        },
10747        {
10748          "enumerant" : "RGx",
10749          "value" : 11,
10750          "capabilities" : [ "Kernel" ]
10751        },
10752        {
10753          "enumerant" : "RGBx",
10754          "value" : 12,
10755          "capabilities" : [ "Kernel" ]
10756        },
10757        {
10758          "enumerant" : "Depth",
10759          "value" : 13,
10760          "capabilities" : [ "Kernel" ]
10761        },
10762        {
10763          "enumerant" : "DepthStencil",
10764          "value" : 14,
10765          "capabilities" : [ "Kernel" ]
10766        },
10767        {
10768          "enumerant" : "sRGB",
10769          "value" : 15,
10770          "capabilities" : [ "Kernel" ]
10771        },
10772        {
10773          "enumerant" : "sRGBx",
10774          "value" : 16,
10775          "capabilities" : [ "Kernel" ]
10776        },
10777        {
10778          "enumerant" : "sRGBA",
10779          "value" : 17,
10780          "capabilities" : [ "Kernel" ]
10781        },
10782        {
10783          "enumerant" : "sBGRA",
10784          "value" : 18,
10785          "capabilities" : [ "Kernel" ]
10786        },
10787        {
10788          "enumerant" : "ABGR",
10789          "value" : 19,
10790          "capabilities" : [ "Kernel" ]
10791        }
10792      ]
10793    },
10794    {
10795      "category" : "ValueEnum",
10796      "kind" : "ImageChannelDataType",
10797      "enumerants" : [
10798        {
10799          "enumerant" : "SnormInt8",
10800          "value" : 0,
10801          "capabilities" : [ "Kernel" ]
10802        },
10803        {
10804          "enumerant" : "SnormInt16",
10805          "value" : 1,
10806          "capabilities" : [ "Kernel" ]
10807        },
10808        {
10809          "enumerant" : "UnormInt8",
10810          "value" : 2,
10811          "capabilities" : [ "Kernel" ]
10812        },
10813        {
10814          "enumerant" : "UnormInt16",
10815          "value" : 3,
10816          "capabilities" : [ "Kernel" ]
10817        },
10818        {
10819          "enumerant" : "UnormShort565",
10820          "value" : 4,
10821          "capabilities" : [ "Kernel" ]
10822        },
10823        {
10824          "enumerant" : "UnormShort555",
10825          "value" : 5,
10826          "capabilities" : [ "Kernel" ]
10827        },
10828        {
10829          "enumerant" : "UnormInt101010",
10830          "value" : 6,
10831          "capabilities" : [ "Kernel" ]
10832        },
10833        {
10834          "enumerant" : "SignedInt8",
10835          "value" : 7,
10836          "capabilities" : [ "Kernel" ]
10837        },
10838        {
10839          "enumerant" : "SignedInt16",
10840          "value" : 8,
10841          "capabilities" : [ "Kernel" ]
10842        },
10843        {
10844          "enumerant" : "SignedInt32",
10845          "value" : 9,
10846          "capabilities" : [ "Kernel" ]
10847        },
10848        {
10849          "enumerant" : "UnsignedInt8",
10850          "value" : 10,
10851          "capabilities" : [ "Kernel" ]
10852        },
10853        {
10854          "enumerant" : "UnsignedInt16",
10855          "value" : 11,
10856          "capabilities" : [ "Kernel" ]
10857        },
10858        {
10859          "enumerant" : "UnsignedInt32",
10860          "value" : 12,
10861          "capabilities" : [ "Kernel" ]
10862        },
10863        {
10864          "enumerant" : "HalfFloat",
10865          "value" : 13,
10866          "capabilities" : [ "Kernel" ]
10867        },
10868        {
10869          "enumerant" : "Float",
10870          "value" : 14,
10871          "capabilities" : [ "Kernel" ]
10872        },
10873        {
10874          "enumerant" : "UnormInt24",
10875          "value" : 15,
10876          "capabilities" : [ "Kernel" ]
10877        },
10878        {
10879          "enumerant" : "UnormInt101010_2",
10880          "value" : 16,
10881          "capabilities" : [ "Kernel" ]
10882        }
10883      ]
10884    },
10885    {
10886      "category" : "ValueEnum",
10887      "kind" : "FPRoundingMode",
10888      "enumerants" : [
10889        {
10890          "enumerant" : "RTE",
10891          "value" : 0
10892        },
10893        {
10894          "enumerant" : "RTZ",
10895          "value" : 1
10896        },
10897        {
10898          "enumerant" : "RTP",
10899          "value" : 2
10900        },
10901        {
10902          "enumerant" : "RTN",
10903          "value" : 3
10904        }
10905      ]
10906    },
10907    {
10908      "category" : "ValueEnum",
10909      "kind" : "FPDenormMode",
10910      "enumerants" : [
10911        {
10912          "enumerant" : "Preserve",
10913          "value" : 0,
10914          "capabilities" : [ "FunctionFloatControlINTEL" ],
10915          "version" : "None"
10916        },
10917        {
10918          "enumerant" : "FlushToZero",
10919          "value" : 1,
10920          "capabilities" : [ "FunctionFloatControlINTEL" ],
10921          "version" : "None"
10922	}
10923      ]
10924    },
10925    {
10926      "category" : "ValueEnum",
10927      "kind" : "QuantizationModes",
10928      "enumerants" : [
10929        {
10930          "enumerant" : "TRN",
10931          "value" : 0,
10932          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10933          "version" : "None"
10934        },
10935        {
10936          "enumerant" : "TRN_ZERO",
10937          "value" : 1,
10938          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10939          "version" : "None"
10940        },
10941        {
10942          "enumerant" : "RND",
10943          "value" : 2,
10944          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10945          "version" : "None"
10946        },
10947        {
10948          "enumerant" : "RND_ZERO",
10949          "value" : 3,
10950          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10951          "version" : "None"
10952        },
10953        {
10954          "enumerant" : "RND_INF",
10955          "value" : 4,
10956          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10957          "version" : "None"
10958        },
10959        {
10960          "enumerant" : "RND_MIN_INF",
10961          "value" : 5,
10962          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10963          "version" : "None"
10964        },
10965        {
10966          "enumerant" : "RND_CONV",
10967          "value" : 6,
10968          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10969          "version" : "None"
10970        },
10971        {
10972          "enumerant" : "RND_CONV_ODD",
10973          "value" : 7,
10974          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10975          "version" : "None"
10976        }
10977      ]
10978    },
10979    {
10980      "category" : "ValueEnum",
10981      "kind" : "FPOperationMode",
10982      "enumerants" : [
10983        {
10984          "enumerant" : "IEEE",
10985          "value" : 0,
10986          "capabilities" : [ "FunctionFloatControlINTEL" ],
10987          "version" : "None"
10988        },
10989        {
10990          "enumerant" : "ALT",
10991          "value" : 1,
10992          "capabilities" : [ "FunctionFloatControlINTEL" ],
10993          "version" : "None"
10994        }
10995      ]
10996    },
10997    {
10998      "category" : "ValueEnum",
10999      "kind" : "OverflowModes",
11000      "enumerants" : [
11001        {
11002          "enumerant" : "WRAP",
11003          "value" : 0,
11004          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
11005          "version" : "None"
11006        },
11007        {
11008          "enumerant" : "SAT",
11009          "value" : 1,
11010          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
11011          "version" : "None"
11012        },
11013        {
11014          "enumerant" : "SAT_ZERO",
11015          "value" : 2,
11016          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
11017          "version" : "None"
11018        },
11019        {
11020          "enumerant" : "SAT_SYM",
11021          "value" : 3,
11022          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
11023          "version" : "None"
11024        }
11025      ]
11026    },
11027    {
11028      "category" : "ValueEnum",
11029      "kind" : "LinkageType",
11030      "enumerants" : [
11031        {
11032          "enumerant" : "Export",
11033          "value" : 0,
11034          "capabilities" : [ "Linkage" ]
11035        },
11036        {
11037          "enumerant" : "Import",
11038          "value" : 1,
11039          "capabilities" : [ "Linkage" ]
11040        },
11041        {
11042          "enumerant" : "LinkOnceODR",
11043          "value" : 2,
11044          "capabilities" : [ "Linkage" ],
11045          "extensions" : [ "SPV_KHR_linkonce_odr" ],
11046          "version" : "None"
11047        }
11048      ]
11049    },
11050    {
11051      "category" : "ValueEnum",
11052      "kind" : "AccessQualifier",
11053      "enumerants" : [
11054        {
11055          "enumerant" : "ReadOnly",
11056          "value" : 0,
11057          "capabilities" : [ "Kernel" ]
11058        },
11059        {
11060          "enumerant" : "WriteOnly",
11061          "value" : 1,
11062          "capabilities" : [ "Kernel" ]
11063        },
11064        {
11065          "enumerant" : "ReadWrite",
11066          "value" : 2,
11067          "capabilities" : [ "Kernel" ]
11068        }
11069      ]
11070    },
11071    {
11072      "category" : "ValueEnum",
11073      "kind" : "FunctionParameterAttribute",
11074      "enumerants" : [
11075        {
11076          "enumerant" : "Zext",
11077          "value" : 0,
11078          "capabilities" : [ "Kernel" ]
11079        },
11080        {
11081          "enumerant" : "Sext",
11082          "value" : 1,
11083          "capabilities" : [ "Kernel" ]
11084        },
11085        {
11086          "enumerant" : "ByVal",
11087          "value" : 2,
11088          "capabilities" : [ "Kernel" ]
11089        },
11090        {
11091          "enumerant" : "Sret",
11092          "value" : 3,
11093          "capabilities" : [ "Kernel" ]
11094        },
11095        {
11096          "enumerant" : "NoAlias",
11097          "value" : 4,
11098          "capabilities" : [ "Kernel" ]
11099        },
11100        {
11101          "enumerant" : "NoCapture",
11102          "value" : 5,
11103          "capabilities" : [ "Kernel" ]
11104        },
11105        {
11106          "enumerant" : "NoWrite",
11107          "value" : 6,
11108          "capabilities" : [ "Kernel" ]
11109        },
11110        {
11111          "enumerant" : "NoReadWrite",
11112          "value" : 7,
11113          "capabilities" : [ "Kernel" ]
11114        }
11115      ]
11116    },
11117    {
11118      "category" : "ValueEnum",
11119      "kind" : "Decoration",
11120      "enumerants" : [
11121        {
11122          "enumerant" : "RelaxedPrecision",
11123          "value" : 0,
11124          "capabilities" : [ "Shader" ]
11125        },
11126        {
11127          "enumerant" : "SpecId",
11128          "value" : 1,
11129          "capabilities" : [ "Shader", "Kernel" ],
11130          "parameters" : [
11131            { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
11132          ]
11133        },
11134        {
11135          "enumerant" : "Block",
11136          "value" : 2,
11137          "capabilities" : [ "Shader" ]
11138        },
11139        {
11140          "enumerant" : "BufferBlock",
11141          "value" : 3,
11142          "capabilities" : [ "Shader" ],
11143          "lastVersion" : "1.3"
11144        },
11145        {
11146          "enumerant" : "RowMajor",
11147          "value" : 4,
11148          "capabilities" : [ "Matrix" ]
11149        },
11150        {
11151          "enumerant" : "ColMajor",
11152          "value" : 5,
11153          "capabilities" : [ "Matrix" ]
11154        },
11155        {
11156          "enumerant" : "ArrayStride",
11157          "value" : 6,
11158          "capabilities" : [ "Shader" ],
11159          "parameters" : [
11160            { "kind" : "LiteralInteger", "name" : "'Array Stride'" }
11161          ]
11162        },
11163        {
11164          "enumerant" : "MatrixStride",
11165          "value" : 7,
11166          "capabilities" : [ "Matrix" ],
11167          "parameters" : [
11168            { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" }
11169          ]
11170        },
11171        {
11172          "enumerant" : "GLSLShared",
11173          "value" : 8,
11174          "capabilities" : [ "Shader" ]
11175        },
11176        {
11177          "enumerant" : "GLSLPacked",
11178          "value" : 9,
11179          "capabilities" : [ "Shader" ]
11180        },
11181        {
11182          "enumerant" : "CPacked",
11183          "value" : 10,
11184          "capabilities" : [ "Kernel" ]
11185        },
11186        {
11187          "enumerant" : "BuiltIn",
11188          "value" : 11,
11189          "parameters" : [
11190            { "kind" : "BuiltIn" }
11191          ]
11192        },
11193        {
11194          "enumerant" : "NoPerspective",
11195          "value" : 13,
11196          "capabilities" : [ "Shader" ]
11197        },
11198        {
11199          "enumerant" : "Flat",
11200          "value" : 14,
11201          "capabilities" : [ "Shader" ]
11202        },
11203        {
11204          "enumerant" : "Patch",
11205          "value" : 15,
11206          "capabilities" : [ "Tessellation" ]
11207        },
11208        {
11209          "enumerant" : "Centroid",
11210          "value" : 16,
11211          "capabilities" : [ "Shader" ]
11212        },
11213        {
11214          "enumerant" : "Sample",
11215          "value" : 17,
11216          "capabilities" : [ "SampleRateShading" ]
11217        },
11218        {
11219          "enumerant" : "Invariant",
11220          "value" : 18,
11221          "capabilities" : [ "Shader" ]
11222        },
11223        {
11224          "enumerant" : "Restrict",
11225          "value" : 19
11226        },
11227        {
11228          "enumerant" : "Aliased",
11229          "value" : 20
11230        },
11231        {
11232          "enumerant" : "Volatile",
11233          "value" : 21
11234        },
11235        {
11236          "enumerant" : "Constant",
11237          "value" : 22,
11238          "capabilities" : [ "Kernel" ]
11239        },
11240        {
11241          "enumerant" : "Coherent",
11242          "value" : 23
11243        },
11244        {
11245          "enumerant" : "NonWritable",
11246          "value" : 24
11247        },
11248        {
11249          "enumerant" : "NonReadable",
11250          "value" : 25
11251        },
11252        {
11253          "enumerant" : "Uniform",
11254          "value" : 26,
11255          "capabilities" : [ "Shader", "UniformDecoration" ]
11256        },
11257        {
11258          "enumerant" : "UniformId",
11259          "value" : 27,
11260          "capabilities" : [ "Shader", "UniformDecoration" ],
11261          "parameters" : [
11262            { "kind" : "IdScope",           "name" : "'Execution'" }
11263          ],
11264          "version" : "1.4"
11265        },
11266        {
11267          "enumerant" : "SaturatedConversion",
11268          "value" : 28,
11269          "capabilities" : [ "Kernel" ]
11270        },
11271        {
11272          "enumerant" : "Stream",
11273          "value" : 29,
11274          "capabilities" : [ "GeometryStreams" ],
11275          "parameters" : [
11276            { "kind" : "LiteralInteger", "name" : "'Stream Number'" }
11277          ]
11278        },
11279        {
11280          "enumerant" : "Location",
11281          "value" : 30,
11282          "capabilities" : [ "Shader" ],
11283          "parameters" : [
11284            { "kind" : "LiteralInteger", "name" : "'Location'" }
11285          ]
11286        },
11287        {
11288          "enumerant" : "Component",
11289          "value" : 31,
11290          "capabilities" : [ "Shader" ],
11291          "parameters" : [
11292            { "kind" : "LiteralInteger", "name" : "'Component'" }
11293          ]
11294        },
11295        {
11296          "enumerant" : "Index",
11297          "value" : 32,
11298          "capabilities" : [ "Shader" ],
11299          "parameters" : [
11300            { "kind" : "LiteralInteger", "name" : "'Index'" }
11301          ]
11302        },
11303        {
11304          "enumerant" : "Binding",
11305          "value" : 33,
11306          "capabilities" : [ "Shader" ],
11307          "parameters" : [
11308            { "kind" : "LiteralInteger", "name" : "'Binding Point'" }
11309          ]
11310        },
11311        {
11312          "enumerant" : "DescriptorSet",
11313          "value" : 34,
11314          "capabilities" : [ "Shader" ],
11315          "parameters" : [
11316            { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" }
11317          ]
11318        },
11319        {
11320          "enumerant" : "Offset",
11321          "value" : 35,
11322          "capabilities" : [ "Shader" ],
11323          "parameters" : [
11324            { "kind" : "LiteralInteger", "name" : "'Byte Offset'" }
11325          ]
11326        },
11327        {
11328          "enumerant" : "XfbBuffer",
11329          "value" : 36,
11330          "capabilities" : [ "TransformFeedback" ],
11331          "parameters" : [
11332            { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" }
11333          ]
11334        },
11335        {
11336          "enumerant" : "XfbStride",
11337          "value" : 37,
11338          "capabilities" : [ "TransformFeedback" ],
11339          "parameters" : [
11340            { "kind" : "LiteralInteger", "name" : "'XFB Stride'" }
11341          ]
11342        },
11343        {
11344          "enumerant" : "FuncParamAttr",
11345          "value" : 38,
11346          "capabilities" : [ "Kernel" ],
11347          "parameters" : [
11348            { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" }
11349          ]
11350        },
11351        {
11352          "enumerant" : "FPRoundingMode",
11353          "value" : 39,
11354          "parameters" : [
11355            { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" }
11356          ]
11357        },
11358        {
11359          "enumerant" : "FPFastMathMode",
11360          "value" : 40,
11361          "capabilities" : [ "Kernel" ],
11362          "parameters" : [
11363            { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" }
11364          ]
11365        },
11366        {
11367          "enumerant" : "LinkageAttributes",
11368          "value" : 41,
11369          "capabilities" : [ "Linkage" ],
11370          "parameters" : [
11371            { "kind" : "LiteralString", "name" : "'Name'" },
11372            { "kind" : "LinkageType",   "name" : "'Linkage Type'" }
11373          ]
11374        },
11375        {
11376          "enumerant" : "NoContraction",
11377          "value" : 42,
11378          "capabilities" : [ "Shader" ]
11379        },
11380        {
11381          "enumerant" : "InputAttachmentIndex",
11382          "value" : 43,
11383          "capabilities" : [ "InputAttachment" ],
11384          "parameters" : [
11385            { "kind" : "LiteralInteger", "name" : "'Attachment Index'" }
11386          ]
11387        },
11388        {
11389          "enumerant" : "Alignment",
11390          "value" : 44,
11391          "capabilities" : [ "Kernel" ],
11392          "parameters" : [
11393            { "kind" : "LiteralInteger", "name" : "'Alignment'" }
11394          ]
11395        },
11396        {
11397          "enumerant" : "MaxByteOffset",
11398          "value" : 45,
11399          "capabilities" : [ "Addresses" ],
11400          "parameters" : [
11401            { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
11402          ],
11403          "version" : "1.1"
11404        },
11405        {
11406          "enumerant" : "AlignmentId",
11407          "value" : 46,
11408          "capabilities" : [ "Kernel" ],
11409          "parameters" : [
11410            { "kind" : "IdRef", "name" : "'Alignment'" }
11411          ],
11412          "version" : "1.2"
11413        },
11414        {
11415          "enumerant" : "MaxByteOffsetId",
11416          "value" : 47,
11417          "capabilities" : [ "Addresses" ],
11418          "parameters" : [
11419            { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
11420          ],
11421          "version" : "1.2"
11422        },
11423        {
11424          "enumerant" : "NoSignedWrap",
11425          "value" : 4469,
11426          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
11427          "version" : "1.4"
11428        },
11429        {
11430          "enumerant" : "NoUnsignedWrap",
11431          "value" : 4470,
11432          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
11433          "version" : "1.4"
11434        },
11435        {
11436          "enumerant" : "ExplicitInterpAMD",
11437          "value" : 4999,
11438          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11439          "version" : "None"
11440        },
11441        {
11442          "enumerant" : "OverrideCoverageNV",
11443          "value" : 5248,
11444          "capabilities" : [ "SampleMaskOverrideCoverageNV" ],
11445          "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
11446          "version" : "None"
11447        },
11448        {
11449          "enumerant" : "PassthroughNV",
11450          "value" : 5250,
11451          "capabilities" : [ "GeometryShaderPassthroughNV" ],
11452          "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
11453          "version" : "None"
11454        },
11455        {
11456          "enumerant" : "ViewportRelativeNV",
11457          "value" : 5252,
11458          "capabilities" : [ "ShaderViewportMaskNV" ],
11459          "version" : "None"
11460        },
11461        {
11462          "enumerant" : "SecondaryViewportRelativeNV",
11463          "value" : 5256,
11464          "capabilities" : [ "ShaderStereoViewNV" ],
11465          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
11466          "version" : "None",
11467          "parameters" : [
11468            { "kind" : "LiteralInteger", "name" : "'Offset'" }
11469          ]
11470        },
11471        {
11472          "enumerant" : "PerPrimitiveNV",
11473          "value" : 5271,
11474          "capabilities" : [ "MeshShadingNV" ],
11475          "extensions" : [ "SPV_NV_mesh_shader" ],
11476          "version" : "None"
11477        },
11478        {
11479          "enumerant" : "PerViewNV",
11480          "value" : 5272,
11481          "capabilities" : [ "MeshShadingNV" ],
11482          "extensions" : [ "SPV_NV_mesh_shader" ],
11483          "version" : "None"
11484        },
11485        {
11486          "enumerant" : "PerTaskNV",
11487          "value" : 5273,
11488          "capabilities" : [ "MeshShadingNV" ],
11489          "extensions" : [ "SPV_NV_mesh_shader" ],
11490          "version" : "None"
11491        },
11492        {
11493          "enumerant" : "PerVertexKHR",
11494          "value" : 5285,
11495          "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
11496          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
11497          "version" : "None"
11498        },
11499        {
11500          "enumerant" : "PerVertexNV",
11501          "value" : 5285,
11502          "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
11503          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
11504          "version" : "None"
11505        },
11506        {
11507          "enumerant" : "NonUniform",
11508          "value" : 5300,
11509          "capabilities" : [ "ShaderNonUniform" ],
11510          "version" : "1.5"
11511        },
11512        {
11513          "enumerant" : "NonUniformEXT",
11514          "value" : 5300,
11515          "capabilities" : [ "ShaderNonUniform" ],
11516          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11517          "version" : "1.5"
11518        },
11519        {
11520          "enumerant" : "RestrictPointer",
11521          "value" : 5355,
11522          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11523          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
11524          "version" : "1.5"
11525        },
11526        {
11527          "enumerant" : "RestrictPointerEXT",
11528          "value" : 5355,
11529          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11530          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
11531          "version" : "1.5"
11532        },
11533        {
11534          "enumerant" : "AliasedPointer",
11535          "value" : 5356,
11536          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11537          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
11538          "version" : "1.5"
11539        },
11540        {
11541          "enumerant" : "AliasedPointerEXT",
11542          "value" : 5356,
11543          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11544          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
11545          "version" : "1.5"
11546        },
11547        {
11548          "enumerant" : "BindlessSamplerNV",
11549          "value" : 5398,
11550          "capabilities" : [ "BindlessTextureNV" ],
11551          "version" : "None"
11552        },
11553        {
11554          "enumerant" : "BindlessImageNV",
11555          "value" : 5399,
11556          "capabilities" : [ "BindlessTextureNV" ],
11557          "version" : "None"
11558        },
11559        {
11560          "enumerant" : "BoundSamplerNV",
11561          "value" : 5400,
11562          "capabilities" : [ "BindlessTextureNV" ],
11563          "version" : "None"
11564        },
11565        {
11566          "enumerant" : "BoundImageNV",
11567          "value" : 5401,
11568          "capabilities" : [ "BindlessTextureNV" ],
11569          "version" : "None"
11570        },
11571        {
11572          "enumerant" : "SIMTCallINTEL",
11573          "value" : 5599,
11574          "parameters" : [
11575            { "kind" : "LiteralInteger", "name" : "'N'" }
11576          ],
11577          "capabilities" : [ "VectorComputeINTEL" ],
11578          "version" : "None"
11579        },
11580        {
11581          "enumerant" : "ReferencedIndirectlyINTEL",
11582          "value" : 5602,
11583          "capabilities" : [ "IndirectReferencesINTEL" ],
11584          "extensions" : [ "SPV_INTEL_function_pointers" ],
11585          "version" : "None"
11586        },
11587        {
11588          "enumerant" : "ClobberINTEL",
11589          "value" : 5607,
11590          "parameters" : [
11591            { "kind" : "LiteralString", "name" : "'Register'" }
11592          ],
11593          "capabilities" : [ "AsmINTEL" ],
11594          "version" : "None"
11595        },
11596        {
11597          "enumerant" : "SideEffectsINTEL",
11598          "value" : 5608,
11599          "capabilities" : [ "AsmINTEL" ],
11600          "version" : "None"
11601        },
11602        {
11603          "enumerant" : "VectorComputeVariableINTEL",
11604          "value" : 5624,
11605          "capabilities" : [ "VectorComputeINTEL" ],
11606          "version" : "None"
11607        },
11608        {
11609          "enumerant" : "FuncParamIOKindINTEL",
11610          "value" : 5625,
11611          "parameters" : [
11612            { "kind" : "LiteralInteger", "name" : "'Kind'" }
11613          ],
11614          "capabilities" : [ "VectorComputeINTEL" ],
11615          "version" : "None"
11616        },
11617        {
11618          "enumerant" : "VectorComputeFunctionINTEL",
11619          "value" : 5626,
11620          "capabilities" : [ "VectorComputeINTEL" ],
11621          "version" : "None"
11622        },
11623        {
11624          "enumerant" : "StackCallINTEL",
11625          "value" : 5627,
11626          "capabilities" : [ "VectorComputeINTEL" ],
11627          "version" : "None"
11628        },
11629        {
11630          "enumerant" : "GlobalVariableOffsetINTEL",
11631          "value" : 5628,
11632          "parameters" : [
11633            { "kind" : "LiteralInteger", "name" : "'Offset'" }
11634          ],
11635          "capabilities" : [ "VectorComputeINTEL" ],
11636          "version" : "None"
11637        },
11638        {
11639          "enumerant" : "CounterBuffer",
11640          "value" : 5634,
11641          "parameters" : [
11642            { "kind" : "IdRef", "name" : "'Counter Buffer'" }
11643          ],
11644          "version" : "1.4"
11645        },
11646        {
11647          "enumerant" : "HlslCounterBufferGOOGLE",
11648          "value" : 5634,
11649          "parameters" : [
11650            { "kind" : "IdRef", "name" : "'Counter Buffer'" }
11651          ],
11652          "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
11653          "version" : "None"
11654        },
11655        {
11656          "enumerant" : "UserSemantic",
11657          "value" : 5635,
11658          "parameters" : [
11659            { "kind" : "LiteralString", "name" : "'Semantic'" }
11660          ],
11661          "version" : "1.4"
11662        },
11663        {
11664          "enumerant" : "HlslSemanticGOOGLE",
11665          "value" : 5635,
11666          "parameters" : [
11667            { "kind" : "LiteralString", "name" : "'Semantic'" }
11668          ],
11669          "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
11670          "version" : "None"
11671        },
11672        {
11673          "enumerant" : "UserTypeGOOGLE",
11674          "value" : 5636,
11675          "parameters" : [
11676            { "kind" : "LiteralString", "name" : "'User Type'" }
11677          ],
11678          "extensions" : [ "SPV_GOOGLE_user_type" ],
11679          "version" : "None"
11680        },
11681        {
11682          "enumerant" : "FunctionRoundingModeINTEL",
11683          "value" : 5822,
11684          "parameters" : [
11685            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
11686            { "kind" : "FPRoundingMode", "name" : "'FP Rounding Mode'" }
11687          ],
11688          "capabilities" : [ "FunctionFloatControlINTEL" ],
11689          "version" : "None"
11690        },
11691        {
11692          "enumerant" : "FunctionDenormModeINTEL",
11693          "value" : 5823,
11694          "parameters" : [
11695            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
11696            { "kind" : "FPDenormMode", "name" : "'FP Denorm Mode'" }
11697          ],
11698          "capabilities" : [ "FunctionFloatControlINTEL" ],
11699          "version" : "None"
11700        },
11701        {
11702          "enumerant" : "RegisterINTEL",
11703          "value" : 5825,
11704          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11705          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11706          "version" : "None"
11707        },
11708        {
11709          "enumerant" : "MemoryINTEL",
11710          "value" : 5826,
11711          "parameters" : [
11712            { "kind" : "LiteralString", "name" : "'Memory Type'" }
11713          ],
11714          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11715          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11716          "version" : "None"
11717        },
11718        {
11719          "enumerant" : "NumbanksINTEL",
11720          "value" : 5827,
11721          "parameters" : [
11722            { "kind" : "LiteralInteger", "name" : "'Banks'" }
11723          ],
11724          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11725          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11726          "version" : "None"
11727        },
11728        {
11729          "enumerant" : "BankwidthINTEL",
11730          "value" : 5828,
11731          "parameters" : [
11732            { "kind" : "LiteralInteger", "name" : "'Bank Width'" }
11733          ],
11734          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11735          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11736          "version" : "None"
11737        },
11738        {
11739          "enumerant" : "MaxPrivateCopiesINTEL",
11740          "value" : 5829,
11741          "parameters" : [
11742            { "kind" : "LiteralInteger", "name" : "'Maximum Copies'" }
11743          ],
11744          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11745          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11746          "version" : "None"
11747        },
11748        {
11749          "enumerant" : "SinglepumpINTEL",
11750          "value" : 5830,
11751          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11752          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11753          "version" : "None"
11754        },
11755        {
11756          "enumerant" : "DoublepumpINTEL",
11757          "value" : 5831,
11758          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11759          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11760          "version" : "None"
11761        },
11762        {
11763          "enumerant" : "MaxReplicatesINTEL",
11764          "value" : 5832,
11765          "parameters" : [
11766            { "kind" : "LiteralInteger", "name" : "'Maximum Replicates'" }
11767          ],
11768          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11769          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11770          "version" : "None"
11771        },
11772        {
11773          "enumerant" : "SimpleDualPortINTEL",
11774          "value" : 5833,
11775          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11776          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11777          "version" : "None"
11778        },
11779        {
11780          "enumerant" : "MergeINTEL",
11781          "value" : 5834,
11782          "parameters" : [
11783            { "kind" : "LiteralString", "name" : "'Merge Key'" },
11784            { "kind" : "LiteralString", "name" : "'Merge Type'" }
11785          ],
11786          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11787          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11788          "version" : "None"
11789        },
11790        {
11791          "enumerant" : "BankBitsINTEL",
11792          "value" : 5835,
11793          "parameters" : [
11794            { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Bank Bits'" }
11795          ],
11796          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11797          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11798          "version" : "None"
11799        },
11800        {
11801          "enumerant" : "ForcePow2DepthINTEL",
11802          "value" : 5836,
11803          "parameters" : [
11804            { "kind" : "LiteralInteger", "name" : "'Force Key'" }
11805          ],
11806          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11807          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11808          "version" : "None"
11809        },
11810        {
11811          "enumerant" : "BurstCoalesceINTEL",
11812          "value" : 5899,
11813          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11814          "version" : "None"
11815        },
11816        {
11817          "enumerant" : "CacheSizeINTEL",
11818          "value" : 5900,
11819          "parameters" : [
11820            { "kind" : "LiteralInteger", "name" : "'Cache Size in bytes'" }
11821          ],
11822          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11823          "version" : "None"
11824        },
11825        {
11826          "enumerant" : "DontStaticallyCoalesceINTEL",
11827          "value" : 5901,
11828          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11829          "version" : "None"
11830        },
11831        {
11832          "enumerant" : "PrefetchINTEL",
11833          "value" : 5902,
11834          "parameters" : [
11835            { "kind" : "LiteralInteger", "name" : "'Prefetcher Size in bytes'" }
11836          ],
11837          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11838          "version" : "None"
11839        },
11840        {
11841          "enumerant" : "StallEnableINTEL",
11842          "value" : 5905,
11843          "capabilities" : [ "FPGAClusterAttributesINTEL" ],
11844          "version" : "None"
11845        },
11846        {
11847          "enumerant" : "FuseLoopsInFunctionINTEL",
11848          "value" : 5907,
11849          "capabilities" : [ "LoopFuseINTEL" ],
11850          "version" : "None"
11851        },
11852        {
11853          "enumerant" : "AliasScopeINTEL",
11854          "value" : 5914,
11855          "parameters" : [
11856            { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" }
11857          ],
11858          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
11859          "version" : "None"
11860        },
11861        {
11862          "enumerant" : "NoAliasINTEL",
11863          "value" : 5915,
11864          "parameters" : [
11865            { "kind" : "IdRef", "name" : "'Aliasing Scopes List'" }
11866          ],
11867          "capabilities" : [ "MemoryAccessAliasingINTEL" ],
11868          "version" : "None"
11869        },
11870        {
11871          "enumerant" : "BufferLocationINTEL",
11872          "value" : 5921,
11873          "parameters" : [
11874            { "kind" : "LiteralInteger", "name" : "'Buffer Location ID'" }
11875          ],
11876          "capabilities" : [ "FPGABufferLocationINTEL" ],
11877          "version" : "None"
11878        },
11879        {
11880          "enumerant" : "IOPipeStorageINTEL",
11881          "value" : 5944,
11882          "parameters" : [
11883            { "kind" : "LiteralInteger", "name" : "'IO Pipe ID'" }
11884          ],
11885          "capabilities" : [ "IOPipesINTEL" ],
11886          "version" : "None"
11887        },
11888        {
11889          "enumerant" : "FunctionFloatingPointModeINTEL",
11890          "value" : 6080,
11891          "parameters" : [
11892            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
11893            { "kind" : "FPOperationMode", "name" : "'FP Operation Mode'" }
11894          ],
11895          "capabilities" : [ "FunctionFloatControlINTEL" ],
11896          "version" : "None"
11897        },
11898        {
11899          "enumerant" : "SingleElementVectorINTEL",
11900          "value" : 6085,
11901          "capabilities" : [ "VectorComputeINTEL" ],
11902          "version" : "None"
11903        },
11904        {
11905          "enumerant" : "VectorComputeCallableFunctionINTEL",
11906          "value" : 6087,
11907          "capabilities" : [ "VectorComputeINTEL" ],
11908          "version" : "None"
11909        },
11910        {
11911          "enumerant" : "MediaBlockIOINTEL",
11912          "value" : 6140,
11913          "capabilities" : [ "VectorComputeINTEL" ],
11914          "version" : "None"
11915        }
11916      ]
11917    },
11918    {
11919      "category" : "ValueEnum",
11920      "kind" : "BuiltIn",
11921      "enumerants" : [
11922        {
11923          "enumerant" : "Position",
11924          "value" : 0,
11925          "capabilities" : [ "Shader" ]
11926        },
11927        {
11928          "enumerant" : "PointSize",
11929          "value" : 1,
11930          "capabilities" : [ "Shader" ]
11931        },
11932        {
11933          "enumerant" : "ClipDistance",
11934          "value" : 3,
11935          "capabilities" : [ "ClipDistance" ]
11936        },
11937        {
11938          "enumerant" : "CullDistance",
11939          "value" : 4,
11940          "capabilities" : [ "CullDistance" ]
11941        },
11942        {
11943          "enumerant" : "VertexId",
11944          "value" : 5,
11945          "capabilities" : [ "Shader" ]
11946        },
11947        {
11948          "enumerant" : "InstanceId",
11949          "value" : 6,
11950          "capabilities" : [ "Shader" ]
11951        },
11952        {
11953          "enumerant" : "PrimitiveId",
11954          "value" : 7,
11955          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingKHR", "MeshShadingNV" ]
11956        },
11957        {
11958          "enumerant" : "InvocationId",
11959          "value" : 8,
11960          "capabilities" : [ "Geometry", "Tessellation" ]
11961        },
11962        {
11963          "enumerant" : "Layer",
11964          "value" : 9,
11965          "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT", "MeshShadingNV" ]
11966        },
11967        {
11968          "enumerant" : "ViewportIndex",
11969          "value" : 10,
11970          "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT", "MeshShadingNV" ]
11971        },
11972        {
11973          "enumerant" : "TessLevelOuter",
11974          "value" : 11,
11975          "capabilities" : [ "Tessellation" ]
11976        },
11977        {
11978          "enumerant" : "TessLevelInner",
11979          "value" : 12,
11980          "capabilities" : [ "Tessellation" ]
11981        },
11982        {
11983          "enumerant" : "TessCoord",
11984          "value" : 13,
11985          "capabilities" : [ "Tessellation" ]
11986        },
11987        {
11988          "enumerant" : "PatchVertices",
11989          "value" : 14,
11990          "capabilities" : [ "Tessellation" ]
11991        },
11992        {
11993          "enumerant" : "FragCoord",
11994          "value" : 15,
11995          "capabilities" : [ "Shader" ]
11996        },
11997        {
11998          "enumerant" : "PointCoord",
11999          "value" : 16,
12000          "capabilities" : [ "Shader" ]
12001        },
12002        {
12003          "enumerant" : "FrontFacing",
12004          "value" : 17,
12005          "capabilities" : [ "Shader" ]
12006        },
12007        {
12008          "enumerant" : "SampleId",
12009          "value" : 18,
12010          "capabilities" : [ "SampleRateShading" ]
12011        },
12012        {
12013          "enumerant" : "SamplePosition",
12014          "value" : 19,
12015          "capabilities" : [ "SampleRateShading" ]
12016        },
12017        {
12018          "enumerant" : "SampleMask",
12019          "value" : 20,
12020          "capabilities" : [ "Shader" ]
12021        },
12022        {
12023          "enumerant" : "FragDepth",
12024          "value" : 22,
12025          "capabilities" : [ "Shader" ]
12026        },
12027        {
12028          "enumerant" : "HelperInvocation",
12029          "value" : 23,
12030          "capabilities" : [ "Shader" ]
12031        },
12032        {
12033          "enumerant" : "NumWorkgroups",
12034          "value" : 24
12035        },
12036        {
12037          "enumerant" : "WorkgroupSize",
12038          "value" : 25
12039        },
12040        {
12041          "enumerant" : "WorkgroupId",
12042          "value" : 26
12043        },
12044        {
12045          "enumerant" : "LocalInvocationId",
12046          "value" : 27
12047        },
12048        {
12049          "enumerant" : "GlobalInvocationId",
12050          "value" : 28
12051        },
12052        {
12053          "enumerant" : "LocalInvocationIndex",
12054          "value" : 29
12055        },
12056        {
12057          "enumerant" : "WorkDim",
12058          "value" : 30,
12059          "capabilities" : [ "Kernel" ]
12060        },
12061        {
12062          "enumerant" : "GlobalSize",
12063          "value" : 31,
12064          "capabilities" : [ "Kernel" ]
12065        },
12066        {
12067          "enumerant" : "EnqueuedWorkgroupSize",
12068          "value" : 32,
12069          "capabilities" : [ "Kernel" ]
12070        },
12071        {
12072          "enumerant" : "GlobalOffset",
12073          "value" : 33,
12074          "capabilities" : [ "Kernel" ]
12075        },
12076        {
12077          "enumerant" : "GlobalLinearId",
12078          "value" : 34,
12079          "capabilities" : [ "Kernel" ]
12080        },
12081        {
12082          "enumerant" : "SubgroupSize",
12083          "value" : 36,
12084          "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
12085        },
12086        {
12087          "enumerant" : "SubgroupMaxSize",
12088          "value" : 37,
12089          "capabilities" : [ "Kernel" ]
12090        },
12091        {
12092          "enumerant" : "NumSubgroups",
12093          "value" : 38,
12094          "capabilities" : [ "Kernel", "GroupNonUniform" ]
12095        },
12096        {
12097          "enumerant" : "NumEnqueuedSubgroups",
12098          "value" : 39,
12099          "capabilities" : [ "Kernel" ]
12100        },
12101        {
12102          "enumerant" : "SubgroupId",
12103          "value" : 40,
12104          "capabilities" : [ "Kernel", "GroupNonUniform" ]
12105        },
12106        {
12107          "enumerant" : "SubgroupLocalInvocationId",
12108          "value" : 41,
12109          "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
12110        },
12111        {
12112          "enumerant" : "VertexIndex",
12113          "value" : 42,
12114          "capabilities" : [ "Shader" ]
12115        },
12116        {
12117          "enumerant" : "InstanceIndex",
12118          "value" : 43,
12119          "capabilities" : [ "Shader" ]
12120        },
12121        {
12122          "enumerant" : "SubgroupEqMask",
12123          "value" : 4416,
12124          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12125          "version" : "1.3"
12126        },
12127        {
12128          "enumerant" : "SubgroupEqMaskKHR",
12129          "value" : 4416,
12130          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12131          "extensions" : [ "SPV_KHR_shader_ballot" ],
12132          "version" : "1.3"
12133        },
12134        {
12135          "enumerant" : "SubgroupGeMask",
12136          "value" : 4417,
12137          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12138          "version" : "1.3"
12139        },
12140        {
12141          "enumerant" : "SubgroupGeMaskKHR",
12142          "value" : 4417,
12143          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12144          "extensions" : [ "SPV_KHR_shader_ballot" ],
12145          "version" : "1.3"
12146        },
12147        {
12148          "enumerant" : "SubgroupGtMask",
12149          "value" : 4418,
12150          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12151          "version" : "1.3"
12152        },
12153        {
12154          "enumerant" : "SubgroupGtMaskKHR",
12155          "value" : 4418,
12156          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12157          "extensions" : [ "SPV_KHR_shader_ballot" ],
12158          "version" : "1.3"
12159        },
12160        {
12161          "enumerant" : "SubgroupLeMask",
12162          "value" : 4419,
12163          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12164          "version" : "1.3"
12165        },
12166        {
12167          "enumerant" : "SubgroupLeMaskKHR",
12168          "value" : 4419,
12169          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12170          "extensions" : [ "SPV_KHR_shader_ballot" ],
12171          "version" : "1.3"
12172        },
12173        {
12174          "enumerant" : "SubgroupLtMask",
12175          "value" : 4420,
12176          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12177          "version" : "1.3"
12178        },
12179        {
12180          "enumerant" : "SubgroupLtMaskKHR",
12181          "value" : 4420,
12182          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
12183          "extensions" : [ "SPV_KHR_shader_ballot" ],
12184          "version" : "1.3"
12185        },
12186        {
12187          "enumerant" : "BaseVertex",
12188          "value" : 4424,
12189          "capabilities" : [ "DrawParameters" ],
12190          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
12191          "version" : "1.3"
12192        },
12193        {
12194          "enumerant" : "BaseInstance",
12195          "value" : 4425,
12196          "capabilities" : [ "DrawParameters" ],
12197          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
12198          "version" : "1.3"
12199        },
12200        {
12201          "enumerant" : "DrawIndex",
12202          "value" : 4426,
12203          "capabilities" : [ "DrawParameters", "MeshShadingNV" ],
12204          "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader" ],
12205          "version" : "1.3"
12206        },
12207        {
12208          "enumerant" : "PrimitiveShadingRateKHR",
12209          "value" : 4432,
12210          "capabilities" : [ "FragmentShadingRateKHR" ],
12211          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
12212          "version" : "None"
12213        },
12214        {
12215          "enumerant" : "DeviceIndex",
12216          "value" : 4438,
12217          "capabilities" : [ "DeviceGroup" ],
12218          "extensions" : [ "SPV_KHR_device_group" ],
12219          "version" : "1.3"
12220        },
12221        {
12222          "enumerant" : "ViewIndex",
12223          "value" : 4440,
12224          "capabilities" : [ "MultiView" ],
12225          "extensions" : [ "SPV_KHR_multiview" ],
12226          "version" : "1.3"
12227        },
12228        {
12229          "enumerant" : "ShadingRateKHR",
12230          "value" : 4444,
12231          "capabilities" : [ "FragmentShadingRateKHR" ],
12232          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
12233          "version" : "None"
12234        },
12235        {
12236          "enumerant" : "BaryCoordNoPerspAMD",
12237          "value" : 4992,
12238          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12239          "version" : "None"
12240        },
12241        {
12242          "enumerant" : "BaryCoordNoPerspCentroidAMD",
12243          "value" : 4993,
12244          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12245          "version" : "None"
12246        },
12247        {
12248          "enumerant" : "BaryCoordNoPerspSampleAMD",
12249          "value" : 4994,
12250          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12251          "version" : "None"
12252        },
12253        {
12254          "enumerant" : "BaryCoordSmoothAMD",
12255          "value" : 4995,
12256          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12257          "version" : "None"
12258        },
12259        {
12260          "enumerant" : "BaryCoordSmoothCentroidAMD",
12261          "value" : 4996,
12262          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12263          "version" : "None"
12264        },
12265        {
12266          "enumerant" : "BaryCoordSmoothSampleAMD",
12267          "value" : 4997,
12268          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12269          "version" : "None"
12270        },
12271        {
12272          "enumerant" : "BaryCoordPullModelAMD",
12273          "value" : 4998,
12274          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
12275          "version" : "None"
12276        },
12277        {
12278          "enumerant" : "FragStencilRefEXT",
12279          "value" : 5014,
12280          "capabilities" : [ "StencilExportEXT" ],
12281          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
12282          "version" : "None"
12283        },
12284        {
12285          "enumerant" : "ViewportMaskNV",
12286          "value" : 5253,
12287          "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ],
12288          "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ],
12289          "version" : "None"
12290        },
12291        {
12292          "enumerant" : "SecondaryPositionNV",
12293          "value" : 5257,
12294          "capabilities" : [ "ShaderStereoViewNV" ],
12295          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
12296          "version" : "None"
12297        },
12298        {
12299          "enumerant" : "SecondaryViewportMaskNV",
12300          "value" : 5258,
12301          "capabilities" : [ "ShaderStereoViewNV" ],
12302          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
12303          "version" : "None"
12304        },
12305        {
12306          "enumerant" : "PositionPerViewNV",
12307          "value" : 5261,
12308          "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
12309          "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
12310          "version" : "None"
12311        },
12312        {
12313          "enumerant" : "ViewportMaskPerViewNV",
12314          "value" : 5262,
12315          "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
12316          "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
12317          "version" : "None"
12318        },
12319        {
12320          "enumerant" : "FullyCoveredEXT",
12321          "value" : 5264,
12322          "capabilities" : [ "FragmentFullyCoveredEXT" ],
12323          "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
12324          "version" : "None"
12325        },
12326        {
12327          "enumerant" : "TaskCountNV",
12328          "value" : 5274,
12329          "capabilities" : [ "MeshShadingNV" ],
12330          "extensions" : [ "SPV_NV_mesh_shader" ],
12331          "version" : "None"
12332        },
12333        {
12334          "enumerant" : "PrimitiveCountNV",
12335          "value" : 5275,
12336          "capabilities" : [ "MeshShadingNV" ],
12337          "extensions" : [ "SPV_NV_mesh_shader" ],
12338          "version" : "None"
12339        },
12340        {
12341          "enumerant" : "PrimitiveIndicesNV",
12342          "value" : 5276,
12343          "capabilities" : [ "MeshShadingNV" ],
12344          "extensions" : [ "SPV_NV_mesh_shader" ],
12345          "version" : "None"
12346        },
12347        {
12348          "enumerant" : "ClipDistancePerViewNV",
12349          "value" : 5277,
12350          "capabilities" : [ "MeshShadingNV" ],
12351          "extensions" : [ "SPV_NV_mesh_shader" ],
12352          "version" : "None"
12353        },
12354        {
12355          "enumerant" : "CullDistancePerViewNV",
12356          "value" : 5278,
12357          "capabilities" : [ "MeshShadingNV" ],
12358          "extensions" : [ "SPV_NV_mesh_shader" ],
12359          "version" : "None"
12360        },
12361        {
12362          "enumerant" : "LayerPerViewNV",
12363          "value" : 5279,
12364          "capabilities" : [ "MeshShadingNV" ],
12365          "extensions" : [ "SPV_NV_mesh_shader" ],
12366          "version" : "None"
12367        },
12368        {
12369          "enumerant" : "MeshViewCountNV",
12370          "value" : 5280,
12371          "capabilities" : [ "MeshShadingNV" ],
12372          "extensions" : [ "SPV_NV_mesh_shader" ],
12373          "version" : "None"
12374        },
12375        {
12376          "enumerant" : "MeshViewIndicesNV",
12377          "value" : 5281,
12378          "capabilities" : [ "MeshShadingNV" ],
12379          "extensions" : [ "SPV_NV_mesh_shader" ],
12380          "version" : "None"
12381        },
12382        {
12383          "enumerant" : "BaryCoordKHR",
12384          "value" : 5286,
12385          "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
12386          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
12387          "version" : "None"
12388        },
12389        {
12390          "enumerant" : "BaryCoordNV",
12391          "value" : 5286,
12392          "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
12393          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
12394          "version" : "None"
12395        },
12396        {
12397          "enumerant" : "BaryCoordNoPerspKHR",
12398          "value" : 5287,
12399          "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
12400          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
12401          "version" : "None"
12402        },
12403        {
12404          "enumerant" : "BaryCoordNoPerspNV",
12405          "value" : 5287,
12406          "capabilities" : [ "FragmentBarycentricNV", "FragmentBarycentricKHR" ],
12407          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
12408          "version" : "None"
12409        },
12410        {
12411          "enumerant" : "FragSizeEXT",
12412          "value" : 5292 ,
12413          "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
12414          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
12415          "version" : "None"
12416        },
12417        {
12418          "enumerant" : "FragmentSizeNV",
12419          "value" : 5292 ,
12420          "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
12421          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
12422          "version" : "None"
12423        },
12424        {
12425          "enumerant" : "FragInvocationCountEXT",
12426          "value" : 5293,
12427          "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
12428          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
12429          "version" : "None"
12430        },
12431        {
12432          "enumerant" : "InvocationsPerPixelNV",
12433          "value" : 5293,
12434          "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
12435          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
12436          "version" : "None"
12437        },
12438        {
12439          "enumerant" : "LaunchIdNV",
12440          "value" : 5319,
12441          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12442          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12443          "version" : "None"
12444        },
12445        {
12446          "enumerant" : "LaunchIdKHR",
12447          "value" : 5319,
12448          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12449          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12450          "version" : "None"
12451        },
12452        {
12453          "enumerant" : "LaunchSizeNV",
12454          "value" : 5320,
12455          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12456          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12457          "version" : "None"
12458        },
12459        {
12460          "enumerant" : "LaunchSizeKHR",
12461          "value" : 5320,
12462          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12463          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12464          "version" : "None"
12465        },
12466        {
12467          "enumerant" : "WorldRayOriginNV",
12468          "value" : 5321,
12469          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12470          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12471          "version" : "None"
12472        },
12473        {
12474          "enumerant" : "WorldRayOriginKHR",
12475          "value" : 5321,
12476          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12477          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12478          "version" : "None"
12479        },
12480        {
12481          "enumerant" : "WorldRayDirectionNV",
12482          "value" : 5322,
12483          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12484          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12485          "version" : "None"
12486        },
12487        {
12488          "enumerant" : "WorldRayDirectionKHR",
12489          "value" : 5322,
12490          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12491          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12492          "version" : "None"
12493        },
12494        {
12495          "enumerant" : "ObjectRayOriginNV",
12496          "value" : 5323,
12497          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12498          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12499          "version" : "None"
12500        },
12501        {
12502          "enumerant" : "ObjectRayOriginKHR",
12503          "value" : 5323,
12504          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12505          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12506          "version" : "None"
12507        },
12508        {
12509          "enumerant" : "ObjectRayDirectionNV",
12510          "value" : 5324,
12511          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12512          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12513          "version" : "None"
12514        },
12515        {
12516          "enumerant" : "ObjectRayDirectionKHR",
12517          "value" : 5324,
12518          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12519          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12520          "version" : "None"
12521        },
12522        {
12523          "enumerant" : "RayTminNV",
12524          "value" : 5325,
12525          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12526          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12527          "version" : "None"
12528        },
12529        {
12530          "enumerant" : "RayTminKHR",
12531          "value" : 5325,
12532          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12533          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12534          "version" : "None"
12535        },
12536        {
12537          "enumerant" : "RayTmaxNV",
12538          "value" : 5326,
12539          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12540          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12541          "version" : "None"
12542        },
12543        {
12544          "enumerant" : "RayTmaxKHR",
12545          "value" : 5326,
12546          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12547          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12548          "version" : "None"
12549        },
12550        {
12551          "enumerant" : "InstanceCustomIndexNV",
12552          "value" : 5327,
12553          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12554          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12555          "version" : "None"
12556        },
12557        {
12558          "enumerant" : "InstanceCustomIndexKHR",
12559          "value" : 5327,
12560          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12561          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12562          "version" : "None"
12563        },
12564        {
12565          "enumerant" : "ObjectToWorldNV",
12566          "value" : 5330,
12567          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12568          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12569          "version" : "None"
12570        },
12571        {
12572          "enumerant" : "ObjectToWorldKHR",
12573          "value" : 5330,
12574          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12575          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12576          "version" : "None"
12577        },
12578        {
12579          "enumerant" : "WorldToObjectNV",
12580          "value" : 5331,
12581          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12582          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12583          "version" : "None"
12584        },
12585        {
12586          "enumerant" : "WorldToObjectKHR",
12587          "value" : 5331,
12588          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12589          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12590          "version" : "None"
12591        },
12592        {
12593          "enumerant" : "HitTNV",
12594          "value" : 5332,
12595          "capabilities" : [ "RayTracingNV" ],
12596          "extensions" : [ "SPV_NV_ray_tracing" ],
12597          "version" : "None"
12598        },
12599        {
12600          "enumerant" : "HitKindNV",
12601          "value" : 5333,
12602          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12603          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12604          "version" : "None"
12605        },
12606        {
12607          "enumerant" : "HitKindKHR",
12608          "value" : 5333,
12609          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12610          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12611          "version" : "None"
12612        },
12613        {
12614          "enumerant" : "CurrentRayTimeNV",
12615          "value" : 5334,
12616          "capabilities" : [ "RayTracingMotionBlurNV" ],
12617          "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
12618          "version" : "None"
12619        },
12620        {
12621          "enumerant" : "IncomingRayFlagsNV",
12622          "value" : 5351,
12623          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12624          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12625          "version" : "None"
12626        },
12627        {
12628          "enumerant" : "IncomingRayFlagsKHR",
12629          "value" : 5351,
12630          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12631          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12632          "version" : "None"
12633        },
12634        {
12635          "enumerant" : "RayGeometryIndexKHR",
12636          "value" : 5352,
12637          "capabilities" : [ "RayTracingKHR" ],
12638          "extensions" : [ "SPV_KHR_ray_tracing" ],
12639          "version" : "None"
12640        },
12641        {
12642          "enumerant" : "WarpsPerSMNV",
12643          "value" : 5374,
12644          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12645          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12646          "version" : "None"
12647        },
12648        {
12649          "enumerant" : "SMCountNV",
12650          "value" : 5375,
12651          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12652          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12653          "version" : "None"
12654        },
12655        {
12656          "enumerant" : "WarpIDNV",
12657          "value" : 5376,
12658          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12659          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12660          "version" : "None"
12661        },
12662        {
12663          "enumerant" : "SMIDNV",
12664          "value" : 5377,
12665          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12666          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12667          "version" : "None"
12668        },
12669        {
12670          "enumerant" : "CullMaskKHR",
12671          "value"  : 6021,
12672          "capabilities" : [ "RayCullMaskKHR" ],
12673          "extensions" : [ "SPV_KHR_ray_cull_mask" ],
12674          "version" : "None"
12675        }
12676      ]
12677    },
12678    {
12679      "category" : "ValueEnum",
12680      "kind" : "Scope",
12681      "enumerants" : [
12682        {
12683          "enumerant" : "CrossDevice",
12684          "value" : 0
12685        },
12686        {
12687          "enumerant" : "Device",
12688          "value" : 1
12689        },
12690        {
12691          "enumerant" : "Workgroup",
12692          "value" : 2
12693        },
12694        {
12695          "enumerant" : "Subgroup",
12696          "value" : 3
12697        },
12698        {
12699          "enumerant" : "Invocation",
12700          "value" : 4
12701        },
12702        {
12703          "enumerant" : "QueueFamily",
12704          "value" : 5,
12705          "capabilities" : [ "VulkanMemoryModel" ],
12706          "version" : "1.5"
12707        },
12708        {
12709          "enumerant" : "QueueFamilyKHR",
12710          "value" : 5,
12711          "capabilities" : [ "VulkanMemoryModel" ],
12712          "version" : "1.5"
12713        },
12714        {
12715          "enumerant" : "ShaderCallKHR",
12716          "value" : 6,
12717          "capabilities" : [ "RayTracingKHR" ],
12718          "version" : "None"
12719        }
12720      ]
12721    },
12722    {
12723      "category" : "ValueEnum",
12724      "kind" : "GroupOperation",
12725      "enumerants" : [
12726        {
12727          "enumerant" : "Reduce",
12728          "value" : 0,
12729          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
12730        },
12731        {
12732          "enumerant" : "InclusiveScan",
12733          "value" : 1,
12734          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
12735        },
12736        {
12737          "enumerant" : "ExclusiveScan",
12738          "value" : 2,
12739          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
12740        },
12741        {
12742          "enumerant" : "ClusteredReduce",
12743          "value" : 3,
12744          "capabilities" : [ "GroupNonUniformClustered" ],
12745          "version" : "1.3"
12746        },
12747        {
12748          "enumerant" : "PartitionedReduceNV",
12749          "value" : 6,
12750          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
12751          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12752          "version" : "None"
12753        },
12754        {
12755          "enumerant" : "PartitionedInclusiveScanNV",
12756          "value" : 7,
12757          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
12758          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12759          "version" : "None"
12760        },
12761        {
12762          "enumerant" : "PartitionedExclusiveScanNV",
12763          "value" : 8,
12764          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
12765          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12766          "version" : "None"
12767        }
12768      ]
12769    },
12770    {
12771      "category" : "ValueEnum",
12772      "kind" : "KernelEnqueueFlags",
12773      "enumerants" : [
12774        {
12775          "enumerant" : "NoWait",
12776          "value" : 0,
12777          "capabilities" : [ "Kernel" ]
12778        },
12779        {
12780          "enumerant" : "WaitKernel",
12781          "value" : 1,
12782          "capabilities" : [ "Kernel" ]
12783        },
12784        {
12785          "enumerant" : "WaitWorkGroup",
12786          "value" : 2,
12787          "capabilities" : [ "Kernel" ]
12788        }
12789      ]
12790    },
12791    {
12792      "category" : "ValueEnum",
12793      "kind" : "Capability",
12794      "enumerants" : [
12795        {
12796          "enumerant" : "Matrix",
12797          "value" : 0
12798        },
12799        {
12800          "enumerant" : "Shader",
12801          "value" : 1,
12802          "capabilities" : [ "Matrix" ]
12803        },
12804        {
12805          "enumerant" : "Geometry",
12806          "value" : 2,
12807          "capabilities" : [ "Shader" ]
12808        },
12809        {
12810          "enumerant" : "Tessellation",
12811          "value" : 3,
12812          "capabilities" : [ "Shader" ]
12813        },
12814        {
12815          "enumerant" : "Addresses",
12816          "value" : 4
12817        },
12818        {
12819          "enumerant" : "Linkage",
12820          "value" : 5
12821        },
12822        {
12823          "enumerant" : "Kernel",
12824          "value" : 6
12825        },
12826        {
12827          "enumerant" : "Vector16",
12828          "value" : 7,
12829          "capabilities" : [ "Kernel" ]
12830        },
12831        {
12832          "enumerant" : "Float16Buffer",
12833          "value" : 8,
12834          "capabilities" : [ "Kernel" ]
12835        },
12836        {
12837          "enumerant" : "Float16",
12838          "value" : 9
12839        },
12840        {
12841          "enumerant" : "Float64",
12842          "value" : 10
12843        },
12844        {
12845          "enumerant" : "Int64",
12846          "value" : 11
12847        },
12848        {
12849          "enumerant" : "Int64Atomics",
12850          "value" : 12,
12851          "capabilities" : [ "Int64" ]
12852        },
12853        {
12854          "enumerant" : "ImageBasic",
12855          "value" : 13,
12856          "capabilities" : [ "Kernel" ]
12857        },
12858        {
12859          "enumerant" : "ImageReadWrite",
12860          "value" : 14,
12861          "capabilities" : [ "ImageBasic" ]
12862        },
12863        {
12864          "enumerant" : "ImageMipmap",
12865          "value" : 15,
12866          "capabilities" : [ "ImageBasic" ]
12867        },
12868        {
12869          "enumerant" : "Pipes",
12870          "value" : 17,
12871          "capabilities" : [ "Kernel" ]
12872        },
12873        {
12874          "enumerant" : "Groups",
12875          "value" : 18,
12876          "extensions" : [ "SPV_AMD_shader_ballot" ]
12877        },
12878        {
12879          "enumerant" : "DeviceEnqueue",
12880          "value" : 19,
12881          "capabilities" : [ "Kernel" ]
12882        },
12883        {
12884          "enumerant" : "LiteralSampler",
12885          "value" : 20,
12886          "capabilities" : [ "Kernel" ]
12887        },
12888        {
12889          "enumerant" : "AtomicStorage",
12890          "value" : 21,
12891          "capabilities" : [ "Shader" ]
12892        },
12893        {
12894          "enumerant" : "Int16",
12895          "value" : 22
12896        },
12897        {
12898          "enumerant" : "TessellationPointSize",
12899          "value" : 23,
12900          "capabilities" : [ "Tessellation" ]
12901        },
12902        {
12903          "enumerant" : "GeometryPointSize",
12904          "value" : 24,
12905          "capabilities" : [ "Geometry" ]
12906        },
12907        {
12908          "enumerant" : "ImageGatherExtended",
12909          "value" : 25,
12910          "capabilities" : [ "Shader" ]
12911        },
12912        {
12913          "enumerant" : "StorageImageMultisample",
12914          "value" : 27,
12915          "capabilities" : [ "Shader" ]
12916        },
12917        {
12918          "enumerant" : "UniformBufferArrayDynamicIndexing",
12919          "value" : 28,
12920          "capabilities" : [ "Shader" ]
12921        },
12922        {
12923          "enumerant" : "SampledImageArrayDynamicIndexing",
12924          "value" : 29,
12925          "capabilities" : [ "Shader" ]
12926        },
12927        {
12928          "enumerant" : "StorageBufferArrayDynamicIndexing",
12929          "value" : 30,
12930          "capabilities" : [ "Shader" ]
12931        },
12932        {
12933          "enumerant" : "StorageImageArrayDynamicIndexing",
12934          "value" : 31,
12935          "capabilities" : [ "Shader" ]
12936        },
12937        {
12938          "enumerant" : "ClipDistance",
12939          "value" : 32,
12940          "capabilities" : [ "Shader" ]
12941        },
12942        {
12943          "enumerant" : "CullDistance",
12944          "value" : 33,
12945          "capabilities" : [ "Shader" ]
12946        },
12947        {
12948          "enumerant" : "ImageCubeArray",
12949          "value" : 34,
12950          "capabilities" : [ "SampledCubeArray" ]
12951        },
12952        {
12953          "enumerant" : "SampleRateShading",
12954          "value" : 35,
12955          "capabilities" : [ "Shader" ]
12956        },
12957        {
12958          "enumerant" : "ImageRect",
12959          "value" : 36,
12960          "capabilities" : [ "SampledRect" ]
12961        },
12962        {
12963          "enumerant" : "SampledRect",
12964          "value" : 37,
12965          "capabilities" : [ "Shader" ]
12966        },
12967        {
12968          "enumerant" : "GenericPointer",
12969          "value" : 38,
12970          "capabilities" : [ "Addresses" ]
12971        },
12972        {
12973          "enumerant" : "Int8",
12974          "value" : 39
12975        },
12976        {
12977          "enumerant" : "InputAttachment",
12978          "value" : 40,
12979          "capabilities" : [ "Shader" ]
12980        },
12981        {
12982          "enumerant" : "SparseResidency",
12983          "value" : 41,
12984          "capabilities" : [ "Shader" ]
12985        },
12986        {
12987          "enumerant" : "MinLod",
12988          "value" : 42,
12989          "capabilities" : [ "Shader" ]
12990        },
12991        {
12992          "enumerant" : "Sampled1D",
12993          "value" : 43
12994        },
12995        {
12996          "enumerant" : "Image1D",
12997          "value" : 44,
12998          "capabilities" : [ "Sampled1D" ]
12999        },
13000        {
13001          "enumerant" : "SampledCubeArray",
13002          "value" : 45,
13003          "capabilities" : [ "Shader" ]
13004        },
13005        {
13006          "enumerant" : "SampledBuffer",
13007          "value" : 46
13008        },
13009        {
13010          "enumerant" : "ImageBuffer",
13011          "value" : 47,
13012          "capabilities" : [ "SampledBuffer" ]
13013        },
13014        {
13015          "enumerant" : "ImageMSArray",
13016          "value" : 48,
13017          "capabilities" : [ "Shader" ]
13018        },
13019        {
13020          "enumerant" : "StorageImageExtendedFormats",
13021          "value" : 49,
13022          "capabilities" : [ "Shader" ]
13023        },
13024        {
13025          "enumerant" : "ImageQuery",
13026          "value" : 50,
13027          "capabilities" : [ "Shader" ]
13028        },
13029        {
13030          "enumerant" : "DerivativeControl",
13031          "value" : 51,
13032          "capabilities" : [ "Shader" ]
13033        },
13034        {
13035          "enumerant" : "InterpolationFunction",
13036          "value" : 52,
13037          "capabilities" : [ "Shader" ]
13038        },
13039        {
13040          "enumerant" : "TransformFeedback",
13041          "value" : 53,
13042          "capabilities" : [ "Shader" ]
13043        },
13044        {
13045          "enumerant" : "GeometryStreams",
13046          "value" : 54,
13047          "capabilities" : [ "Geometry" ]
13048        },
13049        {
13050          "enumerant" : "StorageImageReadWithoutFormat",
13051          "value" : 55,
13052          "capabilities" : [ "Shader" ]
13053        },
13054        {
13055          "enumerant" : "StorageImageWriteWithoutFormat",
13056          "value" : 56,
13057          "capabilities" : [ "Shader" ]
13058        },
13059        {
13060          "enumerant" : "MultiViewport",
13061          "value" : 57,
13062          "capabilities" : [ "Geometry" ]
13063        },
13064        {
13065          "enumerant" : "SubgroupDispatch",
13066          "value" : 58,
13067          "capabilities" : [ "DeviceEnqueue" ],
13068          "version" : "1.1"
13069        },
13070        {
13071          "enumerant" : "NamedBarrier",
13072          "value" : 59,
13073          "capabilities" : [ "Kernel" ],
13074          "version" : "1.1"
13075        },
13076        {
13077          "enumerant" : "PipeStorage",
13078          "value" : 60,
13079          "capabilities" : [ "Pipes" ],
13080          "version" : "1.1"
13081        },
13082        {
13083          "enumerant" : "GroupNonUniform",
13084          "value" : 61,
13085          "version" : "1.3"
13086        },
13087        {
13088          "enumerant" : "GroupNonUniformVote",
13089          "value" : 62,
13090          "capabilities" : [ "GroupNonUniform" ],
13091          "version" : "1.3"
13092        },
13093        {
13094          "enumerant" : "GroupNonUniformArithmetic",
13095          "value" : 63,
13096          "capabilities" : [ "GroupNonUniform" ],
13097          "version" : "1.3"
13098        },
13099        {
13100          "enumerant" : "GroupNonUniformBallot",
13101          "value" : 64,
13102          "capabilities" : [ "GroupNonUniform" ],
13103          "version" : "1.3"
13104        },
13105        {
13106          "enumerant" : "GroupNonUniformShuffle",
13107          "value" : 65,
13108          "capabilities" : [ "GroupNonUniform" ],
13109          "version" : "1.3"
13110        },
13111        {
13112          "enumerant" : "GroupNonUniformShuffleRelative",
13113          "value" : 66,
13114          "capabilities" : [ "GroupNonUniform" ],
13115          "version" : "1.3"
13116        },
13117        {
13118          "enumerant" : "GroupNonUniformClustered",
13119          "value" : 67,
13120          "capabilities" : [ "GroupNonUniform" ],
13121          "version" : "1.3"
13122        },
13123        {
13124          "enumerant" : "GroupNonUniformQuad",
13125          "value" : 68,
13126          "capabilities" : [ "GroupNonUniform" ],
13127          "version" : "1.3"
13128        },
13129        {
13130          "enumerant" : "ShaderLayer",
13131          "value" : 69,
13132          "version" : "1.5"
13133        },
13134        {
13135          "enumerant" : "ShaderViewportIndex",
13136          "value" : 70,
13137          "version" : "1.5"
13138        },
13139        {
13140          "enumerant" : "UniformDecoration",
13141          "value" : 71,
13142          "version" : "1.6"
13143        },
13144        {
13145          "enumerant" : "FragmentShadingRateKHR",
13146          "value" : 4422,
13147          "capabilities" : [ "Shader" ],
13148          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
13149          "version" : "None"
13150        },
13151        {
13152          "enumerant" : "SubgroupBallotKHR",
13153          "value" : 4423,
13154          "extensions" : [ "SPV_KHR_shader_ballot" ],
13155          "version" : "None"
13156        },
13157        {
13158          "enumerant" : "DrawParameters",
13159          "value" : 4427,
13160          "capabilities" : [ "Shader" ],
13161          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
13162          "version" : "1.3"
13163        },
13164        {
13165          "enumerant" : "WorkgroupMemoryExplicitLayoutKHR",
13166          "value" : 4428,
13167          "capabilities" : [ "Shader" ],
13168          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
13169          "version" : "None"
13170        },
13171        {
13172          "enumerant" : "WorkgroupMemoryExplicitLayout8BitAccessKHR",
13173          "value" : 4429,
13174          "capabilities" : [ "WorkgroupMemoryExplicitLayoutKHR" ],
13175          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
13176          "version" : "None"
13177        },
13178        {
13179          "enumerant" : "WorkgroupMemoryExplicitLayout16BitAccessKHR",
13180          "value" : 4430,
13181          "capabilities" : [ "Shader" ],
13182          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
13183          "version" : "None"
13184        },
13185        {
13186          "enumerant" : "SubgroupVoteKHR",
13187          "value" : 4431,
13188          "extensions" : [ "SPV_KHR_subgroup_vote" ],
13189          "version" : "None"
13190        },
13191        {
13192          "enumerant" : "StorageBuffer16BitAccess",
13193          "value" : 4433,
13194          "extensions" : [ "SPV_KHR_16bit_storage" ],
13195          "version" : "1.3"
13196        },
13197        {
13198          "enumerant" : "StorageUniformBufferBlock16",
13199          "value" : 4433,
13200          "extensions" : [ "SPV_KHR_16bit_storage" ],
13201          "version" : "1.3"
13202        },
13203        {
13204          "enumerant" : "UniformAndStorageBuffer16BitAccess",
13205          "value" : 4434,
13206          "capabilities" : [
13207            "StorageBuffer16BitAccess",
13208            "StorageUniformBufferBlock16"
13209          ],
13210          "extensions" : [ "SPV_KHR_16bit_storage" ],
13211          "version" : "1.3"
13212        },
13213        {
13214          "enumerant" : "StorageUniform16",
13215          "value" : 4434,
13216          "capabilities" : [
13217            "StorageBuffer16BitAccess",
13218            "StorageUniformBufferBlock16"
13219          ],
13220          "extensions" : [ "SPV_KHR_16bit_storage" ],
13221          "version" : "1.3"
13222        },
13223        {
13224          "enumerant" : "StoragePushConstant16",
13225          "value" : 4435,
13226          "extensions" : [ "SPV_KHR_16bit_storage" ],
13227          "version" : "1.3"
13228        },
13229        {
13230          "enumerant" : "StorageInputOutput16",
13231          "value" : 4436,
13232          "extensions" : [ "SPV_KHR_16bit_storage" ],
13233          "version" : "1.3"
13234        },
13235        {
13236          "enumerant" : "DeviceGroup",
13237          "value" : 4437,
13238          "extensions" : [ "SPV_KHR_device_group" ],
13239          "version" : "1.3"
13240        },
13241        {
13242          "enumerant" : "MultiView",
13243          "value" : 4439,
13244          "capabilities" : [ "Shader" ],
13245          "extensions" : [ "SPV_KHR_multiview" ],
13246          "version" : "1.3"
13247        },
13248        {
13249          "enumerant" : "VariablePointersStorageBuffer",
13250          "value" : 4441,
13251          "capabilities" : [ "Shader" ],
13252          "extensions" : [ "SPV_KHR_variable_pointers" ],
13253          "version" : "1.3"
13254        },
13255        {
13256          "enumerant" : "VariablePointers",
13257          "value" : 4442,
13258          "capabilities" : [ "VariablePointersStorageBuffer" ],
13259          "extensions" : [ "SPV_KHR_variable_pointers" ],
13260          "version" : "1.3"
13261        },
13262        {
13263          "enumerant" : "AtomicStorageOps",
13264          "value" : 4445,
13265          "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ],
13266          "version" : "None"
13267        },
13268        {
13269          "enumerant" : "SampleMaskPostDepthCoverage",
13270          "value" : 4447,
13271          "extensions" : [ "SPV_KHR_post_depth_coverage" ],
13272          "version" : "None"
13273        },
13274        {
13275          "enumerant" : "StorageBuffer8BitAccess",
13276          "value" : 4448,
13277          "extensions" : [ "SPV_KHR_8bit_storage" ],
13278          "version" : "1.5"
13279        },
13280        {
13281          "enumerant" : "UniformAndStorageBuffer8BitAccess",
13282          "value" : 4449,
13283          "capabilities" : [ "StorageBuffer8BitAccess" ],
13284          "extensions" : [ "SPV_KHR_8bit_storage" ],
13285          "version" : "1.5"
13286        },
13287        {
13288          "enumerant" : "StoragePushConstant8",
13289          "value" : 4450,
13290          "extensions" : [ "SPV_KHR_8bit_storage" ],
13291          "version" : "1.5"
13292        },
13293        {
13294          "enumerant" : "DenormPreserve",
13295          "value" : 4464,
13296          "extensions" : [ "SPV_KHR_float_controls" ],
13297          "version" : "1.4"
13298        },
13299        {
13300          "enumerant" : "DenormFlushToZero",
13301          "value" : 4465,
13302          "extensions" : [ "SPV_KHR_float_controls" ],
13303          "version" : "1.4"
13304        },
13305        {
13306          "enumerant" : "SignedZeroInfNanPreserve",
13307          "value" : 4466,
13308          "extensions" : [ "SPV_KHR_float_controls" ],
13309          "version" : "1.4"
13310        },
13311        {
13312          "enumerant" : "RoundingModeRTE",
13313          "value" : 4467,
13314          "extensions" : [ "SPV_KHR_float_controls" ],
13315          "version" : "1.4"
13316        },
13317        {
13318          "enumerant" : "RoundingModeRTZ",
13319          "value" : 4468,
13320          "extensions" : [ "SPV_KHR_float_controls" ],
13321          "version" : "1.4"
13322        },
13323        {
13324          "enumerant" : "RayQueryProvisionalKHR",
13325          "value" : 4471,
13326          "capabilities" : [ "Shader" ],
13327          "extensions" : [ "SPV_KHR_ray_query" ],
13328          "version" : "None"
13329        },
13330        {
13331          "enumerant" : "RayQueryKHR",
13332          "value" : 4472,
13333          "capabilities" : [ "Shader" ],
13334          "extensions" : [ "SPV_KHR_ray_query" ],
13335          "version" : "None"
13336        },
13337        {
13338          "enumerant" : "RayTraversalPrimitiveCullingKHR",
13339          "value" : 4478,
13340          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
13341          "extensions" : [ "SPV_KHR_ray_query","SPV_KHR_ray_tracing" ],
13342          "version" : "None"
13343        },
13344        {
13345          "enumerant" : "RayTracingKHR",
13346          "value" : 4479,
13347          "capabilities" : [ "Shader" ],
13348          "extensions" : [ "SPV_KHR_ray_tracing" ],
13349          "version" : "None"
13350        },
13351        {
13352          "enumerant" : "Float16ImageAMD",
13353          "value" : 5008,
13354          "capabilities" : [ "Shader" ],
13355          "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ],
13356          "version" : "None"
13357        },
13358        {
13359          "enumerant" : "ImageGatherBiasLodAMD",
13360          "value" : 5009,
13361          "capabilities" : [ "Shader" ],
13362          "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ],
13363          "version" : "None"
13364        },
13365        {
13366          "enumerant" : "FragmentMaskAMD",
13367          "value" : 5010,
13368          "capabilities" : [ "Shader" ],
13369          "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
13370          "version" : "None"
13371        },
13372        {
13373          "enumerant" : "StencilExportEXT",
13374          "value" : 5013,
13375          "capabilities" : [ "Shader" ],
13376          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
13377          "version" : "None"
13378        },
13379        {
13380          "enumerant" : "ImageReadWriteLodAMD",
13381          "value" : 5015,
13382          "capabilities" : [ "Shader" ],
13383          "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
13384          "version" : "None"
13385        },
13386        {
13387          "enumerant" : "Int64ImageEXT",
13388          "value" : 5016,
13389          "capabilities" : [ "Shader" ],
13390          "extensions" : [ "SPV_EXT_shader_image_int64" ],
13391          "version" : "None"
13392        },
13393        {
13394          "enumerant" : "ShaderClockKHR",
13395          "value" : 5055,
13396          "capabilities" : [ "Shader" ],
13397          "extensions" : [ "SPV_KHR_shader_clock" ],
13398          "version" : "None"
13399        },
13400        {
13401          "enumerant" : "SampleMaskOverrideCoverageNV",
13402          "value" : 5249,
13403          "capabilities" : [ "SampleRateShading" ],
13404          "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
13405          "version" : "None"
13406        },
13407        {
13408          "enumerant" : "GeometryShaderPassthroughNV",
13409          "value" : 5251,
13410          "capabilities" : [ "Geometry" ],
13411          "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
13412          "version" : "None"
13413        },
13414        {
13415          "enumerant" : "ShaderViewportIndexLayerEXT",
13416          "value" : 5254,
13417          "capabilities" : [ "MultiViewport" ],
13418          "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ],
13419          "version" : "None"
13420        },
13421        {
13422          "enumerant" : "ShaderViewportIndexLayerNV",
13423          "value" : 5254,
13424          "capabilities" : [ "MultiViewport" ],
13425          "extensions" : [ "SPV_NV_viewport_array2" ],
13426          "version" : "None"
13427        },
13428        {
13429          "enumerant" : "ShaderViewportMaskNV",
13430          "value" : 5255,
13431          "capabilities" : [ "ShaderViewportIndexLayerNV" ],
13432          "extensions" : [ "SPV_NV_viewport_array2" ],
13433          "version" : "None"
13434        },
13435        {
13436          "enumerant" : "ShaderStereoViewNV",
13437          "value" : 5259,
13438          "capabilities" : [ "ShaderViewportMaskNV" ],
13439          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
13440          "version" : "None"
13441        },
13442        {
13443          "enumerant" : "PerViewAttributesNV",
13444          "value" : 5260,
13445          "capabilities" : [ "MultiView" ],
13446          "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ],
13447          "version" : "None"
13448        },
13449        {
13450          "enumerant" : "FragmentFullyCoveredEXT",
13451          "value" : 5265,
13452          "capabilities" : [ "Shader" ],
13453          "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
13454          "version" : "None"
13455        },
13456        {
13457          "enumerant" : "MeshShadingNV",
13458          "value" : 5266,
13459          "capabilities" : [ "Shader" ],
13460          "extensions" : [ "SPV_NV_mesh_shader" ],
13461          "version" : "None"
13462        },
13463        {
13464          "enumerant" : "ImageFootprintNV",
13465          "value" : 5282,
13466          "extensions" : [ "SPV_NV_shader_image_footprint" ],
13467          "version" : "None"
13468        },
13469        {
13470          "enumerant" : "FragmentBarycentricKHR",
13471          "value" : 5284,
13472          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
13473          "version" : "None"
13474        },
13475        {
13476          "enumerant" : "FragmentBarycentricNV",
13477          "value" : 5284,
13478          "extensions" : [ "SPV_NV_fragment_shader_barycentric", "SPV_KHR_fragment_shader_barycentric" ],
13479          "version" : "None"
13480        },
13481        {
13482          "enumerant" : "ComputeDerivativeGroupQuadsNV",
13483          "value" : 5288,
13484          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
13485          "version" : "None"
13486        },
13487        {
13488          "enumerant" : "FragmentDensityEXT",
13489          "value" : 5291,
13490          "capabilities" : [ "Shader" ],
13491          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
13492          "version" : "None"
13493        },
13494        {
13495          "enumerant" : "ShadingRateNV",
13496          "value" : 5291,
13497          "capabilities" : [ "Shader" ],
13498          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
13499          "version" : "None"
13500        },
13501        {
13502          "enumerant" : "GroupNonUniformPartitionedNV",
13503          "value" : 5297,
13504          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
13505          "version" : "None"
13506        },
13507        {
13508          "enumerant" : "ShaderNonUniform",
13509          "value" : 5301,
13510          "capabilities" : [ "Shader" ],
13511          "version" : "1.5"
13512        },
13513        {
13514          "enumerant" : "ShaderNonUniformEXT",
13515          "value" : 5301,
13516          "capabilities" : [ "Shader" ],
13517          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13518          "version" : "1.5"
13519        },
13520        {
13521          "enumerant" : "RuntimeDescriptorArray",
13522          "value" : 5302,
13523          "capabilities" : [ "Shader" ],
13524          "version" : "1.5"
13525        },
13526        {
13527          "enumerant" : "RuntimeDescriptorArrayEXT",
13528          "value" : 5302,
13529          "capabilities" : [ "Shader" ],
13530          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13531          "version" : "1.5"
13532        },
13533        {
13534          "enumerant" : "InputAttachmentArrayDynamicIndexing",
13535          "value" : 5303,
13536          "capabilities" : [ "InputAttachment" ],
13537          "version" : "1.5"
13538        },
13539        {
13540          "enumerant" : "InputAttachmentArrayDynamicIndexingEXT",
13541          "value" : 5303,
13542          "capabilities" : [ "InputAttachment" ],
13543          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13544          "version" : "1.5"
13545        },
13546        {
13547          "enumerant" : "UniformTexelBufferArrayDynamicIndexing",
13548          "value" : 5304,
13549          "capabilities" : [ "SampledBuffer" ],
13550          "version" : "1.5"
13551        },
13552        {
13553          "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT",
13554          "value" : 5304,
13555          "capabilities" : [ "SampledBuffer" ],
13556          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13557          "version" : "1.5"
13558        },
13559        {
13560          "enumerant" : "StorageTexelBufferArrayDynamicIndexing",
13561          "value" : 5305,
13562          "capabilities" : [ "ImageBuffer" ],
13563          "version" : "1.5"
13564        },
13565        {
13566          "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT",
13567          "value" : 5305,
13568          "capabilities" : [ "ImageBuffer" ],
13569          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13570          "version" : "1.5"
13571        },
13572        {
13573          "enumerant" : "UniformBufferArrayNonUniformIndexing",
13574          "value" : 5306,
13575          "capabilities" : [ "ShaderNonUniform" ],
13576          "version" : "1.5"
13577        },
13578        {
13579          "enumerant" : "UniformBufferArrayNonUniformIndexingEXT",
13580          "value" : 5306,
13581          "capabilities" : [ "ShaderNonUniform" ],
13582          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13583          "version" : "1.5"
13584        },
13585        {
13586          "enumerant" : "SampledImageArrayNonUniformIndexing",
13587          "value" : 5307,
13588          "capabilities" : [ "ShaderNonUniform" ],
13589          "version" : "1.5"
13590        },
13591        {
13592          "enumerant" : "SampledImageArrayNonUniformIndexingEXT",
13593          "value" : 5307,
13594          "capabilities" : [ "ShaderNonUniform" ],
13595          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13596          "version" : "1.5"
13597        },
13598        {
13599          "enumerant" : "StorageBufferArrayNonUniformIndexing",
13600          "value" : 5308,
13601          "capabilities" : [ "ShaderNonUniform" ],
13602          "version" : "1.5"
13603        },
13604        {
13605          "enumerant" : "StorageBufferArrayNonUniformIndexingEXT",
13606          "value" : 5308,
13607          "capabilities" : [ "ShaderNonUniform" ],
13608          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13609          "version" : "1.5"
13610        },
13611        {
13612          "enumerant" : "StorageImageArrayNonUniformIndexing",
13613          "value" : 5309,
13614          "capabilities" : [ "ShaderNonUniform" ],
13615          "version" : "1.5"
13616        },
13617        {
13618          "enumerant" : "StorageImageArrayNonUniformIndexingEXT",
13619          "value" : 5309,
13620          "capabilities" : [ "ShaderNonUniform" ],
13621          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13622          "version" : "1.5"
13623        },
13624        {
13625          "enumerant" : "InputAttachmentArrayNonUniformIndexing",
13626          "value" : 5310,
13627          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
13628          "version" : "1.5"
13629        },
13630        {
13631          "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT",
13632          "value" : 5310,
13633          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
13634          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13635          "version" : "1.5"
13636        },
13637        {
13638          "enumerant" : "UniformTexelBufferArrayNonUniformIndexing",
13639          "value" : 5311,
13640          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
13641          "version" : "1.5"
13642        },
13643        {
13644          "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT",
13645          "value" : 5311,
13646          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
13647          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13648          "version" : "1.5"
13649        },
13650        {
13651          "enumerant" : "StorageTexelBufferArrayNonUniformIndexing",
13652          "value" : 5312,
13653          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
13654          "version" : "1.5"
13655        },
13656        {
13657          "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT",
13658          "value" : 5312,
13659          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
13660          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13661          "version" : "1.5"
13662        },
13663        {
13664          "enumerant" : "RayTracingNV",
13665          "value" : 5340,
13666          "capabilities" : [ "Shader" ],
13667          "extensions" : [ "SPV_NV_ray_tracing" ],
13668          "version" : "None"
13669        },
13670        {
13671          "enumerant" : "RayTracingMotionBlurNV",
13672          "value" : 5341,
13673          "capabilities" : [ "Shader" ],
13674          "extensions" : [ "SPV_NV_ray_tracing_motion_blur" ],
13675          "version" : "None"
13676        },
13677        {
13678          "enumerant" : "VulkanMemoryModel",
13679          "value" : 5345,
13680          "version" : "1.5"
13681        },
13682        {
13683          "enumerant" : "VulkanMemoryModelKHR",
13684          "value" : 5345,
13685          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
13686          "version" : "1.5"
13687        },
13688        {
13689          "enumerant" : "VulkanMemoryModelDeviceScope",
13690          "value" : 5346,
13691          "version" : "1.5"
13692        },
13693        {
13694          "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
13695          "value" : 5346,
13696          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
13697          "version" : "1.5"
13698        },
13699        {
13700          "enumerant" : "PhysicalStorageBufferAddresses",
13701          "value" : 5347,
13702          "capabilities" : [ "Shader" ],
13703          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
13704          "version" : "1.5"
13705        },
13706        {
13707          "enumerant" : "PhysicalStorageBufferAddressesEXT",
13708          "value" : 5347,
13709          "capabilities" : [ "Shader" ],
13710          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
13711          "version" : "1.5"
13712        },
13713        {
13714          "enumerant" : "ComputeDerivativeGroupLinearNV",
13715          "value" : 5350,
13716          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
13717          "version" : "None"
13718        },
13719        {
13720          "enumerant" : "RayTracingProvisionalKHR",
13721          "value" : 5353,
13722          "capabilities" : [ "Shader" ],
13723          "extensions" : [ "SPV_KHR_ray_tracing" ],
13724          "version" : "None"
13725        },
13726        {
13727          "enumerant" : "CooperativeMatrixNV",
13728          "value" : 5357,
13729          "capabilities" : [ "Shader" ],
13730          "extensions" : [ "SPV_NV_cooperative_matrix" ],
13731          "version" : "None"
13732        },
13733        {
13734          "enumerant" : "FragmentShaderSampleInterlockEXT",
13735          "value" : 5363,
13736          "capabilities" : [ "Shader" ],
13737          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
13738          "version" : "None"
13739        },
13740        {
13741          "enumerant" : "FragmentShaderShadingRateInterlockEXT",
13742          "value" : 5372,
13743          "capabilities" : [ "Shader" ],
13744          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
13745          "version" : "None"
13746        },
13747        {
13748          "enumerant" : "ShaderSMBuiltinsNV",
13749          "value" : 5373,
13750          "capabilities" : [ "Shader" ],
13751          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
13752          "version" : "None"
13753        },
13754        {
13755          "enumerant" : "FragmentShaderPixelInterlockEXT",
13756          "value" : 5378,
13757          "capabilities" : [ "Shader" ],
13758          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
13759          "version" : "None"
13760        },
13761        {
13762          "enumerant" : "DemoteToHelperInvocation",
13763          "value" : 5379,
13764          "capabilities" : [ "Shader" ],
13765          "version" : "1.6"
13766        },
13767        {
13768          "enumerant" : "DemoteToHelperInvocationEXT",
13769          "value" : 5379,
13770          "capabilities" : [ "Shader" ],
13771          "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
13772          "version" : "1.6"
13773        },
13774        {
13775          "enumerant" : "BindlessTextureNV",
13776          "value" : 5390,
13777          "extensions" : [ "SPV_NV_bindless_texture" ],
13778          "version" : "None"
13779        },
13780        {
13781          "enumerant" : "SubgroupShuffleINTEL",
13782          "value" : 5568,
13783          "extensions" : [ "SPV_INTEL_subgroups" ],
13784          "version" : "None"
13785        },
13786        {
13787          "enumerant" : "SubgroupBufferBlockIOINTEL",
13788          "value" : 5569,
13789          "extensions" : [ "SPV_INTEL_subgroups" ],
13790          "version" : "None"
13791        },
13792        {
13793          "enumerant" : "SubgroupImageBlockIOINTEL",
13794          "value" : 5570,
13795          "extensions" : [ "SPV_INTEL_subgroups" ],
13796          "version" : "None"
13797        },
13798        {
13799          "enumerant" : "SubgroupImageMediaBlockIOINTEL",
13800          "value" : 5579,
13801          "extensions" : [ "SPV_INTEL_media_block_io" ],
13802          "version" : "None"
13803        },
13804        {
13805          "enumerant" : "RoundToInfinityINTEL",
13806          "value" : 5582,
13807          "extensions" : [ "SPV_INTEL_float_controls2" ],
13808          "version" : "None"
13809        },
13810        {
13811          "enumerant" : "FloatingPointModeINTEL",
13812          "value" : 5583,
13813          "extensions" : [ "SPV_INTEL_float_controls2" ],
13814          "version" : "None"
13815        },
13816        {
13817          "enumerant" : "IntegerFunctions2INTEL",
13818          "value" : 5584,
13819          "capabilities" : [ "Shader" ],
13820          "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
13821          "version" : "None"
13822        },
13823        {
13824          "enumerant" : "FunctionPointersINTEL",
13825          "value" : 5603,
13826          "extensions" : [ "SPV_INTEL_function_pointers" ],
13827          "version" : "None"
13828        },
13829        {
13830          "enumerant" : "IndirectReferencesINTEL",
13831          "value" : 5604,
13832          "extensions" : [ "SPV_INTEL_function_pointers" ],
13833          "version" : "None"
13834        },
13835        {
13836          "enumerant" : "AsmINTEL",
13837          "value" : 5606,
13838          "extensions" : [ "SPV_INTEL_inline_assembly" ],
13839          "version" : "None"
13840        },
13841        {
13842          "enumerant" : "AtomicFloat32MinMaxEXT",
13843          "value" : 5612,
13844          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
13845          "version" : "None"
13846        },
13847        {
13848          "enumerant" : "AtomicFloat64MinMaxEXT",
13849          "value" : 5613,
13850          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
13851          "version" : "None"
13852        },
13853        {
13854          "enumerant" : "AtomicFloat16MinMaxEXT",
13855          "value" : 5616,
13856          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
13857          "version" : "None"
13858        },
13859        {
13860          "enumerant" : "VectorComputeINTEL",
13861          "value" : 5617,
13862          "capabilities" : [ "VectorAnyINTEL" ],
13863          "extensions" : [ "SPV_INTEL_vector_compute" ],
13864          "version" : "None"
13865        },
13866        {
13867          "enumerant" : "VectorAnyINTEL",
13868          "value" : 5619,
13869          "extensions" : [ "SPV_INTEL_vector_compute" ],
13870          "version" : "None"
13871        },
13872        {
13873          "enumerant" : "ExpectAssumeKHR",
13874          "value" : 5629,
13875          "extensions" : [ "SPV_KHR_expect_assume" ],
13876          "version" : "None"
13877        },
13878        {
13879          "enumerant" : "SubgroupAvcMotionEstimationINTEL",
13880          "value" : 5696,
13881          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
13882          "version" : "None"
13883        },
13884        {
13885          "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL",
13886          "value" : 5697,
13887          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
13888          "version" : "None"
13889        },
13890        {
13891          "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL",
13892          "value" : 5698,
13893          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
13894          "version" : "None"
13895        },
13896        {
13897          "enumerant" : "VariableLengthArrayINTEL",
13898          "value" : 5817,
13899          "extensions" : [ "SPV_INTEL_variable_length_array" ],
13900          "version" : "None"
13901        },
13902        {
13903          "enumerant" : "FunctionFloatControlINTEL",
13904          "value" : 5821,
13905          "extensions" : [ "SPV_INTEL_float_controls2" ],
13906          "version" : "None"
13907        },
13908        {
13909          "enumerant" : "FPGAMemoryAttributesINTEL",
13910          "value" : 5824,
13911          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13912          "version" : "None"
13913        },
13914        {
13915          "enumerant" : "FPFastMathModeINTEL",
13916          "value" : 5837,
13917          "capabilities" : [ "Kernel" ],
13918          "extensions" : [ "SPV_INTEL_fp_fast_math_mode" ],
13919          "version" : "None"
13920        },
13921        {
13922          "enumerant" : "ArbitraryPrecisionIntegersINTEL",
13923          "value" : 5844,
13924          "extensions" : [ "SPV_INTEL_arbitrary_precision_integers" ],
13925          "version" : "None"
13926        },
13927        {
13928          "enumerant" : "ArbitraryPrecisionFloatingPointINTEL",
13929          "value" : 5845,
13930          "extensions" : [ "SPV_INTEL_arbitrary_precision_floating_point" ],
13931          "version" : "None"
13932        },
13933        {
13934          "enumerant" : "UnstructuredLoopControlsINTEL",
13935          "value" : 5886,
13936          "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
13937          "version" : "None"
13938        },
13939        {
13940          "enumerant" : "FPGALoopControlsINTEL",
13941          "value" : 5888,
13942          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
13943          "version" : "None"
13944        },
13945        {
13946          "enumerant" : "KernelAttributesINTEL",
13947          "value" : 5892,
13948          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
13949          "version" : "None"
13950        },
13951        {
13952          "enumerant" : "FPGAKernelAttributesINTEL",
13953          "value" : 5897,
13954          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
13955          "version" : "None"
13956        },
13957        {
13958          "enumerant" : "FPGAMemoryAccessesINTEL",
13959          "value" : 5898,
13960          "extensions" : [ "SPV_INTEL_fpga_memory_accesses" ],
13961          "version" : "None"
13962        },
13963        {
13964          "enumerant" : "FPGAClusterAttributesINTEL",
13965          "value" : 5904,
13966          "extensions" : [ "SPV_INTEL_fpga_cluster_attributes" ],
13967          "version" : "None"
13968        },
13969        {
13970          "enumerant" : "LoopFuseINTEL",
13971          "value" : 5906,
13972          "extensions" : [ "SPV_INTEL_loop_fuse" ],
13973          "version" : "None"
13974        },
13975        {
13976          "enumerant" : "MemoryAccessAliasingINTEL",
13977          "value" : 5910,
13978          "extensions" : [ "SPV_INTEL_memory_access_aliasing" ],
13979          "version" : "None"
13980        },
13981        {
13982          "enumerant" : "FPGABufferLocationINTEL",
13983          "value" : 5920,
13984          "extensions" : [ "SPV_INTEL_fpga_buffer_location" ],
13985          "version" : "None"
13986        },
13987        {
13988          "enumerant" : "ArbitraryPrecisionFixedPointINTEL",
13989          "value" : 5922,
13990          "extensions" : [ "SPV_INTEL_arbitrary_precision_fixed_point" ],
13991          "version" : "None"
13992        },
13993        {
13994          "enumerant" : "USMStorageClassesINTEL",
13995          "value" : 5935,
13996          "extensions" : [ "SPV_INTEL_usm_storage_classes" ],
13997          "version" : "None"
13998        },
13999        {
14000          "enumerant" : "IOPipesINTEL",
14001          "value" : 5943,
14002          "extensions" : [ "SPV_INTEL_io_pipes" ],
14003          "version" : "None"
14004        },
14005        {
14006          "enumerant" : "BlockingPipesINTEL",
14007          "value" : 5945,
14008          "extensions" : [ "SPV_INTEL_blocking_pipes" ],
14009          "version" : "None"
14010        },
14011        {
14012          "enumerant" : "FPGARegINTEL",
14013          "value" : 5948,
14014          "extensions" : [ "SPV_INTEL_fpga_reg" ],
14015          "version" : "None"
14016        },
14017        {
14018          "enumerant" : "DotProductInputAll",
14019          "value" : 6016,
14020          "version" : "1.6"
14021        },
14022        {
14023          "enumerant" : "DotProductInputAllKHR",
14024          "value" : 6016,
14025          "extensions" : [ "SPV_KHR_integer_dot_product" ],
14026          "version" : "1.6"
14027        },
14028        {
14029          "enumerant" : "DotProductInput4x8Bit",
14030          "value" : 6017,
14031          "capabilities" : [ "Int8" ],
14032          "version" : "1.6"
14033        },
14034        {
14035          "enumerant" : "DotProductInput4x8BitKHR",
14036          "value" : 6017,
14037          "capabilities" : [ "Int8" ],
14038          "extensions" : [ "SPV_KHR_integer_dot_product" ],
14039          "version" : "1.6"
14040        },
14041        {
14042          "enumerant" : "DotProductInput4x8BitPacked",
14043          "value" : 6018,
14044          "version" : "1.6"
14045        },
14046        {
14047          "enumerant" : "DotProductInput4x8BitPackedKHR",
14048          "value" : 6018,
14049          "extensions" : [ "SPV_KHR_integer_dot_product" ],
14050          "version" : "1.6"
14051        },
14052        {
14053          "enumerant" : "DotProduct",
14054          "value" : 6019,
14055          "version" : "1.6"
14056        },
14057        {
14058          "enumerant" : "DotProductKHR",
14059          "value" : 6019,
14060          "extensions" : [ "SPV_KHR_integer_dot_product" ],
14061          "version" : "1.6"
14062        },
14063        {
14064          "enumerant" : "RayCullMaskKHR",
14065          "value" : 6020,
14066          "extensions" : [ "SPV_KHR_ray_cull_mask" ],
14067          "version" : "None"
14068        },
14069        {
14070          "enumerant" : "BitInstructions",
14071          "value" : 6025,
14072          "extensions" : [ "SPV_KHR_bit_instructions" ],
14073          "version" : "None"
14074        },
14075        {
14076          "enumerant" : "GroupNonUniformRotateKHR",
14077          "value" : 6026,
14078          "capabilities" : [ "GroupNonUniform" ],
14079          "extensions" : [ "SPV_KHR_subgroup_rotate" ],
14080          "version" : "None"
14081        },
14082        {
14083          "enumerant" : "AtomicFloat32AddEXT",
14084          "value" : 6033,
14085          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
14086          "version" : "None"
14087        },
14088        {
14089          "enumerant" : "AtomicFloat64AddEXT",
14090          "value" : 6034,
14091          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
14092          "version" : "None"
14093        },
14094        {
14095          "enumerant" : "LongConstantCompositeINTEL",
14096          "value" : 6089,
14097          "extensions" : [ "SPV_INTEL_long_constant_composite" ],
14098          "version" : "None"
14099        },
14100        {
14101          "enumerant" : "OptNoneINTEL",
14102          "value" : 6094,
14103          "extensions" : [ "SPV_INTEL_optnone" ],
14104          "version" : "None"
14105        },
14106        {
14107          "enumerant" : "AtomicFloat16AddEXT",
14108          "value" : 6095,
14109          "extensions" : [ "SPV_EXT_shader_atomic_float16_add" ],
14110          "version" : "None"
14111        },
14112        {
14113          "enumerant" : "DebugInfoModuleINTEL",
14114          "value" : 6114,
14115          "extensions" : [ "SPV_INTEL_debug_module" ],
14116          "version" : "None"
14117        },
14118        {
14119          "enumerant" : "SplitBarrierINTEL",
14120          "value" : 6141,
14121          "extensions" : [ "SPV_INTEL_split_barrier" ],
14122          "version" : "None"
14123        },
14124        {
14125          "enumerant" : "GroupUniformArithmeticKHR",
14126          "value" : 6400,
14127          "extensions" : [ "SPV_KHR_uniform_group_instructions"],
14128          "version" : "None"
14129        }
14130      ]
14131    },
14132    {
14133      "category" : "ValueEnum",
14134      "kind" : "RayQueryIntersection",
14135      "enumerants" : [
14136        {
14137          "enumerant" : "RayQueryCandidateIntersectionKHR",
14138          "value" : 0,
14139          "capabilities" : [ "RayQueryKHR" ],
14140          "version" : "None"
14141        },
14142        {
14143          "enumerant" : "RayQueryCommittedIntersectionKHR",
14144          "value" : 1,
14145          "capabilities" : [ "RayQueryKHR" ],
14146          "version" : "None"
14147        }
14148      ]
14149    },
14150    {
14151      "category" : "ValueEnum",
14152      "kind" : "RayQueryCommittedIntersectionType",
14153      "enumerants" : [
14154        {
14155          "enumerant" : "RayQueryCommittedIntersectionNoneKHR",
14156          "value" : 0,
14157          "capabilities" : [ "RayQueryKHR" ],
14158          "version" : "None"
14159        },
14160        {
14161          "enumerant" : "RayQueryCommittedIntersectionTriangleKHR",
14162          "value" : 1,
14163          "capabilities" : [ "RayQueryKHR" ],
14164          "version" : "None"
14165        },
14166        {
14167          "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR",
14168          "value" : 2,
14169          "capabilities" : [ "RayQueryKHR" ],
14170          "version" : "None"
14171        }
14172      ]
14173    },
14174    {
14175      "category" : "ValueEnum",
14176      "kind" : "RayQueryCandidateIntersectionType",
14177      "enumerants" : [
14178        {
14179          "enumerant" : "RayQueryCandidateIntersectionTriangleKHR",
14180          "value" : 0,
14181          "capabilities" : [ "RayQueryKHR" ],
14182          "version" : "None"
14183        },
14184        {
14185          "enumerant" : "RayQueryCandidateIntersectionAABBKHR",
14186          "value" : 1,
14187          "capabilities" : [ "RayQueryKHR" ],
14188          "version" : "None"
14189        }
14190      ]
14191    },
14192    {
14193      "category" : "ValueEnum",
14194      "kind" : "PackedVectorFormat",
14195      "enumerants" : [
14196        {
14197          "enumerant" : "PackedVectorFormat4x8Bit",
14198          "value" : 0,
14199          "version" : "1.6"
14200        },
14201        {
14202          "enumerant" : "PackedVectorFormat4x8BitKHR",
14203          "value" : 0,
14204          "extensions" : [ "SPV_KHR_integer_dot_product" ],
14205          "version" : "1.6"
14206        }
14207      ]
14208    },
14209    {
14210      "category" : "Id",
14211      "kind" : "IdResultType",
14212      "doc" : "Reference to an <id> representing the result's type of the enclosing instruction"
14213    },
14214    {
14215      "category" : "Id",
14216      "kind" : "IdResult",
14217      "doc" : "Definition of an <id> representing the result of the enclosing instruction"
14218    },
14219    {
14220      "category" : "Id",
14221      "kind" : "IdMemorySemantics",
14222      "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the MemorySemantics operand kind"
14223    },
14224    {
14225      "category" : "Id",
14226      "kind" : "IdScope",
14227      "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the Scope operand kind"
14228    },
14229    {
14230      "category" : "Id",
14231      "kind" : "IdRef",
14232      "doc" : "Reference to an <id>"
14233    },
14234    {
14235      "category" : "Literal",
14236      "kind" : "LiteralInteger",
14237      "doc" : "An integer consuming one or more words"
14238    },
14239    {
14240      "category" : "Literal",
14241      "kind" : "LiteralString",
14242      "doc" : "A null-terminated stream of characters consuming an integral number of words"
14243    },
14244    {
14245      "category" : "Literal",
14246      "kind" : "LiteralContextDependentNumber",
14247      "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction"
14248    },
14249    {
14250      "category" : "Literal",
14251      "kind" : "LiteralExtInstInteger",
14252      "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)"
14253    },
14254    {
14255      "category" : "Literal",
14256      "kind" : "LiteralSpecConstantOpInteger",
14257      "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)"
14258    },
14259    {
14260      "category" : "Composite",
14261      "kind" : "PairLiteralIntegerIdRef",
14262      "bases" : [ "LiteralInteger", "IdRef" ]
14263    },
14264    {
14265      "category" : "Composite",
14266      "kind" : "PairIdRefLiteralInteger",
14267      "bases" : [ "IdRef", "LiteralInteger" ]
14268    },
14269    {
14270      "category" : "Composite",
14271      "kind" : "PairIdRefIdRef",
14272      "bases" : [ "IdRef", "IdRef" ]
14273    }
14274  ]
14275}
14276