• 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" : 5,
30  "revision" : 4,
31  "instruction_printing_class" : [
32    {
33      "tag"     : "@exclude"
34    },
35    {
36      "tag"     : "Miscellaneous",
37      "heading" : "Miscellaneous Instructions"
38    },
39    {
40      "tag"     : "Debug",
41      "heading" : "Debug Instructions"
42    },
43    {
44      "tag"     : "Annotation",
45      "heading" : "Annotation Instructions"
46    },
47    {
48      "tag"     : "Extension",
49      "heading" : "Extension Instructions"
50    },
51    {
52      "tag"     : "Mode-Setting",
53      "heading" : "Mode-Setting Instructions"
54    },
55    {
56      "tag"     : "Type-Declaration",
57      "heading" : "Type-Declaration Instructions"
58    },
59    {
60      "tag"     : "Constant-Creation",
61      "heading" : "Constant-Creation Instructions"
62    },
63    {
64      "tag"     : "Memory",
65      "heading" : "Memory Instructions"
66    },
67    {
68      "tag"     : "Function",
69      "heading" : "Function Instructions"
70    },
71    {
72      "tag"     : "Image",
73      "heading" : "Image Instructions"
74    },
75    {
76      "tag"     : "Conversion",
77      "heading" : "Conversion Instructions"
78    },
79    {
80      "tag"     : "Composite",
81      "heading" : "Composite Instructions"
82    },
83    {
84      "tag"     : "Arithmetic",
85      "heading" : "Arithmetic Instructions"
86    },
87    {
88      "tag"     : "Bit",
89      "heading" : "Bit Instructions"
90    },
91    {
92      "tag"     : "Relational_and_Logical",
93      "heading" : "Relational and Logical Instructions"
94    },
95    {
96      "tag"     : "Derivative",
97      "heading" : "Derivative Instructions"
98    },
99    {
100      "tag"     : "Control-Flow",
101      "heading" : "Control-Flow Instructions"
102    },
103    {
104      "tag"     : "Atomic",
105      "heading" : "Atomic Instructions"
106    },
107    {
108      "tag"     : "Primitive",
109      "heading" : "Primitive Instructions"
110    },
111    {
112      "tag"     : "Barrier",
113      "heading" : "Barrier Instructions"
114    },
115    {
116      "tag"     : "Group",
117      "heading" : "Group and Subgroup Instructions"
118    },
119    {
120      "tag"     : "Device-Side_Enqueue",
121      "heading" : "Device-Side Enqueue Instructions"
122    },
123    {
124      "tag"     : "Pipe",
125      "heading" : "Pipe Instructions"
126    },
127    {
128      "tag"     : "Non-Uniform",
129      "heading" : "Non-Uniform Instructions"
130    },
131    {
132      "tag"     : "Reserved",
133      "heading" : "Reserved Instructions"
134    }
135  ],
136  "instructions" : [
137    {
138      "opname" : "OpNop",
139      "class"  : "Miscellaneous",
140      "opcode" : 0
141    },
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    },
1740    {
1741      "opname" : "OpOrdered",
1742      "class"  : "Relational_and_Logical",
1743      "opcode" : 162,
1744      "operands" : [
1745        { "kind" : "IdResultType" },
1746        { "kind" : "IdResult" },
1747        { "kind" : "IdRef",        "name" : "'x'" },
1748        { "kind" : "IdRef",        "name" : "'y'" }
1749      ],
1750      "capabilities" : [ "Kernel" ]
1751    },
1752    {
1753      "opname" : "OpUnordered",
1754      "class"  : "Relational_and_Logical",
1755      "opcode" : 163,
1756      "operands" : [
1757        { "kind" : "IdResultType" },
1758        { "kind" : "IdResult" },
1759        { "kind" : "IdRef",        "name" : "'x'" },
1760        { "kind" : "IdRef",        "name" : "'y'" }
1761      ],
1762      "capabilities" : [ "Kernel" ]
1763    },
1764    {
1765      "opname" : "OpLogicalEqual",
1766      "class"  : "Relational_and_Logical",
1767      "opcode" : 164,
1768      "operands" : [
1769        { "kind" : "IdResultType" },
1770        { "kind" : "IdResult" },
1771        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1772        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1773      ]
1774    },
1775    {
1776      "opname" : "OpLogicalNotEqual",
1777      "class"  : "Relational_and_Logical",
1778      "opcode" : 165,
1779      "operands" : [
1780        { "kind" : "IdResultType" },
1781        { "kind" : "IdResult" },
1782        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1783        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1784      ]
1785    },
1786    {
1787      "opname" : "OpLogicalOr",
1788      "class"  : "Relational_and_Logical",
1789      "opcode" : 166,
1790      "operands" : [
1791        { "kind" : "IdResultType" },
1792        { "kind" : "IdResult" },
1793        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1794        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1795      ]
1796    },
1797    {
1798      "opname" : "OpLogicalAnd",
1799      "class"  : "Relational_and_Logical",
1800      "opcode" : 167,
1801      "operands" : [
1802        { "kind" : "IdResultType" },
1803        { "kind" : "IdResult" },
1804        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1805        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1806      ]
1807    },
1808    {
1809      "opname" : "OpLogicalNot",
1810      "class"  : "Relational_and_Logical",
1811      "opcode" : 168,
1812      "operands" : [
1813        { "kind" : "IdResultType" },
1814        { "kind" : "IdResult" },
1815        { "kind" : "IdRef",        "name" : "'Operand'" }
1816      ]
1817    },
1818    {
1819      "opname" : "OpSelect",
1820      "class"  : "Relational_and_Logical",
1821      "opcode" : 169,
1822      "operands" : [
1823        { "kind" : "IdResultType" },
1824        { "kind" : "IdResult" },
1825        { "kind" : "IdRef",        "name" : "'Condition'" },
1826        { "kind" : "IdRef",        "name" : "'Object 1'" },
1827        { "kind" : "IdRef",        "name" : "'Object 2'" }
1828      ]
1829    },
1830    {
1831      "opname" : "OpIEqual",
1832      "class"  : "Relational_and_Logical",
1833      "opcode" : 170,
1834      "operands" : [
1835        { "kind" : "IdResultType" },
1836        { "kind" : "IdResult" },
1837        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1838        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1839      ]
1840    },
1841    {
1842      "opname" : "OpINotEqual",
1843      "class"  : "Relational_and_Logical",
1844      "opcode" : 171,
1845      "operands" : [
1846        { "kind" : "IdResultType" },
1847        { "kind" : "IdResult" },
1848        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1849        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1850      ]
1851    },
1852    {
1853      "opname" : "OpUGreaterThan",
1854      "class"  : "Relational_and_Logical",
1855      "opcode" : 172,
1856      "operands" : [
1857        { "kind" : "IdResultType" },
1858        { "kind" : "IdResult" },
1859        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1860        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1861      ]
1862    },
1863    {
1864      "opname" : "OpSGreaterThan",
1865      "class"  : "Relational_and_Logical",
1866      "opcode" : 173,
1867      "operands" : [
1868        { "kind" : "IdResultType" },
1869        { "kind" : "IdResult" },
1870        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1871        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1872      ]
1873    },
1874    {
1875      "opname" : "OpUGreaterThanEqual",
1876      "class"  : "Relational_and_Logical",
1877      "opcode" : 174,
1878      "operands" : [
1879        { "kind" : "IdResultType" },
1880        { "kind" : "IdResult" },
1881        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1882        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1883      ]
1884    },
1885    {
1886      "opname" : "OpSGreaterThanEqual",
1887      "class"  : "Relational_and_Logical",
1888      "opcode" : 175,
1889      "operands" : [
1890        { "kind" : "IdResultType" },
1891        { "kind" : "IdResult" },
1892        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1893        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1894      ]
1895    },
1896    {
1897      "opname" : "OpULessThan",
1898      "class"  : "Relational_and_Logical",
1899      "opcode" : 176,
1900      "operands" : [
1901        { "kind" : "IdResultType" },
1902        { "kind" : "IdResult" },
1903        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1904        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1905      ]
1906    },
1907    {
1908      "opname" : "OpSLessThan",
1909      "class"  : "Relational_and_Logical",
1910      "opcode" : 177,
1911      "operands" : [
1912        { "kind" : "IdResultType" },
1913        { "kind" : "IdResult" },
1914        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1915        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1916      ]
1917    },
1918    {
1919      "opname" : "OpULessThanEqual",
1920      "class"  : "Relational_and_Logical",
1921      "opcode" : 178,
1922      "operands" : [
1923        { "kind" : "IdResultType" },
1924        { "kind" : "IdResult" },
1925        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1926        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1927      ]
1928    },
1929    {
1930      "opname" : "OpSLessThanEqual",
1931      "class"  : "Relational_and_Logical",
1932      "opcode" : 179,
1933      "operands" : [
1934        { "kind" : "IdResultType" },
1935        { "kind" : "IdResult" },
1936        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1937        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1938      ]
1939    },
1940    {
1941      "opname" : "OpFOrdEqual",
1942      "class"  : "Relational_and_Logical",
1943      "opcode" : 180,
1944      "operands" : [
1945        { "kind" : "IdResultType" },
1946        { "kind" : "IdResult" },
1947        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1948        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1949      ]
1950    },
1951    {
1952      "opname" : "OpFUnordEqual",
1953      "class"  : "Relational_and_Logical",
1954      "opcode" : 181,
1955      "operands" : [
1956        { "kind" : "IdResultType" },
1957        { "kind" : "IdResult" },
1958        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1959        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1960      ]
1961    },
1962    {
1963      "opname" : "OpFOrdNotEqual",
1964      "class"  : "Relational_and_Logical",
1965      "opcode" : 182,
1966      "operands" : [
1967        { "kind" : "IdResultType" },
1968        { "kind" : "IdResult" },
1969        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1970        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1971      ]
1972    },
1973    {
1974      "opname" : "OpFUnordNotEqual",
1975      "class"  : "Relational_and_Logical",
1976      "opcode" : 183,
1977      "operands" : [
1978        { "kind" : "IdResultType" },
1979        { "kind" : "IdResult" },
1980        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1981        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1982      ]
1983    },
1984    {
1985      "opname" : "OpFOrdLessThan",
1986      "class"  : "Relational_and_Logical",
1987      "opcode" : 184,
1988      "operands" : [
1989        { "kind" : "IdResultType" },
1990        { "kind" : "IdResult" },
1991        { "kind" : "IdRef",        "name" : "'Operand 1'" },
1992        { "kind" : "IdRef",        "name" : "'Operand 2'" }
1993      ]
1994    },
1995    {
1996      "opname" : "OpFUnordLessThan",
1997      "class"  : "Relational_and_Logical",
1998      "opcode" : 185,
1999      "operands" : [
2000        { "kind" : "IdResultType" },
2001        { "kind" : "IdResult" },
2002        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2003        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2004      ]
2005    },
2006    {
2007      "opname" : "OpFOrdGreaterThan",
2008      "class"  : "Relational_and_Logical",
2009      "opcode" : 186,
2010      "operands" : [
2011        { "kind" : "IdResultType" },
2012        { "kind" : "IdResult" },
2013        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2014        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2015      ]
2016    },
2017    {
2018      "opname" : "OpFUnordGreaterThan",
2019      "class"  : "Relational_and_Logical",
2020      "opcode" : 187,
2021      "operands" : [
2022        { "kind" : "IdResultType" },
2023        { "kind" : "IdResult" },
2024        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2025        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2026      ]
2027    },
2028    {
2029      "opname" : "OpFOrdLessThanEqual",
2030      "class"  : "Relational_and_Logical",
2031      "opcode" : 188,
2032      "operands" : [
2033        { "kind" : "IdResultType" },
2034        { "kind" : "IdResult" },
2035        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2036        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2037      ]
2038    },
2039    {
2040      "opname" : "OpFUnordLessThanEqual",
2041      "class"  : "Relational_and_Logical",
2042      "opcode" : 189,
2043      "operands" : [
2044        { "kind" : "IdResultType" },
2045        { "kind" : "IdResult" },
2046        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2047        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2048      ]
2049    },
2050    {
2051      "opname" : "OpFOrdGreaterThanEqual",
2052      "class"  : "Relational_and_Logical",
2053      "opcode" : 190,
2054      "operands" : [
2055        { "kind" : "IdResultType" },
2056        { "kind" : "IdResult" },
2057        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2058        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2059      ]
2060    },
2061    {
2062      "opname" : "OpFUnordGreaterThanEqual",
2063      "class"  : "Relational_and_Logical",
2064      "opcode" : 191,
2065      "operands" : [
2066        { "kind" : "IdResultType" },
2067        { "kind" : "IdResult" },
2068        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2069        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2070      ]
2071    },
2072    {
2073      "opname" : "OpShiftRightLogical",
2074      "class"  : "Bit",
2075      "opcode" : 194,
2076      "operands" : [
2077        { "kind" : "IdResultType" },
2078        { "kind" : "IdResult" },
2079        { "kind" : "IdRef",        "name" : "'Base'" },
2080        { "kind" : "IdRef",        "name" : "'Shift'" }
2081      ]
2082    },
2083    {
2084      "opname" : "OpShiftRightArithmetic",
2085      "class"  : "Bit",
2086      "opcode" : 195,
2087      "operands" : [
2088        { "kind" : "IdResultType" },
2089        { "kind" : "IdResult" },
2090        { "kind" : "IdRef",        "name" : "'Base'" },
2091        { "kind" : "IdRef",        "name" : "'Shift'" }
2092      ]
2093    },
2094    {
2095      "opname" : "OpShiftLeftLogical",
2096      "class"  : "Bit",
2097      "opcode" : 196,
2098      "operands" : [
2099        { "kind" : "IdResultType" },
2100        { "kind" : "IdResult" },
2101        { "kind" : "IdRef",        "name" : "'Base'" },
2102        { "kind" : "IdRef",        "name" : "'Shift'" }
2103      ]
2104    },
2105    {
2106      "opname" : "OpBitwiseOr",
2107      "class"  : "Bit",
2108      "opcode" : 197,
2109      "operands" : [
2110        { "kind" : "IdResultType" },
2111        { "kind" : "IdResult" },
2112        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2113        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2114      ]
2115    },
2116    {
2117      "opname" : "OpBitwiseXor",
2118      "class"  : "Bit",
2119      "opcode" : 198,
2120      "operands" : [
2121        { "kind" : "IdResultType" },
2122        { "kind" : "IdResult" },
2123        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2124        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2125      ]
2126    },
2127    {
2128      "opname" : "OpBitwiseAnd",
2129      "class"  : "Bit",
2130      "opcode" : 199,
2131      "operands" : [
2132        { "kind" : "IdResultType" },
2133        { "kind" : "IdResult" },
2134        { "kind" : "IdRef",        "name" : "'Operand 1'" },
2135        { "kind" : "IdRef",        "name" : "'Operand 2'" }
2136      ]
2137    },
2138    {
2139      "opname" : "OpNot",
2140      "class"  : "Bit",
2141      "opcode" : 200,
2142      "operands" : [
2143        { "kind" : "IdResultType" },
2144        { "kind" : "IdResult" },
2145        { "kind" : "IdRef",        "name" : "'Operand'" }
2146      ]
2147    },
2148    {
2149      "opname" : "OpBitFieldInsert",
2150      "class"  : "Bit",
2151      "opcode" : 201,
2152      "operands" : [
2153        { "kind" : "IdResultType" },
2154        { "kind" : "IdResult" },
2155        { "kind" : "IdRef",        "name" : "'Base'" },
2156        { "kind" : "IdRef",        "name" : "'Insert'" },
2157        { "kind" : "IdRef",        "name" : "'Offset'" },
2158        { "kind" : "IdRef",        "name" : "'Count'" }
2159      ],
2160      "capabilities" : [ "Shader", "BitInstructions" ]
2161    },
2162    {
2163      "opname" : "OpBitFieldSExtract",
2164      "class"  : "Bit",
2165      "opcode" : 202,
2166      "operands" : [
2167        { "kind" : "IdResultType" },
2168        { "kind" : "IdResult" },
2169        { "kind" : "IdRef",        "name" : "'Base'" },
2170        { "kind" : "IdRef",        "name" : "'Offset'" },
2171        { "kind" : "IdRef",        "name" : "'Count'" }
2172      ],
2173      "capabilities" : [ "Shader", "BitInstructions" ]
2174    },
2175    {
2176      "opname" : "OpBitFieldUExtract",
2177      "class"  : "Bit",
2178      "opcode" : 203,
2179      "operands" : [
2180        { "kind" : "IdResultType" },
2181        { "kind" : "IdResult" },
2182        { "kind" : "IdRef",        "name" : "'Base'" },
2183        { "kind" : "IdRef",        "name" : "'Offset'" },
2184        { "kind" : "IdRef",        "name" : "'Count'" }
2185      ],
2186      "capabilities" : [ "Shader", "BitInstructions" ]
2187    },
2188    {
2189      "opname" : "OpBitReverse",
2190      "class"  : "Bit",
2191      "opcode" : 204,
2192      "operands" : [
2193        { "kind" : "IdResultType" },
2194        { "kind" : "IdResult" },
2195        { "kind" : "IdRef",        "name" : "'Base'" }
2196      ],
2197      "capabilities" : [ "Shader", "BitInstructions" ]
2198    },
2199    {
2200      "opname" : "OpBitCount",
2201      "class"  : "Bit",
2202      "opcode" : 205,
2203      "operands" : [
2204        { "kind" : "IdResultType" },
2205        { "kind" : "IdResult" },
2206        { "kind" : "IdRef",        "name" : "'Base'" }
2207      ]
2208    },
2209    {
2210      "opname" : "OpDPdx",
2211      "class"  : "Derivative",
2212      "opcode" : 207,
2213      "operands" : [
2214        { "kind" : "IdResultType" },
2215        { "kind" : "IdResult" },
2216        { "kind" : "IdRef",        "name" : "'P'" }
2217      ],
2218      "capabilities" : [ "Shader" ]
2219    },
2220    {
2221      "opname" : "OpDPdy",
2222      "class"  : "Derivative",
2223      "opcode" : 208,
2224      "operands" : [
2225        { "kind" : "IdResultType" },
2226        { "kind" : "IdResult" },
2227        { "kind" : "IdRef",        "name" : "'P'" }
2228      ],
2229      "capabilities" : [ "Shader" ]
2230    },
2231    {
2232      "opname" : "OpFwidth",
2233      "class"  : "Derivative",
2234      "opcode" : 209,
2235      "operands" : [
2236        { "kind" : "IdResultType" },
2237        { "kind" : "IdResult" },
2238        { "kind" : "IdRef",        "name" : "'P'" }
2239      ],
2240      "capabilities" : [ "Shader" ]
2241    },
2242    {
2243      "opname" : "OpDPdxFine",
2244      "class"  : "Derivative",
2245      "opcode" : 210,
2246      "operands" : [
2247        { "kind" : "IdResultType" },
2248        { "kind" : "IdResult" },
2249        { "kind" : "IdRef",        "name" : "'P'" }
2250      ],
2251      "capabilities" : [ "DerivativeControl" ]
2252    },
2253    {
2254      "opname" : "OpDPdyFine",
2255      "class"  : "Derivative",
2256      "opcode" : 211,
2257      "operands" : [
2258        { "kind" : "IdResultType" },
2259        { "kind" : "IdResult" },
2260        { "kind" : "IdRef",        "name" : "'P'" }
2261      ],
2262      "capabilities" : [ "DerivativeControl" ]
2263    },
2264    {
2265      "opname" : "OpFwidthFine",
2266      "class"  : "Derivative",
2267      "opcode" : 212,
2268      "operands" : [
2269        { "kind" : "IdResultType" },
2270        { "kind" : "IdResult" },
2271        { "kind" : "IdRef",        "name" : "'P'" }
2272      ],
2273      "capabilities" : [ "DerivativeControl" ]
2274    },
2275    {
2276      "opname" : "OpDPdxCoarse",
2277      "class"  : "Derivative",
2278      "opcode" : 213,
2279      "operands" : [
2280        { "kind" : "IdResultType" },
2281        { "kind" : "IdResult" },
2282        { "kind" : "IdRef",        "name" : "'P'" }
2283      ],
2284      "capabilities" : [ "DerivativeControl" ]
2285    },
2286    {
2287      "opname" : "OpDPdyCoarse",
2288      "class"  : "Derivative",
2289      "opcode" : 214,
2290      "operands" : [
2291        { "kind" : "IdResultType" },
2292        { "kind" : "IdResult" },
2293        { "kind" : "IdRef",        "name" : "'P'" }
2294      ],
2295      "capabilities" : [ "DerivativeControl" ]
2296    },
2297    {
2298      "opname" : "OpFwidthCoarse",
2299      "class"  : "Derivative",
2300      "opcode" : 215,
2301      "operands" : [
2302        { "kind" : "IdResultType" },
2303        { "kind" : "IdResult" },
2304        { "kind" : "IdRef",        "name" : "'P'" }
2305      ],
2306      "capabilities" : [ "DerivativeControl" ]
2307    },
2308    {
2309      "opname" : "OpEmitVertex",
2310      "class"  : "Primitive",
2311      "opcode" : 218,
2312      "capabilities" : [ "Geometry" ]
2313    },
2314    {
2315      "opname" : "OpEndPrimitive",
2316      "class"  : "Primitive",
2317      "opcode" : 219,
2318      "capabilities" : [ "Geometry" ]
2319    },
2320    {
2321      "opname" : "OpEmitStreamVertex",
2322      "class"  : "Primitive",
2323      "opcode" : 220,
2324      "operands" : [
2325        { "kind" : "IdRef", "name" : "'Stream'" }
2326      ],
2327      "capabilities" : [ "GeometryStreams" ]
2328    },
2329    {
2330      "opname" : "OpEndStreamPrimitive",
2331      "class"  : "Primitive",
2332      "opcode" : 221,
2333      "operands" : [
2334        { "kind" : "IdRef", "name" : "'Stream'" }
2335      ],
2336      "capabilities" : [ "GeometryStreams" ]
2337    },
2338    {
2339      "opname" : "OpControlBarrier",
2340      "class"  : "Barrier",
2341      "opcode" : 224,
2342      "operands" : [
2343        { "kind" : "IdScope",           "name" : "'Execution'" },
2344        { "kind" : "IdScope",           "name" : "'Memory'" },
2345        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2346      ]
2347    },
2348    {
2349      "opname" : "OpMemoryBarrier",
2350      "class"  : "Barrier",
2351      "opcode" : 225,
2352      "operands" : [
2353        { "kind" : "IdScope",           "name" : "'Memory'" },
2354        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2355      ]
2356    },
2357    {
2358      "opname" : "OpAtomicLoad",
2359      "class"  : "Atomic",
2360      "opcode" : 227,
2361      "operands" : [
2362        { "kind" : "IdResultType" },
2363        { "kind" : "IdResult" },
2364        { "kind" : "IdRef",             "name" : "'Pointer'" },
2365        { "kind" : "IdScope",           "name" : "'Memory'" },
2366        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2367      ]
2368    },
2369    {
2370      "opname" : "OpAtomicStore",
2371      "class"  : "Atomic",
2372      "opcode" : 228,
2373      "operands" : [
2374        { "kind" : "IdRef",             "name" : "'Pointer'" },
2375        { "kind" : "IdScope",           "name" : "'Memory'" },
2376        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2377        { "kind" : "IdRef",             "name" : "'Value'" }
2378      ]
2379    },
2380    {
2381      "opname" : "OpAtomicExchange",
2382      "class"  : "Atomic",
2383      "opcode" : 229,
2384      "operands" : [
2385        { "kind" : "IdResultType" },
2386        { "kind" : "IdResult" },
2387        { "kind" : "IdRef",             "name" : "'Pointer'" },
2388        { "kind" : "IdScope",           "name" : "'Memory'" },
2389        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2390        { "kind" : "IdRef",             "name" : "'Value'" }
2391      ]
2392    },
2393    {
2394      "opname" : "OpAtomicCompareExchange",
2395      "class"  : "Atomic",
2396      "opcode" : 230,
2397      "operands" : [
2398        { "kind" : "IdResultType" },
2399        { "kind" : "IdResult" },
2400        { "kind" : "IdRef",             "name" : "'Pointer'" },
2401        { "kind" : "IdScope",           "name" : "'Memory'" },
2402        { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2403        { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2404        { "kind" : "IdRef",             "name" : "'Value'" },
2405        { "kind" : "IdRef",             "name" : "'Comparator'" }
2406      ]
2407    },
2408    {
2409      "opname" : "OpAtomicCompareExchangeWeak",
2410      "class"  : "Atomic",
2411      "opcode" : 231,
2412      "operands" : [
2413        { "kind" : "IdResultType" },
2414        { "kind" : "IdResult" },
2415        { "kind" : "IdRef",             "name" : "'Pointer'" },
2416        { "kind" : "IdScope",           "name" : "'Memory'" },
2417        { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2418        { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2419        { "kind" : "IdRef",             "name" : "'Value'" },
2420        { "kind" : "IdRef",             "name" : "'Comparator'" }
2421      ],
2422      "capabilities" : [ "Kernel" ],
2423      "lastVersion" : "1.3"
2424    },
2425    {
2426      "opname" : "OpAtomicIIncrement",
2427      "class"  : "Atomic",
2428      "opcode" : 232,
2429      "operands" : [
2430        { "kind" : "IdResultType" },
2431        { "kind" : "IdResult" },
2432        { "kind" : "IdRef",             "name" : "'Pointer'" },
2433        { "kind" : "IdScope",           "name" : "'Memory'" },
2434        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2435      ]
2436    },
2437    {
2438      "opname" : "OpAtomicIDecrement",
2439      "class"  : "Atomic",
2440      "opcode" : 233,
2441      "operands" : [
2442        { "kind" : "IdResultType" },
2443        { "kind" : "IdResult" },
2444        { "kind" : "IdRef",             "name" : "'Pointer'" },
2445        { "kind" : "IdScope",           "name" : "'Memory'" },
2446        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2447      ]
2448    },
2449    {
2450      "opname" : "OpAtomicIAdd",
2451      "class"  : "Atomic",
2452      "opcode" : 234,
2453      "operands" : [
2454        { "kind" : "IdResultType" },
2455        { "kind" : "IdResult" },
2456        { "kind" : "IdRef",             "name" : "'Pointer'" },
2457        { "kind" : "IdScope",           "name" : "'Memory'" },
2458        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2459        { "kind" : "IdRef",             "name" : "'Value'" }
2460      ]
2461    },
2462    {
2463      "opname" : "OpAtomicISub",
2464      "class"  : "Atomic",
2465      "opcode" : 235,
2466      "operands" : [
2467        { "kind" : "IdResultType" },
2468        { "kind" : "IdResult" },
2469        { "kind" : "IdRef",             "name" : "'Pointer'" },
2470        { "kind" : "IdScope",           "name" : "'Memory'" },
2471        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2472        { "kind" : "IdRef",             "name" : "'Value'" }
2473      ]
2474    },
2475    {
2476      "opname" : "OpAtomicSMin",
2477      "class"  : "Atomic",
2478      "opcode" : 236,
2479      "operands" : [
2480        { "kind" : "IdResultType" },
2481        { "kind" : "IdResult" },
2482        { "kind" : "IdRef",             "name" : "'Pointer'" },
2483        { "kind" : "IdScope",           "name" : "'Memory'" },
2484        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2485        { "kind" : "IdRef",             "name" : "'Value'" }
2486      ]
2487    },
2488    {
2489      "opname" : "OpAtomicUMin",
2490      "class"  : "Atomic",
2491      "opcode" : 237,
2492      "operands" : [
2493        { "kind" : "IdResultType" },
2494        { "kind" : "IdResult" },
2495        { "kind" : "IdRef",             "name" : "'Pointer'" },
2496        { "kind" : "IdScope",           "name" : "'Memory'" },
2497        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2498        { "kind" : "IdRef",             "name" : "'Value'" }
2499      ]
2500    },
2501    {
2502      "opname" : "OpAtomicSMax",
2503      "class"  : "Atomic",
2504      "opcode" : 238,
2505      "operands" : [
2506        { "kind" : "IdResultType" },
2507        { "kind" : "IdResult" },
2508        { "kind" : "IdRef",             "name" : "'Pointer'" },
2509        { "kind" : "IdScope",           "name" : "'Memory'" },
2510        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2511        { "kind" : "IdRef",             "name" : "'Value'" }
2512      ]
2513    },
2514    {
2515      "opname" : "OpAtomicUMax",
2516      "class"  : "Atomic",
2517      "opcode" : 239,
2518      "operands" : [
2519        { "kind" : "IdResultType" },
2520        { "kind" : "IdResult" },
2521        { "kind" : "IdRef",             "name" : "'Pointer'" },
2522        { "kind" : "IdScope",           "name" : "'Memory'" },
2523        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2524        { "kind" : "IdRef",             "name" : "'Value'" }
2525      ]
2526    },
2527    {
2528      "opname" : "OpAtomicAnd",
2529      "class"  : "Atomic",
2530      "opcode" : 240,
2531      "operands" : [
2532        { "kind" : "IdResultType" },
2533        { "kind" : "IdResult" },
2534        { "kind" : "IdRef",             "name" : "'Pointer'" },
2535        { "kind" : "IdScope",           "name" : "'Memory'" },
2536        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2537        { "kind" : "IdRef",             "name" : "'Value'" }
2538      ]
2539    },
2540    {
2541      "opname" : "OpAtomicOr",
2542      "class"  : "Atomic",
2543      "opcode" : 241,
2544      "operands" : [
2545        { "kind" : "IdResultType" },
2546        { "kind" : "IdResult" },
2547        { "kind" : "IdRef",             "name" : "'Pointer'" },
2548        { "kind" : "IdScope",           "name" : "'Memory'" },
2549        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2550        { "kind" : "IdRef",             "name" : "'Value'" }
2551      ]
2552    },
2553    {
2554      "opname" : "OpAtomicXor",
2555      "class"  : "Atomic",
2556      "opcode" : 242,
2557      "operands" : [
2558        { "kind" : "IdResultType" },
2559        { "kind" : "IdResult" },
2560        { "kind" : "IdRef",             "name" : "'Pointer'" },
2561        { "kind" : "IdScope",           "name" : "'Memory'" },
2562        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2563        { "kind" : "IdRef",             "name" : "'Value'" }
2564      ]
2565    },
2566    {
2567      "opname" : "OpPhi",
2568      "class"  : "Control-Flow",
2569      "opcode" : 245,
2570      "operands" : [
2571        { "kind" : "IdResultType" },
2572        { "kind" : "IdResult" },
2573        { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" }
2574      ]
2575    },
2576    {
2577      "opname" : "OpLoopMerge",
2578      "class"  : "Control-Flow",
2579      "opcode" : 246,
2580      "operands" : [
2581        { "kind" : "IdRef",       "name" : "'Merge Block'" },
2582        { "kind" : "IdRef",       "name" : "'Continue Target'" },
2583        { "kind" : "LoopControl" }
2584      ]
2585    },
2586    {
2587      "opname" : "OpSelectionMerge",
2588      "class"  : "Control-Flow",
2589      "opcode" : 247,
2590      "operands" : [
2591        { "kind" : "IdRef",            "name" : "'Merge Block'" },
2592        { "kind" : "SelectionControl" }
2593      ]
2594    },
2595    {
2596      "opname" : "OpLabel",
2597      "class"  : "Control-Flow",
2598      "opcode" : 248,
2599      "operands" : [
2600        { "kind" : "IdResult" }
2601      ]
2602    },
2603    {
2604      "opname" : "OpBranch",
2605      "class"  : "Control-Flow",
2606      "opcode" : 249,
2607      "operands" : [
2608        { "kind" : "IdRef", "name" : "'Target Label'" }
2609      ]
2610    },
2611    {
2612      "opname" : "OpBranchConditional",
2613      "class"  : "Control-Flow",
2614      "opcode" : 250,
2615      "operands" : [
2616        { "kind" : "IdRef",                              "name" : "'Condition'" },
2617        { "kind" : "IdRef",                              "name" : "'True Label'" },
2618        { "kind" : "IdRef",                              "name" : "'False Label'" },
2619        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" }
2620      ]
2621    },
2622    {
2623      "opname" : "OpSwitch",
2624      "class"  : "Control-Flow",
2625      "opcode" : 251,
2626      "operands" : [
2627        { "kind" : "IdRef",                                       "name" : "'Selector'" },
2628        { "kind" : "IdRef",                                       "name" : "'Default'" },
2629        { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" }
2630      ]
2631    },
2632    {
2633      "opname" : "OpKill",
2634      "class"  : "Control-Flow",
2635      "opcode" : 252,
2636      "capabilities" : [ "Shader" ]
2637    },
2638    {
2639      "opname" : "OpReturn",
2640      "class"  : "Control-Flow",
2641      "opcode" : 253
2642    },
2643    {
2644      "opname" : "OpReturnValue",
2645      "class"  : "Control-Flow",
2646      "opcode" : 254,
2647      "operands" : [
2648        { "kind" : "IdRef", "name" : "'Value'" }
2649      ]
2650    },
2651    {
2652      "opname" : "OpUnreachable",
2653      "class"  : "Control-Flow",
2654      "opcode" : 255
2655    },
2656    {
2657      "opname" : "OpLifetimeStart",
2658      "class"  : "Control-Flow",
2659      "opcode" : 256,
2660      "operands" : [
2661        { "kind" : "IdRef",          "name" : "'Pointer'" },
2662        { "kind" : "LiteralInteger", "name" : "'Size'" }
2663      ],
2664      "capabilities" : [ "Kernel" ]
2665    },
2666    {
2667      "opname" : "OpLifetimeStop",
2668      "class"  : "Control-Flow",
2669      "opcode" : 257,
2670      "operands" : [
2671        { "kind" : "IdRef",          "name" : "'Pointer'" },
2672        { "kind" : "LiteralInteger", "name" : "'Size'" }
2673      ],
2674      "capabilities" : [ "Kernel" ]
2675    },
2676    {
2677      "opname" : "OpGroupAsyncCopy",
2678      "class"  : "Group",
2679      "opcode" : 259,
2680      "operands" : [
2681        { "kind" : "IdResultType" },
2682        { "kind" : "IdResult" },
2683        { "kind" : "IdScope",      "name" : "'Execution'" },
2684        { "kind" : "IdRef",        "name" : "'Destination'" },
2685        { "kind" : "IdRef",        "name" : "'Source'" },
2686        { "kind" : "IdRef",        "name" : "'Num Elements'" },
2687        { "kind" : "IdRef",        "name" : "'Stride'" },
2688        { "kind" : "IdRef",        "name" : "'Event'" }
2689      ],
2690      "capabilities" : [ "Kernel" ]
2691    },
2692    {
2693      "opname" : "OpGroupWaitEvents",
2694      "class"  : "Group",
2695      "opcode" : 260,
2696      "operands" : [
2697        { "kind" : "IdScope", "name" : "'Execution'" },
2698        { "kind" : "IdRef",   "name" : "'Num Events'" },
2699        { "kind" : "IdRef",   "name" : "'Events List'" }
2700      ],
2701      "capabilities" : [ "Kernel" ]
2702    },
2703    {
2704      "opname" : "OpGroupAll",
2705      "class"  : "Group",
2706      "opcode" : 261,
2707      "operands" : [
2708        { "kind" : "IdResultType" },
2709        { "kind" : "IdResult" },
2710        { "kind" : "IdScope",      "name" : "'Execution'" },
2711        { "kind" : "IdRef",        "name" : "'Predicate'" }
2712      ],
2713      "capabilities" : [ "Groups" ]
2714    },
2715    {
2716      "opname" : "OpGroupAny",
2717      "class"  : "Group",
2718      "opcode" : 262,
2719      "operands" : [
2720        { "kind" : "IdResultType" },
2721        { "kind" : "IdResult" },
2722        { "kind" : "IdScope",      "name" : "'Execution'" },
2723        { "kind" : "IdRef",        "name" : "'Predicate'" }
2724      ],
2725      "capabilities" : [ "Groups" ]
2726    },
2727    {
2728      "opname" : "OpGroupBroadcast",
2729      "class"  : "Group",
2730      "opcode" : 263,
2731      "operands" : [
2732        { "kind" : "IdResultType" },
2733        { "kind" : "IdResult" },
2734        { "kind" : "IdScope",      "name" : "'Execution'" },
2735        { "kind" : "IdRef",        "name" : "'Value'" },
2736        { "kind" : "IdRef",        "name" : "'LocalId'" }
2737      ],
2738      "capabilities" : [ "Groups" ]
2739    },
2740    {
2741      "opname" : "OpGroupIAdd",
2742      "class"  : "Group",
2743      "opcode" : 264,
2744      "operands" : [
2745        { "kind" : "IdResultType" },
2746        { "kind" : "IdResult" },
2747        { "kind" : "IdScope",        "name" : "'Execution'" },
2748        { "kind" : "GroupOperation", "name" : "'Operation'" },
2749        { "kind" : "IdRef",          "name" : "'X'" }
2750      ],
2751      "capabilities" : [ "Groups" ]
2752    },
2753    {
2754      "opname" : "OpGroupFAdd",
2755      "class"  : "Group",
2756      "opcode" : 265,
2757      "operands" : [
2758        { "kind" : "IdResultType" },
2759        { "kind" : "IdResult" },
2760        { "kind" : "IdScope",        "name" : "'Execution'" },
2761        { "kind" : "GroupOperation", "name" : "'Operation'" },
2762        { "kind" : "IdRef",          "name" : "'X'" }
2763      ],
2764      "capabilities" : [ "Groups" ]
2765    },
2766    {
2767      "opname" : "OpGroupFMin",
2768      "class"  : "Group",
2769      "opcode" : 266,
2770      "operands" : [
2771        { "kind" : "IdResultType" },
2772        { "kind" : "IdResult" },
2773        { "kind" : "IdScope",        "name" : "'Execution'" },
2774        { "kind" : "GroupOperation", "name" : "'Operation'" },
2775        { "kind" : "IdRef",          "name" : "'X'" }
2776      ],
2777      "capabilities" : [ "Groups" ]
2778    },
2779    {
2780      "opname" : "OpGroupUMin",
2781      "class"  : "Group",
2782      "opcode" : 267,
2783      "operands" : [
2784        { "kind" : "IdResultType" },
2785        { "kind" : "IdResult" },
2786        { "kind" : "IdScope",        "name" : "'Execution'" },
2787        { "kind" : "GroupOperation", "name" : "'Operation'" },
2788        { "kind" : "IdRef",          "name" : "'X'" }
2789      ],
2790      "capabilities" : [ "Groups" ]
2791    },
2792    {
2793      "opname" : "OpGroupSMin",
2794      "class"  : "Group",
2795      "opcode" : 268,
2796      "operands" : [
2797        { "kind" : "IdResultType" },
2798        { "kind" : "IdResult" },
2799        { "kind" : "IdScope",        "name" : "'Execution'" },
2800        { "kind" : "GroupOperation", "name" : "'Operation'" },
2801        { "kind" : "IdRef",          "name" : "'X'" }
2802      ],
2803      "capabilities" : [ "Groups" ]
2804    },
2805    {
2806      "opname" : "OpGroupFMax",
2807      "class"  : "Group",
2808      "opcode" : 269,
2809      "operands" : [
2810        { "kind" : "IdResultType" },
2811        { "kind" : "IdResult" },
2812        { "kind" : "IdScope",        "name" : "'Execution'" },
2813        { "kind" : "GroupOperation", "name" : "'Operation'" },
2814        { "kind" : "IdRef",          "name" : "'X'" }
2815      ],
2816      "capabilities" : [ "Groups" ]
2817    },
2818    {
2819      "opname" : "OpGroupUMax",
2820      "class"  : "Group",
2821      "opcode" : 270,
2822      "operands" : [
2823        { "kind" : "IdResultType" },
2824        { "kind" : "IdResult" },
2825        { "kind" : "IdScope",        "name" : "'Execution'" },
2826        { "kind" : "GroupOperation", "name" : "'Operation'" },
2827        { "kind" : "IdRef",          "name" : "'X'" }
2828      ],
2829      "capabilities" : [ "Groups" ]
2830    },
2831    {
2832      "opname" : "OpGroupSMax",
2833      "class"  : "Group",
2834      "opcode" : 271,
2835      "operands" : [
2836        { "kind" : "IdResultType" },
2837        { "kind" : "IdResult" },
2838        { "kind" : "IdScope",        "name" : "'Execution'" },
2839        { "kind" : "GroupOperation", "name" : "'Operation'" },
2840        { "kind" : "IdRef",          "name" : "'X'" }
2841      ],
2842      "capabilities" : [ "Groups" ]
2843    },
2844    {
2845      "opname" : "OpReadPipe",
2846      "class"  : "Pipe",
2847      "opcode" : 274,
2848      "operands" : [
2849        { "kind" : "IdResultType" },
2850        { "kind" : "IdResult" },
2851        { "kind" : "IdRef",        "name" : "'Pipe'" },
2852        { "kind" : "IdRef",        "name" : "'Pointer'" },
2853        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2854        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2855      ],
2856      "capabilities" : [ "Pipes" ]
2857    },
2858    {
2859      "opname" : "OpWritePipe",
2860      "class"  : "Pipe",
2861      "opcode" : 275,
2862      "operands" : [
2863        { "kind" : "IdResultType" },
2864        { "kind" : "IdResult" },
2865        { "kind" : "IdRef",        "name" : "'Pipe'" },
2866        { "kind" : "IdRef",        "name" : "'Pointer'" },
2867        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2868        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2869      ],
2870      "capabilities" : [ "Pipes" ]
2871    },
2872    {
2873      "opname" : "OpReservedReadPipe",
2874      "class"  : "Pipe",
2875      "opcode" : 276,
2876      "operands" : [
2877        { "kind" : "IdResultType" },
2878        { "kind" : "IdResult" },
2879        { "kind" : "IdRef",        "name" : "'Pipe'" },
2880        { "kind" : "IdRef",        "name" : "'Reserve Id'" },
2881        { "kind" : "IdRef",        "name" : "'Index'" },
2882        { "kind" : "IdRef",        "name" : "'Pointer'" },
2883        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2884        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2885      ],
2886      "capabilities" : [ "Pipes" ]
2887    },
2888    {
2889      "opname" : "OpReservedWritePipe",
2890      "class"  : "Pipe",
2891      "opcode" : 277,
2892      "operands" : [
2893        { "kind" : "IdResultType" },
2894        { "kind" : "IdResult" },
2895        { "kind" : "IdRef",        "name" : "'Pipe'" },
2896        { "kind" : "IdRef",        "name" : "'Reserve Id'" },
2897        { "kind" : "IdRef",        "name" : "'Index'" },
2898        { "kind" : "IdRef",        "name" : "'Pointer'" },
2899        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2900        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2901      ],
2902      "capabilities" : [ "Pipes" ]
2903    },
2904    {
2905      "opname" : "OpReserveReadPipePackets",
2906      "class"  : "Pipe",
2907      "opcode" : 278,
2908      "operands" : [
2909        { "kind" : "IdResultType" },
2910        { "kind" : "IdResult" },
2911        { "kind" : "IdRef",        "name" : "'Pipe'" },
2912        { "kind" : "IdRef",        "name" : "'Num Packets'" },
2913        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2914        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2915      ],
2916      "capabilities" : [ "Pipes" ]
2917    },
2918    {
2919      "opname" : "OpReserveWritePipePackets",
2920      "class"  : "Pipe",
2921      "opcode" : 279,
2922      "operands" : [
2923        { "kind" : "IdResultType" },
2924        { "kind" : "IdResult" },
2925        { "kind" : "IdRef",        "name" : "'Pipe'" },
2926        { "kind" : "IdRef",        "name" : "'Num Packets'" },
2927        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2928        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2929      ],
2930      "capabilities" : [ "Pipes" ]
2931    },
2932    {
2933      "opname" : "OpCommitReadPipe",
2934      "class"  : "Pipe",
2935      "opcode" : 280,
2936      "operands" : [
2937        { "kind" : "IdRef", "name" : "'Pipe'" },
2938        { "kind" : "IdRef", "name" : "'Reserve Id'" },
2939        { "kind" : "IdRef", "name" : "'Packet Size'" },
2940        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2941      ],
2942      "capabilities" : [ "Pipes" ]
2943    },
2944    {
2945      "opname" : "OpCommitWritePipe",
2946      "class"  : "Pipe",
2947      "opcode" : 281,
2948      "operands" : [
2949        { "kind" : "IdRef", "name" : "'Pipe'" },
2950        { "kind" : "IdRef", "name" : "'Reserve Id'" },
2951        { "kind" : "IdRef", "name" : "'Packet Size'" },
2952        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2953      ],
2954      "capabilities" : [ "Pipes" ]
2955    },
2956    {
2957      "opname" : "OpIsValidReserveId",
2958      "class"  : "Pipe",
2959      "opcode" : 282,
2960      "operands" : [
2961        { "kind" : "IdResultType" },
2962        { "kind" : "IdResult" },
2963        { "kind" : "IdRef",        "name" : "'Reserve Id'" }
2964      ],
2965      "capabilities" : [ "Pipes" ]
2966    },
2967    {
2968      "opname" : "OpGetNumPipePackets",
2969      "class"  : "Pipe",
2970      "opcode" : 283,
2971      "operands" : [
2972        { "kind" : "IdResultType" },
2973        { "kind" : "IdResult" },
2974        { "kind" : "IdRef",        "name" : "'Pipe'" },
2975        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2976        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2977      ],
2978      "capabilities" : [ "Pipes" ]
2979    },
2980    {
2981      "opname" : "OpGetMaxPipePackets",
2982      "class"  : "Pipe",
2983      "opcode" : 284,
2984      "operands" : [
2985        { "kind" : "IdResultType" },
2986        { "kind" : "IdResult" },
2987        { "kind" : "IdRef",        "name" : "'Pipe'" },
2988        { "kind" : "IdRef",        "name" : "'Packet Size'" },
2989        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
2990      ],
2991      "capabilities" : [ "Pipes" ]
2992    },
2993    {
2994      "opname" : "OpGroupReserveReadPipePackets",
2995      "class"  : "Pipe",
2996      "opcode" : 285,
2997      "operands" : [
2998        { "kind" : "IdResultType" },
2999        { "kind" : "IdResult" },
3000        { "kind" : "IdScope",      "name" : "'Execution'" },
3001        { "kind" : "IdRef",        "name" : "'Pipe'" },
3002        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3003        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3004        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3005      ],
3006      "capabilities" : [ "Pipes" ]
3007    },
3008    {
3009      "opname" : "OpGroupReserveWritePipePackets",
3010      "class"  : "Pipe",
3011      "opcode" : 286,
3012      "operands" : [
3013        { "kind" : "IdResultType" },
3014        { "kind" : "IdResult" },
3015        { "kind" : "IdScope",      "name" : "'Execution'" },
3016        { "kind" : "IdRef",        "name" : "'Pipe'" },
3017        { "kind" : "IdRef",        "name" : "'Num Packets'" },
3018        { "kind" : "IdRef",        "name" : "'Packet Size'" },
3019        { "kind" : "IdRef",        "name" : "'Packet Alignment'" }
3020      ],
3021      "capabilities" : [ "Pipes" ]
3022    },
3023    {
3024      "opname" : "OpGroupCommitReadPipe",
3025      "class"  : "Pipe",
3026      "opcode" : 287,
3027      "operands" : [
3028        { "kind" : "IdScope", "name" : "'Execution'" },
3029        { "kind" : "IdRef",   "name" : "'Pipe'" },
3030        { "kind" : "IdRef",   "name" : "'Reserve Id'" },
3031        { "kind" : "IdRef",   "name" : "'Packet Size'" },
3032        { "kind" : "IdRef",   "name" : "'Packet Alignment'" }
3033      ],
3034      "capabilities" : [ "Pipes" ]
3035    },
3036    {
3037      "opname" : "OpGroupCommitWritePipe",
3038      "class"  : "Pipe",
3039      "opcode" : 288,
3040      "operands" : [
3041        { "kind" : "IdScope", "name" : "'Execution'" },
3042        { "kind" : "IdRef",   "name" : "'Pipe'" },
3043        { "kind" : "IdRef",   "name" : "'Reserve Id'" },
3044        { "kind" : "IdRef",   "name" : "'Packet Size'" },
3045        { "kind" : "IdRef",   "name" : "'Packet Alignment'" }
3046      ],
3047      "capabilities" : [ "Pipes" ]
3048    },
3049    {
3050      "opname" : "OpEnqueueMarker",
3051      "class"  : "Device-Side_Enqueue",
3052      "opcode" : 291,
3053      "operands" : [
3054        { "kind" : "IdResultType" },
3055        { "kind" : "IdResult" },
3056        { "kind" : "IdRef",        "name" : "'Queue'" },
3057        { "kind" : "IdRef",        "name" : "'Num Events'" },
3058        { "kind" : "IdRef",        "name" : "'Wait Events'" },
3059        { "kind" : "IdRef",        "name" : "'Ret Event'" }
3060      ],
3061      "capabilities" : [ "DeviceEnqueue" ]
3062    },
3063    {
3064      "opname" : "OpEnqueueKernel",
3065      "class"  : "Device-Side_Enqueue",
3066      "opcode" : 292,
3067      "operands" : [
3068        { "kind" : "IdResultType" },
3069        { "kind" : "IdResult" },
3070        { "kind" : "IdRef",                            "name" : "'Queue'" },
3071        { "kind" : "IdRef",                            "name" : "'Flags'" },
3072        { "kind" : "IdRef",                            "name" : "'ND Range'" },
3073        { "kind" : "IdRef",                            "name" : "'Num Events'" },
3074        { "kind" : "IdRef",                            "name" : "'Wait Events'" },
3075        { "kind" : "IdRef",                            "name" : "'Ret Event'" },
3076        { "kind" : "IdRef",                            "name" : "'Invoke'" },
3077        { "kind" : "IdRef",                            "name" : "'Param'" },
3078        { "kind" : "IdRef",                            "name" : "'Param Size'" },
3079        { "kind" : "IdRef",                            "name" : "'Param Align'" },
3080        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Local Size'" }
3081      ],
3082      "capabilities" : [ "DeviceEnqueue" ]
3083    },
3084    {
3085      "opname" : "OpGetKernelNDrangeSubGroupCount",
3086      "class"  : "Device-Side_Enqueue",
3087      "opcode" : 293,
3088      "operands" : [
3089        { "kind" : "IdResultType" },
3090        { "kind" : "IdResult" },
3091        { "kind" : "IdRef",        "name" : "'ND Range'" },
3092        { "kind" : "IdRef",        "name" : "'Invoke'" },
3093        { "kind" : "IdRef",        "name" : "'Param'" },
3094        { "kind" : "IdRef",        "name" : "'Param Size'" },
3095        { "kind" : "IdRef",        "name" : "'Param Align'" }
3096      ],
3097      "capabilities" : [ "DeviceEnqueue" ]
3098    },
3099    {
3100      "opname" : "OpGetKernelNDrangeMaxSubGroupSize",
3101      "class"  : "Device-Side_Enqueue",
3102      "opcode" : 294,
3103      "operands" : [
3104        { "kind" : "IdResultType" },
3105        { "kind" : "IdResult" },
3106        { "kind" : "IdRef",        "name" : "'ND Range'" },
3107        { "kind" : "IdRef",        "name" : "'Invoke'" },
3108        { "kind" : "IdRef",        "name" : "'Param'" },
3109        { "kind" : "IdRef",        "name" : "'Param Size'" },
3110        { "kind" : "IdRef",        "name" : "'Param Align'" }
3111      ],
3112      "capabilities" : [ "DeviceEnqueue" ]
3113    },
3114    {
3115      "opname" : "OpGetKernelWorkGroupSize",
3116      "class"  : "Device-Side_Enqueue",
3117      "opcode" : 295,
3118      "operands" : [
3119        { "kind" : "IdResultType" },
3120        { "kind" : "IdResult" },
3121        { "kind" : "IdRef",        "name" : "'Invoke'" },
3122        { "kind" : "IdRef",        "name" : "'Param'" },
3123        { "kind" : "IdRef",        "name" : "'Param Size'" },
3124        { "kind" : "IdRef",        "name" : "'Param Align'" }
3125      ],
3126      "capabilities" : [ "DeviceEnqueue" ]
3127    },
3128    {
3129      "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple",
3130      "class"  : "Device-Side_Enqueue",
3131      "opcode" : 296,
3132      "operands" : [
3133        { "kind" : "IdResultType" },
3134        { "kind" : "IdResult" },
3135        { "kind" : "IdRef",        "name" : "'Invoke'" },
3136        { "kind" : "IdRef",        "name" : "'Param'" },
3137        { "kind" : "IdRef",        "name" : "'Param Size'" },
3138        { "kind" : "IdRef",        "name" : "'Param Align'" }
3139      ],
3140      "capabilities" : [ "DeviceEnqueue" ]
3141    },
3142    {
3143      "opname" : "OpRetainEvent",
3144      "class"  : "Device-Side_Enqueue",
3145      "opcode" : 297,
3146      "operands" : [
3147        { "kind" : "IdRef", "name" : "'Event'" }
3148      ],
3149      "capabilities" : [ "DeviceEnqueue" ]
3150    },
3151    {
3152      "opname" : "OpReleaseEvent",
3153      "class"  : "Device-Side_Enqueue",
3154      "opcode" : 298,
3155      "operands" : [
3156        { "kind" : "IdRef", "name" : "'Event'" }
3157      ],
3158      "capabilities" : [ "DeviceEnqueue" ]
3159    },
3160    {
3161      "opname" : "OpCreateUserEvent",
3162      "class"  : "Device-Side_Enqueue",
3163      "opcode" : 299,
3164      "operands" : [
3165        { "kind" : "IdResultType" },
3166        { "kind" : "IdResult" }
3167      ],
3168      "capabilities" : [ "DeviceEnqueue" ]
3169    },
3170    {
3171      "opname" : "OpIsValidEvent",
3172      "class"  : "Device-Side_Enqueue",
3173      "opcode" : 300,
3174      "operands" : [
3175        { "kind" : "IdResultType" },
3176        { "kind" : "IdResult" },
3177        { "kind" : "IdRef",        "name" : "'Event'" }
3178      ],
3179      "capabilities" : [ "DeviceEnqueue" ]
3180    },
3181    {
3182      "opname" : "OpSetUserEventStatus",
3183      "class"  : "Device-Side_Enqueue",
3184      "opcode" : 301,
3185      "operands" : [
3186        { "kind" : "IdRef", "name" : "'Event'" },
3187        { "kind" : "IdRef", "name" : "'Status'" }
3188      ],
3189      "capabilities" : [ "DeviceEnqueue" ]
3190    },
3191    {
3192      "opname" : "OpCaptureEventProfilingInfo",
3193      "class"  : "Device-Side_Enqueue",
3194      "opcode" : 302,
3195      "operands" : [
3196        { "kind" : "IdRef", "name" : "'Event'" },
3197        { "kind" : "IdRef", "name" : "'Profiling Info'" },
3198        { "kind" : "IdRef", "name" : "'Value'" }
3199      ],
3200      "capabilities" : [ "DeviceEnqueue" ]
3201    },
3202    {
3203      "opname" : "OpGetDefaultQueue",
3204      "class"  : "Device-Side_Enqueue",
3205      "opcode" : 303,
3206      "operands" : [
3207        { "kind" : "IdResultType" },
3208        { "kind" : "IdResult" }
3209      ],
3210      "capabilities" : [ "DeviceEnqueue" ]
3211    },
3212    {
3213      "opname" : "OpBuildNDRange",
3214      "class"  : "Device-Side_Enqueue",
3215      "opcode" : 304,
3216      "operands" : [
3217        { "kind" : "IdResultType" },
3218        { "kind" : "IdResult" },
3219        { "kind" : "IdRef",        "name" : "'GlobalWorkSize'" },
3220        { "kind" : "IdRef",        "name" : "'LocalWorkSize'" },
3221        { "kind" : "IdRef",        "name" : "'GlobalWorkOffset'" }
3222      ],
3223      "capabilities" : [ "DeviceEnqueue" ]
3224    },
3225    {
3226      "opname" : "OpImageSparseSampleImplicitLod",
3227      "class"  : "Image",
3228      "opcode" : 305,
3229      "operands" : [
3230        { "kind" : "IdResultType" },
3231        { "kind" : "IdResult" },
3232        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3233        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3234        { "kind" : "ImageOperands", "quantifier" : "?" }
3235      ],
3236      "capabilities" : [ "SparseResidency" ]
3237    },
3238    {
3239      "opname" : "OpImageSparseSampleExplicitLod",
3240      "class"  : "Image",
3241      "opcode" : 306,
3242      "operands" : [
3243        { "kind" : "IdResultType" },
3244        { "kind" : "IdResult" },
3245        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3246        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3247        { "kind" : "ImageOperands" }
3248      ],
3249      "capabilities" : [ "SparseResidency" ]
3250    },
3251    {
3252      "opname" : "OpImageSparseSampleDrefImplicitLod",
3253      "class"  : "Image",
3254      "opcode" : 307,
3255      "operands" : [
3256        { "kind" : "IdResultType" },
3257        { "kind" : "IdResult" },
3258        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3259        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3260        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3261        { "kind" : "ImageOperands", "quantifier" : "?" }
3262      ],
3263      "capabilities" : [ "SparseResidency" ]
3264    },
3265    {
3266      "opname" : "OpImageSparseSampleDrefExplicitLod",
3267      "class"  : "Image",
3268      "opcode" : 308,
3269      "operands" : [
3270        { "kind" : "IdResultType" },
3271        { "kind" : "IdResult" },
3272        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3273        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3274        { "kind" : "IdRef",         "name" : "'D~ref~'" },
3275        { "kind" : "ImageOperands" }
3276      ],
3277      "capabilities" : [ "SparseResidency" ]
3278    },
3279    {
3280      "opname" : "OpImageSparseSampleProjImplicitLod",
3281      "class"  : "Image",
3282      "opcode" : 309,
3283      "operands" : [
3284        { "kind" : "IdResultType" },
3285        { "kind" : "IdResult" },
3286        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3287        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3288        { "kind" : "ImageOperands", "quantifier" : "?" }
3289      ],
3290      "capabilities" : [ "SparseResidency" ],
3291      "version" : "None"
3292    },
3293    {
3294      "opname" : "OpImageSparseSampleProjExplicitLod",
3295      "class"  : "Image",
3296      "opcode" : 310,
3297      "operands" : [
3298        { "kind" : "IdResultType" },
3299        { "kind" : "IdResult" },
3300        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3301        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3302        { "kind" : "ImageOperands" }
3303      ],
3304      "capabilities" : [ "SparseResidency" ],
3305      "version" : "None"
3306    },
3307    {
3308      "opname" : "OpImageSparseSampleProjDrefImplicitLod",
3309      "class"  : "Image",
3310      "opcode" : 311,
3311      "operands" : [
3312        { "kind" : "IdResultType" },
3313        { "kind" : "IdResult" },
3314        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3315        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3316        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3317        { "kind" : "ImageOperands", "quantifier" : "?" }
3318      ],
3319      "capabilities" : [ "SparseResidency" ],
3320      "version" : "None"
3321    },
3322    {
3323      "opname" : "OpImageSparseSampleProjDrefExplicitLod",
3324      "class"  : "Image",
3325      "opcode" : 312,
3326      "operands" : [
3327        { "kind" : "IdResultType" },
3328        { "kind" : "IdResult" },
3329        { "kind" : "IdRef",         "name" : "'Sampled Image'" },
3330        { "kind" : "IdRef",         "name" : "'Coordinate'" },
3331        { "kind" : "IdRef",         "name" : "'D~ref~'" },
3332        { "kind" : "ImageOperands" }
3333      ],
3334      "capabilities" : [ "SparseResidency" ],
3335      "version" : "None"
3336    },
3337    {
3338      "opname" : "OpImageSparseFetch",
3339      "class"  : "Image",
3340      "opcode" : 313,
3341      "operands" : [
3342        { "kind" : "IdResultType" },
3343        { "kind" : "IdResult" },
3344        { "kind" : "IdRef",                             "name" : "'Image'" },
3345        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3346        { "kind" : "ImageOperands", "quantifier" : "?" }
3347      ],
3348      "capabilities" : [ "SparseResidency" ]
3349    },
3350    {
3351      "opname" : "OpImageSparseGather",
3352      "class"  : "Image",
3353      "opcode" : 314,
3354      "operands" : [
3355        { "kind" : "IdResultType" },
3356        { "kind" : "IdResult" },
3357        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3358        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3359        { "kind" : "IdRef",                             "name" : "'Component'" },
3360        { "kind" : "ImageOperands", "quantifier" : "?" }
3361      ],
3362      "capabilities" : [ "SparseResidency" ]
3363    },
3364    {
3365      "opname" : "OpImageSparseDrefGather",
3366      "class"  : "Image",
3367      "opcode" : 315,
3368      "operands" : [
3369        { "kind" : "IdResultType" },
3370        { "kind" : "IdResult" },
3371        { "kind" : "IdRef",                             "name" : "'Sampled Image'" },
3372        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3373        { "kind" : "IdRef",                             "name" : "'D~ref~'" },
3374        { "kind" : "ImageOperands", "quantifier" : "?" }
3375      ],
3376      "capabilities" : [ "SparseResidency" ]
3377    },
3378    {
3379      "opname" : "OpImageSparseTexelsResident",
3380      "class"  : "Image",
3381      "opcode" : 316,
3382      "operands" : [
3383        { "kind" : "IdResultType" },
3384        { "kind" : "IdResult" },
3385        { "kind" : "IdRef",        "name" : "'Resident Code'" }
3386      ],
3387      "capabilities" : [ "SparseResidency" ]
3388    },
3389    {
3390      "opname" : "OpNoLine",
3391      "class"  : "Debug",
3392      "opcode" : 317
3393    },
3394    {
3395      "opname" : "OpAtomicFlagTestAndSet",
3396      "class"  : "Atomic",
3397      "opcode" : 318,
3398      "operands" : [
3399        { "kind" : "IdResultType" },
3400        { "kind" : "IdResult" },
3401        { "kind" : "IdRef",             "name" : "'Pointer'" },
3402        { "kind" : "IdScope",           "name" : "'Memory'" },
3403        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3404      ],
3405      "capabilities" : [ "Kernel" ]
3406    },
3407    {
3408      "opname" : "OpAtomicFlagClear",
3409      "class"  : "Atomic",
3410      "opcode" : 319,
3411      "operands" : [
3412        { "kind" : "IdRef",             "name" : "'Pointer'" },
3413        { "kind" : "IdScope",           "name" : "'Memory'" },
3414        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3415      ],
3416      "capabilities" : [ "Kernel" ]
3417    },
3418    {
3419      "opname" : "OpImageSparseRead",
3420      "class"  : "Image",
3421      "opcode" : 320,
3422      "operands" : [
3423        { "kind" : "IdResultType" },
3424        { "kind" : "IdResult" },
3425        { "kind" : "IdRef",                             "name" : "'Image'" },
3426        { "kind" : "IdRef",                             "name" : "'Coordinate'" },
3427        { "kind" : "ImageOperands", "quantifier" : "?" }
3428      ],
3429      "capabilities" : [ "SparseResidency" ]
3430    },
3431    {
3432      "opname" : "OpSizeOf",
3433      "class"  : "Miscellaneous",
3434      "opcode" : 321,
3435      "operands" : [
3436        { "kind" : "IdResultType" },
3437        { "kind" : "IdResult" },
3438        { "kind" : "IdRef", "name" : "'Pointer'" }
3439      ],
3440      "capabilities" : [ "Addresses" ],
3441      "version" : "1.1"
3442    },
3443    {
3444      "opname" : "OpTypePipeStorage",
3445      "class"  : "Type-Declaration",
3446      "opcode" : 322,
3447      "operands" : [
3448        { "kind" : "IdResult" }
3449      ],
3450      "capabilities" : [ "PipeStorage" ],
3451      "version" : "1.1"
3452    },
3453    {
3454      "opname" : "OpConstantPipeStorage",
3455      "class"  : "Pipe",
3456      "opcode" : 323,
3457      "operands" : [
3458        { "kind" : "IdResultType" },
3459        { "kind" : "IdResult" },
3460        { "kind" : "LiteralInteger", "name" : "'Packet Size'" },
3461        { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" },
3462        { "kind" : "LiteralInteger", "name" : "'Capacity'" }
3463      ],
3464      "capabilities" : [ "PipeStorage" ],
3465      "version" : "1.1"
3466    },
3467    {
3468      "opname" : "OpCreatePipeFromPipeStorage",
3469      "class"  : "Pipe",
3470      "opcode" : 324,
3471      "operands" : [
3472        { "kind" : "IdResultType" },
3473        { "kind" : "IdResult" },
3474        { "kind" : "IdRef", "name" : "'Pipe Storage'" }
3475      ],
3476      "capabilities" : [ "PipeStorage" ],
3477      "version" : "1.1"
3478    },
3479    {
3480      "opname" : "OpGetKernelLocalSizeForSubgroupCount",
3481      "class"  : "Device-Side_Enqueue",
3482      "opcode" : 325,
3483      "operands" : [
3484        { "kind" : "IdResultType" },
3485        { "kind" : "IdResult" },
3486        { "kind" : "IdRef", "name" : "'Subgroup Count'" },
3487        { "kind" : "IdRef", "name" : "'Invoke'" },
3488        { "kind" : "IdRef", "name" : "'Param'" },
3489        { "kind" : "IdRef", "name" : "'Param Size'" },
3490        { "kind" : "IdRef", "name" : "'Param Align'" }
3491      ],
3492      "capabilities" : [ "SubgroupDispatch" ],
3493      "version" : "1.1"
3494    },
3495    {
3496      "opname" : "OpGetKernelMaxNumSubgroups",
3497      "class"  : "Device-Side_Enqueue",
3498      "opcode" : 326,
3499      "operands" : [
3500        { "kind" : "IdResultType" },
3501        { "kind" : "IdResult" },
3502        { "kind" : "IdRef", "name" : "'Invoke'" },
3503        { "kind" : "IdRef", "name" : "'Param'" },
3504        { "kind" : "IdRef", "name" : "'Param Size'" },
3505        { "kind" : "IdRef", "name" : "'Param Align'" }
3506      ],
3507      "capabilities" : [ "SubgroupDispatch" ],
3508      "version" : "1.1"
3509    },
3510    {
3511      "opname" : "OpTypeNamedBarrier",
3512      "class"  : "Type-Declaration",
3513      "opcode" : 327,
3514      "operands" : [
3515        { "kind" : "IdResult" }
3516      ],
3517      "capabilities" : [ "NamedBarrier" ],
3518      "version" : "1.1"
3519    },
3520    {
3521      "opname" : "OpNamedBarrierInitialize",
3522      "class"  : "Barrier",
3523      "opcode" : 328,
3524      "operands" : [
3525        { "kind" : "IdResultType" },
3526        { "kind" : "IdResult" },
3527        { "kind" : "IdRef", "name" : "'Subgroup Count'" }
3528      ],
3529      "capabilities" : [ "NamedBarrier" ],
3530      "version" : "1.1"
3531    },
3532    {
3533      "opname" : "OpMemoryNamedBarrier",
3534      "class"  : "Barrier",
3535      "opcode" : 329,
3536      "operands" : [
3537        { "kind" : "IdRef", "name" : "'Named Barrier'" },
3538        { "kind" : "IdScope", "name" : "'Memory'" },
3539        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3540      ],
3541      "capabilities" : [ "NamedBarrier" ],
3542      "version" : "1.1"
3543    },
3544    {
3545      "opname" : "OpModuleProcessed",
3546      "class"  : "Debug",
3547      "opcode" : 330,
3548      "operands" : [
3549        { "kind" : "LiteralString", "name" : "'Process'" }
3550      ],
3551      "version" : "1.1"
3552    },
3553    {
3554      "opname" : "OpExecutionModeId",
3555      "class"  : "Mode-Setting",
3556      "opcode" : 331,
3557      "operands" : [
3558        { "kind" : "IdRef", "name" : "'Entry Point'" },
3559        { "kind" : "ExecutionMode", "name" : "'Mode'" }
3560      ],
3561      "version" : "1.2"
3562    },
3563    {
3564      "opname" : "OpDecorateId",
3565      "class"  : "Annotation",
3566      "opcode" : 332,
3567      "operands" : [
3568        { "kind" : "IdRef", "name" : "'Target'" },
3569        { "kind" : "Decoration" }
3570      ],
3571      "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
3572      "version" : "1.2"
3573    },
3574    {
3575      "opname" : "OpGroupNonUniformElect",
3576      "class"  : "Non-Uniform",
3577      "opcode" : 333,
3578      "operands" : [
3579        { "kind" : "IdResultType" },
3580        { "kind" : "IdResult" },
3581        { "kind" : "IdScope", "name" : "'Execution'" }
3582      ],
3583      "capabilities" : [ "GroupNonUniform" ],
3584      "version" : "1.3"
3585    },
3586    {
3587      "opname" : "OpGroupNonUniformAll",
3588      "class"  : "Non-Uniform",
3589      "opcode" : 334,
3590      "operands" : [
3591        { "kind" : "IdResultType" },
3592        { "kind" : "IdResult" },
3593        { "kind" : "IdScope", "name" : "'Execution'" },
3594        { "kind" : "IdRef", "name" : "'Predicate'" }
3595      ],
3596      "capabilities" : [ "GroupNonUniformVote" ],
3597      "version" : "1.3"
3598    },
3599    {
3600      "opname" : "OpGroupNonUniformAny",
3601      "class"  : "Non-Uniform",
3602      "opcode" : 335,
3603      "operands" : [
3604        { "kind" : "IdResultType" },
3605        { "kind" : "IdResult" },
3606        { "kind" : "IdScope", "name" : "'Execution'" },
3607        { "kind" : "IdRef", "name" : "'Predicate'" }
3608      ],
3609      "capabilities" : [ "GroupNonUniformVote" ],
3610      "version" : "1.3"
3611    },
3612    {
3613      "opname" : "OpGroupNonUniformAllEqual",
3614      "class"  : "Non-Uniform",
3615      "opcode" : 336,
3616      "operands" : [
3617        { "kind" : "IdResultType" },
3618        { "kind" : "IdResult" },
3619        { "kind" : "IdScope", "name" : "'Execution'" },
3620        { "kind" : "IdRef", "name" : "'Value'" }
3621      ],
3622      "capabilities" : [ "GroupNonUniformVote" ],
3623      "version" : "1.3"
3624    },
3625    {
3626      "opname" : "OpGroupNonUniformBroadcast",
3627      "class"  : "Non-Uniform",
3628      "opcode" : 337,
3629      "operands" : [
3630        { "kind" : "IdResultType" },
3631        { "kind" : "IdResult" },
3632        { "kind" : "IdScope", "name" : "'Execution'" },
3633        { "kind" : "IdRef", "name" : "'Value'" },
3634        { "kind" : "IdRef", "name" : "'Id'" }
3635      ],
3636      "capabilities" : [ "GroupNonUniformBallot" ],
3637      "version" : "1.3"
3638    },
3639    {
3640      "opname" : "OpGroupNonUniformBroadcastFirst",
3641      "class"  : "Non-Uniform",
3642      "opcode" : 338,
3643      "operands" : [
3644        { "kind" : "IdResultType" },
3645        { "kind" : "IdResult" },
3646        { "kind" : "IdScope", "name" : "'Execution'" },
3647        { "kind" : "IdRef", "name" : "'Value'" }
3648      ],
3649      "capabilities" : [ "GroupNonUniformBallot" ],
3650      "version" : "1.3"
3651    },
3652    {
3653      "opname" : "OpGroupNonUniformBallot",
3654      "class"  : "Non-Uniform",
3655      "opcode" : 339,
3656      "operands" : [
3657        { "kind" : "IdResultType" },
3658        { "kind" : "IdResult" },
3659        { "kind" : "IdScope", "name" : "'Execution'" },
3660        { "kind" : "IdRef", "name" : "'Predicate'" }
3661      ],
3662      "capabilities" : [ "GroupNonUniformBallot" ],
3663      "version" : "1.3"
3664    },
3665    {
3666      "opname" : "OpGroupNonUniformInverseBallot",
3667      "class"  : "Non-Uniform",
3668      "opcode" : 340,
3669      "operands" : [
3670        { "kind" : "IdResultType" },
3671        { "kind" : "IdResult" },
3672        { "kind" : "IdScope", "name" : "'Execution'" },
3673        { "kind" : "IdRef", "name" : "'Value'" }
3674      ],
3675      "capabilities" : [ "GroupNonUniformBallot" ],
3676      "version" : "1.3"
3677    },
3678    {
3679      "opname" : "OpGroupNonUniformBallotBitExtract",
3680      "class"  : "Non-Uniform",
3681      "opcode" : 341,
3682      "operands" : [
3683        { "kind" : "IdResultType" },
3684        { "kind" : "IdResult" },
3685        { "kind" : "IdScope", "name" : "'Execution'" },
3686        { "kind" : "IdRef", "name" : "'Value'" },
3687        { "kind" : "IdRef", "name" : "'Index'" }
3688      ],
3689      "capabilities" : [ "GroupNonUniformBallot" ],
3690      "version" : "1.3"
3691    },
3692    {
3693      "opname" : "OpGroupNonUniformBallotBitCount",
3694      "class"  : "Non-Uniform",
3695      "opcode" : 342,
3696      "operands" : [
3697        { "kind" : "IdResultType" },
3698        { "kind" : "IdResult" },
3699        { "kind" : "IdScope", "name" : "'Execution'" },
3700        { "kind" : "GroupOperation", "name" : "'Operation'" },
3701        { "kind" : "IdRef", "name" : "'Value'" }
3702      ],
3703      "capabilities" : [ "GroupNonUniformBallot" ],
3704      "version" : "1.3"
3705    },
3706    {
3707      "opname" : "OpGroupNonUniformBallotFindLSB",
3708      "class"  : "Non-Uniform",
3709      "opcode" : 343,
3710      "operands" : [
3711        { "kind" : "IdResultType" },
3712        { "kind" : "IdResult" },
3713        { "kind" : "IdScope", "name" : "'Execution'" },
3714        { "kind" : "IdRef", "name" : "'Value'" }
3715      ],
3716      "capabilities" : [ "GroupNonUniformBallot" ],
3717      "version" : "1.3"
3718    },
3719    {
3720      "opname" : "OpGroupNonUniformBallotFindMSB",
3721      "class"  : "Non-Uniform",
3722      "opcode" : 344,
3723      "operands" : [
3724        { "kind" : "IdResultType" },
3725        { "kind" : "IdResult" },
3726        { "kind" : "IdScope", "name" : "'Execution'" },
3727        { "kind" : "IdRef", "name" : "'Value'" }
3728      ],
3729      "capabilities" : [ "GroupNonUniformBallot" ],
3730      "version" : "1.3"
3731    },
3732    {
3733      "opname" : "OpGroupNonUniformShuffle",
3734      "class"  : "Non-Uniform",
3735      "opcode" : 345,
3736      "operands" : [
3737        { "kind" : "IdResultType" },
3738        { "kind" : "IdResult" },
3739        { "kind" : "IdScope", "name" : "'Execution'" },
3740        { "kind" : "IdRef", "name" : "'Value'" },
3741        { "kind" : "IdRef", "name" : "'Id'" }
3742      ],
3743      "capabilities" : [ "GroupNonUniformShuffle" ],
3744      "version" : "1.3"
3745    },
3746    {
3747      "opname" : "OpGroupNonUniformShuffleXor",
3748      "class"  : "Non-Uniform",
3749      "opcode" : 346,
3750      "operands" : [
3751        { "kind" : "IdResultType" },
3752        { "kind" : "IdResult" },
3753        { "kind" : "IdScope", "name" : "'Execution'" },
3754        { "kind" : "IdRef", "name" : "'Value'" },
3755        { "kind" : "IdRef", "name" : "'Mask'" }
3756      ],
3757      "capabilities" : [ "GroupNonUniformShuffle" ],
3758      "version" : "1.3"
3759    },
3760    {
3761      "opname" : "OpGroupNonUniformShuffleUp",
3762      "class"  : "Non-Uniform",
3763      "opcode" : 347,
3764      "operands" : [
3765        { "kind" : "IdResultType" },
3766        { "kind" : "IdResult" },
3767        { "kind" : "IdScope", "name" : "'Execution'" },
3768        { "kind" : "IdRef", "name" : "'Value'" },
3769        { "kind" : "IdRef", "name" : "'Delta'" }
3770      ],
3771      "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3772      "version" : "1.3"
3773    },
3774    {
3775      "opname" : "OpGroupNonUniformShuffleDown",
3776      "class"  : "Non-Uniform",
3777      "opcode" : 348,
3778      "operands" : [
3779        { "kind" : "IdResultType" },
3780        { "kind" : "IdResult" },
3781        { "kind" : "IdScope", "name" : "'Execution'" },
3782        { "kind" : "IdRef", "name" : "'Value'" },
3783        { "kind" : "IdRef", "name" : "'Delta'" }
3784      ],
3785      "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3786      "version" : "1.3"
3787    },
3788    {
3789      "opname" : "OpGroupNonUniformIAdd",
3790      "class"  : "Non-Uniform",
3791      "opcode" : 349,
3792      "operands" : [
3793        { "kind" : "IdResultType" },
3794        { "kind" : "IdResult" },
3795        { "kind" : "IdScope", "name" : "'Execution'" },
3796        { "kind" : "GroupOperation", "name" : "'Operation'" },
3797        { "kind" : "IdRef", "name" : "'Value'" },
3798        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3799      ],
3800      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3801      "version" : "1.3"
3802    },
3803    {
3804      "opname" : "OpGroupNonUniformFAdd",
3805      "class"  : "Non-Uniform",
3806      "opcode" : 350,
3807      "operands" : [
3808        { "kind" : "IdResultType" },
3809        { "kind" : "IdResult" },
3810        { "kind" : "IdScope", "name" : "'Execution'" },
3811        { "kind" : "GroupOperation", "name" : "'Operation'" },
3812        { "kind" : "IdRef", "name" : "'Value'" },
3813        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3814      ],
3815      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3816      "version" : "1.3"
3817    },
3818    {
3819      "opname" : "OpGroupNonUniformIMul",
3820      "class"  : "Non-Uniform",
3821      "opcode" : 351,
3822      "operands" : [
3823        { "kind" : "IdResultType" },
3824        { "kind" : "IdResult" },
3825        { "kind" : "IdScope", "name" : "'Execution'" },
3826        { "kind" : "GroupOperation", "name" : "'Operation'" },
3827        { "kind" : "IdRef", "name" : "'Value'" },
3828        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3829      ],
3830      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3831      "version" : "1.3"
3832    },
3833    {
3834      "opname" : "OpGroupNonUniformFMul",
3835      "class"  : "Non-Uniform",
3836      "opcode" : 352,
3837      "operands" : [
3838        { "kind" : "IdResultType" },
3839        { "kind" : "IdResult" },
3840        { "kind" : "IdScope", "name" : "'Execution'" },
3841        { "kind" : "GroupOperation", "name" : "'Operation'" },
3842        { "kind" : "IdRef", "name" : "'Value'" },
3843        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3844      ],
3845      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3846      "version" : "1.3"
3847    },
3848    {
3849      "opname" : "OpGroupNonUniformSMin",
3850      "class"  : "Non-Uniform",
3851      "opcode" : 353,
3852      "operands" : [
3853        { "kind" : "IdResultType" },
3854        { "kind" : "IdResult" },
3855        { "kind" : "IdScope", "name" : "'Execution'" },
3856        { "kind" : "GroupOperation", "name" : "'Operation'" },
3857        { "kind" : "IdRef", "name" : "'Value'" },
3858        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3859      ],
3860      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3861      "version" : "1.3"
3862    },
3863    {
3864      "opname" : "OpGroupNonUniformUMin",
3865      "class"  : "Non-Uniform",
3866      "opcode" : 354,
3867      "operands" : [
3868        { "kind" : "IdResultType" },
3869        { "kind" : "IdResult" },
3870        { "kind" : "IdScope", "name" : "'Execution'" },
3871        { "kind" : "GroupOperation", "name" : "'Operation'" },
3872        { "kind" : "IdRef", "name" : "'Value'" },
3873        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3874      ],
3875      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3876      "version" : "1.3"
3877    },
3878    {
3879      "opname" : "OpGroupNonUniformFMin",
3880      "class"  : "Non-Uniform",
3881      "opcode" : 355,
3882      "operands" : [
3883        { "kind" : "IdResultType" },
3884        { "kind" : "IdResult" },
3885        { "kind" : "IdScope", "name" : "'Execution'" },
3886        { "kind" : "GroupOperation", "name" : "'Operation'" },
3887        { "kind" : "IdRef", "name" : "'Value'" },
3888        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3889      ],
3890      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3891      "version" : "1.3"
3892    },
3893    {
3894      "opname" : "OpGroupNonUniformSMax",
3895      "class"  : "Non-Uniform",
3896      "opcode" : 356,
3897      "operands" : [
3898        { "kind" : "IdResultType" },
3899        { "kind" : "IdResult" },
3900        { "kind" : "IdScope", "name" : "'Execution'" },
3901        { "kind" : "GroupOperation", "name" : "'Operation'" },
3902        { "kind" : "IdRef", "name" : "'Value'" },
3903        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3904      ],
3905      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3906      "version" : "1.3"
3907    },
3908    {
3909      "opname" : "OpGroupNonUniformUMax",
3910      "class"  : "Non-Uniform",
3911      "opcode" : 357,
3912      "operands" : [
3913        { "kind" : "IdResultType" },
3914        { "kind" : "IdResult" },
3915        { "kind" : "IdScope", "name" : "'Execution'" },
3916        { "kind" : "GroupOperation", "name" : "'Operation'" },
3917        { "kind" : "IdRef", "name" : "'Value'" },
3918        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3919      ],
3920      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3921      "version" : "1.3"
3922    },
3923    {
3924      "opname" : "OpGroupNonUniformFMax",
3925      "class"  : "Non-Uniform",
3926      "opcode" : 358,
3927      "operands" : [
3928        { "kind" : "IdResultType" },
3929        { "kind" : "IdResult" },
3930        { "kind" : "IdScope", "name" : "'Execution'" },
3931        { "kind" : "GroupOperation", "name" : "'Operation'" },
3932        { "kind" : "IdRef", "name" : "'Value'" },
3933        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3934      ],
3935      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3936      "version" : "1.3"
3937    },
3938    {
3939      "opname" : "OpGroupNonUniformBitwiseAnd",
3940      "class"  : "Non-Uniform",
3941      "opcode" : 359,
3942      "operands" : [
3943        { "kind" : "IdResultType" },
3944        { "kind" : "IdResult" },
3945        { "kind" : "IdScope", "name" : "'Execution'" },
3946        { "kind" : "GroupOperation", "name" : "'Operation'" },
3947        { "kind" : "IdRef", "name" : "'Value'" },
3948        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3949      ],
3950      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3951      "version" : "1.3"
3952    },
3953    {
3954      "opname" : "OpGroupNonUniformBitwiseOr",
3955      "class"  : "Non-Uniform",
3956      "opcode" : 360,
3957      "operands" : [
3958        { "kind" : "IdResultType" },
3959        { "kind" : "IdResult" },
3960        { "kind" : "IdScope", "name" : "'Execution'" },
3961        { "kind" : "GroupOperation", "name" : "'Operation'" },
3962        { "kind" : "IdRef", "name" : "'Value'" },
3963        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3964      ],
3965      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3966      "version" : "1.3"
3967    },
3968    {
3969      "opname" : "OpGroupNonUniformBitwiseXor",
3970      "class"  : "Non-Uniform",
3971      "opcode" : 361,
3972      "operands" : [
3973        { "kind" : "IdResultType" },
3974        { "kind" : "IdResult" },
3975        { "kind" : "IdScope", "name" : "'Execution'" },
3976        { "kind" : "GroupOperation", "name" : "'Operation'" },
3977        { "kind" : "IdRef", "name" : "'Value'" },
3978        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3979      ],
3980      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3981      "version" : "1.3"
3982    },
3983    {
3984      "opname" : "OpGroupNonUniformLogicalAnd",
3985      "class"  : "Non-Uniform",
3986      "opcode" : 362,
3987      "operands" : [
3988        { "kind" : "IdResultType" },
3989        { "kind" : "IdResult" },
3990        { "kind" : "IdScope", "name" : "'Execution'" },
3991        { "kind" : "GroupOperation", "name" : "'Operation'" },
3992        { "kind" : "IdRef", "name" : "'Value'" },
3993        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3994      ],
3995      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3996      "version" : "1.3"
3997    },
3998    {
3999      "opname" : "OpGroupNonUniformLogicalOr",
4000      "class"  : "Non-Uniform",
4001      "opcode" : 363,
4002      "operands" : [
4003        { "kind" : "IdResultType" },
4004        { "kind" : "IdResult" },
4005        { "kind" : "IdScope", "name" : "'Execution'" },
4006        { "kind" : "GroupOperation", "name" : "'Operation'" },
4007        { "kind" : "IdRef", "name" : "'Value'" },
4008        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4009      ],
4010      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4011      "version" : "1.3"
4012    },
4013    {
4014      "opname" : "OpGroupNonUniformLogicalXor",
4015      "class"  : "Non-Uniform",
4016      "opcode" : 364,
4017      "operands" : [
4018        { "kind" : "IdResultType" },
4019        { "kind" : "IdResult" },
4020        { "kind" : "IdScope", "name" : "'Execution'" },
4021        { "kind" : "GroupOperation", "name" : "'Operation'" },
4022        { "kind" : "IdRef", "name" : "'Value'" },
4023        { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
4024      ],
4025      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4026      "version" : "1.3"
4027    },
4028    {
4029      "opname" : "OpGroupNonUniformQuadBroadcast",
4030      "class"  : "Non-Uniform",
4031      "opcode" : 365,
4032      "operands" : [
4033        { "kind" : "IdResultType" },
4034        { "kind" : "IdResult" },
4035        { "kind" : "IdScope", "name" : "'Execution'" },
4036        { "kind" : "IdRef", "name" : "'Value'" },
4037        { "kind" : "IdRef", "name" : "'Index'" }
4038      ],
4039      "capabilities" : [ "GroupNonUniformQuad" ],
4040      "version" : "1.3"
4041    },
4042    {
4043      "opname" : "OpGroupNonUniformQuadSwap",
4044      "class"  : "Non-Uniform",
4045      "opcode" : 366,
4046      "operands" : [
4047        { "kind" : "IdResultType" },
4048        { "kind" : "IdResult" },
4049        { "kind" : "IdScope", "name" : "'Execution'" },
4050        { "kind" : "IdRef", "name" : "'Value'" },
4051        { "kind" : "IdRef", "name" : "'Direction'" }
4052      ],
4053      "capabilities" : [ "GroupNonUniformQuad" ],
4054      "version" : "1.3"
4055    },
4056    {
4057      "opname" : "OpCopyLogical",
4058      "class"  : "Composite",
4059      "opcode" : 400,
4060      "operands" : [
4061        { "kind" : "IdResultType" },
4062        { "kind" : "IdResult" },
4063        { "kind" : "IdRef",        "name" : "'Operand'" }
4064      ],
4065      "version" : "1.4"
4066    },
4067    {
4068      "opname" : "OpPtrEqual",
4069      "class"  : "Memory",
4070      "opcode" : 401,
4071      "operands" : [
4072        { "kind" : "IdResultType" },
4073        { "kind" : "IdResult" },
4074        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4075        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4076      ],
4077      "version" : "1.4"
4078    },
4079    {
4080      "opname" : "OpPtrNotEqual",
4081      "class"  : "Memory",
4082      "opcode" : 402,
4083      "operands" : [
4084        { "kind" : "IdResultType" },
4085        { "kind" : "IdResult" },
4086        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4087        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4088      ],
4089      "version" : "1.4"
4090    },
4091    {
4092      "opname" : "OpPtrDiff",
4093      "class"  : "Memory",
4094      "opcode" : 403,
4095      "operands" : [
4096        { "kind" : "IdResultType" },
4097        { "kind" : "IdResult" },
4098        { "kind" : "IdRef",        "name" : "'Operand 1'" },
4099        { "kind" : "IdRef",        "name" : "'Operand 2'" }
4100      ],
4101      "capabilities" : [ "Addresses", "VariablePointers", "VariablePointersStorageBuffer" ],
4102      "version" : "1.4"
4103    },
4104    {
4105      "opname" : "OpTerminateInvocation",
4106      "class"  : "Control-Flow",
4107      "opcode" : 4416,
4108      "extensions" : [
4109        "SPV_KHR_terminate_invocation"
4110      ],
4111      "capabilities" : [ "Shader" ],
4112      "version" : "None"
4113    },
4114    {
4115      "opname" : "OpSubgroupBallotKHR",
4116      "class"  : "Group",
4117      "opcode" : 4421,
4118      "operands" : [
4119        { "kind" : "IdResultType" },
4120        { "kind" : "IdResult" },
4121        { "kind" : "IdRef", "name" : "'Predicate'" }
4122      ],
4123      "capabilities" : [ "SubgroupBallotKHR" ],
4124      "extensions" : [ "SPV_KHR_shader_ballot" ],
4125      "version" : "None"
4126    },
4127    {
4128      "opname" : "OpSubgroupFirstInvocationKHR",
4129      "class"  : "Group",
4130      "opcode" : 4422,
4131      "operands" : [
4132        { "kind" : "IdResultType" },
4133        { "kind" : "IdResult" },
4134        { "kind" : "IdRef", "name" : "'Value'" }
4135      ],
4136      "capabilities" : [ "SubgroupBallotKHR" ],
4137      "extensions" : [ "SPV_KHR_shader_ballot" ],
4138      "version" : "None"
4139    },
4140    {
4141      "opname" : "OpSubgroupAllKHR",
4142      "class"  : "Group",
4143      "opcode" : 4428,
4144      "operands" : [
4145        { "kind" : "IdResultType" },
4146        { "kind" : "IdResult" },
4147        { "kind" : "IdRef", "name" : "'Predicate'" }
4148      ],
4149      "extensions" : [
4150        "SPV_KHR_subgroup_vote"
4151      ],
4152      "capabilities" : [ "SubgroupVoteKHR" ],
4153      "version" : "None"
4154    },
4155    {
4156      "opname" : "OpSubgroupAnyKHR",
4157      "class"  : "Group",
4158      "opcode" : 4429,
4159      "operands" : [
4160        { "kind" : "IdResultType" },
4161        { "kind" : "IdResult" },
4162        { "kind" : "IdRef", "name" : "'Predicate'" }
4163      ],
4164      "extensions" : [
4165        "SPV_KHR_subgroup_vote"
4166      ],
4167      "capabilities" : [ "SubgroupVoteKHR" ],
4168      "version" : "None"
4169    },
4170    {
4171      "opname" : "OpSubgroupAllEqualKHR",
4172      "class"  : "Group",
4173      "opcode" : 4430,
4174      "operands" : [
4175        { "kind" : "IdResultType" },
4176        { "kind" : "IdResult" },
4177        { "kind" : "IdRef", "name" : "'Predicate'" }
4178      ],
4179      "extensions" : [
4180        "SPV_KHR_subgroup_vote"
4181      ],
4182      "capabilities" : [ "SubgroupVoteKHR" ],
4183      "version" : "None"
4184    },
4185    {
4186      "opname" : "OpSubgroupReadInvocationKHR",
4187      "class"  : "Group",
4188      "opcode" : 4432,
4189      "operands" : [
4190        { "kind" : "IdResultType" },
4191        { "kind" : "IdResult" },
4192        { "kind" : "IdRef", "name" : "'Value'" },
4193        { "kind" : "IdRef", "name" : "'Index'" }
4194      ],
4195      "capabilities" : [ "SubgroupBallotKHR" ],
4196      "extensions" : [ "SPV_KHR_shader_ballot" ],
4197      "version" : "None"
4198    },
4199    {
4200      "opname" : "OpTraceRayKHR",
4201      "class"  : "Reserved",
4202      "opcode" : 4445,
4203      "operands" : [
4204
4205        { "kind" : "IdRef", "name" : "'Accel'" },
4206        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4207        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4208        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4209        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4210        { "kind" : "IdRef", "name" : "'Miss Index'" },
4211        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4212        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4213        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4214        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4215        { "kind" : "IdRef", "name" : "'Payload'" }
4216      ],
4217      "capabilities" : [ "RayTracingKHR" ],
4218      "extensions" : [ "SPV_KHR_ray_tracing" ],
4219      "version" : "None"
4220    },
4221    {
4222      "opname" : "OpExecuteCallableKHR",
4223      "class"  : "Reserved",
4224      "opcode" : 4446,
4225      "operands" : [
4226
4227        { "kind" : "IdRef", "name" : "'SBT Index'" },
4228        { "kind" : "IdRef", "name" : "'Callable Data'" }
4229      ],
4230      "capabilities" : [ "RayTracingKHR" ],
4231      "extensions" : [ "SPV_KHR_ray_tracing" ],
4232      "version" : "None"
4233    },
4234    {
4235      "opname" : "OpConvertUToAccelerationStructureKHR",
4236      "class"  : "Reserved",
4237      "opcode" : 4447,
4238      "operands" : [
4239        { "kind" : "IdResultType" },
4240        { "kind" : "IdResult" },
4241        { "kind" : "IdRef",        "name" : "'Accel'" }
4242      ],
4243      "capabilities" : [ "RayTracingKHR", "RayQueryKHR" ],
4244      "extensions" : [ "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4245      "version" : "None"
4246    },
4247    {
4248      "opname" : "OpIgnoreIntersectionKHR",
4249      "class"  : "Reserved",
4250      "opcode" : 4448,
4251      "capabilities" : [ "RayTracingKHR" ],
4252      "extensions" : [ "SPV_KHR_ray_tracing" ],
4253      "version" : "None"
4254    },
4255    {
4256      "opname" : "OpTerminateRayKHR",
4257      "class"  : "Reserved",
4258      "opcode" : 4449,
4259      "capabilities" : [ "RayTracingKHR" ],
4260      "extensions" : [ "SPV_KHR_ray_tracing" ],
4261      "version" : "None"
4262    },
4263    {
4264      "opname" : "OpSDotKHR",
4265      "class"  : "Arithmetic",
4266      "opcode" : 4450,
4267      "operands" : [
4268        { "kind" : "IdResultType" },
4269        { "kind" : "IdResult" },
4270        { "kind" : "IdRef", "name" : "'Vector 1'" },
4271        { "kind" : "IdRef", "name" : "'Vector 2'" },
4272        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4273      ],
4274      "capabilities" : [ "DotProductKHR" ],
4275      "version" : "None"
4276    },
4277    {
4278      "opname" : "OpUDotKHR",
4279      "class"  : "Arithmetic",
4280      "opcode" : 4451,
4281      "operands" : [
4282        { "kind" : "IdResultType" },
4283        { "kind" : "IdResult" },
4284        { "kind" : "IdRef", "name" : "'Vector 1'" },
4285        { "kind" : "IdRef", "name" : "'Vector 2'" },
4286        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4287      ],
4288      "capabilities" : [ "DotProductKHR" ],
4289      "version" : "None"
4290    },
4291    {
4292      "opname" : "OpSUDotKHR",
4293      "class"  : "Arithmetic",
4294      "opcode" : 4452,
4295      "operands" : [
4296        { "kind" : "IdResultType" },
4297        { "kind" : "IdResult" },
4298        { "kind" : "IdRef", "name" : "'Vector 1'" },
4299        { "kind" : "IdRef", "name" : "'Vector 2'" },
4300        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4301      ],
4302      "capabilities" : [ "DotProductKHR" ],
4303      "version" : "None"
4304    },
4305    {
4306      "opname" : "OpSDotAccSatKHR",
4307      "class"  : "Arithmetic",
4308      "opcode" : 4453,
4309      "operands" : [
4310        { "kind" : "IdResultType" },
4311        { "kind" : "IdResult" },
4312        { "kind" : "IdRef", "name" : "'Vector 1'" },
4313        { "kind" : "IdRef", "name" : "'Vector 2'" },
4314        { "kind" : "IdRef", "name" : "'Accumulator'" },
4315        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4316      ],
4317      "capabilities" : [ "DotProductKHR" ],
4318      "version" : "None"
4319    },
4320    {
4321      "opname" : "OpUDotAccSatKHR",
4322      "class"  : "Arithmetic",
4323      "opcode" : 4454,
4324      "operands" : [
4325        { "kind" : "IdResultType" },
4326        { "kind" : "IdResult" },
4327        { "kind" : "IdRef", "name" : "'Vector 1'" },
4328        { "kind" : "IdRef", "name" : "'Vector 2'" },
4329        { "kind" : "IdRef", "name" : "'Accumulator'" },
4330        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4331      ],
4332      "capabilities" : [ "DotProductKHR" ],
4333      "version" : "None"
4334    },
4335    {
4336      "opname" : "OpSUDotAccSatKHR",
4337      "class"  : "Arithmetic",
4338      "opcode" : 4455,
4339      "operands" : [
4340        { "kind" : "IdResultType" },
4341        { "kind" : "IdResult" },
4342        { "kind" : "IdRef", "name" : "'Vector 1'" },
4343        { "kind" : "IdRef", "name" : "'Vector 2'" },
4344        { "kind" : "IdRef", "name" : "'Accumulator'" },
4345        { "kind" : "PackedVectorFormat", "name" : "'Packed Vector Format'", "quantifier" : "?" }
4346      ],
4347      "capabilities" : [ "DotProductKHR" ],
4348      "version" : "None"
4349    },
4350    {
4351        "opname" : "OpTypeRayQueryKHR",
4352        "class" : "Reserved",
4353        "opcode" : 4472,
4354        "operands" : [
4355            { "kind" : "IdResult" }
4356        ],
4357        "capabilities" : [ "RayQueryKHR" ],
4358        "extensions" : [ "SPV_KHR_ray_query" ],
4359        "version" : "None"
4360    },
4361    {
4362        "opname" : "OpRayQueryInitializeKHR",
4363        "class" : "Reserved",
4364        "opcode" : 4473,
4365        "operands" : [
4366            {
4367                "kind" : "IdRef",
4368                "name" : "'RayQuery'"
4369            },
4370            {
4371                "kind" : "IdRef",
4372                "name" : "'Accel'"
4373            },
4374            {
4375                "kind" : "IdRef",
4376                "name" : "'RayFlags'"
4377            },
4378            {
4379                "kind" : "IdRef",
4380                "name" : "'CullMask'"
4381            },
4382            {
4383                "kind" : "IdRef",
4384                "name" : "'RayOrigin'"
4385            },
4386            {
4387                "kind" : "IdRef",
4388                "name" : "'RayTMin'"
4389            },
4390            {
4391                "kind" : "IdRef",
4392                "name" : "'RayDirection'"
4393            },
4394            {
4395                "kind" : "IdRef",
4396                "name" : "'RayTMax'"
4397            }
4398
4399        ],
4400        "capabilities" : [ "RayQueryKHR" ],
4401        "extensions" : [ "SPV_KHR_ray_query" ],
4402        "version" : "None"
4403    },
4404    {
4405        "opname" : "OpRayQueryTerminateKHR",
4406        "class" : "Reserved",
4407        "opcode" : 4474,
4408        "operands" : [
4409            {
4410                "kind" : "IdRef",
4411                "name" : "'RayQuery'"
4412            }
4413        ],
4414        "capabilities" : [ "RayQueryKHR" ],
4415        "extensions" : [ "SPV_KHR_ray_query" ],
4416        "version" : "None"
4417    },
4418    {
4419        "opname" : "OpRayQueryGenerateIntersectionKHR",
4420        "class" : "Reserved",
4421        "opcode" : 4475,
4422        "operands" : [
4423            {
4424                "kind" : "IdRef",
4425                "name" : "'RayQuery'"
4426            },
4427            {
4428                "kind" : "IdRef",
4429                "name" : "'HitT'"
4430            }
4431        ],
4432        "capabilities" : [ "RayQueryKHR" ],
4433        "extensions" : [ "SPV_KHR_ray_query" ],
4434        "version" : "None"
4435    },
4436    {
4437        "opname" : "OpRayQueryConfirmIntersectionKHR",
4438        "class" : "Reserved",
4439        "opcode" : 4476,
4440        "operands" : [
4441            {
4442                "kind" : "IdRef",
4443                "name" : "'RayQuery'"
4444            }
4445        ],
4446        "capabilities" : [ "RayQueryKHR" ],
4447        "extensions" : [ "SPV_KHR_ray_query" ],
4448        "version" : "None"
4449    },
4450    {
4451        "opname" : "OpRayQueryProceedKHR",
4452        "class" : "Reserved",
4453        "opcode" : 4477,
4454        "operands" : [
4455            { "kind" : "IdResultType" },
4456            { "kind" : "IdResult" },
4457            {
4458                "kind" : "IdRef",
4459                "name" : "'RayQuery'"
4460            }
4461        ],
4462        "capabilities" : [ "RayQueryKHR" ],
4463        "extensions" : [ "SPV_KHR_ray_query" ],
4464        "version" : "None"
4465    },
4466    {
4467        "opname" : "OpRayQueryGetIntersectionTypeKHR",
4468        "class" : "Reserved",
4469        "opcode" : 4479,
4470        "operands" : [
4471            { "kind" : "IdResultType" },
4472            { "kind" : "IdResult" },
4473            {
4474                "kind" : "IdRef",
4475                "name" : "'RayQuery'"
4476            },
4477            {
4478                "kind" : "IdRef",
4479                "name" : "'Intersection'"
4480            }
4481        ],
4482        "capabilities" : [ "RayQueryKHR" ],
4483        "extensions" : [ "SPV_KHR_ray_query" ],
4484        "version" : "None"
4485    },
4486    {
4487      "opname" : "OpGroupIAddNonUniformAMD",
4488      "class"  : "Group",
4489      "opcode" : 5000,
4490      "operands" : [
4491        { "kind" : "IdResultType" },
4492        { "kind" : "IdResult" },
4493        { "kind" : "IdScope",        "name" : "'Execution'" },
4494        { "kind" : "GroupOperation", "name" : "'Operation'" },
4495        { "kind" : "IdRef",          "name" : "'X'" }
4496      ],
4497      "capabilities" : [ "Groups" ],
4498      "extensions" : [ "SPV_AMD_shader_ballot" ],
4499      "version" : "None"
4500    },
4501    {
4502      "opname" : "OpGroupFAddNonUniformAMD",
4503      "class"  : "Group",
4504      "opcode" : 5001,
4505      "operands" : [
4506        { "kind" : "IdResultType" },
4507        { "kind" : "IdResult" },
4508        { "kind" : "IdScope",        "name" : "'Execution'" },
4509        { "kind" : "GroupOperation", "name" : "'Operation'" },
4510        { "kind" : "IdRef",          "name" : "'X'" }
4511      ],
4512      "capabilities" : [ "Groups" ],
4513      "extensions" : [ "SPV_AMD_shader_ballot" ],
4514      "version" : "None"
4515    },
4516    {
4517      "opname" : "OpGroupFMinNonUniformAMD",
4518      "class"  : "Group",
4519      "opcode" : 5002,
4520      "operands" : [
4521        { "kind" : "IdResultType" },
4522        { "kind" : "IdResult" },
4523        { "kind" : "IdScope",        "name" : "'Execution'" },
4524        { "kind" : "GroupOperation", "name" : "'Operation'" },
4525        { "kind" : "IdRef",          "name" : "'X'" }
4526      ],
4527      "capabilities" : [ "Groups" ],
4528      "extensions" : [ "SPV_AMD_shader_ballot" ],
4529      "version" : "None"
4530    },
4531    {
4532      "opname" : "OpGroupUMinNonUniformAMD",
4533      "class"  : "Group",
4534      "opcode" : 5003,
4535      "operands" : [
4536        { "kind" : "IdResultType" },
4537        { "kind" : "IdResult" },
4538        { "kind" : "IdScope",        "name" : "'Execution'" },
4539        { "kind" : "GroupOperation", "name" : "'Operation'" },
4540        { "kind" : "IdRef",          "name" : "'X'" }
4541      ],
4542      "capabilities" : [ "Groups" ],
4543      "extensions" : [ "SPV_AMD_shader_ballot" ],
4544      "version" : "None"
4545    },
4546    {
4547      "opname" : "OpGroupSMinNonUniformAMD",
4548      "class"  : "Group",
4549      "opcode" : 5004,
4550      "operands" : [
4551        { "kind" : "IdResultType" },
4552        { "kind" : "IdResult" },
4553        { "kind" : "IdScope",        "name" : "'Execution'" },
4554        { "kind" : "GroupOperation", "name" : "'Operation'" },
4555        { "kind" : "IdRef",          "name" : "'X'" }
4556      ],
4557      "capabilities" : [ "Groups" ],
4558      "extensions" : [ "SPV_AMD_shader_ballot" ],
4559      "version" : "None"
4560    },
4561    {
4562      "opname" : "OpGroupFMaxNonUniformAMD",
4563      "class"  : "Group",
4564      "opcode" : 5005,
4565      "operands" : [
4566        { "kind" : "IdResultType" },
4567        { "kind" : "IdResult" },
4568        { "kind" : "IdScope",        "name" : "'Execution'" },
4569        { "kind" : "GroupOperation", "name" : "'Operation'" },
4570        { "kind" : "IdRef",          "name" : "'X'" }
4571      ],
4572      "capabilities" : [ "Groups" ],
4573      "extensions" : [ "SPV_AMD_shader_ballot" ],
4574      "version" : "None"
4575    },
4576    {
4577      "opname" : "OpGroupUMaxNonUniformAMD",
4578      "class"  : "Group",
4579      "opcode" : 5006,
4580      "operands" : [
4581        { "kind" : "IdResultType" },
4582        { "kind" : "IdResult" },
4583        { "kind" : "IdScope",        "name" : "'Execution'" },
4584        { "kind" : "GroupOperation", "name" : "'Operation'" },
4585        { "kind" : "IdRef",          "name" : "'X'" }
4586      ],
4587      "capabilities" : [ "Groups" ],
4588      "extensions" : [ "SPV_AMD_shader_ballot" ],
4589      "version" : "None"
4590    },
4591    {
4592      "opname" : "OpGroupSMaxNonUniformAMD",
4593      "class"  : "Group",
4594      "opcode" : 5007,
4595      "operands" : [
4596        { "kind" : "IdResultType" },
4597        { "kind" : "IdResult" },
4598        { "kind" : "IdScope",        "name" : "'Execution'" },
4599        { "kind" : "GroupOperation", "name" : "'Operation'" },
4600        { "kind" : "IdRef",          "name" : "'X'" }
4601      ],
4602      "capabilities" : [ "Groups" ],
4603      "extensions" : [ "SPV_AMD_shader_ballot" ],
4604      "version" : "None"
4605    },
4606    {
4607      "opname" : "OpFragmentMaskFetchAMD",
4608      "class"  : "Reserved",
4609      "opcode" : 5011,
4610      "operands" : [
4611        { "kind" : "IdResultType" },
4612        { "kind" : "IdResult" },
4613        { "kind" : "IdRef", "name" : "'Image'" },
4614        { "kind" : "IdRef", "name" : "'Coordinate'" }
4615      ],
4616      "capabilities" : [ "FragmentMaskAMD" ],
4617      "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
4618      "version" : "None"
4619    },
4620    {
4621      "opname" : "OpFragmentFetchAMD",
4622      "class"  : "Reserved",
4623      "opcode" : 5012,
4624      "operands" : [
4625        { "kind" : "IdResultType" },
4626        { "kind" : "IdResult" },
4627        { "kind" : "IdRef", "name" : "'Image'" },
4628        { "kind" : "IdRef", "name" : "'Coordinate'" },
4629        { "kind" : "IdRef", "name" : "'Fragment Index'" }
4630      ],
4631      "capabilities" : [ "FragmentMaskAMD" ],
4632      "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
4633      "version" : "None"
4634    },
4635    {
4636      "opname" : "OpReadClockKHR",
4637      "class"  : "Reserved",
4638      "opcode" : 5056,
4639      "operands" : [
4640        { "kind" : "IdResultType" },
4641        { "kind" : "IdResult" },
4642        { "kind" : "IdScope", "name" : "'Scope'" }
4643      ],
4644      "capabilities" : [ "ShaderClockKHR" ],
4645      "extensions" : [ "SPV_KHR_shader_clock" ],
4646      "version" : "None"
4647    },
4648    {
4649      "opname" : "OpImageSampleFootprintNV",
4650      "class"  : "Image",
4651      "opcode" : 5283,
4652      "operands" : [
4653        { "kind" : "IdResultType" },
4654        { "kind" : "IdResult" },
4655        { "kind" : "IdRef", "name" : "'Sampled Image'" },
4656        { "kind" : "IdRef", "name" : "'Coordinate'" },
4657        { "kind" : "IdRef", "name" : "'Granularity'" },
4658        { "kind" : "IdRef", "name" : "'Coarse'" },
4659        { "kind" : "ImageOperands", "quantifier" : "?" }
4660      ],
4661      "capabilities" : [ "ImageFootprintNV" ],
4662      "extensions" : [ "SPV_NV_shader_image_footprint" ],
4663      "version" : "None"
4664    },
4665    {
4666      "opname" : "OpGroupNonUniformPartitionNV",
4667      "class"  : "Non-Uniform",
4668      "opcode" : 5296,
4669      "operands" : [
4670        { "kind" : "IdResultType" },
4671        { "kind" : "IdResult" },
4672        { "kind" : "IdRef", "name" : "'Value'" }
4673      ],
4674      "capabilities" : [ "GroupNonUniformPartitionedNV" ],
4675      "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
4676      "version" : "None"
4677    },
4678    {
4679      "opname" : "OpWritePackedPrimitiveIndices4x8NV",
4680      "class"  : "Reserved",
4681      "opcode" : 5299,
4682      "operands" : [
4683        { "kind" : "IdRef", "name" : "'Index Offset'" },
4684        { "kind" : "IdRef", "name" : "'Packed Indices'" }
4685      ],
4686      "capabilities" : [ "MeshShadingNV" ],
4687      "extensions" : [ "SPV_NV_mesh_shader" ],
4688      "version" : "None"
4689    },
4690    {
4691      "opname" : "OpReportIntersectionNV",
4692      "class"  : "Reserved",
4693      "opcode" : 5334,
4694      "operands" : [
4695        { "kind" : "IdResultType" },
4696        { "kind" : "IdResult" },
4697        { "kind" : "IdRef", "name" : "'Hit'" },
4698        { "kind" : "IdRef", "name" : "'HitKind'" }
4699      ],
4700      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
4701      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4702      "version" : "None"
4703    },
4704    {
4705      "opname" : "OpReportIntersectionKHR",
4706      "class"  : "Reserved",
4707      "opcode" : 5334,
4708      "operands" : [
4709        { "kind" : "IdResultType" },
4710        { "kind" : "IdResult" },
4711        { "kind" : "IdRef", "name" : "'Hit'" },
4712        { "kind" : "IdRef", "name" : "'HitKind'" }
4713      ],
4714      "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
4715      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4716      "version" : "None"
4717    },
4718    {
4719      "opname" : "OpIgnoreIntersectionNV",
4720      "class"  : "Reserved",
4721      "opcode" : 5335,
4722      "capabilities" : [ "RayTracingNV" ],
4723      "extensions" : [ "SPV_NV_ray_tracing" ],
4724      "version" : "None"
4725    },
4726    {
4727      "opname" : "OpTerminateRayNV",
4728      "class"  : "Reserved",
4729      "opcode" : 5336,
4730      "capabilities" : [ "RayTracingNV" ],
4731      "extensions" : [ "SPV_NV_ray_tracing" ],
4732      "version" : "None"
4733    },
4734    {
4735      "opname" : "OpTraceNV",
4736      "class"  : "Reserved",
4737      "opcode" : 5337,
4738      "operands" : [
4739
4740        { "kind" : "IdRef", "name" : "'Accel'" },
4741        { "kind" : "IdRef", "name" : "'Ray Flags'" },
4742        { "kind" : "IdRef", "name" : "'Cull Mask'" },
4743        { "kind" : "IdRef", "name" : "'SBT Offset'" },
4744        { "kind" : "IdRef", "name" : "'SBT Stride'" },
4745        { "kind" : "IdRef", "name" : "'Miss Index'" },
4746        { "kind" : "IdRef", "name" : "'Ray Origin'" },
4747        { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4748        { "kind" : "IdRef", "name" : "'Ray Direction'" },
4749        { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4750        { "kind" : "IdRef", "name" : "'PayloadId'" }
4751      ],
4752      "capabilities" : [ "RayTracingNV" ],
4753      "extensions" : [ "SPV_NV_ray_tracing" ],
4754      "version" : "None"
4755    },
4756    {
4757      "opname" : "OpTypeAccelerationStructureNV",
4758      "class"  : "Reserved",
4759      "opcode" : 5341,
4760      "operands" : [
4761        { "kind" : "IdResult" }
4762      ],
4763      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
4764      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4765      "version" : "None"
4766    },
4767    {
4768      "opname" : "OpTypeAccelerationStructureKHR",
4769      "class"  : "Reserved",
4770      "opcode" : 5341,
4771      "operands" : [
4772        { "kind" : "IdResult" }
4773      ],
4774      "capabilities" : [ "RayTracingNV" , "RayTracingKHR", "RayQueryKHR" ],
4775      "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4776      "version" : "None"
4777    },
4778    {
4779      "opname" : "OpExecuteCallableNV",
4780      "class"  : "Reserved",
4781      "opcode" : 5344,
4782      "operands" : [
4783
4784        { "kind" : "IdRef", "name" : "'SBT Index'" },
4785        { "kind" : "IdRef", "name" : "'Callable DataId'" }
4786      ],
4787      "capabilities" : [ "RayTracingNV" ],
4788      "extensions" : [ "SPV_NV_ray_tracing" ],
4789      "version" : "None"
4790    },
4791    {
4792      "opname" : "OpTypeCooperativeMatrixNV",
4793      "class"  : "Reserved",
4794      "opcode" : 5358,
4795      "operands" : [
4796        { "kind" : "IdResult" },
4797        { "kind" : "IdRef",        "name" : "'Component Type'" },
4798        { "kind" : "IdScope",      "name" : "'Execution'" },
4799        { "kind" : "IdRef",        "name" : "'Rows'" },
4800        { "kind" : "IdRef",        "name" : "'Columns'" }
4801      ],
4802      "capabilities" : [ "CooperativeMatrixNV" ],
4803      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4804      "version" : "None"
4805    },
4806    {
4807      "opname" : "OpCooperativeMatrixLoadNV",
4808      "class"  : "Reserved",
4809      "opcode" : 5359,
4810      "operands" : [
4811        { "kind" : "IdResultType" },
4812        { "kind" : "IdResult" },
4813        { "kind" : "IdRef",             "name" : "'Pointer'" },
4814        { "kind" : "IdRef",             "name" : "'Stride'" },
4815        { "kind" : "IdRef",             "name" : "'Column Major'" },
4816        { "kind" : "MemoryAccess",      "quantifier" : "?" }
4817      ],
4818      "capabilities" : [ "CooperativeMatrixNV" ],
4819      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4820      "version" : "None"
4821    },
4822    {
4823      "opname" : "OpCooperativeMatrixStoreNV",
4824      "class"  : "Reserved",
4825      "opcode" : 5360,
4826      "operands" : [
4827        { "kind" : "IdRef",             "name" : "'Pointer'" },
4828        { "kind" : "IdRef",             "name" : "'Object'" },
4829        { "kind" : "IdRef",             "name" : "'Stride'" },
4830        { "kind" : "IdRef",             "name" : "'Column Major'" },
4831        { "kind" : "MemoryAccess",      "quantifier" : "?" }
4832      ],
4833      "capabilities" : [ "CooperativeMatrixNV" ],
4834      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4835      "version" : "None"
4836    },
4837    {
4838      "opname" : "OpCooperativeMatrixMulAddNV",
4839      "class"  : "Reserved",
4840      "opcode" : 5361,
4841      "operands" : [
4842        { "kind" : "IdResultType" },
4843        { "kind" : "IdResult" },
4844        { "kind" : "IdRef",             "name" : "'A'" },
4845        { "kind" : "IdRef",             "name" : "'B'" },
4846        { "kind" : "IdRef",             "name" : "'C'" }
4847      ],
4848      "capabilities" : [ "CooperativeMatrixNV" ],
4849      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4850      "version" : "None"
4851    },
4852    {
4853      "opname" : "OpCooperativeMatrixLengthNV",
4854      "class"  : "Reserved",
4855      "opcode" : 5362,
4856      "operands" : [
4857        { "kind" : "IdResultType" },
4858        { "kind" : "IdResult" },
4859        { "kind" : "IdRef",        "name" : "'Type'" }
4860      ],
4861      "capabilities" : [ "CooperativeMatrixNV" ],
4862      "extensions" : [ "SPV_NV_cooperative_matrix" ],
4863      "version" : "None"
4864    },
4865    {
4866      "opname" : "OpBeginInvocationInterlockEXT",
4867      "class"  : "Reserved",
4868      "opcode" : 5364,
4869      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
4870      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
4871      "version" : "None"
4872    },
4873    {
4874      "opname" : "OpEndInvocationInterlockEXT",
4875      "class"  : "Reserved",
4876      "opcode" : 5365,
4877      "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
4878      "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
4879      "version" : "None"
4880    },
4881    {
4882      "opname" : "OpDemoteToHelperInvocationEXT",
4883      "class"  : "Reserved",
4884      "opcode" : 5380,
4885      "capabilities" : [ "DemoteToHelperInvocationEXT" ],
4886      "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
4887      "version" : "None"
4888    },
4889    {
4890      "opname" : "OpIsHelperInvocationEXT",
4891      "class"  : "Reserved",
4892      "opcode" : 5381,
4893      "operands" : [
4894        { "kind" : "IdResultType" },
4895        { "kind" : "IdResult" }
4896      ],
4897      "capabilities" : [ "DemoteToHelperInvocationEXT" ],
4898      "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
4899      "version" : "None"
4900    },
4901    {
4902      "opname" : "OpSubgroupShuffleINTEL",
4903      "class"  : "Group",
4904      "opcode" : 5571,
4905      "operands" : [
4906        { "kind" : "IdResultType" },
4907        { "kind" : "IdResult" },
4908        { "kind" : "IdRef", "name" : "'Data'" },
4909        { "kind" : "IdRef", "name" : "'InvocationId'" }
4910      ],
4911      "capabilities" : [ "SubgroupShuffleINTEL" ],
4912      "version" : "None"
4913    },
4914    {
4915      "opname" : "OpSubgroupShuffleDownINTEL",
4916      "class"  : "Group",
4917      "opcode" : 5572,
4918      "operands" : [
4919        { "kind" : "IdResultType" },
4920        { "kind" : "IdResult" },
4921        { "kind" : "IdRef", "name" : "'Current'" },
4922        { "kind" : "IdRef", "name" : "'Next'" },
4923        { "kind" : "IdRef", "name" : "'Delta'" }
4924      ],
4925      "capabilities" : [ "SubgroupShuffleINTEL" ],
4926      "version" : "None"
4927    },
4928    {
4929      "opname" : "OpSubgroupShuffleUpINTEL",
4930      "class"  : "Group",
4931      "opcode" : 5573,
4932      "operands" : [
4933        { "kind" : "IdResultType" },
4934        { "kind" : "IdResult" },
4935        { "kind" : "IdRef", "name" : "'Previous'" },
4936        { "kind" : "IdRef", "name" : "'Current'" },
4937        { "kind" : "IdRef", "name" : "'Delta'" }
4938      ],
4939      "capabilities" : [ "SubgroupShuffleINTEL" ],
4940      "version" : "None"
4941    },
4942    {
4943      "opname" : "OpSubgroupShuffleXorINTEL",
4944      "class"  : "Group",
4945      "opcode" : 5574,
4946      "operands" : [
4947        { "kind" : "IdResultType" },
4948        { "kind" : "IdResult" },
4949        { "kind" : "IdRef", "name" : "'Data'" },
4950        { "kind" : "IdRef", "name" : "'Value'" }
4951      ],
4952      "capabilities" : [ "SubgroupShuffleINTEL" ],
4953      "version" : "None"
4954    },
4955    {
4956      "opname" : "OpSubgroupBlockReadINTEL",
4957      "class"  : "Group",
4958      "opcode" : 5575,
4959      "operands" : [
4960        { "kind" : "IdResultType" },
4961        { "kind" : "IdResult" },
4962        { "kind" : "IdRef", "name" : "'Ptr'" }
4963      ],
4964      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4965      "version" : "None"
4966    },
4967    {
4968      "opname" : "OpSubgroupBlockWriteINTEL",
4969      "class"  : "Group",
4970      "opcode" : 5576,
4971      "operands" : [
4972        { "kind" : "IdRef", "name" : "'Ptr'" },
4973        { "kind" : "IdRef", "name" : "'Data'" }
4974      ],
4975      "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4976      "version" : "None"
4977    },
4978    {
4979      "opname" : "OpSubgroupImageBlockReadINTEL",
4980      "class"  : "Group",
4981      "opcode" : 5577,
4982      "operands" : [
4983        { "kind" : "IdResultType" },
4984        { "kind" : "IdResult" },
4985        { "kind" : "IdRef", "name" : "'Image'" },
4986        { "kind" : "IdRef", "name" : "'Coordinate'" }
4987      ],
4988      "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4989      "version" : "None"
4990    },
4991    {
4992      "opname" : "OpSubgroupImageBlockWriteINTEL",
4993      "class"  : "Group",
4994      "opcode" : 5578,
4995      "operands" : [
4996        { "kind" : "IdRef", "name" : "'Image'" },
4997        { "kind" : "IdRef", "name" : "'Coordinate'" },
4998        { "kind" : "IdRef", "name" : "'Data'" }
4999      ],
5000      "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
5001      "version" : "None"
5002    },
5003    {
5004      "opname" : "OpSubgroupImageMediaBlockReadINTEL",
5005      "class"  : "Group",
5006      "opcode" : 5580,
5007      "operands" : [
5008        { "kind" : "IdResultType" },
5009        { "kind" : "IdResult" },
5010        { "kind" : "IdRef", "name" : "'Image'" },
5011        { "kind" : "IdRef", "name" : "'Coordinate'" },
5012        { "kind" : "IdRef", "name" : "'Width'" },
5013        { "kind" : "IdRef", "name" : "'Height'" }
5014      ],
5015      "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
5016      "version" : "None"
5017    },
5018    {
5019      "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
5020      "class"  : "Group",
5021      "opcode" : 5581,
5022      "operands" : [
5023        { "kind" : "IdRef", "name" : "'Image'" },
5024        { "kind" : "IdRef", "name" : "'Coordinate'" },
5025        { "kind" : "IdRef", "name" : "'Width'" },
5026        { "kind" : "IdRef", "name" : "'Height'" },
5027        { "kind" : "IdRef", "name" : "'Data'" }
5028      ],
5029      "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
5030      "version" : "None"
5031    },
5032    {
5033      "opname" : "OpUCountLeadingZerosINTEL",
5034      "class"  : "Reserved",
5035      "opcode" : 5585,
5036      "operands" : [
5037        { "kind" : "IdResultType" },
5038        { "kind" : "IdResult" },
5039        { "kind" : "IdRef",        "name" : "'Operand'" }
5040      ],
5041      "capabilities" : [ "IntegerFunctions2INTEL" ],
5042      "version" : "None"
5043    },
5044    {
5045      "opname" : "OpUCountTrailingZerosINTEL",
5046      "class"  : "Reserved",
5047      "opcode" : 5586,
5048      "operands" : [
5049        { "kind" : "IdResultType" },
5050        { "kind" : "IdResult" },
5051        { "kind" : "IdRef",        "name" : "'Operand'" }
5052      ],
5053      "capabilities" : [ "IntegerFunctions2INTEL" ],
5054      "version" : "None"
5055    },
5056    {
5057      "opname" : "OpAbsISubINTEL",
5058      "class"  : "Reserved",
5059      "opcode" : 5587,
5060      "operands" : [
5061        { "kind" : "IdResultType" },
5062        { "kind" : "IdResult" },
5063        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5064        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5065      ],
5066      "capabilities" : [ "IntegerFunctions2INTEL" ],
5067      "version" : "None"
5068    },
5069    {
5070      "opname" : "OpAbsUSubINTEL",
5071      "class"  : "Reserved",
5072      "opcode" : 5588,
5073      "operands" : [
5074        { "kind" : "IdResultType" },
5075        { "kind" : "IdResult" },
5076        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5077        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5078      ],
5079      "capabilities" : [ "IntegerFunctions2INTEL" ],
5080      "version" : "None"
5081    },
5082    {
5083      "opname" : "OpIAddSatINTEL",
5084      "class"  : "Reserved",
5085      "opcode" : 5589,
5086      "operands" : [
5087        { "kind" : "IdResultType" },
5088        { "kind" : "IdResult" },
5089        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5090        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5091      ],
5092      "capabilities" : [ "IntegerFunctions2INTEL" ],
5093      "version" : "None"
5094    },
5095    {
5096      "opname" : "OpUAddSatINTEL",
5097      "class"  : "Reserved",
5098      "opcode" : 5590,
5099      "operands" : [
5100        { "kind" : "IdResultType" },
5101        { "kind" : "IdResult" },
5102        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5103        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5104      ],
5105      "capabilities" : [ "IntegerFunctions2INTEL" ],
5106      "version" : "None"
5107    },
5108    {
5109      "opname" : "OpIAverageINTEL",
5110      "class"  : "Reserved",
5111      "opcode" : 5591,
5112      "operands" : [
5113        { "kind" : "IdResultType" },
5114        { "kind" : "IdResult" },
5115        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5116        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5117      ],
5118      "capabilities" : [ "IntegerFunctions2INTEL" ],
5119      "version" : "None"
5120    },
5121    {
5122      "opname" : "OpUAverageINTEL",
5123      "class"  : "Reserved",
5124      "opcode" : 5592,
5125      "operands" : [
5126        { "kind" : "IdResultType" },
5127        { "kind" : "IdResult" },
5128        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5129        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5130      ],
5131      "capabilities" : [ "IntegerFunctions2INTEL" ],
5132      "version" : "None"
5133    },
5134    {
5135      "opname" : "OpIAverageRoundedINTEL",
5136      "class"  : "Reserved",
5137      "opcode" : 5593,
5138      "operands" : [
5139        { "kind" : "IdResultType" },
5140        { "kind" : "IdResult" },
5141        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5142        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5143      ],
5144      "capabilities" : [ "IntegerFunctions2INTEL" ],
5145      "version" : "None"
5146    },
5147    {
5148      "opname" : "OpUAverageRoundedINTEL",
5149      "class"  : "Reserved",
5150      "opcode" : 5594,
5151      "operands" : [
5152        { "kind" : "IdResultType" },
5153        { "kind" : "IdResult" },
5154        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5155        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5156      ],
5157      "capabilities" : [ "IntegerFunctions2INTEL" ],
5158      "version" : "None"
5159    },
5160    {
5161      "opname" : "OpISubSatINTEL",
5162      "class"  : "Reserved",
5163      "opcode" : 5595,
5164      "operands" : [
5165        { "kind" : "IdResultType" },
5166        { "kind" : "IdResult" },
5167        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5168        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5169      ],
5170      "capabilities" : [ "IntegerFunctions2INTEL" ],
5171      "version" : "None"
5172    },
5173    {
5174      "opname" : "OpUSubSatINTEL",
5175      "class"  : "Reserved",
5176      "opcode" : 5596,
5177      "operands" : [
5178        { "kind" : "IdResultType" },
5179        { "kind" : "IdResult" },
5180        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5181        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5182      ],
5183      "capabilities" : [ "IntegerFunctions2INTEL" ],
5184      "version" : "None"
5185    },
5186    {
5187      "opname" : "OpIMul32x16INTEL",
5188      "class"  : "Reserved",
5189      "opcode" : 5597,
5190      "operands" : [
5191        { "kind" : "IdResultType" },
5192        { "kind" : "IdResult" },
5193        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5194        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5195      ],
5196      "capabilities" : [ "IntegerFunctions2INTEL" ],
5197      "version" : "None"
5198    },
5199    {
5200      "opname" : "OpUMul32x16INTEL",
5201      "class"  : "Reserved",
5202      "opcode" : 5598,
5203      "operands" : [
5204        { "kind" : "IdResultType" },
5205        { "kind" : "IdResult" },
5206        { "kind" : "IdRef",        "name" : "'Operand 1'" },
5207        { "kind" : "IdRef",        "name" : "'Operand 2'" }
5208      ],
5209      "capabilities" : [ "IntegerFunctions2INTEL" ],
5210      "version" : "None"
5211    },
5212    {
5213      "opname" : "OpConstFunctionPointerINTEL",
5214      "class"  : "@exclude",
5215      "opcode" : 5600,
5216      "operands" : [
5217        { "kind" : "IdResultType" },
5218        { "kind" : "IdResult" },
5219        { "kind" : "IdRef",        "name" : "'Function'" }
5220      ],
5221      "capabilities" : [ "FunctionPointersINTEL" ],
5222      "extensions" : [ "SPV_INTEL_function_pointers" ],
5223      "version" : "None"
5224    },
5225    {
5226      "opname" : "OpFunctionPointerCallINTEL",
5227      "class"  : "@exclude",
5228      "opcode" : 5601,
5229      "operands" : [
5230        { "kind" : "IdResultType" },
5231        { "kind" : "IdResult" },
5232        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1'" }
5233      ],
5234      "capabilities" : [ "FunctionPointersINTEL" ],
5235      "extensions" : [ "SPV_INTEL_function_pointers" ],
5236      "version" : "None"
5237    },
5238    {
5239      "opname" : "OpAsmTargetINTEL",
5240      "class"  : "@exclude",
5241      "opcode" : 5609,
5242      "operands" : [
5243        { "kind" : "IdResultType" },
5244        { "kind" : "IdResult" },
5245        { "kind" : "LiteralString", "name" : "'Asm target'" }
5246      ],
5247      "capabilities" : [ "AsmINTEL" ],
5248      "version" : "None"
5249    },
5250    {
5251      "opname" : "OpAsmINTEL",
5252      "class"  : "@exclude",
5253      "opcode" : 5610,
5254      "operands" : [
5255        { "kind" : "IdResultType" },
5256        { "kind" : "IdResult" },
5257        { "kind" : "IdRef", "name" : "'Asm type'" },
5258        { "kind" : "IdRef", "name" : "'Target'" },
5259        { "kind" : "LiteralString", "name" : "'Asm instructions'" },
5260        { "kind" : "LiteralString", "name" : "'Constraints'" }
5261      ],
5262      "capabilities" : [ "AsmINTEL" ],
5263      "version" : "None"
5264    },
5265    {
5266      "opname" : "OpAsmCallINTEL",
5267      "class"  : "@exclude",
5268      "opcode" : 5611,
5269      "operands" : [
5270        { "kind" : "IdResultType" },
5271        { "kind" : "IdResult" },
5272        { "kind" : "IdRef", "name" : "'Asm'" },
5273        { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0'" }
5274      ],
5275      "capabilities" : [ "AsmINTEL" ],
5276      "version" : "None"
5277    },
5278    {
5279      "opname" : "OpAtomicFMinEXT",
5280      "class"  : "Atomic",
5281      "opcode" : 5614,
5282      "operands" : [
5283        { "kind" : "IdResultType" },
5284        { "kind" : "IdResult" },
5285        { "kind" : "IdRef",             "name" : "'Pointer'" },
5286        { "kind" : "IdScope",           "name" : "'Memory'" },
5287        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
5288        { "kind" : "IdRef",             "name" : "'Value'" }
5289      ],
5290      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ],
5291      "version" : "None"
5292    },
5293    {
5294      "opname" : "OpAtomicFMaxEXT",
5295      "class"  : "Atomic",
5296      "opcode" : 5615,
5297      "operands" : [
5298        { "kind" : "IdResultType" },
5299        { "kind" : "IdResult" },
5300        { "kind" : "IdRef",             "name" : "'Pointer'" },
5301        { "kind" : "IdScope",           "name" : "'Memory'" },
5302        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
5303        { "kind" : "IdRef",             "name" : "'Value'" }
5304      ],
5305      "capabilities" : [ "AtomicFloat16MinMaxEXT", "AtomicFloat32MinMaxEXT", "AtomicFloat64MinMaxEXT" ],
5306      "version" : "None"
5307    },
5308    {
5309      "opname" : "OpAssumeTrueKHR",
5310      "class"  : "Miscellaneous",
5311      "opcode" : 5630,
5312      "operands" : [
5313        { "kind" : "IdRef", "name" : "'Condition'" }
5314      ],
5315      "capabilities" : [ "ExpectAssumeKHR" ],
5316      "extensions" : [ "SPV_KHR_expect_assume" ],
5317      "version" : "None"
5318    },
5319    {
5320      "opname" : "OpExpectKHR",
5321      "class"  : "Miscellaneous",
5322      "opcode" : 5631,
5323      "operands" : [
5324        { "kind" : "IdResultType" },
5325        { "kind" : "IdResult" },
5326        { "kind" : "IdRef", "name" : "'Value'" },
5327        { "kind" : "IdRef", "name" : "'ExpectedValue'" }
5328      ],
5329      "capabilities" : [ "ExpectAssumeKHR" ],
5330      "extensions" : [ "SPV_KHR_expect_assume" ],
5331      "version" : "None"
5332    },
5333    {
5334      "opname" : "OpDecorateString",
5335      "class"  : "Annotation",
5336      "opcode" : 5632,
5337      "operands" : [
5338        { "kind" : "IdRef",         "name" : "'Target'" },
5339        { "kind" : "Decoration" }
5340      ],
5341      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5342      "version" : "1.4"
5343    },
5344    {
5345      "opname" : "OpDecorateStringGOOGLE",
5346      "class"  : "Annotation",
5347      "opcode" : 5632,
5348      "operands" : [
5349        { "kind" : "IdRef",         "name" : "'Target'" },
5350        { "kind" : "Decoration" }
5351      ],
5352      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5353      "version" : "1.4"
5354    },
5355    {
5356      "opname" : "OpMemberDecorateString",
5357      "class"  : "Annotation",
5358      "opcode" : 5633,
5359      "operands" : [
5360        { "kind" : "IdRef",          "name" : "'Struct Type'" },
5361        { "kind" : "LiteralInteger", "name" : "'Member'" },
5362        { "kind" : "Decoration" }
5363      ],
5364      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5365      "version" : "1.4"
5366    },
5367    {
5368      "opname" : "OpMemberDecorateStringGOOGLE",
5369      "class"  : "Annotation",
5370      "opcode" : 5633,
5371      "operands" : [
5372        { "kind" : "IdRef",          "name" : "'Struct Type'" },
5373        { "kind" : "LiteralInteger", "name" : "'Member'" },
5374        { "kind" : "Decoration" }
5375      ],
5376      "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5377      "version" : "1.4"
5378    },
5379    {
5380      "opname" : "OpVmeImageINTEL",
5381      "class"  : "@exclude",
5382      "opcode" : 5699,
5383      "operands" : [
5384        { "kind" : "IdResultType" },
5385        { "kind" : "IdResult" },
5386        { "kind" : "IdRef", "name" : "'Image Type'" },
5387        { "kind" : "IdRef", "name" : "'Sampler'" }
5388      ],
5389      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5390      "version" : "None"
5391    },
5392    {
5393      "opname" : "OpTypeVmeImageINTEL",
5394      "class"  : "@exclude",
5395      "opcode" : 5700,
5396      "operands" : [
5397        { "kind" : "IdResult" },
5398        { "kind" : "IdRef", "name" : "'Image Type'" }
5399      ],
5400      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5401      "version" : "None"
5402    },
5403    {
5404      "opname" : "OpTypeAvcImePayloadINTEL",
5405      "class"  : "@exclude",
5406      "opcode" : 5701,
5407      "operands" : [
5408        { "kind" : "IdResult" }
5409      ],
5410      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5411      "version" : "None"
5412    },
5413    {
5414      "opname" : "OpTypeAvcRefPayloadINTEL",
5415      "class"  : "@exclude",
5416      "opcode" : 5702,
5417      "operands" : [
5418        { "kind" : "IdResult" }
5419      ],
5420      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5421      "version" : "None"
5422    },
5423    {
5424      "opname" : "OpTypeAvcSicPayloadINTEL",
5425      "class"  : "@exclude",
5426      "opcode" : 5703,
5427      "operands" : [
5428        { "kind" : "IdResult" }
5429      ],
5430      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5431      "version" : "None"
5432    },
5433    {
5434      "opname" : "OpTypeAvcMcePayloadINTEL",
5435      "class"  : "@exclude",
5436      "opcode" : 5704,
5437      "operands" : [
5438        { "kind" : "IdResult" }
5439      ],
5440      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5441      "version" : "None"
5442    },
5443    {
5444      "opname" : "OpTypeAvcMceResultINTEL",
5445      "class"  : "@exclude",
5446      "opcode" : 5705,
5447      "operands" : [
5448        { "kind" : "IdResult" }
5449      ],
5450      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5451      "version" : "None"
5452    },
5453    {
5454      "opname" : "OpTypeAvcImeResultINTEL",
5455      "class"  : "@exclude",
5456      "opcode" : 5706,
5457      "operands" : [
5458        { "kind" : "IdResult" }
5459      ],
5460      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5461      "version" : "None"
5462    },
5463    {
5464      "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
5465      "class"  : "@exclude",
5466      "opcode" : 5707,
5467      "operands" : [
5468        { "kind" : "IdResult" }
5469      ],
5470      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5471      "version" : "None"
5472    },
5473    {
5474      "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
5475      "class"  : "@exclude",
5476      "opcode" : 5708,
5477      "operands" : [
5478        { "kind" : "IdResult" }
5479      ],
5480      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5481      "version" : "None"
5482    },
5483    {
5484      "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
5485      "class"  : "@exclude",
5486      "opcode" : 5709,
5487      "operands" : [
5488        { "kind" : "IdResult" }
5489      ],
5490      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5491      "version" : "None"
5492    },
5493    {
5494      "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
5495      "class"  : "@exclude",
5496      "opcode" : 5710,
5497      "operands" : [
5498        { "kind" : "IdResult" }
5499      ],
5500      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5501      "version" : "None"
5502    },
5503    {
5504      "opname" : "OpTypeAvcRefResultINTEL",
5505      "class"  : "@exclude",
5506      "opcode" : 5711,
5507      "operands" : [
5508        { "kind" : "IdResult" }
5509      ],
5510      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5511      "version" : "None"
5512    },
5513    {
5514      "opname" : "OpTypeAvcSicResultINTEL",
5515      "class"  : "@exclude",
5516      "opcode" : 5712,
5517      "operands" : [
5518        { "kind" : "IdResult" }
5519      ],
5520      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5521      "version" : "None"
5522    },
5523    {
5524      "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
5525      "class"  : "@exclude",
5526      "opcode" : 5713,
5527      "operands" : [
5528        { "kind" : "IdResultType" },
5529        { "kind" : "IdResult" },
5530        { "kind" : "IdRef", "name" : "'Slice Type'" },
5531        { "kind" : "IdRef", "name" : "'Qp'" }
5532      ],
5533      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5534      "version" : "None"
5535    },
5536    {
5537      "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
5538      "class"  : "@exclude",
5539      "opcode" : 5714,
5540      "operands" : [
5541        { "kind" : "IdResultType" },
5542        { "kind" : "IdResult" },
5543        { "kind" : "IdRef", "name" : "'Reference Base Penalty'" },
5544        { "kind" : "IdRef", "name" : "'Payload'" }
5545      ],
5546      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5547      "version" : "None"
5548    },
5549    {
5550      "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
5551      "class"  : "@exclude",
5552      "opcode" : 5715,
5553      "operands" : [
5554        { "kind" : "IdResultType" },
5555        { "kind" : "IdResult" },
5556        { "kind" : "IdRef", "name" : "'Slice Type'" },
5557        { "kind" : "IdRef", "name" : "'Qp'" }
5558      ],
5559      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5560      "version" : "None"
5561    },
5562    {
5563      "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
5564      "class"  : "@exclude",
5565      "opcode" : 5716,
5566      "operands" : [
5567        { "kind" : "IdResultType" },
5568        { "kind" : "IdResult" },
5569        { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
5570        { "kind" : "IdRef", "name" : "'Payload'" }
5571      ],
5572      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5573      "version" : "None"
5574    },
5575    {
5576      "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
5577      "class"  : "@exclude",
5578      "opcode" : 5717,
5579      "operands" : [
5580        { "kind" : "IdResultType" },
5581        { "kind" : "IdResult" },
5582        { "kind" : "IdRef", "name" : "'Slice Type'" },
5583        { "kind" : "IdRef", "name" : "'Qp'" }
5584      ],
5585      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5586      "version" : "None"
5587    },
5588    {
5589      "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
5590      "class"  : "@exclude",
5591      "opcode" : 5718,
5592      "operands" : [
5593        { "kind" : "IdResultType" },
5594        { "kind" : "IdResult" },
5595        { "kind" : "IdRef", "name" : "'Direction Cost'" },
5596        { "kind" : "IdRef", "name" : "'Payload'" }
5597      ],
5598      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5599      "version" : "None"
5600    },
5601    {
5602      "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
5603      "class"  : "@exclude",
5604      "opcode" : 5719,
5605      "operands" : [
5606        { "kind" : "IdResultType" },
5607        { "kind" : "IdResult" },
5608        { "kind" : "IdRef", "name" : "'Slice Type'" },
5609        { "kind" : "IdRef", "name" : "'Qp'" }
5610      ],
5611      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5612      "version" : "None"
5613    },
5614    {
5615      "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
5616      "class"  : "@exclude",
5617      "opcode" : 5720,
5618      "operands" : [
5619        { "kind" : "IdResultType" },
5620        { "kind" : "IdResult" },
5621        { "kind" : "IdRef", "name" : "'Slice Type'" },
5622        { "kind" : "IdRef", "name" : "'Qp'" }
5623      ],
5624      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5625      "version" : "None"
5626    },
5627    {
5628      "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
5629      "class"  : "@exclude",
5630      "opcode" : 5721,
5631      "operands" : [
5632        { "kind" : "IdResultType" },
5633        { "kind" : "IdResult" }
5634      ],
5635      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5636      "version" : "None"
5637    },
5638    {
5639      "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
5640      "class"  : "@exclude",
5641      "opcode" : 5722,
5642      "operands" : [
5643        { "kind" : "IdResultType" },
5644        { "kind" : "IdResult" }
5645      ],
5646      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5647      "version" : "None"
5648    },
5649    {
5650      "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
5651      "class"  : "@exclude",
5652      "opcode" : 5723,
5653      "operands" : [
5654        { "kind" : "IdResultType" },
5655        { "kind" : "IdResult" }
5656      ],
5657      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5658      "version" : "None"
5659    },
5660    {
5661      "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
5662      "class"  : "@exclude",
5663      "opcode" : 5724,
5664      "operands" : [
5665        { "kind" : "IdResultType" },
5666        { "kind" : "IdResult" },
5667        { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" },
5668        { "kind" : "IdRef", "name" : "'Packed Cost Table'" },
5669        { "kind" : "IdRef", "name" : "'Cost Precision'" },
5670        { "kind" : "IdRef", "name" : "'Payload'" }
5671      ],
5672      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5673      "version" : "None"
5674    },
5675    {
5676      "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
5677      "class"  : "@exclude",
5678      "opcode" : 5725,
5679      "operands" : [
5680        { "kind" : "IdResultType" },
5681        { "kind" : "IdResult" },
5682        { "kind" : "IdRef", "name" : "'Slice Type'" },
5683        { "kind" : "IdRef", "name" : "'Qp'" }
5684      ],
5685      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5686      "version" : "None"
5687    },
5688    {
5689      "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
5690      "class"  : "@exclude",
5691      "opcode" : 5726,
5692      "operands" : [
5693        { "kind" : "IdResultType" },
5694        { "kind" : "IdResult" }
5695      ],
5696      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5697      "version" : "None"
5698    },
5699    {
5700      "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
5701      "class"  : "@exclude",
5702      "opcode" : 5727,
5703      "operands" : [
5704        { "kind" : "IdResultType" },
5705        { "kind" : "IdResult" }
5706      ],
5707      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5708      "version" : "None"
5709    },
5710    {
5711      "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
5712      "class"  : "@exclude",
5713      "opcode" : 5728,
5714      "operands" : [
5715        { "kind" : "IdResultType" },
5716        { "kind" : "IdResult" },
5717        { "kind" : "IdRef", "name" : "'Payload'" }
5718      ],
5719      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5720      "version" : "None"
5721    },
5722    {
5723      "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
5724      "class"  : "@exclude",
5725      "opcode" : 5729,
5726      "operands" : [
5727        { "kind" : "IdResultType" },
5728        { "kind" : "IdResult" },
5729        { "kind" : "IdRef", "name" : "'Source Field Polarity'" },
5730        { "kind" : "IdRef", "name" : "'Payload'" }
5731      ],
5732      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5733      "version" : "None"
5734    },
5735    {
5736      "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
5737      "class"  : "@exclude",
5738      "opcode" : 5730,
5739      "operands" : [
5740        { "kind" : "IdResultType" },
5741        { "kind" : "IdResult" },
5742        { "kind" : "IdRef", "name" : "'Reference Field Polarity'" },
5743        { "kind" : "IdRef", "name" : "'Payload'" }
5744      ],
5745      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5746      "version" : "None"
5747    },
5748    {
5749      "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
5750      "class"  : "@exclude",
5751      "opcode" : 5731,
5752      "operands" : [
5753        { "kind" : "IdResultType" },
5754        { "kind" : "IdResult" },
5755        { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" },
5756        { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" },
5757        { "kind" : "IdRef", "name" : "'Payload'" }
5758      ],
5759      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5760      "version" : "None"
5761    },
5762    {
5763      "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
5764      "class"  : "@exclude",
5765      "opcode" : 5732,
5766      "operands" : [
5767        { "kind" : "IdResultType" },
5768        { "kind" : "IdResult" },
5769        { "kind" : "IdRef", "name" : "'Payload'" }
5770      ],
5771      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5772      "version" : "None"
5773    },
5774    {
5775      "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
5776      "class"  : "@exclude",
5777      "opcode" : 5733,
5778      "operands" : [
5779        { "kind" : "IdResultType" },
5780        { "kind" : "IdResult" },
5781        { "kind" : "IdRef", "name" : "'Payload'" }
5782      ],
5783      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5784      "version" : "None"
5785    },
5786    {
5787      "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
5788      "class"  : "@exclude",
5789      "opcode" : 5734,
5790      "operands" : [
5791        { "kind" : "IdResultType" },
5792        { "kind" : "IdResult" },
5793        { "kind" : "IdRef", "name" : "'Payload'" }
5794      ],
5795      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5796      "version" : "None"
5797    },
5798    {
5799      "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
5800      "class"  : "@exclude",
5801      "opcode" : 5735,
5802      "operands" : [
5803        { "kind" : "IdResultType" },
5804        { "kind" : "IdResult" },
5805        { "kind" : "IdRef", "name" : "'Payload'" }
5806      ],
5807      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5808      "version" : "None"
5809    },
5810    {
5811      "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
5812      "class"  : "@exclude",
5813      "opcode" : 5736,
5814      "operands" : [
5815        { "kind" : "IdResultType" },
5816        { "kind" : "IdResult" },
5817        { "kind" : "IdRef", "name" : "'Payload'" }
5818      ],
5819      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5820      "version" : "None"
5821    },
5822    {
5823      "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
5824      "class"  : "@exclude",
5825      "opcode" : 5737,
5826      "operands" : [
5827        { "kind" : "IdResultType" },
5828        { "kind" : "IdResult" },
5829        { "kind" : "IdRef", "name" : "'Payload'" }
5830      ],
5831      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5832      "version" : "None"
5833    },
5834    {
5835      "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
5836      "class"  : "@exclude",
5837      "opcode" : 5738,
5838      "operands" : [
5839        { "kind" : "IdResultType" },
5840        { "kind" : "IdResult" },
5841        { "kind" : "IdRef", "name" : "'Payload'" }
5842      ],
5843      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5844      "version" : "None"
5845    },
5846    {
5847      "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
5848      "class"  : "@exclude",
5849      "opcode" : 5739,
5850      "operands" : [
5851        { "kind" : "IdResultType" },
5852        { "kind" : "IdResult" },
5853        { "kind" : "IdRef", "name" : "'Payload'" }
5854      ],
5855      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5856      "version" : "None"
5857    },
5858    {
5859      "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
5860      "class"  : "@exclude",
5861      "opcode" : 5740,
5862      "operands" : [
5863        { "kind" : "IdResultType" },
5864        { "kind" : "IdResult" },
5865        { "kind" : "IdRef", "name" : "'Payload'" }
5866      ],
5867      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5868      "version" : "None"
5869    },
5870    {
5871      "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
5872      "class"  : "@exclude",
5873      "opcode" : 5741,
5874      "operands" : [
5875        { "kind" : "IdResultType" },
5876        { "kind" : "IdResult" },
5877        { "kind" : "IdRef", "name" : "'Payload'" }
5878      ],
5879      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5880      "version" : "None"
5881    },
5882    {
5883      "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
5884      "class"  : "@exclude",
5885      "opcode" : 5742,
5886      "operands" : [
5887        { "kind" : "IdResultType" },
5888        { "kind" : "IdResult" },
5889        { "kind" : "IdRef", "name" : "'Payload'" }
5890      ],
5891      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5892      "version" : "None"
5893    },
5894    {
5895      "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
5896      "class"  : "@exclude",
5897      "opcode" : 5743,
5898      "operands" : [
5899        { "kind" : "IdResultType" },
5900        { "kind" : "IdResult" },
5901        { "kind" : "IdRef", "name" : "'Payload'" }
5902      ],
5903      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5904      "version" : "None"
5905    },
5906    {
5907      "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
5908      "class"  : "@exclude",
5909      "opcode" : 5744,
5910      "operands" : [
5911        { "kind" : "IdResultType" },
5912        { "kind" : "IdResult" },
5913        { "kind" : "IdRef", "name" : "'Payload'" }
5914      ],
5915      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5916      "version" : "None"
5917    },
5918    {
5919      "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
5920      "class"  : "@exclude",
5921      "opcode" : 5745,
5922      "operands" : [
5923        { "kind" : "IdResultType" },
5924        { "kind" : "IdResult" },
5925        { "kind" : "IdRef", "name" : "'Payload'" }
5926      ],
5927      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5928      "version" : "None"
5929    },
5930    {
5931      "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
5932      "class"  : "@exclude",
5933      "opcode" : 5746,
5934      "operands" : [
5935        { "kind" : "IdResultType" },
5936        { "kind" : "IdResult" },
5937        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5938        { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" },
5939        { "kind" : "IdRef", "name" : "'Payload'" }
5940      ],
5941      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5942      "version" : "None"
5943    },
5944    {
5945      "opname" : "OpSubgroupAvcImeInitializeINTEL",
5946      "class"  : "@exclude",
5947      "opcode" : 5747,
5948      "operands" : [
5949        { "kind" : "IdResultType" },
5950        { "kind" : "IdResult" },
5951        { "kind" : "IdRef", "name" : "'Src Coord'" },
5952        { "kind" : "IdRef", "name" : "'Partition Mask'" },
5953        { "kind" : "IdRef", "name" : "'SAD Adjustment'" }
5954      ],
5955      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5956      "version" : "None"
5957    },
5958    {
5959      "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
5960      "class"  : "@exclude",
5961      "opcode" : 5748,
5962      "operands" : [
5963        { "kind" : "IdResultType" },
5964        { "kind" : "IdResult" },
5965        { "kind" : "IdRef", "name" : "'Ref Offset'" },
5966        { "kind" : "IdRef", "name" : "'Search Window Config'" },
5967        { "kind" : "IdRef", "name" : "'Payload'" }
5968      ],
5969      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5970      "version" : "None"
5971    },
5972    {
5973      "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
5974      "class"  : "@exclude",
5975      "opcode" : 5749,
5976      "operands" : [
5977        { "kind" : "IdResultType" },
5978        { "kind" : "IdResult" },
5979        { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" },
5980        { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" },
5981        { "kind" : "IdRef", "name" : "'id> Search Window Config'" },
5982        { "kind" : "IdRef", "name" : "'Payload'" }
5983      ],
5984      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5985      "version" : "None"
5986    },
5987    {
5988      "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
5989      "class"  : "@exclude",
5990      "opcode" : 5750,
5991      "operands" : [
5992        { "kind" : "IdResultType" },
5993        { "kind" : "IdResult" },
5994        { "kind" : "IdRef", "name" : "'Search Window Config'" },
5995        { "kind" : "IdRef", "name" : "'Dual Ref'" }
5996      ],
5997      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5998      "version" : "None"
5999    },
6000    {
6001      "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
6002      "class"  : "@exclude",
6003      "opcode" : 5751,
6004      "operands" : [
6005        { "kind" : "IdResultType" },
6006        { "kind" : "IdResult" },
6007        { "kind" : "IdRef", "name" : "'Ref Offset'" },
6008        { "kind" : "IdRef", "name" : "'Src Coord'" },
6009        { "kind" : "IdRef", "name" : "'Ref Window Size'" },
6010        { "kind" : "IdRef", "name" : "'Image Size'" }
6011      ],
6012      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6013      "version" : "None"
6014    },
6015    {
6016      "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
6017      "class"  : "@exclude",
6018      "opcode" : 5752,
6019      "operands" : [
6020        { "kind" : "IdResultType" },
6021        { "kind" : "IdResult" },
6022        { "kind" : "IdRef", "name" : "'Payload'" }
6023      ],
6024      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6025      "version" : "None"
6026    },
6027    {
6028      "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
6029      "class"  : "@exclude",
6030      "opcode" : 5753,
6031      "operands" : [
6032        { "kind" : "IdResultType" },
6033        { "kind" : "IdResult" },
6034        { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" },
6035        { "kind" : "IdRef", "name" : "'Payload'" }
6036      ],
6037      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6038      "version" : "None"
6039    },
6040    {
6041      "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
6042      "class"  : "@exclude",
6043      "opcode" : 5754,
6044      "operands" : [
6045        { "kind" : "IdResultType" },
6046        { "kind" : "IdResult" },
6047        { "kind" : "IdRef", "name" : "'Payload'" }
6048      ],
6049      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6050      "version" : "None"
6051    },
6052    {
6053      "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
6054      "class"  : "@exclude",
6055      "opcode" : 5755,
6056      "operands" : [
6057        { "kind" : "IdResultType" },
6058        { "kind" : "IdResult" },
6059        { "kind" : "IdRef", "name" : "'Threshold'" },
6060        { "kind" : "IdRef", "name" : "'Payload'" }
6061      ],
6062      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6063      "version" : "None"
6064    },
6065    {
6066      "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
6067      "class"  : "@exclude",
6068      "opcode" : 5756,
6069      "operands" : [
6070        { "kind" : "IdResultType" },
6071        { "kind" : "IdResult" },
6072        { "kind" : "IdRef", "name" : "'Packed Sad Weights'" },
6073        { "kind" : "IdRef", "name" : "'Payload'" }
6074      ],
6075      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6076      "version" : "None"
6077    },
6078    {
6079      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
6080      "class"  : "@exclude",
6081      "opcode" : 5757,
6082      "operands" : [
6083        { "kind" : "IdResultType" },
6084        { "kind" : "IdResult" },
6085        { "kind" : "IdRef", "name" : "'Src Image'" },
6086        { "kind" : "IdRef", "name" : "'Ref Image'" },
6087        { "kind" : "IdRef", "name" : "'Payload'" }
6088      ],
6089      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6090      "version" : "None"
6091    },
6092    {
6093      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
6094      "class"  : "@exclude",
6095      "opcode" : 5758,
6096      "operands" : [
6097        { "kind" : "IdResultType" },
6098        { "kind" : "IdResult" },
6099        { "kind" : "IdRef", "name" : "'Src Image'" },
6100        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6101        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6102        { "kind" : "IdRef", "name" : "'Payload'" }
6103      ],
6104      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6105      "version" : "None"
6106    },
6107    {
6108      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
6109      "class"  : "@exclude",
6110      "opcode" : 5759,
6111      "operands" : [
6112        { "kind" : "IdResultType" },
6113        { "kind" : "IdResult" },
6114        { "kind" : "IdRef", "name" : "'Src Image'" },
6115        { "kind" : "IdRef", "name" : "'Ref Image'" },
6116        { "kind" : "IdRef", "name" : "'Payload'" },
6117        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6118      ],
6119      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6120      "version" : "None"
6121    },
6122    {
6123      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
6124      "class"  : "@exclude",
6125      "opcode" : 5760,
6126      "operands" : [
6127        { "kind" : "IdResultType" },
6128        { "kind" : "IdResult" },
6129        { "kind" : "IdRef", "name" : "'Src Image'" },
6130        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6131        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6132        { "kind" : "IdRef", "name" : "'Payload'" },
6133        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6134      ],
6135      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6136      "version" : "None"
6137    },
6138    {
6139      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
6140      "class"  : "@exclude",
6141      "opcode" : 5761,
6142      "operands" : [
6143        { "kind" : "IdResultType" },
6144        { "kind" : "IdResult" },
6145        { "kind" : "IdRef", "name" : "'Src Image'" },
6146        { "kind" : "IdRef", "name" : "'Ref Image'" },
6147        { "kind" : "IdRef", "name" : "'Payload'" }
6148      ],
6149      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6150      "version" : "None"
6151    },
6152    {
6153      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
6154      "class"  : "@exclude",
6155      "opcode" : 5762,
6156      "operands" : [
6157        { "kind" : "IdResultType" },
6158        { "kind" : "IdResult" },
6159        { "kind" : "IdRef", "name" : "'Src Image'" },
6160        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6161        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6162        { "kind" : "IdRef", "name" : "'Payload'" }
6163      ],
6164      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6165      "version" : "None"
6166    },
6167    {
6168      "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
6169      "class"  : "@exclude",
6170      "opcode" : 5763,
6171      "operands" : [
6172        { "kind" : "IdResultType" },
6173        { "kind" : "IdResult" },
6174        { "kind" : "IdRef", "name" : "'Src Image'" },
6175        { "kind" : "IdRef", "name" : "'Ref Image'" },
6176        { "kind" : "IdRef", "name" : "'Payload'" },
6177        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6178      ],
6179      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6180      "version" : "None"
6181    },
6182    {
6183      "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
6184      "class"  : "@exclude",
6185      "opcode" : 5764,
6186      "operands" : [
6187        { "kind" : "IdResultType" },
6188        { "kind" : "IdResult" },
6189        { "kind" : "IdRef", "name" : "'Src Image'" },
6190        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6191        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6192        { "kind" : "IdRef", "name" : "'Payload'" },
6193        { "kind" : "IdRef", "name" : "'Streamin Components'" }
6194      ],
6195      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6196      "version" : "None"
6197    },
6198    {
6199      "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
6200      "class"  : "@exclude",
6201      "opcode" : 5765,
6202      "operands" : [
6203        { "kind" : "IdResultType" },
6204        { "kind" : "IdResult" },
6205        { "kind" : "IdRef", "name" : "'Payload'" }
6206      ],
6207      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6208      "version" : "None"
6209    },
6210    {
6211      "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
6212      "class"  : "@exclude",
6213      "opcode" : 5766,
6214      "operands" : [
6215        { "kind" : "IdResultType" },
6216        { "kind" : "IdResult" },
6217        { "kind" : "IdRef", "name" : "'Payload'" }
6218      ],
6219      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6220      "version" : "None"
6221    },
6222    {
6223      "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
6224      "class"  : "@exclude",
6225      "opcode" : 5767,
6226      "operands" : [
6227        { "kind" : "IdResultType" },
6228        { "kind" : "IdResult" },
6229        { "kind" : "IdRef", "name" : "'Payload'" }
6230      ],
6231      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6232      "version" : "None"
6233    },
6234    {
6235      "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
6236      "class"  : "@exclude",
6237      "opcode" : 5768,
6238      "operands" : [
6239        { "kind" : "IdResultType" },
6240        { "kind" : "IdResult" },
6241        { "kind" : "IdRef", "name" : "'Payload'" }
6242      ],
6243      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6244      "version" : "None"
6245    },
6246    {
6247      "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
6248      "class"  : "@exclude",
6249      "opcode" : 5769,
6250      "operands" : [
6251        { "kind" : "IdResultType" },
6252        { "kind" : "IdResult" },
6253        { "kind" : "IdRef", "name" : "'Payload'" }
6254      ],
6255      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6256      "version" : "None"
6257    },
6258    {
6259      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
6260      "class"  : "@exclude",
6261      "opcode" : 5770,
6262      "operands" : [
6263        { "kind" : "IdResultType" },
6264        { "kind" : "IdResult" },
6265        { "kind" : "IdRef", "name" : "'Payload'" },
6266        { "kind" : "IdRef", "name" : "'Major Shape'" }
6267      ],
6268      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6269      "version" : "None"
6270    },
6271    {
6272      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
6273      "class"  : "@exclude",
6274      "opcode" : 5771,
6275      "operands" : [
6276        { "kind" : "IdResultType" },
6277        { "kind" : "IdResult" },
6278        { "kind" : "IdRef", "name" : "'Payload'" },
6279        { "kind" : "IdRef", "name" : "'Major Shape'" }
6280      ],
6281      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6282      "version" : "None"
6283    },
6284    {
6285      "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
6286      "class"  : "@exclude",
6287      "opcode" : 5772,
6288      "operands" : [
6289        { "kind" : "IdResultType" },
6290        { "kind" : "IdResult" },
6291        { "kind" : "IdRef", "name" : "'Payload'" },
6292        { "kind" : "IdRef", "name" : "'Major Shape'" }
6293      ],
6294      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6295      "version" : "None"
6296    },
6297    {
6298      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
6299      "class"  : "@exclude",
6300      "opcode" : 5773,
6301      "operands" : [
6302        { "kind" : "IdResultType" },
6303        { "kind" : "IdResult" },
6304        { "kind" : "IdRef", "name" : "'Payload'" },
6305        { "kind" : "IdRef", "name" : "'Major Shape'" },
6306        { "kind" : "IdRef", "name" : "'Direction'" }
6307      ],
6308      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6309      "version" : "None"
6310    },
6311    {
6312      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
6313      "class"  : "@exclude",
6314      "opcode" : 5774,
6315      "operands" : [
6316        { "kind" : "IdResultType" },
6317        { "kind" : "IdResult" },
6318        { "kind" : "IdRef", "name" : "'Payload'" },
6319        { "kind" : "IdRef", "name" : "'Major Shape'" },
6320        { "kind" : "IdRef", "name" : "'Direction'" }
6321      ],
6322      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6323      "version" : "None"
6324    },
6325    {
6326      "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
6327      "class"  : "@exclude",
6328      "opcode" : 5775,
6329      "operands" : [
6330        { "kind" : "IdResultType" },
6331        { "kind" : "IdResult" },
6332        { "kind" : "IdRef", "name" : "'Payload'" },
6333        { "kind" : "IdRef", "name" : "'Major Shape'" },
6334        { "kind" : "IdRef", "name" : "'Direction'" }
6335      ],
6336      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6337      "version" : "None"
6338    },
6339    {
6340      "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
6341      "class"  : "@exclude",
6342      "opcode" : 5776,
6343      "operands" : [
6344        { "kind" : "IdResultType" },
6345        { "kind" : "IdResult" },
6346        { "kind" : "IdRef", "name" : "'Image Select'" },
6347        { "kind" : "IdRef", "name" : "'Payload'" }
6348      ],
6349      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6350      "version" : "None"
6351    },
6352    {
6353      "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
6354      "class"  : "@exclude",
6355      "opcode" : 5777,
6356      "operands" : [
6357        { "kind" : "IdResultType" },
6358        { "kind" : "IdResult" },
6359        { "kind" : "IdRef", "name" : "'Payload'" }
6360      ],
6361      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6362      "version" : "None"
6363    },
6364    {
6365      "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
6366      "class"  : "@exclude",
6367      "opcode" : 5778,
6368      "operands" : [
6369        { "kind" : "IdResultType" },
6370        { "kind" : "IdResult" },
6371        { "kind" : "IdRef", "name" : "'Payload'" }
6372      ],
6373      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6374      "version" : "None"
6375    },
6376    {
6377      "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
6378      "class"  : "@exclude",
6379      "opcode" : 5779,
6380      "operands" : [
6381        { "kind" : "IdResultType" },
6382        { "kind" : "IdResult" },
6383        { "kind" : "IdRef", "name" : "'Payload'" }
6384      ],
6385      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6386      "version" : "None"
6387    },
6388    {
6389      "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
6390      "class"  : "@exclude",
6391      "opcode" : 5780,
6392      "operands" : [
6393        { "kind" : "IdResultType" },
6394        { "kind" : "IdResult" },
6395        { "kind" : "IdRef", "name" : "'Payload'" }
6396      ],
6397      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6398      "version" : "None"
6399    },
6400    {
6401      "opname" : "OpSubgroupAvcFmeInitializeINTEL",
6402      "class"  : "@exclude",
6403      "opcode" : 5781,
6404      "operands" : [
6405        { "kind" : "IdResultType" },
6406        { "kind" : "IdResult" },
6407        { "kind" : "IdRef", "name" : "'Src Coord'" },
6408        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6409        { "kind" : "IdRef", "name" : "'Major Shapes'" },
6410        { "kind" : "IdRef", "name" : "'Minor Shapes'" },
6411        { "kind" : "IdRef", "name" : "'Direction'" },
6412        { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
6413        { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
6414      ],
6415      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6416      "version" : "None"
6417    },
6418    {
6419      "opname" : "OpSubgroupAvcBmeInitializeINTEL",
6420      "class"  : "@exclude",
6421      "opcode" : 5782,
6422      "operands" : [
6423        { "kind" : "IdResultType" },
6424        { "kind" : "IdResult" },
6425        { "kind" : "IdRef", "name" : "'Src Coord'" },
6426        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6427        { "kind" : "IdRef", "name" : "'Major Shapes'" },
6428        { "kind" : "IdRef", "name" : "'Minor Shapes'" },
6429        { "kind" : "IdRef", "name" : "'Direction'" },
6430        { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
6431        { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
6432        { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
6433      ],
6434      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6435      "version" : "None"
6436    },
6437    {
6438      "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
6439      "class"  : "@exclude",
6440      "opcode" : 5783,
6441      "operands" : [
6442        { "kind" : "IdResultType" },
6443        { "kind" : "IdResult" },
6444        { "kind" : "IdRef", "name" : "'Payload'" }
6445      ],
6446      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6447      "version" : "None"
6448    },
6449    {
6450      "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
6451      "class"  : "@exclude",
6452      "opcode" : 5784,
6453      "operands" : [
6454        { "kind" : "IdResultType" },
6455        { "kind" : "IdResult" },
6456        { "kind" : "IdRef", "name" : "'Payload'" }
6457      ],
6458      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6459      "version" : "None"
6460    },
6461    {
6462      "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
6463      "class"  : "@exclude",
6464      "opcode" : 5785,
6465      "operands" : [
6466        { "kind" : "IdResultType" },
6467        { "kind" : "IdResult" },
6468        { "kind" : "IdRef", "name" : "'Payload'" }
6469      ],
6470      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6471      "version" : "None"
6472    },
6473    {
6474      "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
6475      "class"  : "@exclude",
6476      "opcode" : 5786,
6477      "operands" : [
6478        { "kind" : "IdResultType" },
6479        { "kind" : "IdResult" },
6480        { "kind" : "IdRef", "name" : "'Src Image'" },
6481        { "kind" : "IdRef", "name" : "'Ref Image'" },
6482        { "kind" : "IdRef", "name" : "'Payload'" }
6483      ],
6484      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6485      "version" : "None"
6486    },
6487    {
6488      "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
6489      "class"  : "@exclude",
6490      "opcode" : 5787,
6491      "operands" : [
6492        { "kind" : "IdResultType" },
6493        { "kind" : "IdResult" },
6494        { "kind" : "IdRef", "name" : "'Src Image'" },
6495        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6496        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6497        { "kind" : "IdRef", "name" : "'Payload'" }
6498      ],
6499      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6500      "version" : "None"
6501    },
6502    {
6503      "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
6504      "class"  : "@exclude",
6505      "opcode" : 5788,
6506      "operands" : [
6507        { "kind" : "IdResultType" },
6508        { "kind" : "IdResult" },
6509        { "kind" : "IdRef", "name" : "'Src Image'" },
6510        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6511        { "kind" : "IdRef", "name" : "'Payload'" }
6512      ],
6513      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6514      "version" : "None"
6515    },
6516    {
6517      "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
6518      "class"  : "@exclude",
6519      "opcode" : 5789,
6520      "operands" : [
6521        { "kind" : "IdResultType" },
6522        { "kind" : "IdResult" },
6523        { "kind" : "IdRef", "name" : "'Src Image'" },
6524        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6525        { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
6526        { "kind" : "IdRef", "name" : "'Payload'" }
6527      ],
6528      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6529      "version" : "None"
6530    },
6531    {
6532      "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
6533      "class"  : "@exclude",
6534      "opcode" : 5790,
6535      "operands" : [
6536        { "kind" : "IdResultType" },
6537        { "kind" : "IdResult" },
6538        { "kind" : "IdRef", "name" : "'Payload'" }
6539      ],
6540      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6541      "version" : "None"
6542    },
6543    {
6544      "opname" : "OpSubgroupAvcSicInitializeINTEL",
6545      "class"  : "@exclude",
6546      "opcode" : 5791,
6547      "operands" : [
6548        { "kind" : "IdResultType" },
6549        { "kind" : "IdResult" },
6550        { "kind" : "IdRef", "name" : "'Src Coord'" }
6551      ],
6552      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6553      "version" : "None"
6554    },
6555    {
6556      "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
6557      "class"  : "@exclude",
6558      "opcode" : 5792,
6559      "operands" : [
6560        { "kind" : "IdResultType" },
6561        { "kind" : "IdResult" },
6562        { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
6563        { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" },
6564        { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6565        { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
6566        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6567        { "kind" : "IdRef", "name" : "'Payload'" }
6568      ],
6569      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6570      "version" : "None"
6571    },
6572    {
6573      "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
6574      "class"  : "@exclude",
6575      "opcode" : 5793,
6576      "operands" : [
6577        { "kind" : "IdResultType" },
6578        { "kind" : "IdResult" },
6579        { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
6580        { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
6581        { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
6582        { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
6583        { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
6584        { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
6585        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6586        { "kind" : "IdRef", "name" : "'Payload'" }
6587      ],
6588      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6589      "version" : "None"
6590    },
6591    {
6592      "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
6593      "class"  : "@exclude",
6594      "opcode" : 5794,
6595      "operands" : [
6596        { "kind" : "IdResultType" },
6597        { "kind" : "IdResult" },
6598        { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
6599        { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
6600        { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
6601        { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
6602        { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
6603        { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
6604        { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" },
6605        { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" },
6606        { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" },
6607        { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6608        { "kind" : "IdRef", "name" : "'Payload'" }
6609      ],
6610      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6611      "version" : "None"
6612    },
6613    {
6614      "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
6615      "class"  : "@exclude",
6616      "opcode" : 5795,
6617      "operands" : [
6618        { "kind" : "IdResultType" },
6619        { "kind" : "IdResult" },
6620        { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
6621        { "kind" : "IdRef", "name" : "'Direction'" }
6622      ],
6623      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6624      "version" : "None"
6625    },
6626    {
6627      "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
6628      "class"  : "@exclude",
6629      "opcode" : 5796,
6630      "operands" : [
6631        { "kind" : "IdResultType" },
6632        { "kind" : "IdResult" },
6633        { "kind" : "IdRef", "name" : "'Payload'" }
6634      ],
6635      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6636      "version" : "None"
6637    },
6638    {
6639      "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
6640      "class"  : "@exclude",
6641      "opcode" : 5797,
6642      "operands" : [
6643        { "kind" : "IdResultType" },
6644        { "kind" : "IdResult" },
6645        { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
6646        { "kind" : "IdRef", "name" : "'Payload'" }
6647      ],
6648      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6649      "version" : "None"
6650    },
6651    {
6652      "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
6653      "class"  : "@exclude",
6654      "opcode" : 5798,
6655      "operands" : [
6656        { "kind" : "IdResultType" },
6657        { "kind" : "IdResult" },
6658        { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" },
6659        { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" },
6660        { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" },
6661        { "kind" : "IdRef", "name" : "'Payload'" }
6662      ],
6663      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6664      "version" : "None"
6665    },
6666    {
6667      "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
6668      "class"  : "@exclude",
6669      "opcode" : 5799,
6670      "operands" : [
6671        { "kind" : "IdResultType" },
6672        { "kind" : "IdResult" },
6673        { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" },
6674        { "kind" : "IdRef", "name" : "'Payload'" }
6675      ],
6676      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6677      "version" : "None"
6678    },
6679    {
6680      "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
6681      "class"  : "@exclude",
6682      "opcode" : 5800,
6683      "operands" : [
6684        { "kind" : "IdResultType" },
6685        { "kind" : "IdResult" },
6686        { "kind" : "IdRef", "name" : "'Payload'" }
6687      ],
6688      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6689      "version" : "None"
6690    },
6691    {
6692      "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
6693      "class"  : "@exclude",
6694      "opcode" : 5801,
6695      "operands" : [
6696        { "kind" : "IdResultType" },
6697        { "kind" : "IdResult" },
6698        { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" },
6699        { "kind" : "IdRef", "name" : "'Payload'" }
6700      ],
6701      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6702      "version" : "None"
6703    },
6704    {
6705      "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
6706      "class"  : "@exclude",
6707      "opcode" : 5802,
6708      "operands" : [
6709        { "kind" : "IdResultType" },
6710        { "kind" : "IdResult" },
6711        { "kind" : "IdRef", "name" : "'Block Based Skip Type'" },
6712        { "kind" : "IdRef", "name" : "'Payload'" }
6713      ],
6714      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6715      "version" : "None"
6716    },
6717    {
6718      "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
6719      "class"  : "@exclude",
6720      "opcode" : 5803,
6721      "operands" : [
6722        { "kind" : "IdResultType" },
6723        { "kind" : "IdResult" },
6724        { "kind" : "IdRef", "name" : "'Src Image'" },
6725        { "kind" : "IdRef", "name" : "'Payload'" }
6726      ],
6727      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6728      "version" : "None"
6729    },
6730    {
6731      "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
6732      "class"  : "@exclude",
6733      "opcode" : 5804,
6734      "operands" : [
6735        { "kind" : "IdResultType" },
6736        { "kind" : "IdResult" },
6737        { "kind" : "IdRef", "name" : "'Src Image'" },
6738        { "kind" : "IdRef", "name" : "'Ref Image'" },
6739        { "kind" : "IdRef", "name" : "'Payload'" }
6740      ],
6741      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6742      "version" : "None"
6743    },
6744    {
6745      "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
6746      "class"  : "@exclude",
6747      "opcode" : 5805,
6748      "operands" : [
6749        { "kind" : "IdResultType" },
6750        { "kind" : "IdResult" },
6751        { "kind" : "IdRef", "name" : "'Src Image'" },
6752        { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6753        { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6754        { "kind" : "IdRef", "name" : "'Payload'" }
6755      ],
6756      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6757      "version" : "None"
6758    },
6759    {
6760      "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
6761      "class"  : "@exclude",
6762      "opcode" : 5806,
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" : "'Payload'" }
6769      ],
6770      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6771      "version" : "None"
6772    },
6773    {
6774      "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
6775      "class"  : "@exclude",
6776      "opcode" : 5807,
6777      "operands" : [
6778        { "kind" : "IdResultType" },
6779        { "kind" : "IdResult" },
6780        { "kind" : "IdRef", "name" : "'Src Image'" },
6781        { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6782        { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
6783        { "kind" : "IdRef", "name" : "'Payload'" }
6784      ],
6785      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6786      "version" : "None"
6787    },
6788    {
6789      "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
6790      "class"  : "@exclude",
6791      "opcode" : 5808,
6792      "operands" : [
6793        { "kind" : "IdResultType" },
6794        { "kind" : "IdResult" },
6795        { "kind" : "IdRef", "name" : "'Payload'" }
6796      ],
6797      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6798      "version" : "None"
6799    },
6800    {
6801      "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
6802      "class"  : "@exclude",
6803      "opcode" : 5809,
6804      "operands" : [
6805        { "kind" : "IdResultType" },
6806        { "kind" : "IdResult" },
6807        { "kind" : "IdRef", "name" : "'Payload'" }
6808      ],
6809      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6810      "version" : "None"
6811    },
6812    {
6813      "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
6814      "class"  : "@exclude",
6815      "opcode" : 5810,
6816      "operands" : [
6817        { "kind" : "IdResultType" },
6818        { "kind" : "IdResult" },
6819        { "kind" : "IdRef", "name" : "'Payload'" }
6820      ],
6821      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6822      "version" : "None"
6823    },
6824    {
6825      "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
6826      "class"  : "@exclude",
6827      "opcode" : 5811,
6828      "operands" : [
6829        { "kind" : "IdResultType" },
6830        { "kind" : "IdResult" },
6831        { "kind" : "IdRef", "name" : "'Payload'" }
6832      ],
6833      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6834      "version" : "None"
6835    },
6836    {
6837      "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
6838      "class"  : "@exclude",
6839      "opcode" : 5812,
6840      "operands" : [
6841        { "kind" : "IdResultType" },
6842        { "kind" : "IdResult" },
6843        { "kind" : "IdRef", "name" : "'Payload'" }
6844      ],
6845      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6846      "version" : "None"
6847    },
6848    {
6849      "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
6850      "class"  : "@exclude",
6851      "opcode" : 5813,
6852      "operands" : [
6853        { "kind" : "IdResultType" },
6854        { "kind" : "IdResult" },
6855        { "kind" : "IdRef", "name" : "'Payload'" }
6856      ],
6857      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6858      "version" : "None"
6859    },
6860    {
6861      "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
6862      "class"  : "@exclude",
6863      "opcode" : 5814,
6864      "operands" : [
6865        { "kind" : "IdResultType" },
6866        { "kind" : "IdResult" },
6867        { "kind" : "IdRef", "name" : "'Payload'" }
6868      ],
6869      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6870      "version" : "None"
6871    },
6872    {
6873      "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
6874      "class"  : "@exclude",
6875      "opcode" : 5815,
6876      "operands" : [
6877        { "kind" : "IdResultType" },
6878        { "kind" : "IdResult" },
6879        { "kind" : "IdRef", "name" : "'Payload'" }
6880      ],
6881      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6882      "version" : "None"
6883    },
6884    {
6885      "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
6886      "class"  : "@exclude",
6887      "opcode" : 5816,
6888      "operands" : [
6889        { "kind" : "IdResultType" },
6890        { "kind" : "IdResult" },
6891        { "kind" : "IdRef", "name" : "'Payload'" }
6892      ],
6893      "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6894      "version" : "None"
6895    },
6896    {
6897      "opname" : "OpVariableLengthArrayINTEL",
6898      "class"  : "@exclude",
6899      "opcode" : 5818,
6900      "operands" : [
6901        { "kind" : "IdResultType" },
6902        { "kind" : "IdResult" },
6903        { "kind" : "IdRef", "name" : "'Lenght'" }
6904      ],
6905      "capabilities" : [ "VariableLengthArrayINTEL" ],
6906      "version" : "None"
6907    },
6908    {
6909      "opname" : "OpSaveMemoryINTEL",
6910      "class"  : "@exclude",
6911      "opcode" : 5819,
6912      "operands" : [
6913        { "kind" : "IdResultType" },
6914        { "kind" : "IdResult" }
6915      ],
6916      "capabilities" : [ "VariableLengthArrayINTEL" ],
6917      "version" : "None"
6918    },
6919    {
6920      "opname" : "OpRestoreMemoryINTEL",
6921      "class"  : "@exclude",
6922      "opcode" : 5820,
6923      "operands" : [
6924        { "kind" : "IdRef", "name" : "'Ptr'" }
6925      ],
6926      "capabilities" : [ "VariableLengthArrayINTEL" ],
6927      "version" : "None"
6928    },
6929    {
6930      "opname" : "OpArbitraryFloatSinCosPiINTEL",
6931      "class"  : "@exclude",
6932      "opcode" : 5840,
6933      "operands" : [
6934        { "kind" : "IdResultType" },
6935        { "kind" : "IdResult" },
6936        { "kind" : "IdRef", "name" : "'A'" },
6937        { "kind" : "LiteralInteger", "name" : "'M1'" },
6938        { "kind" : "LiteralInteger", "name" : "'Mout'" },
6939        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
6940        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
6941        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
6942        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
6943      ],
6944      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
6945      "version" : "None"
6946    },
6947    {
6948      "opname" : "OpArbitraryFloatCastINTEL",
6949      "class"  : "@exclude",
6950      "opcode" : 5841,
6951      "operands" : [
6952        { "kind" : "IdResultType" },
6953        { "kind" : "IdResult" },
6954        { "kind" : "IdRef", "name" : "'A'" },
6955        { "kind" : "LiteralInteger", "name" : "'M1'" },
6956        { "kind" : "LiteralInteger", "name" : "'Mout'" },
6957        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
6958        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
6959        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
6960      ],
6961      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
6962      "version" : "None"
6963    },
6964    {
6965      "opname" : "OpArbitraryFloatCastFromIntINTEL",
6966      "class"  : "@exclude",
6967      "opcode" : 5842,
6968      "operands" : [
6969        { "kind" : "IdResultType" },
6970        { "kind" : "IdResult" },
6971        { "kind" : "IdRef", "name" : "'A'" },
6972        { "kind" : "LiteralInteger", "name" : "'Mout'" },
6973        { "kind" : "LiteralInteger", "name" : "'FromSign'" },
6974        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
6975        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
6976        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
6977      ],
6978      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
6979      "version" : "None"
6980    },
6981    {
6982      "opname" : "OpArbitraryFloatCastToIntINTEL",
6983      "class"  : "@exclude",
6984      "opcode" : 5843,
6985      "operands" : [
6986        { "kind" : "IdResultType" },
6987        { "kind" : "IdResult" },
6988        { "kind" : "IdRef", "name" : "'A'" },
6989        { "kind" : "LiteralInteger", "name" : "'M1'" },
6990        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
6991        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
6992        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
6993      ],
6994      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
6995      "version" : "None"
6996    },
6997    {
6998      "opname" : "OpArbitraryFloatAddINTEL",
6999      "class"  : "@exclude",
7000      "opcode" : 5846,
7001      "operands" : [
7002        { "kind" : "IdResultType" },
7003        { "kind" : "IdResult" },
7004        { "kind" : "IdRef", "name" : "'A'" },
7005        { "kind" : "LiteralInteger", "name" : "'M1'" },
7006        { "kind" : "IdRef", "name" : "'B'" },
7007        { "kind" : "LiteralInteger", "name" : "'M2'" },
7008        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7009        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7010        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7011        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7012      ],
7013      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7014      "version" : "None"
7015    },
7016    {
7017      "opname" : "OpArbitraryFloatSubINTEL",
7018      "class"  : "@exclude",
7019      "opcode" : 5847,
7020      "operands" : [
7021        { "kind" : "IdResultType" },
7022        { "kind" : "IdResult" },
7023        { "kind" : "IdRef", "name" : "'A'" },
7024        { "kind" : "LiteralInteger", "name" : "'M1'" },
7025        { "kind" : "IdRef", "name" : "'B'" },
7026        { "kind" : "LiteralInteger", "name" : "'M2'" },
7027        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7028        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7029        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7030        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7031      ],
7032      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7033      "version" : "None"
7034    },
7035    {
7036      "opname" : "OpArbitraryFloatMulINTEL",
7037      "class"  : "@exclude",
7038      "opcode" : 5848,
7039      "operands" : [
7040        { "kind" : "IdResultType" },
7041        { "kind" : "IdResult" },
7042        { "kind" : "IdRef", "name" : "'A'" },
7043        { "kind" : "LiteralInteger", "name" : "'M1'" },
7044        { "kind" : "IdRef", "name" : "'B'" },
7045        { "kind" : "LiteralInteger", "name" : "'M2'" },
7046        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7047        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7048        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7049        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7050      ],
7051      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7052      "version" : "None"
7053    },
7054    {
7055      "opname" : "OpArbitraryFloatDivINTEL",
7056      "class"  : "@exclude",
7057      "opcode" : 5849,
7058      "operands" : [
7059        { "kind" : "IdResultType" },
7060        { "kind" : "IdResult" },
7061        { "kind" : "IdRef", "name" : "'A'" },
7062        { "kind" : "LiteralInteger", "name" : "'M1'" },
7063        { "kind" : "IdRef", "name" : "'B'" },
7064        { "kind" : "LiteralInteger", "name" : "'M2'" },
7065        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7066        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7067        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7068        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7069      ],
7070      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7071      "version" : "None"
7072    },
7073    {
7074      "opname" : "OpArbitraryFloatGTINTEL",
7075      "class"  : "@exclude",
7076      "opcode" : 5850,
7077      "operands" : [
7078        { "kind" : "IdResultType" },
7079        { "kind" : "IdResult" },
7080        { "kind" : "IdRef", "name" : "'A'" },
7081        { "kind" : "LiteralInteger", "name" : "'M1'" },
7082        { "kind" : "IdRef", "name" : "'B'" },
7083        { "kind" : "LiteralInteger", "name" : "'M2'" }
7084      ],
7085      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7086      "version" : "None"
7087    },
7088    {
7089      "opname" : "OpArbitraryFloatGEINTEL",
7090      "class"  : "@exclude",
7091      "opcode" : 5851,
7092      "operands" : [
7093        { "kind" : "IdResultType" },
7094        { "kind" : "IdResult" },
7095        { "kind" : "IdRef", "name" : "'A'" },
7096        { "kind" : "LiteralInteger", "name" : "'M1'" },
7097        { "kind" : "IdRef", "name" : "'B'" },
7098        { "kind" : "LiteralInteger", "name" : "'M2'" }
7099      ],
7100      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7101      "version" : "None"
7102    },
7103    {
7104      "opname" : "OpArbitraryFloatLTINTEL",
7105      "class"  : "@exclude",
7106      "opcode" : 5852,
7107      "operands" : [
7108        { "kind" : "IdResultType" },
7109        { "kind" : "IdResult" },
7110        { "kind" : "IdRef", "name" : "'A'" },
7111        { "kind" : "LiteralInteger", "name" : "'M1'" },
7112        { "kind" : "IdRef", "name" : "'B'" },
7113        { "kind" : "LiteralInteger", "name" : "'M2'" }
7114      ],
7115      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7116      "version" : "None"
7117    },
7118    {
7119      "opname" : "OpArbitraryFloatLEINTEL",
7120      "class"  : "@exclude",
7121      "opcode" : 5853,
7122      "operands" : [
7123        { "kind" : "IdResultType" },
7124        { "kind" : "IdResult" },
7125        { "kind" : "IdRef", "name" : "'A'" },
7126        { "kind" : "LiteralInteger", "name" : "'M1'" },
7127        { "kind" : "IdRef", "name" : "'B'" },
7128        { "kind" : "LiteralInteger", "name" : "'M2'" }
7129      ],
7130      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7131      "version" : "None"
7132    },
7133    {
7134      "opname" : "OpArbitraryFloatEQINTEL",
7135      "class"  : "@exclude",
7136      "opcode" : 5854,
7137      "operands" : [
7138        { "kind" : "IdResultType" },
7139        { "kind" : "IdResult" },
7140        { "kind" : "IdRef", "name" : "'A'" },
7141        { "kind" : "LiteralInteger", "name" : "'M1'" },
7142        { "kind" : "IdRef", "name" : "'B'" },
7143        { "kind" : "LiteralInteger", "name" : "'M2'" }
7144      ],
7145      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7146      "version" : "None"
7147    },
7148    {
7149      "opname" : "OpArbitraryFloatRecipINTEL",
7150      "class"  : "@exclude",
7151      "opcode" : 5855,
7152      "operands" : [
7153        { "kind" : "IdResultType" },
7154        { "kind" : "IdResult" },
7155        { "kind" : "IdRef", "name" : "'A'" },
7156        { "kind" : "LiteralInteger", "name" : "'M1'" },
7157        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7158        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7159        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7160        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7161      ],
7162      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7163      "version" : "None"
7164    },
7165    {
7166      "opname" : "OpArbitraryFloatRSqrtINTEL",
7167      "class"  : "@exclude",
7168      "opcode" : 5856,
7169      "operands" : [
7170        { "kind" : "IdResultType" },
7171        { "kind" : "IdResult" },
7172        { "kind" : "IdRef", "name" : "'A'" },
7173        { "kind" : "LiteralInteger", "name" : "'M1'" },
7174        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7175        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7176        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7177        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7178      ],
7179      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7180      "version" : "None"
7181    },
7182    {
7183      "opname" : "OpArbitraryFloatCbrtINTEL",
7184      "class"  : "@exclude",
7185      "opcode" : 5857,
7186      "operands" : [
7187        { "kind" : "IdResultType" },
7188        { "kind" : "IdResult" },
7189        { "kind" : "IdRef", "name" : "'A'" },
7190        { "kind" : "LiteralInteger", "name" : "'M1'" },
7191        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7192        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7193        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7194        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7195      ],
7196      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7197      "version" : "None"
7198    },
7199    {
7200      "opname" : "OpArbitraryFloatHypotINTEL",
7201      "class"  : "@exclude",
7202      "opcode" : 5858,
7203      "operands" : [
7204        { "kind" : "IdResultType" },
7205        { "kind" : "IdResult" },
7206        { "kind" : "IdRef", "name" : "'A'" },
7207        { "kind" : "LiteralInteger", "name" : "'M1'" },
7208        { "kind" : "IdRef", "name" : "'B'" },
7209        { "kind" : "LiteralInteger", "name" : "'M2'" },
7210        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7211        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7212        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7213        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7214      ],
7215      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7216      "version" : "None"
7217    },
7218    {
7219      "opname" : "OpArbitraryFloatSqrtINTEL",
7220      "class"  : "@exclude",
7221      "opcode" : 5859,
7222      "operands" : [
7223        { "kind" : "IdResultType" },
7224        { "kind" : "IdResult" },
7225        { "kind" : "IdRef", "name" : "'A'" },
7226        { "kind" : "LiteralInteger", "name" : "'M1'" },
7227        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7228        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7229        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7230        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7231      ],
7232      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7233      "version" : "None"
7234    },
7235    {
7236      "opname" : "OpArbitraryFloatLogINTEL",
7237      "class"  : "@exclude",
7238      "opcode" : 5860,
7239      "operands" : [
7240        { "kind" : "IdResultType" },
7241        { "kind" : "IdResult" },
7242        { "kind" : "IdRef", "name" : "'A'" },
7243        { "kind" : "LiteralInteger", "name" : "'M1'" },
7244        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7245        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7246        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7247        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7248      ],
7249      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7250      "version" : "None"
7251    },
7252    {
7253      "opname" : "OpArbitraryFloatLog2INTEL",
7254      "class"  : "@exclude",
7255      "opcode" : 5861,
7256      "operands" : [
7257        { "kind" : "IdResultType" },
7258        { "kind" : "IdResult" },
7259        { "kind" : "IdRef", "name" : "'A'" },
7260        { "kind" : "LiteralInteger", "name" : "'M1'" },
7261        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7262        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7263        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7264        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7265      ],
7266      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7267      "version" : "None"
7268    },
7269    {
7270      "opname" : "OpArbitraryFloatLog10INTEL",
7271      "class"  : "@exclude",
7272      "opcode" : 5862,
7273      "operands" : [
7274        { "kind" : "IdResultType" },
7275        { "kind" : "IdResult" },
7276        { "kind" : "IdRef", "name" : "'A'" },
7277        { "kind" : "LiteralInteger", "name" : "'M1'" },
7278        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7279        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7280        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7281        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7282      ],
7283      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7284      "version" : "None"
7285    },
7286    {
7287      "opname" : "OpArbitraryFloatLog1pINTEL",
7288      "class"  : "@exclude",
7289      "opcode" : 5863,
7290      "operands" : [
7291        { "kind" : "IdResultType" },
7292        { "kind" : "IdResult" },
7293        { "kind" : "IdRef", "name" : "'A'" },
7294        { "kind" : "LiteralInteger", "name" : "'M1'" },
7295        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7296        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7297        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7298        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7299      ],
7300      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7301      "version" : "None"
7302    },
7303    {
7304      "opname" : "OpArbitraryFloatExpINTEL",
7305      "class"  : "@exclude",
7306      "opcode" : 5864,
7307      "operands" : [
7308        { "kind" : "IdResultType" },
7309        { "kind" : "IdResult" },
7310        { "kind" : "IdRef", "name" : "'A'" },
7311        { "kind" : "LiteralInteger", "name" : "'M1'" },
7312        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7313        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7314        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7315        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7316      ],
7317      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7318      "version" : "None"
7319    },
7320    {
7321      "opname" : "OpArbitraryFloatExp2INTEL",
7322      "class"  : "@exclude",
7323      "opcode" : 5865,
7324      "operands" : [
7325        { "kind" : "IdResultType" },
7326        { "kind" : "IdResult" },
7327        { "kind" : "IdRef", "name" : "'A'" },
7328        { "kind" : "LiteralInteger", "name" : "'M1'" },
7329        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7330        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7331        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7332        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7333      ],
7334      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7335      "version" : "None"
7336    },
7337    {
7338      "opname" : "OpArbitraryFloatExp10INTEL",
7339      "class"  : "@exclude",
7340      "opcode" : 5866,
7341      "operands" : [
7342        { "kind" : "IdResultType" },
7343        { "kind" : "IdResult" },
7344        { "kind" : "IdRef", "name" : "'A'" },
7345        { "kind" : "LiteralInteger", "name" : "'M1'" },
7346        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7347        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7348        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7349        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7350      ],
7351      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7352      "version" : "None"
7353    },
7354    {
7355      "opname" : "OpArbitraryFloatExpm1INTEL",
7356      "class"  : "@exclude",
7357      "opcode" : 5867,
7358      "operands" : [
7359        { "kind" : "IdResultType" },
7360        { "kind" : "IdResult" },
7361        { "kind" : "IdRef", "name" : "'A'" },
7362        { "kind" : "LiteralInteger", "name" : "'M1'" },
7363        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7364        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7365        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7366        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7367      ],
7368      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7369      "version" : "None"
7370    },
7371    {
7372      "opname" : "OpArbitraryFloatSinINTEL",
7373      "class"  : "@exclude",
7374      "opcode" : 5868,
7375      "operands" : [
7376        { "kind" : "IdResultType" },
7377        { "kind" : "IdResult" },
7378        { "kind" : "IdRef", "name" : "'A'" },
7379        { "kind" : "LiteralInteger", "name" : "'M1'" },
7380        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7381        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7382        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7383        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7384      ],
7385      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7386      "version" : "None"
7387    },
7388    {
7389      "opname" : "OpArbitraryFloatCosINTEL",
7390      "class"  : "@exclude",
7391      "opcode" : 5869,
7392      "operands" : [
7393        { "kind" : "IdResultType" },
7394        { "kind" : "IdResult" },
7395        { "kind" : "IdRef", "name" : "'A'" },
7396        { "kind" : "LiteralInteger", "name" : "'M1'" },
7397        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7398        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7399        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7400        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7401      ],
7402      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7403      "version" : "None"
7404    },
7405    {
7406      "opname" : "OpArbitraryFloatSinCosINTEL",
7407      "class"  : "@exclude",
7408      "opcode" : 5870,
7409      "operands" : [
7410        { "kind" : "IdResultType" },
7411        { "kind" : "IdResult" },
7412        { "kind" : "IdRef", "name" : "'A'" },
7413        { "kind" : "LiteralInteger", "name" : "'M1'" },
7414        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7415        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7416        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7417        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7418      ],
7419      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7420      "version" : "None"
7421    },
7422    {
7423      "opname" : "OpArbitraryFloatSinPiINTEL",
7424      "class"  : "@exclude",
7425      "opcode" : 5871,
7426      "operands" : [
7427        { "kind" : "IdResultType" },
7428        { "kind" : "IdResult" },
7429        { "kind" : "IdRef", "name" : "'A'" },
7430        { "kind" : "LiteralInteger", "name" : "'M1'" },
7431        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7432        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7433        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7434        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7435      ],
7436      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7437      "version" : "None"
7438    },
7439    {
7440      "opname" : "OpArbitraryFloatCosPiINTEL",
7441      "class"  : "@exclude",
7442      "opcode" : 5872,
7443      "operands" : [
7444        { "kind" : "IdResultType" },
7445        { "kind" : "IdResult" },
7446        { "kind" : "IdRef", "name" : "'A'" },
7447        { "kind" : "LiteralInteger", "name" : "'M1'" },
7448        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7449        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7450        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7451        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7452      ],
7453      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7454      "version" : "None"
7455    },
7456    {
7457      "opname" : "OpArbitraryFloatASinINTEL",
7458      "class"  : "@exclude",
7459      "opcode" : 5873,
7460      "operands" : [
7461        { "kind" : "IdResultType" },
7462        { "kind" : "IdResult" },
7463        { "kind" : "IdRef", "name" : "'A'" },
7464        { "kind" : "LiteralInteger", "name" : "'M1'" },
7465        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7466        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7467        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7468        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7469      ],
7470      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7471      "version" : "None"
7472    },
7473    {
7474      "opname" : "OpArbitraryFloatASinPiINTEL",
7475      "class"  : "@exclude",
7476      "opcode" : 5874,
7477      "operands" : [
7478        { "kind" : "IdResultType" },
7479        { "kind" : "IdResult" },
7480        { "kind" : "IdRef", "name" : "'A'" },
7481        { "kind" : "LiteralInteger", "name" : "'M1'" },
7482        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7483        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7484        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7485        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7486      ],
7487      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7488      "version" : "None"
7489    },
7490    {
7491      "opname" : "OpArbitraryFloatACosINTEL",
7492      "class"  : "@exclude",
7493      "opcode" : 5875,
7494      "operands" : [
7495        { "kind" : "IdResultType" },
7496        { "kind" : "IdResult" },
7497        { "kind" : "IdRef", "name" : "'A'" },
7498        { "kind" : "LiteralInteger", "name" : "'M1'" },
7499        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7500        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7501        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7502        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7503      ],
7504      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7505      "version" : "None"
7506    },
7507    {
7508      "opname" : "OpArbitraryFloatACosPiINTEL",
7509      "class"  : "@exclude",
7510      "opcode" : 5876,
7511      "operands" : [
7512        { "kind" : "IdResultType" },
7513        { "kind" : "IdResult" },
7514        { "kind" : "IdRef", "name" : "'A'" },
7515        { "kind" : "LiteralInteger", "name" : "'M1'" },
7516        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7517        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7518        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7519        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7520      ],
7521      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7522      "version" : "None"
7523    },
7524    {
7525      "opname" : "OpArbitraryFloatATanINTEL",
7526      "class"  : "@exclude",
7527      "opcode" : 5877,
7528      "operands" : [
7529        { "kind" : "IdResultType" },
7530        { "kind" : "IdResult" },
7531        { "kind" : "IdRef", "name" : "'A'" },
7532        { "kind" : "LiteralInteger", "name" : "'M1'" },
7533        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7534        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7535        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7536        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7537      ],
7538      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7539      "version" : "None"
7540    },
7541    {
7542      "opname" : "OpArbitraryFloatATanPiINTEL",
7543      "class"  : "@exclude",
7544      "opcode" : 5878,
7545      "operands" : [
7546        { "kind" : "IdResultType" },
7547        { "kind" : "IdResult" },
7548        { "kind" : "IdRef", "name" : "'A'" },
7549        { "kind" : "LiteralInteger", "name" : "'M1'" },
7550        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7551        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7552        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7553        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7554      ],
7555      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7556      "version" : "None"
7557    },
7558    {
7559      "opname" : "OpArbitraryFloatATan2INTEL",
7560      "class"  : "@exclude",
7561      "opcode" : 5879,
7562      "operands" : [
7563        { "kind" : "IdResultType" },
7564        { "kind" : "IdResult" },
7565        { "kind" : "IdRef", "name" : "'A'" },
7566        { "kind" : "LiteralInteger", "name" : "'M1'" },
7567        { "kind" : "IdRef", "name" : "'B'" },
7568        { "kind" : "LiteralInteger", "name" : "'M2'" },
7569        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7570        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7571        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7572        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7573      ],
7574      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7575      "version" : "None"
7576    },
7577    {
7578      "opname" : "OpArbitraryFloatPowINTEL",
7579      "class"  : "@exclude",
7580      "opcode" : 5880,
7581      "operands" : [
7582        { "kind" : "IdResultType" },
7583        { "kind" : "IdResult" },
7584        { "kind" : "IdRef", "name" : "'A'" },
7585        { "kind" : "LiteralInteger", "name" : "'M1'" },
7586        { "kind" : "IdRef", "name" : "'B'" },
7587        { "kind" : "LiteralInteger", "name" : "'M2'" },
7588        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7589        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7590        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7591        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7592      ],
7593      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7594      "version" : "None"
7595    },
7596    {
7597      "opname" : "OpArbitraryFloatPowRINTEL",
7598      "class"  : "@exclude",
7599      "opcode" : 5881,
7600      "operands" : [
7601        { "kind" : "IdResultType" },
7602        { "kind" : "IdResult" },
7603        { "kind" : "IdRef", "name" : "'A'" },
7604        { "kind" : "LiteralInteger", "name" : "'M1'" },
7605        { "kind" : "IdRef", "name" : "'B'" },
7606        { "kind" : "LiteralInteger", "name" : "'M2'" },
7607        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7608        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7609        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7610        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7611      ],
7612      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7613      "version" : "None"
7614    },
7615    {
7616      "opname" : "OpArbitraryFloatPowNINTEL",
7617      "class"  : "@exclude",
7618      "opcode" : 5882,
7619      "operands" : [
7620        { "kind" : "IdResultType" },
7621        { "kind" : "IdResult" },
7622        { "kind" : "IdRef", "name" : "'A'" },
7623        { "kind" : "LiteralInteger", "name" : "'M1'" },
7624        { "kind" : "IdRef", "name" : "'B'" },
7625        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7626        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7627        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7628        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7629      ],
7630      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7631      "version" : "None"
7632    },
7633    {
7634      "opname" : "OpArbitraryFloatPowNINTEL",
7635      "class"  : "@exclude",
7636      "opcode" : 5882,
7637      "operands" : [
7638        { "kind" : "IdResultType" },
7639        { "kind" : "IdResult" },
7640        { "kind" : "IdRef", "name" : "'A'" },
7641        { "kind" : "LiteralInteger", "name" : "'M1'" },
7642        { "kind" : "IdRef", "name" : "'B'" },
7643        { "kind" : "LiteralInteger", "name" : "'Mout'" },
7644        { "kind" : "LiteralInteger", "name" : "'EnableSubnormals'" },
7645        { "kind" : "LiteralInteger", "name" : "'RoundingMode'" },
7646        { "kind" : "LiteralInteger", "name" : "'RoundingAccuracy'" }
7647      ],
7648      "capabilities" : [ "ArbitraryPrecisionFloatingPointINTEL" ],
7649      "version" : "None"
7650    },
7651    {
7652      "opname" : "OpLoopControlINTEL",
7653      "class"  : "Reserved",
7654      "opcode" : 5887,
7655      "operands" : [
7656        { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Loop Control Parameters'" }
7657      ],
7658      "capabilities" : [ "UnstructuredLoopControlsINTEL" ],
7659      "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
7660      "version" : "None"
7661    },
7662    {
7663      "opname" : "OpFixedSqrtINTEL",
7664      "class"  : "@exclude",
7665      "opcode" : 5923,
7666      "operands" : [
7667        { "kind" : "IdResultType" },
7668        { "kind" : "IdResult" },
7669        { "kind" : "IdRef", "name" : "'Input Type'" },
7670        { "kind" : "IdRef", "name" : "'Input'" },
7671        { "kind" : "LiteralInteger", "name" : "'S'" },
7672        { "kind" : "LiteralInteger", "name" : "'I'" },
7673        { "kind" : "LiteralInteger", "name" : "'rI'" },
7674        { "kind" : "LiteralInteger", "name" : "'Q'" },
7675        { "kind" : "LiteralInteger", "name" : "'O'" }
7676      ],
7677      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7678      "version" : "None"
7679    },
7680    {
7681      "opname" : "OpFixedRecipINTEL",
7682      "class"  : "@exclude",
7683      "opcode" : 5924,
7684      "operands" : [
7685        { "kind" : "IdResultType" },
7686        { "kind" : "IdResult" },
7687        { "kind" : "IdRef", "name" : "'Input Type'" },
7688        { "kind" : "IdRef", "name" : "'Input'" },
7689        { "kind" : "LiteralInteger", "name" : "'S'" },
7690        { "kind" : "LiteralInteger", "name" : "'I'" },
7691        { "kind" : "LiteralInteger", "name" : "'rI'" },
7692        { "kind" : "LiteralInteger", "name" : "'Q'" },
7693        { "kind" : "LiteralInteger", "name" : "'O'" }
7694      ],
7695      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7696      "version" : "None"
7697    },
7698    {
7699      "opname" : "OpFixedRsqrtINTEL",
7700      "class"  : "@exclude",
7701      "opcode" : 5925,
7702      "operands" : [
7703        { "kind" : "IdResultType" },
7704        { "kind" : "IdResult" },
7705        { "kind" : "IdRef", "name" : "'Input Type'" },
7706        { "kind" : "IdRef", "name" : "'Input'" },
7707        { "kind" : "LiteralInteger", "name" : "'S'" },
7708        { "kind" : "LiteralInteger", "name" : "'I'" },
7709        { "kind" : "LiteralInteger", "name" : "'rI'" },
7710        { "kind" : "LiteralInteger", "name" : "'Q'" },
7711        { "kind" : "LiteralInteger", "name" : "'O'" }
7712      ],
7713      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7714      "version" : "None"
7715    },
7716    {
7717      "opname" : "OpFixedSinINTEL",
7718      "class"  : "@exclude",
7719      "opcode" : 5926,
7720      "operands" : [
7721        { "kind" : "IdResultType" },
7722        { "kind" : "IdResult" },
7723        { "kind" : "IdRef", "name" : "'Input Type'" },
7724        { "kind" : "IdRef", "name" : "'Input'" },
7725        { "kind" : "LiteralInteger", "name" : "'S'" },
7726        { "kind" : "LiteralInteger", "name" : "'I'" },
7727        { "kind" : "LiteralInteger", "name" : "'rI'" },
7728        { "kind" : "LiteralInteger", "name" : "'Q'" },
7729        { "kind" : "LiteralInteger", "name" : "'O'" }
7730      ],
7731      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7732      "version" : "None"
7733    },
7734    {
7735      "opname" : "OpFixedCosINTEL",
7736      "class"  : "@exclude",
7737      "opcode" : 5927,
7738      "operands" : [
7739        { "kind" : "IdResultType" },
7740        { "kind" : "IdResult" },
7741        { "kind" : "IdRef", "name" : "'Input Type'" },
7742        { "kind" : "IdRef", "name" : "'Input'" },
7743        { "kind" : "LiteralInteger", "name" : "'S'" },
7744        { "kind" : "LiteralInteger", "name" : "'I'" },
7745        { "kind" : "LiteralInteger", "name" : "'rI'" },
7746        { "kind" : "LiteralInteger", "name" : "'Q'" },
7747        { "kind" : "LiteralInteger", "name" : "'O'" }
7748      ],
7749      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7750      "version" : "None"
7751    },
7752    {
7753      "opname" : "OpFixedSinCosINTEL",
7754      "class"  : "@exclude",
7755      "opcode" : 5928,
7756      "operands" : [
7757        { "kind" : "IdResultType" },
7758        { "kind" : "IdResult" },
7759        { "kind" : "IdRef", "name" : "'Input Type'" },
7760        { "kind" : "IdRef", "name" : "'Input'" },
7761        { "kind" : "LiteralInteger", "name" : "'S'" },
7762        { "kind" : "LiteralInteger", "name" : "'I'" },
7763        { "kind" : "LiteralInteger", "name" : "'rI'" },
7764        { "kind" : "LiteralInteger", "name" : "'Q'" },
7765        { "kind" : "LiteralInteger", "name" : "'O'" }
7766      ],
7767      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7768      "version" : "None"
7769    },
7770    {
7771      "opname" : "OpFixedSinPiINTEL",
7772      "class"  : "@exclude",
7773      "opcode" : 5929,
7774      "operands" : [
7775        { "kind" : "IdResultType" },
7776        { "kind" : "IdResult" },
7777        { "kind" : "IdRef", "name" : "'Input Type'" },
7778        { "kind" : "IdRef", "name" : "'Input'" },
7779        { "kind" : "LiteralInteger", "name" : "'S'" },
7780        { "kind" : "LiteralInteger", "name" : "'I'" },
7781        { "kind" : "LiteralInteger", "name" : "'rI'" },
7782        { "kind" : "LiteralInteger", "name" : "'Q'" },
7783        { "kind" : "LiteralInteger", "name" : "'O'" }
7784      ],
7785      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7786      "version" : "None"
7787    },
7788    {
7789      "opname" : "OpFixedCosPiINTEL",
7790      "class"  : "@exclude",
7791      "opcode" : 5930,
7792      "operands" : [
7793        { "kind" : "IdResultType" },
7794        { "kind" : "IdResult" },
7795        { "kind" : "IdRef", "name" : "'Input Type'" },
7796        { "kind" : "IdRef", "name" : "'Input'" },
7797        { "kind" : "LiteralInteger", "name" : "'S'" },
7798        { "kind" : "LiteralInteger", "name" : "'I'" },
7799        { "kind" : "LiteralInteger", "name" : "'rI'" },
7800        { "kind" : "LiteralInteger", "name" : "'Q'" },
7801        { "kind" : "LiteralInteger", "name" : "'O'" }
7802      ],
7803      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7804      "version" : "None"
7805    },
7806    {
7807      "opname" : "OpFixedSinCosPiINTEL",
7808      "class"  : "@exclude",
7809      "opcode" : 5931,
7810      "operands" : [
7811        { "kind" : "IdResultType" },
7812        { "kind" : "IdResult" },
7813        { "kind" : "IdRef", "name" : "'Input Type'" },
7814        { "kind" : "IdRef", "name" : "'Input'" },
7815        { "kind" : "LiteralInteger", "name" : "'S'" },
7816        { "kind" : "LiteralInteger", "name" : "'I'" },
7817        { "kind" : "LiteralInteger", "name" : "'rI'" },
7818        { "kind" : "LiteralInteger", "name" : "'Q'" },
7819        { "kind" : "LiteralInteger", "name" : "'O'" }
7820      ],
7821      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7822      "version" : "None"
7823    },
7824    {
7825      "opname" : "OpFixedLogINTEL",
7826      "class"  : "@exclude",
7827      "opcode" : 5932,
7828      "operands" : [
7829        { "kind" : "IdResultType" },
7830        { "kind" : "IdResult" },
7831        { "kind" : "IdRef", "name" : "'Input Type'" },
7832        { "kind" : "IdRef", "name" : "'Input'" },
7833        { "kind" : "LiteralInteger", "name" : "'S'" },
7834        { "kind" : "LiteralInteger", "name" : "'I'" },
7835        { "kind" : "LiteralInteger", "name" : "'rI'" },
7836        { "kind" : "LiteralInteger", "name" : "'Q'" },
7837        { "kind" : "LiteralInteger", "name" : "'O'" }
7838      ],
7839      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7840      "version" : "None"
7841    },
7842    {
7843      "opname" : "OpFixedExpINTEL",
7844      "class"  : "@exclude",
7845      "opcode" : 5933,
7846      "operands" : [
7847        { "kind" : "IdResultType" },
7848        { "kind" : "IdResult" },
7849        { "kind" : "IdRef", "name" : "'Input Type'" },
7850        { "kind" : "IdRef", "name" : "'Input'" },
7851        { "kind" : "LiteralInteger", "name" : "'S'" },
7852        { "kind" : "LiteralInteger", "name" : "'I'" },
7853        { "kind" : "LiteralInteger", "name" : "'rI'" },
7854        { "kind" : "LiteralInteger", "name" : "'Q'" },
7855        { "kind" : "LiteralInteger", "name" : "'O'" }
7856      ],
7857      "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL" ],
7858      "version" : "None"
7859    },
7860    {
7861      "opname" : "OpPtrCastToCrossWorkgroupINTEL",
7862      "class"  : "@exclude",
7863      "opcode" : 5934,
7864      "operands" : [
7865        { "kind" : "IdResultType" },
7866        { "kind" : "IdResult" },
7867        { "kind" : "IdRef", "name" : "'Pointer'" }
7868      ],
7869      "capabilities" : [ "USMStorageClassesINTEL" ],
7870      "version" : "None"
7871    },
7872    {
7873      "opname" : "OpCrossWorkgroupCastToPtrINTEL",
7874      "class"  : "@exclude",
7875      "opcode" : 5938,
7876      "operands" : [
7877        { "kind" : "IdResultType" },
7878        { "kind" : "IdResult" },
7879        { "kind" : "IdRef", "name" : "'Pointer'" }
7880      ],
7881      "capabilities" : [ "USMStorageClassesINTEL" ],
7882      "version" : "None"
7883    },
7884    {
7885      "opname" : "OpReadPipeBlockingINTEL",
7886      "class"  : "Pipe",
7887      "opcode" : 5946,
7888      "operands" : [
7889        { "kind" : "IdResultType" },
7890        { "kind" : "IdResult" },
7891        { "kind" : "IdRef", "name" : "'Packet Size'" },
7892        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
7893      ],
7894      "capabilities" : [ "BlockingPipesINTEL" ],
7895      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
7896      "version" : "None"
7897    },
7898    {
7899      "opname" : "OpWritePipeBlockingINTEL",
7900      "class"  : "Pipe",
7901      "opcode" : 5947,
7902      "operands" : [
7903        { "kind" : "IdResultType" },
7904        { "kind" : "IdResult" },
7905        { "kind" : "IdRef", "name" : "'Packet Size'" },
7906        { "kind" : "IdRef", "name" : "'Packet Alignment'" }
7907      ],
7908      "capabilities" : [ "BlockingPipesINTEL" ],
7909      "extensions" : [ "SPV_INTEL_blocking_pipes" ],
7910      "version" : "None"
7911    },
7912    {
7913      "opname" : "OpFPGARegINTEL",
7914      "class"  : "Reserved",
7915      "opcode" : 5949,
7916      "operands" : [
7917        { "kind" : "IdResultType" },
7918        { "kind" : "IdResult" },
7919        { "kind" : "IdRef", "name" : "'Result'" },
7920        { "kind" : "IdRef", "name" : "'Input'" }
7921      ],
7922      "capabilities" : [ "FPGARegINTEL" ],
7923      "extensions" : [ "SPV_INTEL_fpga_reg" ],
7924      "version" : "None"
7925    },
7926    {
7927        "opname" : "OpRayQueryGetRayTMinKHR",
7928        "class" : "Reserved",
7929        "opcode" : 6016,
7930        "operands" : [
7931            { "kind" : "IdResultType" },
7932            { "kind" : "IdResult" },
7933            {
7934                "kind" : "IdRef",
7935                "name" : "'RayQuery'"
7936            }
7937        ],
7938        "capabilities" : [ "RayQueryKHR" ],
7939        "extensions" : [ "SPV_KHR_ray_query" ],
7940        "version" : "None"
7941    },
7942    {
7943        "opname" : "OpRayQueryGetRayFlagsKHR",
7944        "class" : "Reserved",
7945        "opcode" : 6017,
7946        "operands" : [
7947            { "kind" : "IdResultType" },
7948            { "kind" : "IdResult" },
7949            {
7950                "kind" : "IdRef",
7951                "name" : "'RayQuery'"
7952            }
7953        ],
7954        "capabilities" : [ "RayQueryKHR" ],
7955        "extensions" : [ "SPV_KHR_ray_query" ],
7956        "version" : "None"
7957    },
7958    {
7959        "opname" : "OpRayQueryGetIntersectionTKHR",
7960        "class" : "Reserved",
7961        "opcode" : 6018,
7962        "operands" : [
7963            { "kind" : "IdResultType" },
7964            { "kind" : "IdResult" },
7965            {
7966                "kind" : "IdRef",
7967                "name" : "'RayQuery'"
7968            },
7969            {
7970                "kind" : "IdRef",
7971                "name" : "'Intersection'"
7972            }
7973        ],
7974        "capabilities" : [ "RayQueryKHR" ],
7975        "extensions" : [ "SPV_KHR_ray_query" ],
7976        "version" : "None"
7977    },
7978    {
7979        "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR",
7980        "class" : "Reserved",
7981        "opcode" : 6019,
7982        "operands" : [
7983            { "kind" : "IdResultType" },
7984            { "kind" : "IdResult" },
7985            {
7986                "kind" : "IdRef",
7987                "name" : "'RayQuery'"
7988            },
7989            {
7990                "kind" : "IdRef",
7991                "name" : "'Intersection'"
7992            }
7993        ],
7994        "capabilities" : [ "RayQueryKHR" ],
7995        "extensions" : [ "SPV_KHR_ray_query" ],
7996        "version" : "None"
7997    },
7998    {
7999        "opname" : "OpRayQueryGetIntersectionInstanceIdKHR",
8000        "class" : "Reserved",
8001        "opcode" : 6020,
8002        "operands" : [
8003            { "kind" : "IdResultType" },
8004            { "kind" : "IdResult" },
8005            {
8006                "kind" : "IdRef",
8007                "name" : "'RayQuery'"
8008            },
8009            {
8010                "kind" : "IdRef",
8011                "name" : "'Intersection'"
8012            }
8013        ],
8014        "capabilities" : [ "RayQueryKHR" ],
8015        "extensions" : [ "SPV_KHR_ray_query" ],
8016        "version" : "None"
8017    },
8018    {
8019        "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR",
8020        "class" : "Reserved",
8021        "opcode" : 6021,
8022        "operands" : [
8023            { "kind" : "IdResultType" },
8024            { "kind" : "IdResult" },
8025            {
8026                "kind" : "IdRef",
8027                "name" : "'RayQuery'"
8028            },
8029            {
8030                "kind" : "IdRef",
8031                "name" : "'Intersection'"
8032            }
8033        ],
8034        "capabilities" : [ "RayQueryKHR" ],
8035        "extensions" : [ "SPV_KHR_ray_query" ],
8036        "version" : "None"
8037    },
8038    {
8039        "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR",
8040        "class" : "Reserved",
8041        "opcode" : 6022,
8042        "operands" : [
8043            { "kind" : "IdResultType" },
8044            { "kind" : "IdResult" },
8045            {
8046                "kind" : "IdRef",
8047                "name" : "'RayQuery'"
8048            },
8049            {
8050                "kind" : "IdRef",
8051                "name" : "'Intersection'"
8052            }
8053        ],
8054        "capabilities" : [ "RayQueryKHR" ],
8055        "extensions" : [ "SPV_KHR_ray_query" ],
8056        "version" : "None"
8057    },
8058    {
8059        "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR",
8060        "class" : "Reserved",
8061        "opcode" : 6023,
8062        "operands" : [
8063            { "kind" : "IdResultType" },
8064            { "kind" : "IdResult" },
8065            {
8066                "kind" : "IdRef",
8067                "name" : "'RayQuery'"
8068            },
8069            {
8070                "kind" : "IdRef",
8071                "name" : "'Intersection'"
8072            }
8073        ],
8074        "capabilities" : [ "RayQueryKHR" ],
8075        "extensions" : [ "SPV_KHR_ray_query" ],
8076        "version" : "None"
8077    },
8078    {
8079        "opname" : "OpRayQueryGetIntersectionBarycentricsKHR",
8080        "class" : "Reserved",
8081        "opcode" : 6024,
8082        "operands" : [
8083            { "kind" : "IdResultType" },
8084            { "kind" : "IdResult" },
8085            {
8086                "kind" : "IdRef",
8087                "name" : "'RayQuery'"
8088            },
8089            {
8090                "kind" : "IdRef",
8091                "name" : "'Intersection'"
8092            }
8093        ],
8094        "capabilities" : [ "RayQueryKHR" ],
8095        "extensions" : [ "SPV_KHR_ray_query" ],
8096        "version" : "None"
8097    },
8098    {
8099        "opname" : "OpRayQueryGetIntersectionFrontFaceKHR",
8100        "class" : "Reserved",
8101        "opcode" : 6025,
8102        "operands" : [
8103            { "kind" : "IdResultType" },
8104            { "kind" : "IdResult" },
8105            {
8106                "kind" : "IdRef",
8107                "name" : "'RayQuery'"
8108            },
8109            {
8110                "kind" : "IdRef",
8111                "name" : "'Intersection'"
8112            }
8113        ],
8114        "capabilities" : [ "RayQueryKHR" ],
8115        "extensions" : [ "SPV_KHR_ray_query" ],
8116        "version" : "None"
8117    },
8118    {
8119        "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
8120        "class" : "Reserved",
8121        "opcode" : 6026,
8122        "operands" : [
8123            { "kind" : "IdResultType" },
8124            { "kind" : "IdResult" },
8125            {
8126                "kind" : "IdRef",
8127                "name" : "'RayQuery'"
8128            }
8129        ],
8130        "capabilities" : [ "RayQueryKHR" ],
8131        "extensions" : [ "SPV_KHR_ray_query" ],
8132        "version" : "None"
8133    },
8134    {
8135        "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR",
8136        "class" : "Reserved",
8137        "opcode" : 6027,
8138        "operands" : [
8139            { "kind" : "IdResultType" },
8140            { "kind" : "IdResult" },
8141            {
8142                "kind" : "IdRef",
8143                "name" : "'RayQuery'"
8144            },
8145            {
8146                "kind" : "IdRef",
8147                "name" : "'Intersection'"
8148            }
8149        ],
8150        "capabilities" : [ "RayQueryKHR" ],
8151        "extensions" : [ "SPV_KHR_ray_query" ],
8152        "version" : "None"
8153    },
8154    {
8155        "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR",
8156        "class" : "Reserved",
8157        "opcode" : 6028,
8158        "operands" : [
8159            { "kind" : "IdResultType" },
8160            { "kind" : "IdResult" },
8161            {
8162                "kind" : "IdRef",
8163                "name" : "'RayQuery'"
8164            },
8165            {
8166                "kind" : "IdRef",
8167                "name" : "'Intersection'"
8168            }
8169        ],
8170        "capabilities" : [ "RayQueryKHR" ],
8171        "extensions" : [ "SPV_KHR_ray_query" ],
8172        "version" : "None"
8173    },
8174    {
8175        "opname" : "OpRayQueryGetWorldRayDirectionKHR",
8176        "class" : "Reserved",
8177        "opcode" : 6029,
8178        "operands" : [
8179            { "kind" : "IdResultType" },
8180            { "kind" : "IdResult" },
8181            {
8182                "kind" : "IdRef",
8183                "name" : "'RayQuery'"
8184            }
8185        ],
8186        "capabilities" : [ "RayQueryKHR" ],
8187        "extensions" : [ "SPV_KHR_ray_query" ],
8188        "version" : "None"
8189    },
8190    {
8191        "opname" : "OpRayQueryGetWorldRayOriginKHR",
8192        "class" : "Reserved",
8193        "opcode" : 6030,
8194        "operands" : [
8195            { "kind" : "IdResultType" },
8196            { "kind" : "IdResult" },
8197            {
8198                "kind" : "IdRef",
8199                "name" : "'RayQuery'"
8200            }
8201        ],
8202        "capabilities" : [ "RayQueryKHR" ],
8203        "extensions" : [ "SPV_KHR_ray_query" ],
8204        "version" : "None"
8205    },
8206    {
8207        "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR",
8208        "class" : "Reserved",
8209        "opcode" : 6031,
8210        "operands" : [
8211            { "kind" : "IdResultType" },
8212            { "kind" : "IdResult" },
8213            {
8214                "kind" : "IdRef",
8215                "name" : "'RayQuery'"
8216            },
8217            {
8218                "kind" : "IdRef",
8219                "name" : "'Intersection'"
8220            }
8221        ],
8222        "capabilities" : [ "RayQueryKHR" ],
8223        "extensions" : [ "SPV_KHR_ray_query" ],
8224        "version" : "None"
8225    },
8226    {
8227        "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR",
8228        "class" : "Reserved",
8229        "opcode" : 6032,
8230        "operands" : [
8231            { "kind" : "IdResultType" },
8232            { "kind" : "IdResult" },
8233            {
8234                "kind" : "IdRef",
8235                "name" : "'RayQuery'"
8236            },
8237             {
8238                "kind" : "IdRef",
8239                "name" : "'Intersection'"
8240            }
8241        ],
8242        "capabilities" : [ "RayQueryKHR" ],
8243        "extensions" : [ "SPV_KHR_ray_query" ],
8244        "version" : "None"
8245    },
8246    {
8247      "opname" : "OpAtomicFAddEXT",
8248      "class"  : "Atomic",
8249      "opcode" : 6035,
8250      "operands" : [
8251        { "kind" : "IdResultType" },
8252        { "kind" : "IdResult" },
8253        { "kind" : "IdRef",             "name" : "'Pointer'" },
8254        { "kind" : "IdScope",           "name" : "'Memory'" },
8255        { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
8256        { "kind" : "IdRef",             "name" : "'Value'" }
8257      ],
8258      "capabilities" : [ "AtomicFloat16AddEXT", "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ],
8259      "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
8260      "version" : "None"
8261    },
8262    {
8263      "opname" : "OpTypeBufferSurfaceINTEL",
8264      "class"  : "Type-Declaration",
8265      "opcode" : 6086,
8266      "operands" : [
8267        { "kind" : "IdResult" },
8268        {
8269          "kind" : "AccessQualifier",
8270          "name" : "'AccessQualifier'"
8271        }
8272      ],
8273      "capabilities" : [ "VectorComputeINTEL" ],
8274      "version" : "None"
8275    },
8276    {
8277      "opname" : "OpTypeStructContinuedINTEL",
8278      "class"  : "Type-Declaration",
8279      "opcode" : 6090,
8280      "operands" : [
8281        { "kind" : "IdRef",    "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
8282      ],
8283      "capabilities" : [ "LongConstantCompositeINTEL" ],
8284      "version" : "None"
8285    },
8286    {
8287      "opname" : "OpConstantCompositeContinuedINTEL",
8288      "class"  : "Constant-Creation",
8289      "opcode" : 6091,
8290      "operands" : [
8291        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
8292      ],
8293      "capabilities" : [ "LongConstantCompositeINTEL" ],
8294      "version" : "None"
8295    },
8296    {
8297      "opname" : "OpSpecConstantCompositeContinuedINTEL",
8298      "class"  : "Constant-Creation",
8299      "opcode" : 6092,
8300      "operands" : [
8301        { "kind" : "IdRef",        "quantifier" : "*", "name" : "'Constituents'" }
8302      ],
8303      "capabilities" : [ "LongConstantCompositeINTEL" ],
8304      "version" : "None"
8305    }
8306  ],
8307  "operand_kinds" : [
8308    {
8309      "category" : "BitEnum",
8310      "kind" : "ImageOperands",
8311      "enumerants" : [
8312        {
8313          "enumerant" : "None",
8314          "value" : "0x0000"
8315        },
8316        {
8317          "enumerant" : "Bias",
8318          "value" : "0x0001",
8319          "capabilities" : [ "Shader" ],
8320          "parameters" : [
8321            { "kind" : "IdRef" }
8322          ]
8323        },
8324        {
8325          "enumerant" : "Lod",
8326          "value" : "0x0002",
8327          "parameters" : [
8328            { "kind" : "IdRef" }
8329          ]
8330        },
8331        {
8332          "enumerant" : "Grad",
8333          "value" : "0x0004",
8334          "parameters" : [
8335            { "kind" : "IdRef" },
8336            { "kind" : "IdRef" }
8337          ]
8338        },
8339        {
8340          "enumerant" : "ConstOffset",
8341          "value" : "0x0008",
8342          "parameters" : [
8343            { "kind" : "IdRef" }
8344          ]
8345        },
8346        {
8347          "enumerant" : "Offset",
8348          "value" : "0x0010",
8349          "capabilities" : [ "ImageGatherExtended" ],
8350          "parameters" : [
8351            { "kind" : "IdRef" }
8352          ]
8353        },
8354        {
8355          "enumerant" : "ConstOffsets",
8356          "value" : "0x0020",
8357          "capabilities" : [ "ImageGatherExtended" ],
8358          "parameters" : [
8359            { "kind" : "IdRef" }
8360          ]
8361        },
8362        {
8363          "enumerant" : "Sample",
8364          "value" : "0x0040",
8365          "parameters" : [
8366            { "kind" : "IdRef" }
8367          ]
8368        },
8369        {
8370          "enumerant" : "MinLod",
8371          "value" : "0x0080",
8372          "capabilities" : [ "MinLod" ],
8373          "parameters" : [
8374            { "kind" : "IdRef" }
8375          ]
8376        },
8377        {
8378          "enumerant" : "MakeTexelAvailable",
8379          "value" : "0x0100",
8380          "capabilities" : [ "VulkanMemoryModel" ],
8381          "parameters" : [
8382            { "kind" : "IdScope" }
8383          ],
8384          "version" : "1.5"
8385        },
8386        {
8387          "enumerant" : "MakeTexelAvailableKHR",
8388          "value" : "0x0100",
8389          "capabilities" : [ "VulkanMemoryModel" ],
8390          "parameters" : [
8391            { "kind" : "IdScope" }
8392          ],
8393          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8394          "version" : "1.5"
8395        },
8396        {
8397          "enumerant" : "MakeTexelVisible",
8398          "value" : "0x0200",
8399          "capabilities" : [ "VulkanMemoryModel" ],
8400          "parameters" : [
8401            { "kind" : "IdScope" }
8402          ],
8403          "version" : "1.5"
8404        },
8405        {
8406          "enumerant" : "MakeTexelVisibleKHR",
8407          "value" : "0x0200",
8408          "capabilities" : [ "VulkanMemoryModel" ],
8409          "parameters" : [
8410            { "kind" : "IdScope" }
8411          ],
8412          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8413          "version" : "1.5"
8414        },
8415        {
8416          "enumerant" : "NonPrivateTexel",
8417          "value" : "0x0400",
8418          "capabilities" : [ "VulkanMemoryModel" ],
8419          "version" : "1.5"
8420        },
8421        {
8422          "enumerant" : "NonPrivateTexelKHR",
8423          "value" : "0x0400",
8424          "capabilities" : [ "VulkanMemoryModel" ],
8425          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8426          "version" : "1.5"
8427        },
8428        {
8429          "enumerant" : "VolatileTexel",
8430          "value" : "0x0800",
8431          "capabilities" : [ "VulkanMemoryModel" ],
8432          "version" : "1.5"
8433        },
8434        {
8435          "enumerant" : "VolatileTexelKHR",
8436          "value" : "0x0800",
8437          "capabilities" : [ "VulkanMemoryModel" ],
8438          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8439          "version" : "1.5"
8440        },
8441        {
8442          "enumerant" : "SignExtend",
8443          "value" : "0x1000",
8444          "version" : "1.4"
8445        },
8446        {
8447          "enumerant" : "ZeroExtend",
8448          "value" : "0x2000",
8449          "version" : "1.4"
8450        }
8451      ]
8452    },
8453    {
8454      "category" : "BitEnum",
8455      "kind" : "FPFastMathMode",
8456      "enumerants" : [
8457        {
8458          "enumerant" : "None",
8459          "value" : "0x0000"
8460        },
8461        {
8462          "enumerant" : "NotNaN",
8463          "value" : "0x0001",
8464          "capabilities" : [ "Kernel" ]
8465        },
8466        {
8467          "enumerant" : "NotInf",
8468          "value" : "0x0002",
8469          "capabilities" : [ "Kernel" ]
8470        },
8471        {
8472          "enumerant" : "NSZ",
8473          "value" : "0x0004",
8474          "capabilities" : [ "Kernel" ]
8475        },
8476        {
8477          "enumerant" : "AllowRecip",
8478          "value" : "0x0008",
8479          "capabilities" : [ "Kernel" ]
8480        },
8481        {
8482          "enumerant" : "Fast",
8483          "value" : "0x0010",
8484          "capabilities" : [ "Kernel" ]
8485        },
8486        {
8487          "enumerant" : "AllowContractFastINTEL",
8488          "value" : "0x10000",
8489          "capabilities" : [ "FPFastMathModeINTEL" ],
8490	  "version" : "None"
8491        },
8492        {
8493          "enumerant" : "AllowReassocINTEL",
8494          "value" : "0x20000",
8495          "capabilities" : [ "FPFastMathModeINTEL" ],
8496	  "version" : "None"
8497        }
8498      ]
8499    },
8500    {
8501      "category" : "BitEnum",
8502      "kind" : "SelectionControl",
8503      "enumerants" : [
8504        {
8505          "enumerant" : "None",
8506          "value" : "0x0000"
8507        },
8508        {
8509          "enumerant" : "Flatten",
8510          "value" : "0x0001"
8511        },
8512        {
8513          "enumerant" : "DontFlatten",
8514          "value" : "0x0002"
8515        }
8516      ]
8517    },
8518    {
8519      "category" : "BitEnum",
8520      "kind" : "LoopControl",
8521      "enumerants" : [
8522        {
8523          "enumerant" : "None",
8524          "value" : "0x0000"
8525        },
8526        {
8527          "enumerant" : "Unroll",
8528          "value" : "0x0001"
8529        },
8530        {
8531          "enumerant" : "DontUnroll",
8532          "value" : "0x0002"
8533        },
8534        {
8535          "enumerant" : "DependencyInfinite",
8536          "value" : "0x0004",
8537          "version" : "1.1"
8538        },
8539        {
8540          "enumerant" : "DependencyLength",
8541          "value" : "0x0008",
8542          "parameters" : [
8543            { "kind" : "LiteralInteger" }
8544          ],
8545          "version" : "1.1"
8546        },
8547        {
8548          "enumerant" : "MinIterations",
8549          "value" : "0x0010",
8550          "parameters" : [
8551            { "kind" : "LiteralInteger" }
8552          ],
8553          "version" : "1.4"
8554        },
8555        {
8556          "enumerant" : "MaxIterations",
8557          "value" : "0x0020",
8558          "parameters" : [
8559            { "kind" : "LiteralInteger" }
8560          ],
8561          "version" : "1.4"
8562        },
8563        {
8564          "enumerant" : "IterationMultiple",
8565          "value" : "0x0040",
8566          "parameters" : [
8567            { "kind" : "LiteralInteger" }
8568          ],
8569          "version" : "1.4"
8570        },
8571        {
8572          "enumerant" : "PeelCount",
8573          "value" : "0x0080",
8574          "parameters" : [
8575            { "kind" : "LiteralInteger" }
8576          ],
8577          "version" : "1.4"
8578        },
8579        {
8580          "enumerant" : "PartialCount",
8581          "value" : "0x0100",
8582          "parameters" : [
8583            { "kind" : "LiteralInteger" }
8584          ],
8585          "version" : "1.4"
8586        },
8587        {
8588          "enumerant" : "InitiationIntervalINTEL",
8589          "value" : "0x10000",
8590          "parameters" : [
8591            { "kind" : "LiteralInteger" }
8592          ],
8593          "capabilities" : [ "FPGALoopControlsINTEL" ],
8594          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8595          "version" : "None"
8596        },
8597        {
8598          "enumerant" : "MaxConcurrencyINTEL",
8599          "value" : "0x20000",
8600          "parameters" : [
8601            { "kind" : "LiteralInteger" }
8602          ],
8603          "capabilities" : [ "FPGALoopControlsINTEL" ],
8604          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8605          "version" : "None"
8606        },
8607        {
8608          "enumerant" : "DependencyArrayINTEL",
8609          "value" : "0x40000",
8610          "parameters" : [
8611            { "kind" : "LiteralInteger" }
8612          ],
8613          "capabilities" : [ "FPGALoopControlsINTEL" ],
8614          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8615          "version" : "None"
8616        },
8617        {
8618          "enumerant" : "PipelineEnableINTEL",
8619          "value" : "0x80000",
8620          "parameters" : [
8621            { "kind" : "LiteralInteger" }
8622          ],
8623          "capabilities" : [ "FPGALoopControlsINTEL" ],
8624          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8625          "version" : "None"
8626        },
8627        {
8628          "enumerant" : "LoopCoalesceINTEL",
8629          "value" : "0x100000",
8630          "parameters" : [
8631            { "kind" : "LiteralInteger" }
8632          ],
8633          "capabilities" : [ "FPGALoopControlsINTEL" ],
8634          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8635          "version" : "None"
8636        },
8637        {
8638          "enumerant" : "MaxInterleavingINTEL",
8639          "value" : "0x200000",
8640          "parameters" : [
8641            { "kind" : "LiteralInteger" }
8642          ],
8643          "capabilities" : [ "FPGALoopControlsINTEL" ],
8644          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8645          "version" : "None"
8646        },
8647        {
8648          "enumerant" : "SpeculatedIterationsINTEL",
8649          "value" : "0x400000",
8650          "parameters" : [
8651            { "kind" : "LiteralInteger" }
8652          ],
8653          "capabilities" : [ "FPGALoopControlsINTEL" ],
8654          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8655          "version" : "None"
8656        },
8657        {
8658          "enumerant" : "NoFusionINTEL",
8659          "value" : "0x800000",
8660          "parameters" : [
8661            { "kind" : "LiteralInteger" }
8662          ],
8663          "capabilities" : [ "FPGALoopControlsINTEL" ],
8664          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
8665          "version" : "None"
8666        }
8667      ]
8668    },
8669    {
8670      "category" : "BitEnum",
8671      "kind" : "FunctionControl",
8672      "enumerants" : [
8673        {
8674          "enumerant" : "None",
8675          "value" : "0x0000"
8676        },
8677        {
8678          "enumerant" : "Inline",
8679          "value" : "0x0001"
8680        },
8681        {
8682          "enumerant" : "DontInline",
8683          "value" : "0x0002"
8684        },
8685        {
8686          "enumerant" : "Pure",
8687          "value" : "0x0004"
8688        },
8689        {
8690          "enumerant" : "Const",
8691          "value" : "0x0008"
8692        },
8693        {
8694          "enumerant" : "OptNoneINTEL",
8695          "value" : "0x10000"
8696        }
8697      ]
8698    },
8699    {
8700      "category" : "BitEnum",
8701      "kind" : "MemorySemantics",
8702      "enumerants" : [
8703        {
8704          "enumerant" : "Relaxed",
8705          "value" : "0x0000"
8706        },
8707        {
8708          "enumerant" : "None",
8709          "value" : "0x0000"
8710        },
8711        {
8712          "enumerant" : "Acquire",
8713          "value" : "0x0002"
8714        },
8715        {
8716          "enumerant" : "Release",
8717          "value" : "0x0004"
8718        },
8719        {
8720          "enumerant" : "AcquireRelease",
8721          "value" : "0x0008"
8722        },
8723        {
8724          "enumerant" : "SequentiallyConsistent",
8725          "value" : "0x0010"
8726        },
8727        {
8728          "enumerant" : "UniformMemory",
8729          "value" : "0x0040",
8730          "capabilities" : [ "Shader" ]
8731        },
8732        {
8733          "enumerant" : "SubgroupMemory",
8734          "value" : "0x0080"
8735        },
8736        {
8737          "enumerant" : "WorkgroupMemory",
8738          "value" : "0x0100"
8739        },
8740        {
8741          "enumerant" : "CrossWorkgroupMemory",
8742          "value" : "0x0200"
8743        },
8744        {
8745          "enumerant" : "AtomicCounterMemory",
8746          "value" : "0x0400",
8747          "capabilities" : [ "AtomicStorage" ]
8748        },
8749        {
8750          "enumerant" : "ImageMemory",
8751          "value" : "0x0800"
8752        },
8753        {
8754          "enumerant" : "OutputMemory",
8755          "value" : "0x1000",
8756          "capabilities" : [ "VulkanMemoryModel" ],
8757          "version" : "1.5"
8758        },
8759        {
8760          "enumerant" : "OutputMemoryKHR",
8761          "value" : "0x1000",
8762          "capabilities" : [ "VulkanMemoryModel" ],
8763          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8764          "version" : "1.5"
8765        },
8766        {
8767          "enumerant" : "MakeAvailable",
8768          "value" : "0x2000",
8769          "capabilities" : [ "VulkanMemoryModel" ],
8770          "version" : "1.5"
8771        },
8772        {
8773          "enumerant" : "MakeAvailableKHR",
8774          "value" : "0x2000",
8775          "capabilities" : [ "VulkanMemoryModel" ],
8776          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8777          "version" : "1.5"
8778        },
8779        {
8780          "enumerant" : "MakeVisible",
8781          "value" : "0x4000",
8782          "capabilities" : [ "VulkanMemoryModel" ],
8783          "version" : "1.5"
8784        },
8785        {
8786          "enumerant" : "MakeVisibleKHR",
8787          "value" : "0x4000",
8788          "capabilities" : [ "VulkanMemoryModel" ],
8789          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8790          "version" : "1.5"
8791        },
8792        {
8793          "enumerant" : "Volatile",
8794          "value" : "0x8000",
8795          "capabilities" : [ "VulkanMemoryModel" ],
8796          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8797          "version" : "1.5"
8798        }
8799      ]
8800    },
8801    {
8802      "category" : "BitEnum",
8803      "kind" : "MemoryAccess",
8804      "enumerants" : [
8805        {
8806          "enumerant" : "None",
8807          "value" : "0x0000"
8808        },
8809        {
8810          "enumerant" : "Volatile",
8811          "value" : "0x0001"
8812        },
8813        {
8814          "enumerant" : "Aligned",
8815          "value" : "0x0002",
8816          "parameters" : [
8817            { "kind" : "LiteralInteger" }
8818          ]
8819        },
8820        {
8821          "enumerant" : "Nontemporal",
8822          "value" : "0x0004"
8823        },
8824        {
8825          "enumerant" : "MakePointerAvailable",
8826          "value" : "0x0008",
8827          "parameters" : [
8828            { "kind" : "IdScope" }
8829          ],
8830          "capabilities" : [ "VulkanMemoryModel" ],
8831          "version" : "1.5"
8832        },
8833        {
8834          "enumerant" : "MakePointerAvailableKHR",
8835          "value" : "0x0008",
8836          "parameters" : [
8837            { "kind" : "IdScope" }
8838          ],
8839          "capabilities" : [ "VulkanMemoryModel" ],
8840          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8841          "version" : "1.5"
8842        },
8843        {
8844          "enumerant" : "MakePointerVisible",
8845          "value" : "0x0010",
8846          "parameters" : [
8847            { "kind" : "IdScope" }
8848          ],
8849          "capabilities" : [ "VulkanMemoryModel" ],
8850          "version" : "1.5"
8851        },
8852        {
8853          "enumerant" : "MakePointerVisibleKHR",
8854          "value" : "0x0010",
8855          "parameters" : [
8856            { "kind" : "IdScope" }
8857          ],
8858          "capabilities" : [ "VulkanMemoryModel" ],
8859          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8860          "version" : "1.5"
8861        },
8862        {
8863          "enumerant" : "NonPrivatePointer",
8864          "value" : "0x0020",
8865          "capabilities" : [ "VulkanMemoryModel" ],
8866          "version" : "1.5"
8867        },
8868        {
8869          "enumerant" : "NonPrivatePointerKHR",
8870          "value" : "0x0020",
8871          "capabilities" : [ "VulkanMemoryModel" ],
8872          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
8873          "version" : "1.5"
8874        }
8875      ]
8876    },
8877    {
8878      "category" : "BitEnum",
8879      "kind" : "KernelProfilingInfo",
8880      "enumerants" : [
8881        {
8882          "enumerant" : "None",
8883          "value" : "0x0000"
8884        },
8885        {
8886          "enumerant" : "CmdExecTime",
8887          "value" : "0x0001",
8888          "capabilities" : [ "Kernel" ]
8889        }
8890      ]
8891    },
8892    {
8893      "category" : "BitEnum",
8894      "kind" : "RayFlags",
8895      "enumerants" : [
8896        {
8897          "enumerant" : "NoneKHR",
8898          "value" : "0x0000",
8899          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8900          "version" : "None"
8901        },
8902        {
8903          "enumerant" : "OpaqueKHR",
8904          "value" : "0x0001",
8905          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8906          "version" : "None"
8907        },
8908        {
8909          "enumerant" : "NoOpaqueKHR",
8910          "value" : "0x0002",
8911          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8912          "version" : "None"
8913        },
8914        {
8915          "enumerant" : "TerminateOnFirstHitKHR",
8916          "value" : "0x0004",
8917          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8918          "version" : "None"
8919        },
8920        {
8921          "enumerant" : "SkipClosestHitShaderKHR",
8922          "value" : "0x0008",
8923          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8924          "version" : "None"
8925        },
8926        {
8927          "enumerant" : "CullBackFacingTrianglesKHR",
8928          "value" : "0x0010",
8929          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8930          "version" : "None"
8931        },
8932        {
8933          "enumerant" : "CullFrontFacingTrianglesKHR",
8934          "value" : "0x0020",
8935          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8936          "version" : "None"
8937        },
8938        {
8939          "enumerant" : "CullOpaqueKHR",
8940          "value" : "0x0040",
8941          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8942          "version" : "None"
8943        },
8944        {
8945          "enumerant" : "CullNoOpaqueKHR",
8946          "value" : "0x0080",
8947          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
8948          "version" : "None"
8949        },
8950        {
8951          "enumerant" : "SkipTrianglesKHR",
8952          "value" : "0x0100",
8953          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
8954          "version" : "None"
8955        },
8956        {
8957          "enumerant" : "SkipAABBsKHR",
8958          "value" : "0x0200",
8959          "capabilities" : [ "RayTraversalPrimitiveCullingKHR" ],
8960          "version" : "None"
8961        }
8962      ]
8963    },
8964    {
8965      "category" : "BitEnum",
8966      "kind" : "FragmentShadingRate",
8967      "enumerants" : [
8968        {
8969          "enumerant" : "Vertical2Pixels",
8970          "value" : "0x0001",
8971          "capabilities" : [ "FragmentShadingRateKHR" ],
8972          "version" : "None"
8973        },
8974        {
8975          "enumerant" : "Vertical4Pixels",
8976          "value" : "0x0002",
8977          "capabilities" : [ "FragmentShadingRateKHR" ],
8978          "version" : "None"
8979        },
8980        {
8981          "enumerant" : "Horizontal2Pixels",
8982          "value" : "0x0004",
8983          "capabilities" : [ "FragmentShadingRateKHR" ],
8984          "version" : "None"
8985        },
8986        {
8987          "enumerant" : "Horizontal4Pixels",
8988          "value" : "0x0008",
8989          "capabilities" : [ "FragmentShadingRateKHR" ],
8990          "version" : "None"
8991        }
8992      ]
8993    },
8994    {
8995      "category" : "ValueEnum",
8996      "kind" : "SourceLanguage",
8997      "enumerants" : [
8998        {
8999          "enumerant" : "Unknown",
9000          "value" : 0
9001        },
9002        {
9003          "enumerant" : "ESSL",
9004          "value" : 1
9005        },
9006        {
9007          "enumerant" : "GLSL",
9008          "value" : 2
9009        },
9010        {
9011          "enumerant" : "OpenCL_C",
9012          "value" : 3
9013        },
9014        {
9015          "enumerant" : "OpenCL_CPP",
9016          "value" : 4
9017        },
9018        {
9019          "enumerant" : "HLSL",
9020          "value" : 5
9021        },
9022        {
9023          "enumerant" : "CPP_for_OpenCL",
9024          "value" : 6
9025        }
9026      ]
9027    },
9028    {
9029      "category" : "ValueEnum",
9030      "kind" : "ExecutionModel",
9031      "enumerants" : [
9032        {
9033          "enumerant" : "Vertex",
9034          "value" : 0,
9035          "capabilities" : [ "Shader" ]
9036        },
9037        {
9038          "enumerant" : "TessellationControl",
9039          "value" : 1,
9040          "capabilities" : [ "Tessellation" ]
9041        },
9042        {
9043          "enumerant" : "TessellationEvaluation",
9044          "value" : 2,
9045          "capabilities" : [ "Tessellation" ]
9046        },
9047        {
9048          "enumerant" : "Geometry",
9049          "value" : 3,
9050          "capabilities" : [ "Geometry" ]
9051        },
9052        {
9053          "enumerant" : "Fragment",
9054          "value" : 4,
9055          "capabilities" : [ "Shader" ]
9056        },
9057        {
9058          "enumerant" : "GLCompute",
9059          "value" : 5,
9060          "capabilities" : [ "Shader" ]
9061        },
9062        {
9063          "enumerant" : "Kernel",
9064          "value" : 6,
9065          "capabilities" : [ "Kernel" ]
9066        },
9067        {
9068          "enumerant" : "TaskNV",
9069          "value" : 5267,
9070          "capabilities" : [ "MeshShadingNV" ],
9071          "version" : "None"
9072        },
9073        {
9074          "enumerant" : "MeshNV",
9075          "value" : 5268,
9076          "capabilities" : [ "MeshShadingNV" ],
9077          "version" : "None"
9078        },
9079        {
9080          "enumerant" : "RayGenerationNV",
9081          "value" : 5313,
9082          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9083          "version" : "None"
9084        },
9085        {
9086          "enumerant" : "RayGenerationKHR",
9087          "value" : 5313,
9088          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9089          "version" : "None"
9090        },
9091        {
9092          "enumerant" : "IntersectionNV",
9093          "value" : 5314,
9094          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9095          "version" : "None"
9096        },
9097        {
9098          "enumerant" : "IntersectionKHR",
9099          "value" : 5314,
9100          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9101          "version" : "None"
9102        },
9103        {
9104          "enumerant" : "AnyHitNV",
9105          "value" : 5315,
9106          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9107          "version" : "None"
9108        },
9109        {
9110          "enumerant" : "AnyHitKHR",
9111          "value" : 5315,
9112          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9113          "version" : "None"
9114        },
9115        {
9116          "enumerant" : "ClosestHitNV",
9117          "value" : 5316,
9118          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9119          "version" : "None"
9120        },
9121        {
9122          "enumerant" : "ClosestHitKHR",
9123          "value" : 5316,
9124          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9125          "version" : "None"
9126        },
9127        {
9128          "enumerant" : "MissNV",
9129          "value" : 5317,
9130          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9131          "version" : "None"
9132        },
9133        {
9134          "enumerant" : "MissKHR",
9135          "value" : 5317,
9136          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9137          "version" : "None"
9138        },
9139        {
9140          "enumerant" : "CallableNV",
9141          "value" : 5318,
9142          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9143          "version" : "None"
9144        },
9145        {
9146          "enumerant" : "CallableKHR",
9147          "value" : 5318,
9148          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9149          "version" : "None"
9150        }
9151      ]
9152    },
9153    {
9154      "category" : "ValueEnum",
9155      "kind" : "AddressingModel",
9156      "enumerants" : [
9157        {
9158          "enumerant" : "Logical",
9159          "value" : 0
9160        },
9161        {
9162          "enumerant" : "Physical32",
9163          "value" : 1,
9164          "capabilities" : [ "Addresses" ]
9165        },
9166        {
9167          "enumerant" : "Physical64",
9168          "value" : 2,
9169          "capabilities" : [ "Addresses" ]
9170        },
9171        {
9172          "enumerant" : "PhysicalStorageBuffer64",
9173          "value" : 5348,
9174          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
9175          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9176          "version" : "1.5"
9177        },
9178        {
9179          "enumerant" : "PhysicalStorageBuffer64EXT",
9180          "value" : 5348,
9181          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9182          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9183          "version" : "1.5"
9184        }
9185      ]
9186    },
9187    {
9188      "category" : "ValueEnum",
9189      "kind" : "MemoryModel",
9190      "enumerants" : [
9191        {
9192          "enumerant" : "Simple",
9193          "value" : 0,
9194          "capabilities" : [ "Shader" ]
9195        },
9196        {
9197          "enumerant" : "GLSL450",
9198          "value" : 1,
9199          "capabilities" : [ "Shader" ]
9200        },
9201        {
9202          "enumerant" : "OpenCL",
9203          "value" : 2,
9204          "capabilities" : [ "Kernel" ]
9205        },
9206        {
9207          "enumerant" : "Vulkan",
9208          "value" : 3,
9209          "capabilities" : [ "VulkanMemoryModel" ],
9210          "version" : "1.5"
9211        },
9212        {
9213          "enumerant" : "VulkanKHR",
9214          "value" : 3,
9215          "capabilities" : [ "VulkanMemoryModel" ],
9216          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9217          "version" : "1.5"
9218        }
9219      ]
9220    },
9221    {
9222      "category" : "ValueEnum",
9223      "kind" : "ExecutionMode",
9224      "enumerants" : [
9225        {
9226          "enumerant" : "Invocations",
9227          "value" : 0,
9228          "capabilities" : [ "Geometry" ],
9229          "parameters" : [
9230            { "kind" : "LiteralInteger", "name" : "'Number of <<Invocation,invocations>>'" }
9231          ]
9232        },
9233        {
9234          "enumerant" : "SpacingEqual",
9235          "value" : 1,
9236          "capabilities" : [ "Tessellation" ]
9237        },
9238        {
9239          "enumerant" : "SpacingFractionalEven",
9240          "value" : 2,
9241          "capabilities" : [ "Tessellation" ]
9242        },
9243        {
9244          "enumerant" : "SpacingFractionalOdd",
9245          "value" : 3,
9246          "capabilities" : [ "Tessellation" ]
9247        },
9248        {
9249          "enumerant" : "VertexOrderCw",
9250          "value" : 4,
9251          "capabilities" : [ "Tessellation" ]
9252        },
9253        {
9254          "enumerant" : "VertexOrderCcw",
9255          "value" : 5,
9256          "capabilities" : [ "Tessellation" ]
9257        },
9258        {
9259          "enumerant" : "PixelCenterInteger",
9260          "value" : 6,
9261          "capabilities" : [ "Shader" ]
9262        },
9263        {
9264          "enumerant" : "OriginUpperLeft",
9265          "value" : 7,
9266          "capabilities" : [ "Shader" ]
9267        },
9268        {
9269          "enumerant" : "OriginLowerLeft",
9270          "value" : 8,
9271          "capabilities" : [ "Shader" ]
9272        },
9273        {
9274          "enumerant" : "EarlyFragmentTests",
9275          "value" : 9,
9276          "capabilities" : [ "Shader" ]
9277        },
9278        {
9279          "enumerant" : "PointMode",
9280          "value" : 10,
9281          "capabilities" : [ "Tessellation" ]
9282        },
9283        {
9284          "enumerant" : "Xfb",
9285          "value" : 11,
9286          "capabilities" : [ "TransformFeedback" ]
9287        },
9288        {
9289          "enumerant" : "DepthReplacing",
9290          "value" : 12,
9291          "capabilities" : [ "Shader" ]
9292        },
9293        {
9294          "enumerant" : "DepthGreater",
9295          "value" : 14,
9296          "capabilities" : [ "Shader" ]
9297        },
9298        {
9299          "enumerant" : "DepthLess",
9300          "value" : 15,
9301          "capabilities" : [ "Shader" ]
9302        },
9303        {
9304          "enumerant" : "DepthUnchanged",
9305          "value" : 16,
9306          "capabilities" : [ "Shader" ]
9307        },
9308        {
9309          "enumerant" : "LocalSize",
9310          "value" : 17,
9311          "parameters" : [
9312            { "kind" : "LiteralInteger", "name" : "'x size'" },
9313            { "kind" : "LiteralInteger", "name" : "'y size'" },
9314            { "kind" : "LiteralInteger", "name" : "'z size'" }
9315          ]
9316        },
9317        {
9318          "enumerant" : "LocalSizeHint",
9319          "value" : 18,
9320          "capabilities" : [ "Kernel" ],
9321          "parameters" : [
9322            { "kind" : "LiteralInteger", "name" : "'x size'" },
9323            { "kind" : "LiteralInteger", "name" : "'y size'" },
9324            { "kind" : "LiteralInteger", "name" : "'z size'" }
9325          ]
9326        },
9327        {
9328          "enumerant" : "InputPoints",
9329          "value" : 19,
9330          "capabilities" : [ "Geometry" ]
9331        },
9332        {
9333          "enumerant" : "InputLines",
9334          "value" : 20,
9335          "capabilities" : [ "Geometry" ]
9336        },
9337        {
9338          "enumerant" : "InputLinesAdjacency",
9339          "value" : 21,
9340          "capabilities" : [ "Geometry" ]
9341        },
9342        {
9343          "enumerant" : "Triangles",
9344          "value" : 22,
9345          "capabilities" : [ "Geometry", "Tessellation" ]
9346        },
9347        {
9348          "enumerant" : "InputTrianglesAdjacency",
9349          "value" : 23,
9350          "capabilities" : [ "Geometry" ]
9351        },
9352        {
9353          "enumerant" : "Quads",
9354          "value" : 24,
9355          "capabilities" : [ "Tessellation" ]
9356        },
9357        {
9358          "enumerant" : "Isolines",
9359          "value" : 25,
9360          "capabilities" : [ "Tessellation" ]
9361        },
9362        {
9363          "enumerant" : "OutputVertices",
9364          "value" : 26,
9365          "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV" ],
9366          "parameters" : [
9367            { "kind" : "LiteralInteger", "name" : "'Vertex count'" }
9368          ]
9369        },
9370        {
9371          "enumerant" : "OutputPoints",
9372          "value" : 27,
9373          "capabilities" : [ "Geometry", "MeshShadingNV" ]
9374        },
9375        {
9376          "enumerant" : "OutputLineStrip",
9377          "value" : 28,
9378          "capabilities" : [ "Geometry" ]
9379        },
9380        {
9381          "enumerant" : "OutputTriangleStrip",
9382          "value" : 29,
9383          "capabilities" : [ "Geometry" ]
9384        },
9385        {
9386          "enumerant" : "VecTypeHint",
9387          "value" : 30,
9388          "capabilities" : [ "Kernel" ],
9389          "parameters" : [
9390            { "kind" : "LiteralInteger", "name" : "'Vector type'" }
9391          ]
9392        },
9393        {
9394          "enumerant" : "ContractionOff",
9395          "value" : 31,
9396          "capabilities" : [ "Kernel" ]
9397        },
9398        {
9399          "enumerant" : "Initializer",
9400          "value" : 33,
9401          "capabilities" : [ "Kernel" ],
9402          "version" : "1.1"
9403        },
9404        {
9405          "enumerant" : "Finalizer",
9406          "value" : 34,
9407          "capabilities" : [ "Kernel" ],
9408          "version" : "1.1"
9409        },
9410        {
9411          "enumerant" : "SubgroupSize",
9412          "value" : 35,
9413          "capabilities" : [ "SubgroupDispatch" ],
9414          "parameters" : [
9415            { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
9416          ],
9417          "version" : "1.1"
9418        },
9419        {
9420          "enumerant" : "SubgroupsPerWorkgroup",
9421          "value" : 36,
9422          "capabilities" : [ "SubgroupDispatch" ],
9423          "parameters" : [
9424            { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
9425          ],
9426          "version" : "1.1"
9427        },
9428        {
9429          "enumerant" : "SubgroupsPerWorkgroupId",
9430          "value" : 37,
9431          "capabilities" : [ "SubgroupDispatch" ],
9432          "parameters" : [
9433            { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
9434          ],
9435          "version" : "1.2"
9436        },
9437        {
9438          "enumerant" : "LocalSizeId",
9439          "value" : 38,
9440          "parameters" : [
9441            { "kind" : "IdRef", "name" : "'x size'" },
9442            { "kind" : "IdRef", "name" : "'y size'" },
9443            { "kind" : "IdRef", "name" : "'z size'" }
9444          ],
9445          "version" : "1.2"
9446        },
9447        {
9448          "enumerant" : "LocalSizeHintId",
9449          "value" : 39,
9450          "capabilities" : [ "Kernel" ],
9451          "parameters" : [
9452            { "kind" : "IdRef", "name" : "'x size hint'" },
9453            { "kind" : "IdRef", "name" : "'y size hint'" },
9454            { "kind" : "IdRef", "name" : "'z size hint'" }
9455          ],
9456          "version" : "1.2"
9457        },
9458        {
9459          "enumerant" : "SubgroupUniformControlFlowKHR",
9460          "value" : 4421,
9461          "capabilities" : [ "Shader" ],
9462          "extensions" : [ "SPV_KHR_subgroup_uniform_control_flow" ],
9463          "version" : "None"
9464        },
9465        {
9466          "enumerant" : "PostDepthCoverage",
9467          "value" : 4446,
9468          "capabilities" : [ "SampleMaskPostDepthCoverage" ],
9469          "extensions" : [ "SPV_KHR_post_depth_coverage" ],
9470          "version" : "None"
9471        },
9472        {
9473          "enumerant" : "DenormPreserve",
9474          "value" : 4459,
9475          "capabilities" : [ "DenormPreserve" ],
9476          "extensions" : [ "SPV_KHR_float_controls" ],
9477          "parameters" : [
9478            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9479          ],
9480          "version" : "1.4"
9481        },
9482        {
9483          "enumerant" : "DenormFlushToZero",
9484          "value" : 4460,
9485          "capabilities" : [ "DenormFlushToZero" ],
9486          "extensions" : [ "SPV_KHR_float_controls" ],
9487          "parameters" : [
9488            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9489          ],
9490          "version" : "1.4"
9491        },
9492        {
9493          "enumerant" : "SignedZeroInfNanPreserve",
9494          "value" : 4461,
9495          "capabilities" : [ "SignedZeroInfNanPreserve" ],
9496          "extensions" : [ "SPV_KHR_float_controls" ],
9497          "parameters" : [
9498            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9499          ],
9500          "version" : "1.4"
9501        },
9502        {
9503          "enumerant" : "RoundingModeRTE",
9504          "value" : 4462,
9505          "capabilities" : [ "RoundingModeRTE" ],
9506          "extensions" : [ "SPV_KHR_float_controls" ],
9507          "parameters" : [
9508            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9509          ],
9510          "version" : "1.4"
9511        },
9512        {
9513          "enumerant" : "RoundingModeRTZ",
9514          "value" : 4463,
9515          "capabilities" : [ "RoundingModeRTZ" ],
9516          "extensions" : [ "SPV_KHR_float_controls" ],
9517          "parameters" : [
9518            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9519          ],
9520          "version" : "1.4"
9521        },
9522        {
9523          "enumerant" : "StencilRefReplacingEXT",
9524          "value" : 5027,
9525          "capabilities" : [ "StencilExportEXT" ],
9526          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
9527          "version" : "None"
9528        },
9529        {
9530          "enumerant" : "OutputLinesNV",
9531          "value" : 5269,
9532          "capabilities" : [ "MeshShadingNV" ],
9533          "extensions" : [ "SPV_NV_mesh_shader" ],
9534          "version" : "None"
9535        },
9536        {
9537          "enumerant" : "OutputPrimitivesNV",
9538          "value" : 5270,
9539          "capabilities" : [ "MeshShadingNV" ],
9540          "parameters" : [
9541            { "kind" : "LiteralInteger", "name" : "'Primitive count'" }
9542          ],
9543          "extensions" : [ "SPV_NV_mesh_shader" ],
9544          "version" : "None"
9545        },
9546        {
9547          "enumerant" : "DerivativeGroupQuadsNV",
9548          "value" : 5289,
9549          "capabilities" : [ "ComputeDerivativeGroupQuadsNV" ],
9550          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
9551          "version" : "None"
9552        },
9553        {
9554          "enumerant" : "DerivativeGroupLinearNV",
9555          "value" : 5290,
9556          "capabilities" : [ "ComputeDerivativeGroupLinearNV" ],
9557          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
9558          "version" : "None"
9559        },
9560        {
9561          "enumerant" : "OutputTrianglesNV",
9562          "value" : 5298,
9563          "capabilities" : [ "MeshShadingNV" ],
9564          "extensions" : [ "SPV_NV_mesh_shader" ],
9565          "version" : "None"
9566        },
9567        {
9568          "enumerant" : "PixelInterlockOrderedEXT",
9569          "value" : 5366,
9570          "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
9571          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9572          "version" : "None"
9573        },
9574        {
9575          "enumerant" : "PixelInterlockUnorderedEXT",
9576          "value" : 5367,
9577          "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
9578          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9579          "version" : "None"
9580        },
9581        {
9582          "enumerant" : "SampleInterlockOrderedEXT",
9583          "value" : 5368,
9584          "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
9585          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9586          "version" : "None"
9587        },
9588        {
9589          "enumerant" : "SampleInterlockUnorderedEXT",
9590          "value" : 5369,
9591          "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
9592          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9593          "version" : "None"
9594        },
9595        {
9596          "enumerant" : "ShadingRateInterlockOrderedEXT",
9597          "value" : 5370,
9598          "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
9599          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9600          "version" : "None"
9601        },
9602        {
9603          "enumerant" : "ShadingRateInterlockUnorderedEXT",
9604          "value" : 5371,
9605          "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
9606          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9607          "version" : "None"
9608        },
9609        {
9610          "enumerant" : "SharedLocalMemorySizeINTEL",
9611          "value" : 5618,
9612          "parameters" : [
9613            { "kind" : "LiteralInteger", "name" : "'Size'" }
9614          ],
9615          "capabilities" : [ "VectorComputeINTEL" ],
9616          "version" : "None"
9617        },
9618        {
9619          "enumerant" : "RoundingModeRTPINTEL",
9620          "value" : 5620,
9621          "parameters" : [
9622            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9623          ],
9624          "capabilities" : [ "RoundToInfinityINTEL" ],
9625          "version" : "None"
9626        },
9627        {
9628          "enumerant" : "RoundingModeRTNINTEL",
9629          "value" : 5621,
9630          "parameters" : [
9631            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9632          ],
9633          "capabilities" : [ "RoundToInfinityINTEL" ],
9634          "version" : "None"
9635        },
9636        {
9637          "enumerant" : "FloatingPointModeALTINTEL",
9638          "value" : 5622,
9639          "parameters" : [
9640            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9641          ],
9642          "capabilities" : [ "RoundToInfinityINTEL" ],
9643          "version" : "None"
9644        },
9645        {
9646          "enumerant" : "FloatingPointModeIEEEINTEL",
9647          "value" : 5623,
9648          "parameters" : [
9649            { "kind" : "LiteralInteger", "name" : "'Target Width'" }
9650          ],
9651          "capabilities" : [ "RoundToInfinityINTEL" ],
9652          "version" : "None"
9653        },
9654        {
9655          "enumerant" : "MaxWorkgroupSizeINTEL",
9656          "value" : 5893,
9657          "parameters" : [
9658            { "kind" : "LiteralInteger", "name" : "'max_x_size'" },
9659            { "kind" : "LiteralInteger", "name" : "'max_y_size'" },
9660            { "kind" : "LiteralInteger", "name" : "'max_z_size'" }
9661          ],
9662          "capabilities" : [ "KernelAttributesINTEL" ],
9663          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
9664          "version" : "None"
9665        },
9666        {
9667          "enumerant" : "MaxWorkDimINTEL",
9668          "value" : 5894,
9669          "parameters" : [
9670            { "kind" : "LiteralInteger", "name" : "'max_dimensions'" }
9671          ],
9672          "capabilities" : [ "KernelAttributesINTEL" ],
9673          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
9674          "version" : "None"
9675        },
9676        {
9677          "enumerant" : "NoGlobalOffsetINTEL",
9678          "value" : 5895,
9679          "capabilities" : [ "KernelAttributesINTEL" ],
9680          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
9681          "version" : "None"
9682        },
9683        {
9684          "enumerant" : "NumSIMDWorkitemsINTEL",
9685          "value" : 5896,
9686          "parameters" : [
9687            { "kind" : "LiteralInteger", "name" : "'vector_width'" }
9688          ],
9689          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
9690          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
9691          "version" : "None"
9692        },
9693        {
9694          "enumerant" : "SchedulerTargetFmaxMhzINTEL",
9695          "value" : 5903,
9696          "parameters" : [
9697            { "kind" : "LiteralInteger", "name" : "'target_fmax'" }
9698          ],
9699          "capabilities" : [ "FPGAKernelAttributesINTEL" ],
9700          "version" : "None"
9701        }
9702      ]
9703    },
9704    {
9705      "category" : "ValueEnum",
9706      "kind" : "StorageClass",
9707      "enumerants" : [
9708        {
9709          "enumerant" : "UniformConstant",
9710          "value" : 0
9711        },
9712        {
9713          "enumerant" : "Input",
9714          "value" : 1
9715        },
9716        {
9717          "enumerant" : "Uniform",
9718          "value" : 2,
9719          "capabilities" : [ "Shader" ]
9720        },
9721        {
9722          "enumerant" : "Output",
9723          "value" : 3,
9724          "capabilities" : [ "Shader" ]
9725        },
9726        {
9727          "enumerant" : "Workgroup",
9728          "value" : 4
9729        },
9730        {
9731          "enumerant" : "CrossWorkgroup",
9732          "value" : 5
9733        },
9734        {
9735          "enumerant" : "Private",
9736          "value" : 6,
9737          "capabilities" : [ "Shader", "VectorComputeINTEL" ]
9738        },
9739        {
9740          "enumerant" : "Function",
9741          "value" : 7
9742        },
9743        {
9744          "enumerant" : "Generic",
9745          "value" : 8,
9746          "capabilities" : [ "GenericPointer" ]
9747        },
9748        {
9749          "enumerant" : "PushConstant",
9750          "value" : 9,
9751          "capabilities" : [ "Shader" ]
9752        },
9753        {
9754          "enumerant" : "AtomicCounter",
9755          "value" : 10,
9756          "capabilities" : [ "AtomicStorage" ]
9757        },
9758        {
9759          "enumerant" : "Image",
9760          "value" : 11
9761        },
9762        {
9763          "enumerant" : "StorageBuffer",
9764          "value" : 12,
9765          "extensions" : [
9766            "SPV_KHR_storage_buffer_storage_class",
9767            "SPV_KHR_variable_pointers"
9768          ],
9769          "capabilities" : [ "Shader" ],
9770          "version" : "1.3"
9771        },
9772        {
9773          "enumerant" : "CallableDataNV",
9774          "value" : 5328,
9775          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9776          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9777          "version" : "None"
9778        },
9779        {
9780          "enumerant" : "CallableDataKHR",
9781          "value" : 5328,
9782          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9783          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9784          "version" : "None"
9785        },
9786        {
9787          "enumerant" : "IncomingCallableDataNV",
9788          "value" : 5329,
9789          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9790          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9791          "version" : "None"
9792        },
9793        {
9794          "enumerant" : "IncomingCallableDataKHR",
9795          "value" : 5329,
9796          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9797          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9798          "version" : "None"
9799        },
9800        {
9801          "enumerant" : "RayPayloadNV",
9802          "value" : 5338,
9803          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9804          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9805          "version" : "None"
9806        },
9807        {
9808          "enumerant" : "RayPayloadKHR",
9809          "value" : 5338,
9810          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9811          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9812          "version" : "None"
9813        },
9814        {
9815          "enumerant" : "HitAttributeNV",
9816          "value" : 5339,
9817          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9818          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9819          "version" : "None"
9820        },
9821        {
9822          "enumerant" : "HitAttributeKHR",
9823          "value" : 5339,
9824          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9825          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9826          "version" : "None"
9827        },
9828        {
9829          "enumerant" : "IncomingRayPayloadNV",
9830          "value" : 5342,
9831          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9832          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9833          "version" : "None"
9834        },
9835        {
9836          "enumerant" : "IncomingRayPayloadKHR",
9837          "value" : 5342,
9838          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9839          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9840          "version" : "None"
9841        },
9842        {
9843          "enumerant" : "ShaderRecordBufferNV",
9844          "value" : 5343,
9845          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9846          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9847          "version" : "None"
9848        },
9849        {
9850          "enumerant" : "ShaderRecordBufferKHR",
9851          "value" : 5343,
9852          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
9853          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
9854          "version" : "None"
9855        },
9856        {
9857          "enumerant" : "PhysicalStorageBuffer",
9858          "value" : 5349,
9859          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
9860          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9861          "version" : "1.5"
9862        },
9863        {
9864          "enumerant" : "PhysicalStorageBufferEXT",
9865          "value" : 5349,
9866          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9867          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9868          "version" : "1.5"
9869        },
9870        {
9871          "enumerant" : "CodeSectionINTEL",
9872          "value" : 5605,
9873          "extensions" : [ "SPV_INTEL_function_pointers" ],
9874          "capabilities" : [ "FunctionPointersINTEL" ],
9875          "version" : "None"
9876        },
9877        {
9878          "enumerant" : "DeviceOnlyINTEL",
9879          "value" : 5936,
9880          "extensions" : [
9881            "SPV_INTEL_usm_storage_classes"
9882          ],
9883          "capabilities" : [ "USMStorageClassesINTEL" ],
9884          "version" : "None"
9885        },
9886        {
9887          "enumerant" : "HostOnlyINTEL",
9888          "value" : 5937,
9889          "extensions" : [
9890            "SPV_INTEL_usm_storage_classes"
9891          ],
9892          "capabilities" : [ "USMStorageClassesINTEL" ],
9893          "version" : "None"
9894        }
9895      ]
9896    },
9897    {
9898      "category" : "ValueEnum",
9899      "kind" : "Dim",
9900      "enumerants" : [
9901        {
9902          "enumerant" : "1D",
9903          "value" : 0,
9904          "capabilities" : [ "Sampled1D", "Image1D" ]
9905        },
9906        {
9907          "enumerant" : "2D",
9908          "value" : 1,
9909          "capabilities" : [ "Shader", "Kernel", "ImageMSArray" ]
9910        },
9911        {
9912          "enumerant" : "3D",
9913          "value" : 2
9914        },
9915        {
9916          "enumerant" : "Cube",
9917          "value" : 3,
9918          "capabilities" : [ "Shader", "ImageCubeArray" ]
9919        },
9920        {
9921          "enumerant" : "Rect",
9922          "value" : 4,
9923          "capabilities" : [ "SampledRect", "ImageRect" ]
9924        },
9925        {
9926          "enumerant" : "Buffer",
9927          "value" : 5,
9928          "capabilities" : [ "SampledBuffer", "ImageBuffer" ]
9929        },
9930        {
9931          "enumerant" : "SubpassData",
9932          "value" : 6,
9933          "capabilities" : [ "InputAttachment" ]
9934        }
9935      ]
9936    },
9937    {
9938      "category" : "ValueEnum",
9939      "kind" : "SamplerAddressingMode",
9940      "enumerants" : [
9941        {
9942          "enumerant" : "None",
9943          "value" : 0,
9944          "capabilities" : [ "Kernel" ]
9945        },
9946        {
9947          "enumerant" : "ClampToEdge",
9948          "value" : 1,
9949          "capabilities" : [ "Kernel" ]
9950        },
9951        {
9952          "enumerant" : "Clamp",
9953          "value" : 2,
9954          "capabilities" : [ "Kernel" ]
9955        },
9956        {
9957          "enumerant" : "Repeat",
9958          "value" : 3,
9959          "capabilities" : [ "Kernel" ]
9960        },
9961        {
9962          "enumerant" : "RepeatMirrored",
9963          "value" : 4,
9964          "capabilities" : [ "Kernel" ]
9965        }
9966      ]
9967    },
9968    {
9969      "category" : "ValueEnum",
9970      "kind" : "SamplerFilterMode",
9971      "enumerants" : [
9972        {
9973          "enumerant" : "Nearest",
9974          "value" : 0,
9975          "capabilities" : [ "Kernel" ]
9976        },
9977        {
9978          "enumerant" : "Linear",
9979          "value" : 1,
9980          "capabilities" : [ "Kernel" ]
9981        }
9982      ]
9983    },
9984    {
9985      "category" : "ValueEnum",
9986      "kind" : "ImageFormat",
9987      "enumerants" : [
9988        {
9989          "enumerant" : "Unknown",
9990          "value" : 0
9991        },
9992        {
9993          "enumerant" : "Rgba32f",
9994          "value" : 1,
9995          "capabilities" : [ "Shader" ]
9996        },
9997        {
9998          "enumerant" : "Rgba16f",
9999          "value" : 2,
10000          "capabilities" : [ "Shader" ]
10001        },
10002        {
10003          "enumerant" : "R32f",
10004          "value" : 3,
10005          "capabilities" : [ "Shader" ]
10006        },
10007        {
10008          "enumerant" : "Rgba8",
10009          "value" : 4,
10010          "capabilities" : [ "Shader" ]
10011        },
10012        {
10013          "enumerant" : "Rgba8Snorm",
10014          "value" : 5,
10015          "capabilities" : [ "Shader" ]
10016        },
10017        {
10018          "enumerant" : "Rg32f",
10019          "value" : 6,
10020          "capabilities" : [ "StorageImageExtendedFormats" ]
10021        },
10022        {
10023          "enumerant" : "Rg16f",
10024          "value" : 7,
10025          "capabilities" : [ "StorageImageExtendedFormats" ]
10026        },
10027        {
10028          "enumerant" : "R11fG11fB10f",
10029          "value" : 8,
10030          "capabilities" : [ "StorageImageExtendedFormats" ]
10031        },
10032        {
10033          "enumerant" : "R16f",
10034          "value" : 9,
10035          "capabilities" : [ "StorageImageExtendedFormats" ]
10036        },
10037        {
10038          "enumerant" : "Rgba16",
10039          "value" : 10,
10040          "capabilities" : [ "StorageImageExtendedFormats" ]
10041        },
10042        {
10043          "enumerant" : "Rgb10A2",
10044          "value" : 11,
10045          "capabilities" : [ "StorageImageExtendedFormats" ]
10046        },
10047        {
10048          "enumerant" : "Rg16",
10049          "value" : 12,
10050          "capabilities" : [ "StorageImageExtendedFormats" ]
10051        },
10052        {
10053          "enumerant" : "Rg8",
10054          "value" : 13,
10055          "capabilities" : [ "StorageImageExtendedFormats" ]
10056        },
10057        {
10058          "enumerant" : "R16",
10059          "value" : 14,
10060          "capabilities" : [ "StorageImageExtendedFormats" ]
10061        },
10062        {
10063          "enumerant" : "R8",
10064          "value" : 15,
10065          "capabilities" : [ "StorageImageExtendedFormats" ]
10066        },
10067        {
10068          "enumerant" : "Rgba16Snorm",
10069          "value" : 16,
10070          "capabilities" : [ "StorageImageExtendedFormats" ]
10071        },
10072        {
10073          "enumerant" : "Rg16Snorm",
10074          "value" : 17,
10075          "capabilities" : [ "StorageImageExtendedFormats" ]
10076        },
10077        {
10078          "enumerant" : "Rg8Snorm",
10079          "value" : 18,
10080          "capabilities" : [ "StorageImageExtendedFormats" ]
10081        },
10082        {
10083          "enumerant" : "R16Snorm",
10084          "value" : 19,
10085          "capabilities" : [ "StorageImageExtendedFormats" ]
10086        },
10087        {
10088          "enumerant" : "R8Snorm",
10089          "value" : 20,
10090          "capabilities" : [ "StorageImageExtendedFormats" ]
10091        },
10092        {
10093          "enumerant" : "Rgba32i",
10094          "value" : 21,
10095          "capabilities" : [ "Shader" ]
10096        },
10097        {
10098          "enumerant" : "Rgba16i",
10099          "value" : 22,
10100          "capabilities" : [ "Shader" ]
10101        },
10102        {
10103          "enumerant" : "Rgba8i",
10104          "value" : 23,
10105          "capabilities" : [ "Shader" ]
10106        },
10107        {
10108          "enumerant" : "R32i",
10109          "value" : 24,
10110          "capabilities" : [ "Shader" ]
10111        },
10112        {
10113          "enumerant" : "Rg32i",
10114          "value" : 25,
10115          "capabilities" : [ "StorageImageExtendedFormats" ]
10116        },
10117        {
10118          "enumerant" : "Rg16i",
10119          "value" : 26,
10120          "capabilities" : [ "StorageImageExtendedFormats" ]
10121        },
10122        {
10123          "enumerant" : "Rg8i",
10124          "value" : 27,
10125          "capabilities" : [ "StorageImageExtendedFormats" ]
10126        },
10127        {
10128          "enumerant" : "R16i",
10129          "value" : 28,
10130          "capabilities" : [ "StorageImageExtendedFormats" ]
10131        },
10132        {
10133          "enumerant" : "R8i",
10134          "value" : 29,
10135          "capabilities" : [ "StorageImageExtendedFormats" ]
10136        },
10137        {
10138          "enumerant" : "Rgba32ui",
10139          "value" : 30,
10140          "capabilities" : [ "Shader" ]
10141        },
10142        {
10143          "enumerant" : "Rgba16ui",
10144          "value" : 31,
10145          "capabilities" : [ "Shader" ]
10146        },
10147        {
10148          "enumerant" : "Rgba8ui",
10149          "value" : 32,
10150          "capabilities" : [ "Shader" ]
10151        },
10152        {
10153          "enumerant" : "R32ui",
10154          "value" : 33,
10155          "capabilities" : [ "Shader" ]
10156        },
10157        {
10158          "enumerant" : "Rgb10a2ui",
10159          "value" : 34,
10160          "capabilities" : [ "StorageImageExtendedFormats" ]
10161        },
10162        {
10163          "enumerant" : "Rg32ui",
10164          "value" : 35,
10165          "capabilities" : [ "StorageImageExtendedFormats" ]
10166        },
10167        {
10168          "enumerant" : "Rg16ui",
10169          "value" : 36,
10170          "capabilities" : [ "StorageImageExtendedFormats" ]
10171        },
10172        {
10173          "enumerant" : "Rg8ui",
10174          "value" : 37,
10175          "capabilities" : [ "StorageImageExtendedFormats" ]
10176        },
10177        {
10178          "enumerant" : "R16ui",
10179          "value" : 38,
10180          "capabilities" : [ "StorageImageExtendedFormats" ]
10181        },
10182        {
10183          "enumerant" : "R8ui",
10184          "value" : 39,
10185          "capabilities" : [ "StorageImageExtendedFormats" ]
10186        },
10187	{
10188          "enumerant" : "R64ui",
10189          "value" : 40,
10190          "capabilities" : [ "Int64ImageEXT" ]
10191        },
10192        {
10193          "enumerant" : "R64i",
10194          "value" : 41,
10195          "capabilities" : [ "Int64ImageEXT" ]
10196        }
10197      ]
10198    },
10199    {
10200      "category" : "ValueEnum",
10201      "kind" : "ImageChannelOrder",
10202      "enumerants" : [
10203        {
10204          "enumerant" : "R",
10205          "value" : 0,
10206          "capabilities" : [ "Kernel" ]
10207        },
10208        {
10209          "enumerant" : "A",
10210          "value" : 1,
10211          "capabilities" : [ "Kernel" ]
10212        },
10213        {
10214          "enumerant" : "RG",
10215          "value" : 2,
10216          "capabilities" : [ "Kernel" ]
10217        },
10218        {
10219          "enumerant" : "RA",
10220          "value" : 3,
10221          "capabilities" : [ "Kernel" ]
10222        },
10223        {
10224          "enumerant" : "RGB",
10225          "value" : 4,
10226          "capabilities" : [ "Kernel" ]
10227        },
10228        {
10229          "enumerant" : "RGBA",
10230          "value" : 5,
10231          "capabilities" : [ "Kernel" ]
10232        },
10233        {
10234          "enumerant" : "BGRA",
10235          "value" : 6,
10236          "capabilities" : [ "Kernel" ]
10237        },
10238        {
10239          "enumerant" : "ARGB",
10240          "value" : 7,
10241          "capabilities" : [ "Kernel" ]
10242        },
10243        {
10244          "enumerant" : "Intensity",
10245          "value" : 8,
10246          "capabilities" : [ "Kernel" ]
10247        },
10248        {
10249          "enumerant" : "Luminance",
10250          "value" : 9,
10251          "capabilities" : [ "Kernel" ]
10252        },
10253        {
10254          "enumerant" : "Rx",
10255          "value" : 10,
10256          "capabilities" : [ "Kernel" ]
10257        },
10258        {
10259          "enumerant" : "RGx",
10260          "value" : 11,
10261          "capabilities" : [ "Kernel" ]
10262        },
10263        {
10264          "enumerant" : "RGBx",
10265          "value" : 12,
10266          "capabilities" : [ "Kernel" ]
10267        },
10268        {
10269          "enumerant" : "Depth",
10270          "value" : 13,
10271          "capabilities" : [ "Kernel" ]
10272        },
10273        {
10274          "enumerant" : "DepthStencil",
10275          "value" : 14,
10276          "capabilities" : [ "Kernel" ]
10277        },
10278        {
10279          "enumerant" : "sRGB",
10280          "value" : 15,
10281          "capabilities" : [ "Kernel" ]
10282        },
10283        {
10284          "enumerant" : "sRGBx",
10285          "value" : 16,
10286          "capabilities" : [ "Kernel" ]
10287        },
10288        {
10289          "enumerant" : "sRGBA",
10290          "value" : 17,
10291          "capabilities" : [ "Kernel" ]
10292        },
10293        {
10294          "enumerant" : "sBGRA",
10295          "value" : 18,
10296          "capabilities" : [ "Kernel" ]
10297        },
10298        {
10299          "enumerant" : "ABGR",
10300          "value" : 19,
10301          "capabilities" : [ "Kernel" ]
10302        }
10303      ]
10304    },
10305    {
10306      "category" : "ValueEnum",
10307      "kind" : "ImageChannelDataType",
10308      "enumerants" : [
10309        {
10310          "enumerant" : "SnormInt8",
10311          "value" : 0,
10312          "capabilities" : [ "Kernel" ]
10313        },
10314        {
10315          "enumerant" : "SnormInt16",
10316          "value" : 1,
10317          "capabilities" : [ "Kernel" ]
10318        },
10319        {
10320          "enumerant" : "UnormInt8",
10321          "value" : 2,
10322          "capabilities" : [ "Kernel" ]
10323        },
10324        {
10325          "enumerant" : "UnormInt16",
10326          "value" : 3,
10327          "capabilities" : [ "Kernel" ]
10328        },
10329        {
10330          "enumerant" : "UnormShort565",
10331          "value" : 4,
10332          "capabilities" : [ "Kernel" ]
10333        },
10334        {
10335          "enumerant" : "UnormShort555",
10336          "value" : 5,
10337          "capabilities" : [ "Kernel" ]
10338        },
10339        {
10340          "enumerant" : "UnormInt101010",
10341          "value" : 6,
10342          "capabilities" : [ "Kernel" ]
10343        },
10344        {
10345          "enumerant" : "SignedInt8",
10346          "value" : 7,
10347          "capabilities" : [ "Kernel" ]
10348        },
10349        {
10350          "enumerant" : "SignedInt16",
10351          "value" : 8,
10352          "capabilities" : [ "Kernel" ]
10353        },
10354        {
10355          "enumerant" : "SignedInt32",
10356          "value" : 9,
10357          "capabilities" : [ "Kernel" ]
10358        },
10359        {
10360          "enumerant" : "UnsignedInt8",
10361          "value" : 10,
10362          "capabilities" : [ "Kernel" ]
10363        },
10364        {
10365          "enumerant" : "UnsignedInt16",
10366          "value" : 11,
10367          "capabilities" : [ "Kernel" ]
10368        },
10369        {
10370          "enumerant" : "UnsignedInt32",
10371          "value" : 12,
10372          "capabilities" : [ "Kernel" ]
10373        },
10374        {
10375          "enumerant" : "HalfFloat",
10376          "value" : 13,
10377          "capabilities" : [ "Kernel" ]
10378        },
10379        {
10380          "enumerant" : "Float",
10381          "value" : 14,
10382          "capabilities" : [ "Kernel" ]
10383        },
10384        {
10385          "enumerant" : "UnormInt24",
10386          "value" : 15,
10387          "capabilities" : [ "Kernel" ]
10388        },
10389        {
10390          "enumerant" : "UnormInt101010_2",
10391          "value" : 16,
10392          "capabilities" : [ "Kernel" ]
10393        }
10394      ]
10395    },
10396    {
10397      "category" : "ValueEnum",
10398      "kind" : "FPRoundingMode",
10399      "enumerants" : [
10400        {
10401          "enumerant" : "RTE",
10402          "value" : 0
10403        },
10404        {
10405          "enumerant" : "RTZ",
10406          "value" : 1
10407        },
10408        {
10409          "enumerant" : "RTP",
10410          "value" : 2
10411        },
10412        {
10413          "enumerant" : "RTN",
10414          "value" : 3
10415        }
10416      ]
10417    },
10418    {
10419      "category" : "ValueEnum",
10420      "kind" : "FPDenormMode",
10421      "enumerants" : [
10422        {
10423          "enumerant" : "Preserve",
10424          "value" : 0,
10425          "capabilities" : [ "FunctionFloatControlINTEL" ],
10426          "version" : "None"
10427        },
10428        {
10429          "enumerant" : "FlushToZero",
10430          "value" : 1,
10431          "capabilities" : [ "FunctionFloatControlINTEL" ],
10432          "version" : "None"
10433	}
10434      ]
10435    },
10436    {
10437      "category" : "ValueEnum",
10438      "kind" : "QuantizationModes",
10439      "enumerants" : [
10440        {
10441          "enumerant" : "TRN",
10442          "value" : 0,
10443          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10444          "version" : "None"
10445        },
10446        {
10447          "enumerant" : "TRN_ZERO",
10448          "value" : 1,
10449          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10450          "version" : "None"
10451        },
10452        {
10453          "enumerant" : "RND",
10454          "value" : 2,
10455          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10456          "version" : "None"
10457        },
10458        {
10459          "enumerant" : "RND_ZERO",
10460          "value" : 3,
10461          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10462          "version" : "None"
10463        },
10464        {
10465          "enumerant" : "RND_INF",
10466          "value" : 4,
10467          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10468          "version" : "None"
10469        },
10470        {
10471          "enumerant" : "RND_MIN_INF",
10472          "value" : 5,
10473          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10474          "version" : "None"
10475        },
10476        {
10477          "enumerant" : "RND_CONV",
10478          "value" : 6,
10479          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10480          "version" : "None"
10481        },
10482        {
10483          "enumerant" : "RND_CONV_ODD",
10484          "value" : 7,
10485          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10486          "version" : "None"
10487        }
10488      ]
10489    },
10490    {
10491      "category" : "ValueEnum",
10492      "kind" : "FPOperationMode",
10493      "enumerants" : [
10494        {
10495          "enumerant" : "IEEE",
10496          "value" : 0,
10497          "capabilities" : [ "FunctionFloatControlINTEL" ],
10498          "version" : "None"
10499        },
10500        {
10501          "enumerant" : "ALT",
10502          "value" : 1,
10503          "capabilities" : [ "FunctionFloatControlINTEL" ],
10504          "version" : "None"
10505        }
10506      ]
10507    },
10508    {
10509      "category" : "ValueEnum",
10510      "kind" : "OverflowModes",
10511      "enumerants" : [
10512        {
10513          "enumerant" : "WRAP",
10514          "value" : 0,
10515          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10516          "version" : "None"
10517        },
10518        {
10519          "enumerant" : "SAT",
10520          "value" : 1,
10521          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10522          "version" : "None"
10523        },
10524        {
10525          "enumerant" : "SAT_ZERO",
10526          "value" : 2,
10527          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10528          "version" : "None"
10529        },
10530        {
10531          "enumerant" : "SAT_SYM",
10532          "value" : 3,
10533          "capabilities" : [ "ArbitraryPrecisionFixedPointINTEL"],
10534          "version" : "None"
10535        }
10536      ]
10537    },
10538    {
10539      "category" : "ValueEnum",
10540      "kind" : "LinkageType",
10541      "enumerants" : [
10542        {
10543          "enumerant" : "Export",
10544          "value" : 0,
10545          "capabilities" : [ "Linkage" ]
10546        },
10547        {
10548          "enumerant" : "Import",
10549          "value" : 1,
10550          "capabilities" : [ "Linkage" ]
10551        },
10552        {
10553          "enumerant" : "LinkOnceODR",
10554          "value" : 2,
10555          "capabilities" : [ "Linkage" ],
10556          "extensions" : [ "SPV_KHR_linkonce_odr" ],
10557          "version" : "None"
10558        }
10559      ]
10560    },
10561    {
10562      "category" : "ValueEnum",
10563      "kind" : "AccessQualifier",
10564      "enumerants" : [
10565        {
10566          "enumerant" : "ReadOnly",
10567          "value" : 0,
10568          "capabilities" : [ "Kernel" ]
10569        },
10570        {
10571          "enumerant" : "WriteOnly",
10572          "value" : 1,
10573          "capabilities" : [ "Kernel" ]
10574        },
10575        {
10576          "enumerant" : "ReadWrite",
10577          "value" : 2,
10578          "capabilities" : [ "Kernel" ]
10579        }
10580      ]
10581    },
10582    {
10583      "category" : "ValueEnum",
10584      "kind" : "FunctionParameterAttribute",
10585      "enumerants" : [
10586        {
10587          "enumerant" : "Zext",
10588          "value" : 0,
10589          "capabilities" : [ "Kernel" ]
10590        },
10591        {
10592          "enumerant" : "Sext",
10593          "value" : 1,
10594          "capabilities" : [ "Kernel" ]
10595        },
10596        {
10597          "enumerant" : "ByVal",
10598          "value" : 2,
10599          "capabilities" : [ "Kernel" ]
10600        },
10601        {
10602          "enumerant" : "Sret",
10603          "value" : 3,
10604          "capabilities" : [ "Kernel" ]
10605        },
10606        {
10607          "enumerant" : "NoAlias",
10608          "value" : 4,
10609          "capabilities" : [ "Kernel" ]
10610        },
10611        {
10612          "enumerant" : "NoCapture",
10613          "value" : 5,
10614          "capabilities" : [ "Kernel" ]
10615        },
10616        {
10617          "enumerant" : "NoWrite",
10618          "value" : 6,
10619          "capabilities" : [ "Kernel" ]
10620        },
10621        {
10622          "enumerant" : "NoReadWrite",
10623          "value" : 7,
10624          "capabilities" : [ "Kernel" ]
10625        }
10626      ]
10627    },
10628    {
10629      "category" : "ValueEnum",
10630      "kind" : "Decoration",
10631      "enumerants" : [
10632        {
10633          "enumerant" : "RelaxedPrecision",
10634          "value" : 0,
10635          "capabilities" : [ "Shader" ]
10636        },
10637        {
10638          "enumerant" : "SpecId",
10639          "value" : 1,
10640          "capabilities" : [ "Shader", "Kernel" ],
10641          "parameters" : [
10642            { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
10643          ]
10644        },
10645        {
10646          "enumerant" : "Block",
10647          "value" : 2,
10648          "capabilities" : [ "Shader" ]
10649        },
10650        {
10651          "enumerant" : "BufferBlock",
10652          "value" : 3,
10653          "capabilities" : [ "Shader" ],
10654          "lastVersion" : "1.3"
10655        },
10656        {
10657          "enumerant" : "RowMajor",
10658          "value" : 4,
10659          "capabilities" : [ "Matrix" ]
10660        },
10661        {
10662          "enumerant" : "ColMajor",
10663          "value" : 5,
10664          "capabilities" : [ "Matrix" ]
10665        },
10666        {
10667          "enumerant" : "ArrayStride",
10668          "value" : 6,
10669          "capabilities" : [ "Shader" ],
10670          "parameters" : [
10671            { "kind" : "LiteralInteger", "name" : "'Array Stride'" }
10672          ]
10673        },
10674        {
10675          "enumerant" : "MatrixStride",
10676          "value" : 7,
10677          "capabilities" : [ "Matrix" ],
10678          "parameters" : [
10679            { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" }
10680          ]
10681        },
10682        {
10683          "enumerant" : "GLSLShared",
10684          "value" : 8,
10685          "capabilities" : [ "Shader" ]
10686        },
10687        {
10688          "enumerant" : "GLSLPacked",
10689          "value" : 9,
10690          "capabilities" : [ "Shader" ]
10691        },
10692        {
10693          "enumerant" : "CPacked",
10694          "value" : 10,
10695          "capabilities" : [ "Kernel" ]
10696        },
10697        {
10698          "enumerant" : "BuiltIn",
10699          "value" : 11,
10700          "parameters" : [
10701            { "kind" : "BuiltIn" }
10702          ]
10703        },
10704        {
10705          "enumerant" : "NoPerspective",
10706          "value" : 13,
10707          "capabilities" : [ "Shader" ]
10708        },
10709        {
10710          "enumerant" : "Flat",
10711          "value" : 14,
10712          "capabilities" : [ "Shader" ]
10713        },
10714        {
10715          "enumerant" : "Patch",
10716          "value" : 15,
10717          "capabilities" : [ "Tessellation" ]
10718        },
10719        {
10720          "enumerant" : "Centroid",
10721          "value" : 16,
10722          "capabilities" : [ "Shader" ]
10723        },
10724        {
10725          "enumerant" : "Sample",
10726          "value" : 17,
10727          "capabilities" : [ "SampleRateShading" ]
10728        },
10729        {
10730          "enumerant" : "Invariant",
10731          "value" : 18,
10732          "capabilities" : [ "Shader" ]
10733        },
10734        {
10735          "enumerant" : "Restrict",
10736          "value" : 19
10737        },
10738        {
10739          "enumerant" : "Aliased",
10740          "value" : 20
10741        },
10742        {
10743          "enumerant" : "Volatile",
10744          "value" : 21
10745        },
10746        {
10747          "enumerant" : "Constant",
10748          "value" : 22,
10749          "capabilities" : [ "Kernel" ]
10750        },
10751        {
10752          "enumerant" : "Coherent",
10753          "value" : 23
10754        },
10755        {
10756          "enumerant" : "NonWritable",
10757          "value" : 24
10758        },
10759        {
10760          "enumerant" : "NonReadable",
10761          "value" : 25
10762        },
10763        {
10764          "enumerant" : "Uniform",
10765          "value" : 26,
10766          "capabilities" : [ "Shader" ]
10767        },
10768        {
10769          "enumerant" : "UniformId",
10770          "value" : 27,
10771          "capabilities" : [ "Shader" ],
10772          "parameters" : [
10773            { "kind" : "IdScope",           "name" : "'Execution'" }
10774          ],
10775          "version" : "1.4"
10776        },
10777        {
10778          "enumerant" : "SaturatedConversion",
10779          "value" : 28,
10780          "capabilities" : [ "Kernel" ]
10781        },
10782        {
10783          "enumerant" : "Stream",
10784          "value" : 29,
10785          "capabilities" : [ "GeometryStreams" ],
10786          "parameters" : [
10787            { "kind" : "LiteralInteger", "name" : "'Stream Number'" }
10788          ]
10789        },
10790        {
10791          "enumerant" : "Location",
10792          "value" : 30,
10793          "capabilities" : [ "Shader" ],
10794          "parameters" : [
10795            { "kind" : "LiteralInteger", "name" : "'Location'" }
10796          ]
10797        },
10798        {
10799          "enumerant" : "Component",
10800          "value" : 31,
10801          "capabilities" : [ "Shader" ],
10802          "parameters" : [
10803            { "kind" : "LiteralInteger", "name" : "'Component'" }
10804          ]
10805        },
10806        {
10807          "enumerant" : "Index",
10808          "value" : 32,
10809          "capabilities" : [ "Shader" ],
10810          "parameters" : [
10811            { "kind" : "LiteralInteger", "name" : "'Index'" }
10812          ]
10813        },
10814        {
10815          "enumerant" : "Binding",
10816          "value" : 33,
10817          "capabilities" : [ "Shader" ],
10818          "parameters" : [
10819            { "kind" : "LiteralInteger", "name" : "'Binding Point'" }
10820          ]
10821        },
10822        {
10823          "enumerant" : "DescriptorSet",
10824          "value" : 34,
10825          "capabilities" : [ "Shader" ],
10826          "parameters" : [
10827            { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" }
10828          ]
10829        },
10830        {
10831          "enumerant" : "Offset",
10832          "value" : 35,
10833          "capabilities" : [ "Shader" ],
10834          "parameters" : [
10835            { "kind" : "LiteralInteger", "name" : "'Byte Offset'" }
10836          ]
10837        },
10838        {
10839          "enumerant" : "XfbBuffer",
10840          "value" : 36,
10841          "capabilities" : [ "TransformFeedback" ],
10842          "parameters" : [
10843            { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" }
10844          ]
10845        },
10846        {
10847          "enumerant" : "XfbStride",
10848          "value" : 37,
10849          "capabilities" : [ "TransformFeedback" ],
10850          "parameters" : [
10851            { "kind" : "LiteralInteger", "name" : "'XFB Stride'" }
10852          ]
10853        },
10854        {
10855          "enumerant" : "FuncParamAttr",
10856          "value" : 38,
10857          "capabilities" : [ "Kernel" ],
10858          "parameters" : [
10859            { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" }
10860          ]
10861        },
10862        {
10863          "enumerant" : "FPRoundingMode",
10864          "value" : 39,
10865          "parameters" : [
10866            { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" }
10867          ]
10868        },
10869        {
10870          "enumerant" : "FPFastMathMode",
10871          "value" : 40,
10872          "capabilities" : [ "Kernel" ],
10873          "parameters" : [
10874            { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" }
10875          ]
10876        },
10877        {
10878          "enumerant" : "LinkageAttributes",
10879          "value" : 41,
10880          "capabilities" : [ "Linkage" ],
10881          "parameters" : [
10882            { "kind" : "LiteralString", "name" : "'Name'" },
10883            { "kind" : "LinkageType",   "name" : "'Linkage Type'" }
10884          ]
10885        },
10886        {
10887          "enumerant" : "NoContraction",
10888          "value" : 42,
10889          "capabilities" : [ "Shader" ]
10890        },
10891        {
10892          "enumerant" : "InputAttachmentIndex",
10893          "value" : 43,
10894          "capabilities" : [ "InputAttachment" ],
10895          "parameters" : [
10896            { "kind" : "LiteralInteger", "name" : "'Attachment Index'" }
10897          ]
10898        },
10899        {
10900          "enumerant" : "Alignment",
10901          "value" : 44,
10902          "capabilities" : [ "Kernel" ],
10903          "parameters" : [
10904            { "kind" : "LiteralInteger", "name" : "'Alignment'" }
10905          ]
10906        },
10907        {
10908          "enumerant" : "MaxByteOffset",
10909          "value" : 45,
10910          "capabilities" : [ "Addresses" ],
10911          "parameters" : [
10912            { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
10913          ],
10914          "version" : "1.1"
10915        },
10916        {
10917          "enumerant" : "AlignmentId",
10918          "value" : 46,
10919          "capabilities" : [ "Kernel" ],
10920          "parameters" : [
10921            { "kind" : "IdRef", "name" : "'Alignment'" }
10922          ],
10923          "version" : "1.2"
10924        },
10925        {
10926          "enumerant" : "MaxByteOffsetId",
10927          "value" : 47,
10928          "capabilities" : [ "Addresses" ],
10929          "parameters" : [
10930            { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
10931          ],
10932          "version" : "1.2"
10933        },
10934        {
10935          "enumerant" : "NoSignedWrap",
10936          "value" : 4469,
10937          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
10938          "version" : "1.4"
10939        },
10940        {
10941          "enumerant" : "NoUnsignedWrap",
10942          "value" : 4470,
10943          "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
10944          "version" : "1.4"
10945        },
10946        {
10947          "enumerant" : "ExplicitInterpAMD",
10948          "value" : 4999,
10949          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10950          "version" : "None"
10951        },
10952        {
10953          "enumerant" : "OverrideCoverageNV",
10954          "value" : 5248,
10955          "capabilities" : [ "SampleMaskOverrideCoverageNV" ],
10956          "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
10957          "version" : "None"
10958        },
10959        {
10960          "enumerant" : "PassthroughNV",
10961          "value" : 5250,
10962          "capabilities" : [ "GeometryShaderPassthroughNV" ],
10963          "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
10964          "version" : "None"
10965        },
10966        {
10967          "enumerant" : "ViewportRelativeNV",
10968          "value" : 5252,
10969          "capabilities" : [ "ShaderViewportMaskNV" ],
10970          "version" : "None"
10971        },
10972        {
10973          "enumerant" : "SecondaryViewportRelativeNV",
10974          "value" : 5256,
10975          "capabilities" : [ "ShaderStereoViewNV" ],
10976          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
10977          "version" : "None",
10978          "parameters" : [
10979            { "kind" : "LiteralInteger", "name" : "'Offset'" }
10980          ]
10981        },
10982        {
10983          "enumerant" : "PerPrimitiveNV",
10984          "value" : 5271,
10985          "capabilities" : [ "MeshShadingNV" ],
10986          "extensions" : [ "SPV_NV_mesh_shader" ],
10987          "version" : "None"
10988        },
10989        {
10990          "enumerant" : "PerViewNV",
10991          "value" : 5272,
10992          "capabilities" : [ "MeshShadingNV" ],
10993          "extensions" : [ "SPV_NV_mesh_shader" ],
10994          "version" : "None"
10995        },
10996        {
10997          "enumerant" : "PerTaskNV",
10998          "value" : 5273,
10999          "capabilities" : [ "MeshShadingNV" ],
11000          "extensions" : [ "SPV_NV_mesh_shader" ],
11001          "version" : "None"
11002        },
11003        {
11004          "enumerant" : "PerVertexNV",
11005          "value" : 5285,
11006          "capabilities" : [ "FragmentBarycentricNV" ],
11007          "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
11008          "version" : "None"
11009        },
11010        {
11011          "enumerant" : "NonUniform",
11012          "value" : 5300,
11013          "capabilities" : [ "ShaderNonUniform" ],
11014          "version" : "1.5"
11015        },
11016        {
11017          "enumerant" : "NonUniformEXT",
11018          "value" : 5300,
11019          "capabilities" : [ "ShaderNonUniform" ],
11020          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11021          "version" : "1.5"
11022        },
11023        {
11024          "enumerant" : "RestrictPointer",
11025          "value" : 5355,
11026          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11027          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
11028          "version" : "1.5"
11029        },
11030        {
11031          "enumerant" : "RestrictPointerEXT",
11032          "value" : 5355,
11033          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11034          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
11035          "version" : "1.5"
11036        },
11037        {
11038          "enumerant" : "AliasedPointer",
11039          "value" : 5356,
11040          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11041          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
11042          "version" : "1.5"
11043        },
11044        {
11045          "enumerant" : "AliasedPointerEXT",
11046          "value" : 5356,
11047          "capabilities" : [ "PhysicalStorageBufferAddresses" ],
11048          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
11049          "version" : "1.5"
11050        },
11051        {
11052          "enumerant" : "SIMTCallINTEL",
11053          "value" : 5599,
11054          "parameters" : [
11055            { "kind" : "LiteralInteger", "name" : "'N'" }
11056          ],
11057          "capabilities" : [ "VectorComputeINTEL" ],
11058          "version" : "None"
11059        },
11060        {
11061          "enumerant" : "ReferencedIndirectlyINTEL",
11062          "value" : 5602,
11063          "capabilities" : [ "IndirectReferencesINTEL" ],
11064          "extensions" : [ "SPV_INTEL_function_pointers" ],
11065          "version" : "None"
11066        },
11067        {
11068          "enumerant" : "ClobberINTEL",
11069          "value" : 5607,
11070          "parameters" : [
11071            { "kind" : "LiteralString", "name" : "'Register'" }
11072          ],
11073          "capabilities" : [ "AsmINTEL" ],
11074          "version" : "None"
11075        },
11076        {
11077          "enumerant" : "SideEffectsINTEL",
11078          "value" : 5608,
11079          "capabilities" : [ "AsmINTEL" ],
11080          "version" : "None"
11081        },
11082        {
11083          "enumerant" : "VectorComputeVariableINTEL",
11084          "value" : 5624,
11085          "capabilities" : [ "VectorComputeINTEL" ],
11086          "version" : "None"
11087        },
11088        {
11089          "enumerant" : "FuncParamIOKindINTEL",
11090          "value" : 5625,
11091          "parameters" : [
11092            { "kind" : "LiteralInteger", "name" : "'Kind'" }
11093          ],
11094          "capabilities" : [ "VectorComputeINTEL" ],
11095          "version" : "None"
11096        },
11097        {
11098          "enumerant" : "VectorComputeFunctionINTEL",
11099          "value" : 5626,
11100          "capabilities" : [ "VectorComputeINTEL" ],
11101          "version" : "None"
11102        },
11103        {
11104          "enumerant" : "StackCallINTEL",
11105          "value" : 5627,
11106          "capabilities" : [ "VectorComputeINTEL" ],
11107          "version" : "None"
11108        },
11109        {
11110          "enumerant" : "GlobalVariableOffsetINTEL",
11111          "value" : 5628,
11112          "parameters" : [
11113            { "kind" : "LiteralInteger", "name" : "'Offset'" }
11114          ],
11115          "capabilities" : [ "VectorComputeINTEL" ],
11116          "version" : "None"
11117        },
11118        {
11119          "enumerant" : "CounterBuffer",
11120          "value" : 5634,
11121          "parameters" : [
11122            { "kind" : "IdRef", "name" : "'Counter Buffer'" }
11123          ],
11124          "version" : "1.4"
11125        },
11126        {
11127          "enumerant" : "HlslCounterBufferGOOGLE",
11128          "value" : 5634,
11129          "parameters" : [
11130            { "kind" : "IdRef", "name" : "'Counter Buffer'" }
11131          ],
11132          "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
11133          "version" : "None"
11134        },
11135        {
11136          "enumerant" : "UserSemantic",
11137          "value" : 5635,
11138          "parameters" : [
11139            { "kind" : "LiteralString", "name" : "'Semantic'" }
11140          ],
11141          "version" : "1.4"
11142        },
11143        {
11144          "enumerant" : "HlslSemanticGOOGLE",
11145          "value" : 5635,
11146          "parameters" : [
11147            { "kind" : "LiteralString", "name" : "'Semantic'" }
11148          ],
11149          "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
11150          "version" : "None"
11151        },
11152        {
11153          "enumerant" : "UserTypeGOOGLE",
11154          "value" : 5636,
11155          "parameters" : [
11156            { "kind" : "LiteralString", "name" : "'User Type'" }
11157          ],
11158          "extensions" : [ "SPV_GOOGLE_user_type" ],
11159          "version" : "None"
11160        },
11161        {
11162          "enumerant" : "FunctionRoundingModeINTEL",
11163          "value" : 5822,
11164          "parameters" : [
11165            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
11166            { "kind" : "FPRoundingMode", "name" : "'FP Rounding Mode'" }
11167          ],
11168          "capabilities" : [ "FunctionFloatControlINTEL" ],
11169          "version" : "None"
11170        },
11171        {
11172          "enumerant" : "FunctionDenormModeINTEL",
11173          "value" : 5823,
11174          "parameters" : [
11175            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
11176            { "kind" : "FPDenormMode", "name" : "'FP Denorm Mode'" }
11177          ],
11178          "capabilities" : [ "FunctionFloatControlINTEL" ],
11179          "version" : "None"
11180        },
11181        {
11182          "enumerant" : "RegisterINTEL",
11183          "value" : 5825,
11184          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11185          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11186          "version" : "None"
11187        },
11188        {
11189          "enumerant" : "MemoryINTEL",
11190          "value" : 5826,
11191          "parameters" : [
11192            { "kind" : "LiteralString", "name" : "'Memory Type'" }
11193          ],
11194          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11195          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11196          "version" : "None"
11197        },
11198        {
11199          "enumerant" : "NumbanksINTEL",
11200          "value" : 5827,
11201          "parameters" : [
11202            { "kind" : "LiteralInteger", "name" : "'Banks'" }
11203          ],
11204          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11205          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11206          "version" : "None"
11207        },
11208        {
11209          "enumerant" : "BankwidthINTEL",
11210          "value" : 5828,
11211          "parameters" : [
11212            { "kind" : "LiteralInteger", "name" : "'Bank Width'" }
11213          ],
11214          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11215          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11216          "version" : "None"
11217        },
11218        {
11219          "enumerant" : "MaxPrivateCopiesINTEL",
11220          "value" : 5829,
11221          "parameters" : [
11222            { "kind" : "LiteralInteger", "name" : "'Maximum Copies'" }
11223          ],
11224          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11225          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11226          "version" : "None"
11227        },
11228        {
11229          "enumerant" : "SinglepumpINTEL",
11230          "value" : 5830,
11231          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11232          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11233          "version" : "None"
11234        },
11235        {
11236          "enumerant" : "DoublepumpINTEL",
11237          "value" : 5831,
11238          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11239          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11240          "version" : "None"
11241        },
11242        {
11243          "enumerant" : "MaxReplicatesINTEL",
11244          "value" : 5832,
11245          "parameters" : [
11246            { "kind" : "LiteralInteger", "name" : "'Maximum Replicates'" }
11247          ],
11248          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11249          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11250          "version" : "None"
11251        },
11252        {
11253          "enumerant" : "SimpleDualPortINTEL",
11254          "value" : 5833,
11255          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11256          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11257          "version" : "None"
11258        },
11259        {
11260          "enumerant" : "MergeINTEL",
11261          "value" : 5834,
11262          "parameters" : [
11263            { "kind" : "LiteralString", "name" : "'Merge Key'" },
11264            { "kind" : "LiteralString", "name" : "'Merge Type'" }
11265          ],
11266          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11267          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11268          "version" : "None"
11269        },
11270        {
11271          "enumerant" : "BankBitsINTEL",
11272          "value" : 5835,
11273          "parameters" : [
11274            { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Bank Bits'" }
11275          ],
11276          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11277          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11278          "version" : "None"
11279        },
11280        {
11281          "enumerant" : "ForcePow2DepthINTEL",
11282          "value" : 5836,
11283          "parameters" : [
11284            { "kind" : "LiteralInteger", "name" : "'Force Key'" }
11285          ],
11286          "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
11287          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11288          "version" : "None"
11289        },
11290        {
11291          "enumerant" : "BurstCoalesceINTEL",
11292          "value" : 5899,
11293          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11294          "version" : "None"
11295        },
11296        {
11297          "enumerant" : "CacheSizeINTEL",
11298          "value" : 5900,
11299          "parameters" : [
11300            { "kind" : "LiteralInteger", "name" : "'Cache Size in bytes'" }
11301          ],
11302          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11303          "version" : "None"
11304        },
11305        {
11306          "enumerant" : "DontStaticallyCoalesceINTEL",
11307          "value" : 5901,
11308          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11309          "version" : "None"
11310        },
11311        {
11312          "enumerant" : "PrefetchINTEL",
11313          "value" : 5902,
11314          "parameters" : [
11315            { "kind" : "LiteralInteger", "name" : "'Prefetcher Size in bytes'" }
11316          ],
11317          "capabilities" : [ "FPGAMemoryAccessesINTEL" ],
11318          "version" : "None"
11319        },
11320        {
11321          "enumerant" : "StallEnableINTEL",
11322          "value" : 5905,
11323          "capabilities" : [ "FPGAClusterAttributesINTEL" ],
11324          "version" : "None"
11325        },
11326        {
11327          "enumerant" : "FuseLoopsInFunctionINTEL",
11328          "value" : 5907,
11329          "capabilities" : [ "LoopFuseINTEL" ],
11330          "version" : "None"
11331        },
11332        {
11333          "enumerant" : "BufferLocationINTEL",
11334          "value" : 5921,
11335          "parameters" : [
11336            { "kind" : "LiteralInteger", "name" : "'Buffer Location ID'" }
11337          ],
11338          "capabilities" : [ "FPGABufferLocationINTEL" ],
11339          "version" : "None"
11340        },
11341        {
11342          "enumerant" : "IOPipeStorageINTEL",
11343          "value" : 5944,
11344          "parameters" : [
11345            { "kind" : "LiteralInteger", "name" : "'IO Pipe ID'" }
11346          ],
11347          "capabilities" : [ "IOPipesINTEL" ],
11348          "version" : "None"
11349        },
11350        {
11351          "enumerant" : "FunctionFloatingPointModeINTEL",
11352          "value" : 6080,
11353          "parameters" : [
11354            { "kind" : "LiteralInteger", "name" : "'Target Width'" },
11355            { "kind" : "FPOperationMode", "name" : "'FP Operation Mode'" }
11356          ],
11357          "capabilities" : [ "FunctionFloatControlINTEL" ],
11358          "version" : "None"
11359        },
11360        {
11361          "enumerant" : "SingleElementVectorINTEL",
11362          "value" : 6085,
11363          "capabilities" : [ "VectorComputeINTEL" ],
11364          "version" : "None"
11365        },
11366        {
11367          "enumerant" : "VectorComputeCallableFunctionINTEL",
11368          "value" : 6087,
11369          "capabilities" : [ "VectorComputeINTEL" ],
11370          "version" : "None"
11371        }
11372      ]
11373    },
11374    {
11375      "category" : "ValueEnum",
11376      "kind" : "BuiltIn",
11377      "enumerants" : [
11378        {
11379          "enumerant" : "Position",
11380          "value" : 0,
11381          "capabilities" : [ "Shader" ]
11382        },
11383        {
11384          "enumerant" : "PointSize",
11385          "value" : 1,
11386          "capabilities" : [ "Shader" ]
11387        },
11388        {
11389          "enumerant" : "ClipDistance",
11390          "value" : 3,
11391          "capabilities" : [ "ClipDistance" ]
11392        },
11393        {
11394          "enumerant" : "CullDistance",
11395          "value" : 4,
11396          "capabilities" : [ "CullDistance" ]
11397        },
11398        {
11399          "enumerant" : "VertexId",
11400          "value" : 5,
11401          "capabilities" : [ "Shader" ]
11402        },
11403        {
11404          "enumerant" : "InstanceId",
11405          "value" : 6,
11406          "capabilities" : [ "Shader" ]
11407        },
11408        {
11409          "enumerant" : "PrimitiveId",
11410          "value" : 7,
11411          "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingKHR", "MeshShadingNV" ]
11412        },
11413        {
11414          "enumerant" : "InvocationId",
11415          "value" : 8,
11416          "capabilities" : [ "Geometry", "Tessellation" ]
11417        },
11418        {
11419          "enumerant" : "Layer",
11420          "value" : 9,
11421          "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT", "MeshShadingNV" ]
11422        },
11423        {
11424          "enumerant" : "ViewportIndex",
11425          "value" : 10,
11426          "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT", "MeshShadingNV" ]
11427        },
11428        {
11429          "enumerant" : "TessLevelOuter",
11430          "value" : 11,
11431          "capabilities" : [ "Tessellation" ]
11432        },
11433        {
11434          "enumerant" : "TessLevelInner",
11435          "value" : 12,
11436          "capabilities" : [ "Tessellation" ]
11437        },
11438        {
11439          "enumerant" : "TessCoord",
11440          "value" : 13,
11441          "capabilities" : [ "Tessellation" ]
11442        },
11443        {
11444          "enumerant" : "PatchVertices",
11445          "value" : 14,
11446          "capabilities" : [ "Tessellation" ]
11447        },
11448        {
11449          "enumerant" : "FragCoord",
11450          "value" : 15,
11451          "capabilities" : [ "Shader" ]
11452        },
11453        {
11454          "enumerant" : "PointCoord",
11455          "value" : 16,
11456          "capabilities" : [ "Shader" ]
11457        },
11458        {
11459          "enumerant" : "FrontFacing",
11460          "value" : 17,
11461          "capabilities" : [ "Shader" ]
11462        },
11463        {
11464          "enumerant" : "SampleId",
11465          "value" : 18,
11466          "capabilities" : [ "SampleRateShading" ]
11467        },
11468        {
11469          "enumerant" : "SamplePosition",
11470          "value" : 19,
11471          "capabilities" : [ "SampleRateShading" ]
11472        },
11473        {
11474          "enumerant" : "SampleMask",
11475          "value" : 20,
11476          "capabilities" : [ "Shader" ]
11477        },
11478        {
11479          "enumerant" : "FragDepth",
11480          "value" : 22,
11481          "capabilities" : [ "Shader" ]
11482        },
11483        {
11484          "enumerant" : "HelperInvocation",
11485          "value" : 23,
11486          "capabilities" : [ "Shader" ]
11487        },
11488        {
11489          "enumerant" : "NumWorkgroups",
11490          "value" : 24
11491        },
11492        {
11493          "enumerant" : "WorkgroupSize",
11494          "value" : 25
11495        },
11496        {
11497          "enumerant" : "WorkgroupId",
11498          "value" : 26
11499        },
11500        {
11501          "enumerant" : "LocalInvocationId",
11502          "value" : 27
11503        },
11504        {
11505          "enumerant" : "GlobalInvocationId",
11506          "value" : 28
11507        },
11508        {
11509          "enumerant" : "LocalInvocationIndex",
11510          "value" : 29
11511        },
11512        {
11513          "enumerant" : "WorkDim",
11514          "value" : 30,
11515          "capabilities" : [ "Kernel" ]
11516        },
11517        {
11518          "enumerant" : "GlobalSize",
11519          "value" : 31,
11520          "capabilities" : [ "Kernel" ]
11521        },
11522        {
11523          "enumerant" : "EnqueuedWorkgroupSize",
11524          "value" : 32,
11525          "capabilities" : [ "Kernel" ]
11526        },
11527        {
11528          "enumerant" : "GlobalOffset",
11529          "value" : 33,
11530          "capabilities" : [ "Kernel" ]
11531        },
11532        {
11533          "enumerant" : "GlobalLinearId",
11534          "value" : 34,
11535          "capabilities" : [ "Kernel" ]
11536        },
11537        {
11538          "enumerant" : "SubgroupSize",
11539          "value" : 36,
11540          "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
11541        },
11542        {
11543          "enumerant" : "SubgroupMaxSize",
11544          "value" : 37,
11545          "capabilities" : [ "Kernel" ]
11546        },
11547        {
11548          "enumerant" : "NumSubgroups",
11549          "value" : 38,
11550          "capabilities" : [ "Kernel", "GroupNonUniform" ]
11551        },
11552        {
11553          "enumerant" : "NumEnqueuedSubgroups",
11554          "value" : 39,
11555          "capabilities" : [ "Kernel" ]
11556        },
11557        {
11558          "enumerant" : "SubgroupId",
11559          "value" : 40,
11560          "capabilities" : [ "Kernel", "GroupNonUniform" ]
11561        },
11562        {
11563          "enumerant" : "SubgroupLocalInvocationId",
11564          "value" : 41,
11565          "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
11566        },
11567        {
11568          "enumerant" : "VertexIndex",
11569          "value" : 42,
11570          "capabilities" : [ "Shader" ]
11571        },
11572        {
11573          "enumerant" : "InstanceIndex",
11574          "value" : 43,
11575          "capabilities" : [ "Shader" ]
11576        },
11577        {
11578          "enumerant" : "SubgroupEqMask",
11579          "value" : 4416,
11580          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11581          "version" : "1.3"
11582        },
11583        {
11584          "enumerant" : "SubgroupEqMaskKHR",
11585          "value" : 4416,
11586          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11587          "extensions" : [ "SPV_KHR_shader_ballot" ],
11588          "version" : "1.3"
11589        },
11590        {
11591          "enumerant" : "SubgroupGeMask",
11592          "value" : 4417,
11593          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11594          "version" : "1.3"
11595        },
11596        {
11597          "enumerant" : "SubgroupGeMaskKHR",
11598          "value" : 4417,
11599          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11600          "extensions" : [ "SPV_KHR_shader_ballot" ],
11601          "version" : "1.3"
11602        },
11603        {
11604          "enumerant" : "SubgroupGtMask",
11605          "value" : 4418,
11606          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11607          "version" : "1.3"
11608        },
11609        {
11610          "enumerant" : "SubgroupGtMaskKHR",
11611          "value" : 4418,
11612          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11613          "extensions" : [ "SPV_KHR_shader_ballot" ],
11614          "version" : "1.3"
11615        },
11616        {
11617          "enumerant" : "SubgroupLeMask",
11618          "value" : 4419,
11619          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11620          "version" : "1.3"
11621        },
11622        {
11623          "enumerant" : "SubgroupLeMaskKHR",
11624          "value" : 4419,
11625          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11626          "extensions" : [ "SPV_KHR_shader_ballot" ],
11627          "version" : "1.3"
11628        },
11629        {
11630          "enumerant" : "SubgroupLtMask",
11631          "value" : 4420,
11632          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11633          "version" : "1.3"
11634        },
11635        {
11636          "enumerant" : "SubgroupLtMaskKHR",
11637          "value" : 4420,
11638          "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
11639          "extensions" : [ "SPV_KHR_shader_ballot" ],
11640          "version" : "1.3"
11641        },
11642        {
11643          "enumerant" : "BaseVertex",
11644          "value" : 4424,
11645          "capabilities" : [ "DrawParameters" ],
11646          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
11647          "version" : "1.3"
11648        },
11649        {
11650          "enumerant" : "BaseInstance",
11651          "value" : 4425,
11652          "capabilities" : [ "DrawParameters" ],
11653          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
11654          "version" : "1.3"
11655        },
11656        {
11657          "enumerant" : "DrawIndex",
11658          "value" : 4426,
11659          "capabilities" : [ "DrawParameters", "MeshShadingNV" ],
11660          "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader" ],
11661          "version" : "1.3"
11662        },
11663        {
11664          "enumerant" : "PrimitiveShadingRateKHR",
11665          "value" : 4432,
11666          "capabilities" : [ "FragmentShadingRateKHR" ],
11667          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
11668          "version" : "None"
11669        },
11670        {
11671          "enumerant" : "DeviceIndex",
11672          "value" : 4438,
11673          "capabilities" : [ "DeviceGroup" ],
11674          "extensions" : [ "SPV_KHR_device_group" ],
11675          "version" : "1.3"
11676        },
11677        {
11678          "enumerant" : "ViewIndex",
11679          "value" : 4440,
11680          "capabilities" : [ "MultiView" ],
11681          "extensions" : [ "SPV_KHR_multiview" ],
11682          "version" : "1.3"
11683        },
11684        {
11685          "enumerant" : "ShadingRateKHR",
11686          "value" : 4444,
11687          "capabilities" : [ "FragmentShadingRateKHR" ],
11688          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
11689          "version" : "None"
11690        },
11691        {
11692          "enumerant" : "BaryCoordNoPerspAMD",
11693          "value" : 4992,
11694          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11695          "version" : "None"
11696        },
11697        {
11698          "enumerant" : "BaryCoordNoPerspCentroidAMD",
11699          "value" : 4993,
11700          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11701          "version" : "None"
11702        },
11703        {
11704          "enumerant" : "BaryCoordNoPerspSampleAMD",
11705          "value" : 4994,
11706          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11707          "version" : "None"
11708        },
11709        {
11710          "enumerant" : "BaryCoordSmoothAMD",
11711          "value" : 4995,
11712          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11713          "version" : "None"
11714        },
11715        {
11716          "enumerant" : "BaryCoordSmoothCentroidAMD",
11717          "value" : 4996,
11718          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11719          "version" : "None"
11720        },
11721        {
11722          "enumerant" : "BaryCoordSmoothSampleAMD",
11723          "value" : 4997,
11724          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11725          "version" : "None"
11726        },
11727        {
11728          "enumerant" : "BaryCoordPullModelAMD",
11729          "value" : 4998,
11730          "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
11731          "version" : "None"
11732        },
11733        {
11734          "enumerant" : "FragStencilRefEXT",
11735          "value" : 5014,
11736          "capabilities" : [ "StencilExportEXT" ],
11737          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
11738          "version" : "None"
11739        },
11740        {
11741          "enumerant" : "ViewportMaskNV",
11742          "value" : 5253,
11743          "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ],
11744          "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ],
11745          "version" : "None"
11746        },
11747        {
11748          "enumerant" : "SecondaryPositionNV",
11749          "value" : 5257,
11750          "capabilities" : [ "ShaderStereoViewNV" ],
11751          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
11752          "version" : "None"
11753        },
11754        {
11755          "enumerant" : "SecondaryViewportMaskNV",
11756          "value" : 5258,
11757          "capabilities" : [ "ShaderStereoViewNV" ],
11758          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
11759          "version" : "None"
11760        },
11761        {
11762          "enumerant" : "PositionPerViewNV",
11763          "value" : 5261,
11764          "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
11765          "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
11766          "version" : "None"
11767        },
11768        {
11769          "enumerant" : "ViewportMaskPerViewNV",
11770          "value" : 5262,
11771          "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
11772          "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
11773          "version" : "None"
11774        },
11775        {
11776          "enumerant" : "FullyCoveredEXT",
11777          "value" : 5264,
11778          "capabilities" : [ "FragmentFullyCoveredEXT" ],
11779          "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
11780          "version" : "None"
11781        },
11782        {
11783          "enumerant" : "TaskCountNV",
11784          "value" : 5274,
11785          "capabilities" : [ "MeshShadingNV" ],
11786          "extensions" : [ "SPV_NV_mesh_shader" ],
11787          "version" : "None"
11788        },
11789        {
11790          "enumerant" : "PrimitiveCountNV",
11791          "value" : 5275,
11792          "capabilities" : [ "MeshShadingNV" ],
11793          "extensions" : [ "SPV_NV_mesh_shader" ],
11794          "version" : "None"
11795        },
11796        {
11797          "enumerant" : "PrimitiveIndicesNV",
11798          "value" : 5276,
11799          "capabilities" : [ "MeshShadingNV" ],
11800          "extensions" : [ "SPV_NV_mesh_shader" ],
11801          "version" : "None"
11802        },
11803        {
11804          "enumerant" : "ClipDistancePerViewNV",
11805          "value" : 5277,
11806          "capabilities" : [ "MeshShadingNV" ],
11807          "extensions" : [ "SPV_NV_mesh_shader" ],
11808          "version" : "None"
11809        },
11810        {
11811          "enumerant" : "CullDistancePerViewNV",
11812          "value" : 5278,
11813          "capabilities" : [ "MeshShadingNV" ],
11814          "extensions" : [ "SPV_NV_mesh_shader" ],
11815          "version" : "None"
11816        },
11817        {
11818          "enumerant" : "LayerPerViewNV",
11819          "value" : 5279,
11820          "capabilities" : [ "MeshShadingNV" ],
11821          "extensions" : [ "SPV_NV_mesh_shader" ],
11822          "version" : "None"
11823        },
11824        {
11825          "enumerant" : "MeshViewCountNV",
11826          "value" : 5280,
11827          "capabilities" : [ "MeshShadingNV" ],
11828          "extensions" : [ "SPV_NV_mesh_shader" ],
11829          "version" : "None"
11830        },
11831        {
11832          "enumerant" : "MeshViewIndicesNV",
11833          "value" : 5281,
11834          "capabilities" : [ "MeshShadingNV" ],
11835          "extensions" : [ "SPV_NV_mesh_shader" ],
11836          "version" : "None"
11837        },
11838        {
11839          "enumerant" : "BaryCoordNV",
11840          "value" : 5286,
11841          "capabilities" : [ "FragmentBarycentricNV" ],
11842          "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
11843          "version" : "None"
11844        },
11845        {
11846          "enumerant" : "BaryCoordNoPerspNV",
11847          "value" : 5287,
11848          "capabilities" : [ "FragmentBarycentricNV" ],
11849          "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
11850          "version" : "None"
11851        },
11852        {
11853          "enumerant" : "FragSizeEXT",
11854          "value" : 5292 ,
11855          "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
11856          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
11857          "version" : "None"
11858        },
11859        {
11860          "enumerant" : "FragmentSizeNV",
11861          "value" : 5292 ,
11862          "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
11863          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
11864          "version" : "None"
11865        },
11866        {
11867          "enumerant" : "FragInvocationCountEXT",
11868          "value" : 5293,
11869          "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
11870          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
11871          "version" : "None"
11872        },
11873        {
11874          "enumerant" : "InvocationsPerPixelNV",
11875          "value" : 5293,
11876          "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
11877          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
11878          "version" : "None"
11879        },
11880        {
11881          "enumerant" : "LaunchIdNV",
11882          "value" : 5319,
11883          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11884          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11885          "version" : "None"
11886        },
11887        {
11888          "enumerant" : "LaunchIdKHR",
11889          "value" : 5319,
11890          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11891          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11892          "version" : "None"
11893        },
11894        {
11895          "enumerant" : "LaunchSizeNV",
11896          "value" : 5320,
11897          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11898          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11899          "version" : "None"
11900        },
11901        {
11902          "enumerant" : "LaunchSizeKHR",
11903          "value" : 5320,
11904          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11905          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11906          "version" : "None"
11907        },
11908        {
11909          "enumerant" : "WorldRayOriginNV",
11910          "value" : 5321,
11911          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11912          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11913          "version" : "None"
11914        },
11915        {
11916          "enumerant" : "WorldRayOriginKHR",
11917          "value" : 5321,
11918          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11919          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11920          "version" : "None"
11921        },
11922        {
11923          "enumerant" : "WorldRayDirectionNV",
11924          "value" : 5322,
11925          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11926          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11927          "version" : "None"
11928        },
11929        {
11930          "enumerant" : "WorldRayDirectionKHR",
11931          "value" : 5322,
11932          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11933          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11934          "version" : "None"
11935        },
11936        {
11937          "enumerant" : "ObjectRayOriginNV",
11938          "value" : 5323,
11939          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11940          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11941          "version" : "None"
11942        },
11943        {
11944          "enumerant" : "ObjectRayOriginKHR",
11945          "value" : 5323,
11946          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11947          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11948          "version" : "None"
11949        },
11950        {
11951          "enumerant" : "ObjectRayDirectionNV",
11952          "value" : 5324,
11953          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11954          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11955          "version" : "None"
11956        },
11957        {
11958          "enumerant" : "ObjectRayDirectionKHR",
11959          "value" : 5324,
11960          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11961          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11962          "version" : "None"
11963        },
11964        {
11965          "enumerant" : "RayTminNV",
11966          "value" : 5325,
11967          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11968          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11969          "version" : "None"
11970        },
11971        {
11972          "enumerant" : "RayTminKHR",
11973          "value" : 5325,
11974          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11975          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11976          "version" : "None"
11977        },
11978        {
11979          "enumerant" : "RayTmaxNV",
11980          "value" : 5326,
11981          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11982          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11983          "version" : "None"
11984        },
11985        {
11986          "enumerant" : "RayTmaxKHR",
11987          "value" : 5326,
11988          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11989          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11990          "version" : "None"
11991        },
11992        {
11993          "enumerant" : "InstanceCustomIndexNV",
11994          "value" : 5327,
11995          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
11996          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
11997          "version" : "None"
11998        },
11999        {
12000          "enumerant" : "InstanceCustomIndexKHR",
12001          "value" : 5327,
12002          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12003          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12004          "version" : "None"
12005        },
12006        {
12007          "enumerant" : "ObjectToWorldNV",
12008          "value" : 5330,
12009          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12010          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12011          "version" : "None"
12012        },
12013        {
12014          "enumerant" : "ObjectToWorldKHR",
12015          "value" : 5330,
12016          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12017          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12018          "version" : "None"
12019        },
12020        {
12021          "enumerant" : "WorldToObjectNV",
12022          "value" : 5331,
12023          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12024          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12025          "version" : "None"
12026        },
12027        {
12028          "enumerant" : "WorldToObjectKHR",
12029          "value" : 5331,
12030          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12031          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12032          "version" : "None"
12033        },
12034        {
12035          "enumerant" : "HitTNV",
12036          "value" : 5332,
12037          "capabilities" : [ "RayTracingNV" ],
12038          "extensions" : [ "SPV_NV_ray_tracing" ],
12039          "version" : "None"
12040        },
12041        {
12042          "enumerant" : "HitKindNV",
12043          "value" : 5333,
12044          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12045          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12046          "version" : "None"
12047        },
12048        {
12049          "enumerant" : "HitKindKHR",
12050          "value" : 5333,
12051          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12052          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12053          "version" : "None"
12054        },
12055        {
12056          "enumerant" : "IncomingRayFlagsNV",
12057          "value" : 5351,
12058          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12059          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12060          "version" : "None"
12061        },
12062        {
12063          "enumerant" : "IncomingRayFlagsKHR",
12064          "value" : 5351,
12065          "capabilities" : [ "RayTracingNV" , "RayTracingKHR" ],
12066          "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
12067          "version" : "None"
12068        },
12069        {
12070          "enumerant" : "RayGeometryIndexKHR",
12071          "value" : 5352,
12072          "capabilities" : [ "RayTracingKHR" ],
12073          "extensions" : [ "SPV_KHR_ray_tracing" ],
12074          "version" : "None"
12075        },
12076        {
12077          "enumerant" : "WarpsPerSMNV",
12078          "value" : 5374,
12079          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12080          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12081          "version" : "None"
12082        },
12083        {
12084          "enumerant" : "SMCountNV",
12085          "value" : 5375,
12086          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12087          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12088          "version" : "None"
12089        },
12090        {
12091          "enumerant" : "WarpIDNV",
12092          "value" : 5376,
12093          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12094          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12095          "version" : "None"
12096        },
12097        {
12098          "enumerant" : "SMIDNV",
12099          "value" : 5377,
12100          "capabilities" : [ "ShaderSMBuiltinsNV" ],
12101          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
12102          "version" : "None"
12103        }
12104      ]
12105    },
12106    {
12107      "category" : "ValueEnum",
12108      "kind" : "Scope",
12109      "enumerants" : [
12110        {
12111          "enumerant" : "CrossDevice",
12112          "value" : 0
12113        },
12114        {
12115          "enumerant" : "Device",
12116          "value" : 1
12117        },
12118        {
12119          "enumerant" : "Workgroup",
12120          "value" : 2
12121        },
12122        {
12123          "enumerant" : "Subgroup",
12124          "value" : 3
12125        },
12126        {
12127          "enumerant" : "Invocation",
12128          "value" : 4
12129        },
12130        {
12131          "enumerant" : "QueueFamily",
12132          "value" : 5,
12133          "capabilities" : [ "VulkanMemoryModel" ],
12134          "version" : "1.5"
12135        },
12136        {
12137          "enumerant" : "QueueFamilyKHR",
12138          "value" : 5,
12139          "capabilities" : [ "VulkanMemoryModel" ],
12140          "version" : "1.5"
12141        },
12142        {
12143          "enumerant" : "ShaderCallKHR",
12144          "value" : 6,
12145          "capabilities" : [ "RayTracingKHR" ],
12146          "version" : "None"
12147        }
12148      ]
12149    },
12150    {
12151      "category" : "ValueEnum",
12152      "kind" : "GroupOperation",
12153      "enumerants" : [
12154        {
12155          "enumerant" : "Reduce",
12156          "value" : 0,
12157          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
12158        },
12159        {
12160          "enumerant" : "InclusiveScan",
12161          "value" : 1,
12162          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
12163        },
12164        {
12165          "enumerant" : "ExclusiveScan",
12166          "value" : 2,
12167          "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
12168        },
12169        {
12170          "enumerant" : "ClusteredReduce",
12171          "value" : 3,
12172          "capabilities" : [ "GroupNonUniformClustered" ],
12173          "version" : "1.3"
12174        },
12175        {
12176          "enumerant" : "PartitionedReduceNV",
12177          "value" : 6,
12178          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
12179          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12180          "version" : "None"
12181        },
12182        {
12183          "enumerant" : "PartitionedInclusiveScanNV",
12184          "value" : 7,
12185          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
12186          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12187          "version" : "None"
12188        },
12189        {
12190          "enumerant" : "PartitionedExclusiveScanNV",
12191          "value" : 8,
12192          "capabilities" : [ "GroupNonUniformPartitionedNV" ],
12193          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12194          "version" : "None"
12195        }
12196      ]
12197    },
12198    {
12199      "category" : "ValueEnum",
12200      "kind" : "KernelEnqueueFlags",
12201      "enumerants" : [
12202        {
12203          "enumerant" : "NoWait",
12204          "value" : 0,
12205          "capabilities" : [ "Kernel" ]
12206        },
12207        {
12208          "enumerant" : "WaitKernel",
12209          "value" : 1,
12210          "capabilities" : [ "Kernel" ]
12211        },
12212        {
12213          "enumerant" : "WaitWorkGroup",
12214          "value" : 2,
12215          "capabilities" : [ "Kernel" ]
12216        }
12217      ]
12218    },
12219    {
12220      "category" : "ValueEnum",
12221      "kind" : "Capability",
12222      "enumerants" : [
12223        {
12224          "enumerant" : "Matrix",
12225          "value" : 0
12226        },
12227        {
12228          "enumerant" : "Shader",
12229          "value" : 1,
12230          "capabilities" : [ "Matrix" ]
12231        },
12232        {
12233          "enumerant" : "Geometry",
12234          "value" : 2,
12235          "capabilities" : [ "Shader" ]
12236        },
12237        {
12238          "enumerant" : "Tessellation",
12239          "value" : 3,
12240          "capabilities" : [ "Shader" ]
12241        },
12242        {
12243          "enumerant" : "Addresses",
12244          "value" : 4
12245        },
12246        {
12247          "enumerant" : "Linkage",
12248          "value" : 5
12249        },
12250        {
12251          "enumerant" : "Kernel",
12252          "value" : 6
12253        },
12254        {
12255          "enumerant" : "Vector16",
12256          "value" : 7,
12257          "capabilities" : [ "Kernel" ]
12258        },
12259        {
12260          "enumerant" : "Float16Buffer",
12261          "value" : 8,
12262          "capabilities" : [ "Kernel" ]
12263        },
12264        {
12265          "enumerant" : "Float16",
12266          "value" : 9
12267        },
12268        {
12269          "enumerant" : "Float64",
12270          "value" : 10
12271        },
12272        {
12273          "enumerant" : "Int64",
12274          "value" : 11
12275        },
12276        {
12277          "enumerant" : "Int64Atomics",
12278          "value" : 12,
12279          "capabilities" : [ "Int64" ]
12280        },
12281        {
12282          "enumerant" : "ImageBasic",
12283          "value" : 13,
12284          "capabilities" : [ "Kernel" ]
12285        },
12286        {
12287          "enumerant" : "ImageReadWrite",
12288          "value" : 14,
12289          "capabilities" : [ "ImageBasic" ]
12290        },
12291        {
12292          "enumerant" : "ImageMipmap",
12293          "value" : 15,
12294          "capabilities" : [ "ImageBasic" ]
12295        },
12296        {
12297          "enumerant" : "Pipes",
12298          "value" : 17,
12299          "capabilities" : [ "Kernel" ]
12300        },
12301        {
12302          "enumerant" : "Groups",
12303          "value" : 18,
12304          "extensions" : [ "SPV_AMD_shader_ballot" ]
12305        },
12306        {
12307          "enumerant" : "DeviceEnqueue",
12308          "value" : 19,
12309          "capabilities" : [ "Kernel" ]
12310        },
12311        {
12312          "enumerant" : "LiteralSampler",
12313          "value" : 20,
12314          "capabilities" : [ "Kernel" ]
12315        },
12316        {
12317          "enumerant" : "AtomicStorage",
12318          "value" : 21,
12319          "capabilities" : [ "Shader" ]
12320        },
12321        {
12322          "enumerant" : "Int16",
12323          "value" : 22
12324        },
12325        {
12326          "enumerant" : "TessellationPointSize",
12327          "value" : 23,
12328          "capabilities" : [ "Tessellation" ]
12329        },
12330        {
12331          "enumerant" : "GeometryPointSize",
12332          "value" : 24,
12333          "capabilities" : [ "Geometry" ]
12334        },
12335        {
12336          "enumerant" : "ImageGatherExtended",
12337          "value" : 25,
12338          "capabilities" : [ "Shader" ]
12339        },
12340        {
12341          "enumerant" : "StorageImageMultisample",
12342          "value" : 27,
12343          "capabilities" : [ "Shader" ]
12344        },
12345        {
12346          "enumerant" : "UniformBufferArrayDynamicIndexing",
12347          "value" : 28,
12348          "capabilities" : [ "Shader" ]
12349        },
12350        {
12351          "enumerant" : "SampledImageArrayDynamicIndexing",
12352          "value" : 29,
12353          "capabilities" : [ "Shader" ]
12354        },
12355        {
12356          "enumerant" : "StorageBufferArrayDynamicIndexing",
12357          "value" : 30,
12358          "capabilities" : [ "Shader" ]
12359        },
12360        {
12361          "enumerant" : "StorageImageArrayDynamicIndexing",
12362          "value" : 31,
12363          "capabilities" : [ "Shader" ]
12364        },
12365        {
12366          "enumerant" : "ClipDistance",
12367          "value" : 32,
12368          "capabilities" : [ "Shader" ]
12369        },
12370        {
12371          "enumerant" : "CullDistance",
12372          "value" : 33,
12373          "capabilities" : [ "Shader" ]
12374        },
12375        {
12376          "enumerant" : "ImageCubeArray",
12377          "value" : 34,
12378          "capabilities" : [ "SampledCubeArray" ]
12379        },
12380        {
12381          "enumerant" : "SampleRateShading",
12382          "value" : 35,
12383          "capabilities" : [ "Shader" ]
12384        },
12385        {
12386          "enumerant" : "ImageRect",
12387          "value" : 36,
12388          "capabilities" : [ "SampledRect" ]
12389        },
12390        {
12391          "enumerant" : "SampledRect",
12392          "value" : 37,
12393          "capabilities" : [ "Shader" ]
12394        },
12395        {
12396          "enumerant" : "GenericPointer",
12397          "value" : 38,
12398          "capabilities" : [ "Addresses" ]
12399        },
12400        {
12401          "enumerant" : "Int8",
12402          "value" : 39
12403        },
12404        {
12405          "enumerant" : "InputAttachment",
12406          "value" : 40,
12407          "capabilities" : [ "Shader" ]
12408        },
12409        {
12410          "enumerant" : "SparseResidency",
12411          "value" : 41,
12412          "capabilities" : [ "Shader" ]
12413        },
12414        {
12415          "enumerant" : "MinLod",
12416          "value" : 42,
12417          "capabilities" : [ "Shader" ]
12418        },
12419        {
12420          "enumerant" : "Sampled1D",
12421          "value" : 43
12422        },
12423        {
12424          "enumerant" : "Image1D",
12425          "value" : 44,
12426          "capabilities" : [ "Sampled1D" ]
12427        },
12428        {
12429          "enumerant" : "SampledCubeArray",
12430          "value" : 45,
12431          "capabilities" : [ "Shader" ]
12432        },
12433        {
12434          "enumerant" : "SampledBuffer",
12435          "value" : 46
12436        },
12437        {
12438          "enumerant" : "ImageBuffer",
12439          "value" : 47,
12440          "capabilities" : [ "SampledBuffer" ]
12441        },
12442        {
12443          "enumerant" : "ImageMSArray",
12444          "value" : 48,
12445          "capabilities" : [ "Shader" ]
12446        },
12447        {
12448          "enumerant" : "StorageImageExtendedFormats",
12449          "value" : 49,
12450          "capabilities" : [ "Shader" ]
12451        },
12452        {
12453          "enumerant" : "ImageQuery",
12454          "value" : 50,
12455          "capabilities" : [ "Shader" ]
12456        },
12457        {
12458          "enumerant" : "DerivativeControl",
12459          "value" : 51,
12460          "capabilities" : [ "Shader" ]
12461        },
12462        {
12463          "enumerant" : "InterpolationFunction",
12464          "value" : 52,
12465          "capabilities" : [ "Shader" ]
12466        },
12467        {
12468          "enumerant" : "TransformFeedback",
12469          "value" : 53,
12470          "capabilities" : [ "Shader" ]
12471        },
12472        {
12473          "enumerant" : "GeometryStreams",
12474          "value" : 54,
12475          "capabilities" : [ "Geometry" ]
12476        },
12477        {
12478          "enumerant" : "StorageImageReadWithoutFormat",
12479          "value" : 55,
12480          "capabilities" : [ "Shader" ]
12481        },
12482        {
12483          "enumerant" : "StorageImageWriteWithoutFormat",
12484          "value" : 56,
12485          "capabilities" : [ "Shader" ]
12486        },
12487        {
12488          "enumerant" : "MultiViewport",
12489          "value" : 57,
12490          "capabilities" : [ "Geometry" ]
12491        },
12492        {
12493          "enumerant" : "SubgroupDispatch",
12494          "value" : 58,
12495          "capabilities" : [ "DeviceEnqueue" ],
12496          "version" : "1.1"
12497        },
12498        {
12499          "enumerant" : "NamedBarrier",
12500          "value" : 59,
12501          "capabilities" : [ "Kernel" ],
12502          "version" : "1.1"
12503        },
12504        {
12505          "enumerant" : "PipeStorage",
12506          "value" : 60,
12507          "capabilities" : [ "Pipes" ],
12508          "version" : "1.1"
12509        },
12510        {
12511          "enumerant" : "GroupNonUniform",
12512          "value" : 61,
12513          "version" : "1.3"
12514        },
12515        {
12516          "enumerant" : "GroupNonUniformVote",
12517          "value" : 62,
12518          "capabilities" : [ "GroupNonUniform" ],
12519          "version" : "1.3"
12520        },
12521        {
12522          "enumerant" : "GroupNonUniformArithmetic",
12523          "value" : 63,
12524          "capabilities" : [ "GroupNonUniform" ],
12525          "version" : "1.3"
12526        },
12527        {
12528          "enumerant" : "GroupNonUniformBallot",
12529          "value" : 64,
12530          "capabilities" : [ "GroupNonUniform" ],
12531          "version" : "1.3"
12532        },
12533        {
12534          "enumerant" : "GroupNonUniformShuffle",
12535          "value" : 65,
12536          "capabilities" : [ "GroupNonUniform" ],
12537          "version" : "1.3"
12538        },
12539        {
12540          "enumerant" : "GroupNonUniformShuffleRelative",
12541          "value" : 66,
12542          "capabilities" : [ "GroupNonUniform" ],
12543          "version" : "1.3"
12544        },
12545        {
12546          "enumerant" : "GroupNonUniformClustered",
12547          "value" : 67,
12548          "capabilities" : [ "GroupNonUniform" ],
12549          "version" : "1.3"
12550        },
12551        {
12552          "enumerant" : "GroupNonUniformQuad",
12553          "value" : 68,
12554          "capabilities" : [ "GroupNonUniform" ],
12555          "version" : "1.3"
12556        },
12557        {
12558          "enumerant" : "ShaderLayer",
12559          "value" : 69,
12560          "version" : "1.5"
12561        },
12562        {
12563          "enumerant" : "ShaderViewportIndex",
12564          "value" : 70,
12565          "version" : "1.5"
12566        },
12567        {
12568          "enumerant" : "FragmentShadingRateKHR",
12569          "value" : 4422,
12570          "capabilities" : [ "Shader" ],
12571          "extensions" : [ "SPV_KHR_fragment_shading_rate" ],
12572          "version" : "None"
12573        },
12574        {
12575          "enumerant" : "SubgroupBallotKHR",
12576          "value" : 4423,
12577          "extensions" : [ "SPV_KHR_shader_ballot" ],
12578          "version" : "None"
12579        },
12580        {
12581          "enumerant" : "DrawParameters",
12582          "value" : 4427,
12583          "capabilities" : [ "Shader" ],
12584          "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
12585          "version" : "1.3"
12586        },
12587        {
12588          "enumerant" : "WorkgroupMemoryExplicitLayoutKHR",
12589          "value" : 4428,
12590          "capabilities" : [ "Shader" ],
12591          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
12592          "version" : "None"
12593        },
12594        {
12595          "enumerant" : "WorkgroupMemoryExplicitLayout8BitAccessKHR",
12596          "value" : 4429,
12597          "capabilities" : [ "WorkgroupMemoryExplicitLayoutKHR" ],
12598          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
12599          "version" : "None"
12600        },
12601        {
12602          "enumerant" : "WorkgroupMemoryExplicitLayout16BitAccessKHR",
12603          "value" : 4430,
12604          "capabilities" : [ "Shader" ],
12605          "extensions" : [ "SPV_KHR_workgroup_memory_explicit_layout" ],
12606          "version" : "None"
12607        },
12608        {
12609          "enumerant" : "SubgroupVoteKHR",
12610          "value" : 4431,
12611          "extensions" : [ "SPV_KHR_subgroup_vote" ],
12612          "version" : "None"
12613        },
12614        {
12615          "enumerant" : "StorageBuffer16BitAccess",
12616          "value" : 4433,
12617          "extensions" : [ "SPV_KHR_16bit_storage" ],
12618          "version" : "1.3"
12619        },
12620        {
12621          "enumerant" : "StorageUniformBufferBlock16",
12622          "value" : 4433,
12623          "extensions" : [ "SPV_KHR_16bit_storage" ],
12624          "version" : "1.3"
12625        },
12626        {
12627          "enumerant" : "UniformAndStorageBuffer16BitAccess",
12628          "value" : 4434,
12629          "capabilities" : [
12630            "StorageBuffer16BitAccess",
12631            "StorageUniformBufferBlock16"
12632          ],
12633          "extensions" : [ "SPV_KHR_16bit_storage" ],
12634          "version" : "1.3"
12635        },
12636        {
12637          "enumerant" : "StorageUniform16",
12638          "value" : 4434,
12639          "capabilities" : [
12640            "StorageBuffer16BitAccess",
12641            "StorageUniformBufferBlock16"
12642          ],
12643          "extensions" : [ "SPV_KHR_16bit_storage" ],
12644          "version" : "1.3"
12645        },
12646        {
12647          "enumerant" : "StoragePushConstant16",
12648          "value" : 4435,
12649          "extensions" : [ "SPV_KHR_16bit_storage" ],
12650          "version" : "1.3"
12651        },
12652        {
12653          "enumerant" : "StorageInputOutput16",
12654          "value" : 4436,
12655          "extensions" : [ "SPV_KHR_16bit_storage" ],
12656          "version" : "1.3"
12657        },
12658        {
12659          "enumerant" : "DeviceGroup",
12660          "value" : 4437,
12661          "extensions" : [ "SPV_KHR_device_group" ],
12662          "version" : "1.3"
12663        },
12664        {
12665          "enumerant" : "MultiView",
12666          "value" : 4439,
12667          "capabilities" : [ "Shader" ],
12668          "extensions" : [ "SPV_KHR_multiview" ],
12669          "version" : "1.3"
12670        },
12671        {
12672          "enumerant" : "VariablePointersStorageBuffer",
12673          "value" : 4441,
12674          "capabilities" : [ "Shader" ],
12675          "extensions" : [ "SPV_KHR_variable_pointers" ],
12676          "version" : "1.3"
12677        },
12678        {
12679          "enumerant" : "VariablePointers",
12680          "value" : 4442,
12681          "capabilities" : [ "VariablePointersStorageBuffer" ],
12682          "extensions" : [ "SPV_KHR_variable_pointers" ],
12683          "version" : "1.3"
12684        },
12685        {
12686          "enumerant" : "AtomicStorageOps",
12687          "value" : 4445,
12688          "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ],
12689          "version" : "None"
12690        },
12691        {
12692          "enumerant" : "SampleMaskPostDepthCoverage",
12693          "value" : 4447,
12694          "extensions" : [ "SPV_KHR_post_depth_coverage" ],
12695          "version" : "None"
12696        },
12697        {
12698          "enumerant" : "StorageBuffer8BitAccess",
12699          "value" : 4448,
12700          "extensions" : [ "SPV_KHR_8bit_storage" ],
12701          "version" : "1.5"
12702        },
12703        {
12704          "enumerant" : "UniformAndStorageBuffer8BitAccess",
12705          "value" : 4449,
12706          "capabilities" : [ "StorageBuffer8BitAccess" ],
12707          "extensions" : [ "SPV_KHR_8bit_storage" ],
12708          "version" : "1.5"
12709        },
12710        {
12711          "enumerant" : "StoragePushConstant8",
12712          "value" : 4450,
12713          "extensions" : [ "SPV_KHR_8bit_storage" ],
12714          "version" : "1.5"
12715        },
12716        {
12717          "enumerant" : "DenormPreserve",
12718          "value" : 4464,
12719          "extensions" : [ "SPV_KHR_float_controls" ],
12720          "version" : "1.4"
12721        },
12722        {
12723          "enumerant" : "DenormFlushToZero",
12724          "value" : 4465,
12725          "extensions" : [ "SPV_KHR_float_controls" ],
12726          "version" : "1.4"
12727        },
12728        {
12729          "enumerant" : "SignedZeroInfNanPreserve",
12730          "value" : 4466,
12731          "extensions" : [ "SPV_KHR_float_controls" ],
12732          "version" : "1.4"
12733        },
12734        {
12735          "enumerant" : "RoundingModeRTE",
12736          "value" : 4467,
12737          "extensions" : [ "SPV_KHR_float_controls" ],
12738          "version" : "1.4"
12739        },
12740        {
12741          "enumerant" : "RoundingModeRTZ",
12742          "value" : 4468,
12743          "extensions" : [ "SPV_KHR_float_controls" ],
12744          "version" : "1.4"
12745        },
12746        {
12747          "enumerant" : "RayQueryProvisionalKHR",
12748          "value" : 4471,
12749          "capabilities" : [ "Shader" ],
12750          "extensions" : [ "SPV_KHR_ray_query" ],
12751          "version" : "None"
12752        },
12753        {
12754          "enumerant" : "RayQueryKHR",
12755          "value" : 4472,
12756          "capabilities" : [ "Shader" ],
12757          "extensions" : [ "SPV_KHR_ray_query" ],
12758          "version" : "None"
12759        },
12760        {
12761          "enumerant" : "RayTraversalPrimitiveCullingKHR",
12762          "value" : 4478,
12763          "capabilities" : [ "RayQueryKHR","RayTracingKHR" ],
12764          "extensions" : [ "SPV_KHR_ray_query","SPV_KHR_ray_tracing" ],
12765          "version" : "None"
12766        },
12767        {
12768          "enumerant" : "RayTracingKHR",
12769          "value" : 4479,
12770          "capabilities" : [ "Shader" ],
12771          "extensions" : [ "SPV_KHR_ray_tracing" ],
12772          "version" : "None"
12773        },
12774        {
12775          "enumerant" : "Float16ImageAMD",
12776          "value" : 5008,
12777          "capabilities" : [ "Shader" ],
12778          "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ],
12779          "version" : "None"
12780        },
12781        {
12782          "enumerant" : "ImageGatherBiasLodAMD",
12783          "value" : 5009,
12784          "capabilities" : [ "Shader" ],
12785          "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ],
12786          "version" : "None"
12787        },
12788        {
12789          "enumerant" : "FragmentMaskAMD",
12790          "value" : 5010,
12791          "capabilities" : [ "Shader" ],
12792          "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
12793          "version" : "None"
12794        },
12795        {
12796          "enumerant" : "StencilExportEXT",
12797          "value" : 5013,
12798          "capabilities" : [ "Shader" ],
12799          "extensions" : [ "SPV_EXT_shader_stencil_export" ],
12800          "version" : "None"
12801        },
12802        {
12803          "enumerant" : "ImageReadWriteLodAMD",
12804          "value" : 5015,
12805          "capabilities" : [ "Shader" ],
12806          "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
12807          "version" : "None"
12808        },
12809        {
12810          "enumerant" : "Int64ImageEXT",
12811          "value" : 5016,
12812          "capabilities" : [ "Shader" ],
12813          "extensions" : [ "SPV_EXT_shader_image_int64" ],
12814          "version" : "None"
12815        },
12816        {
12817          "enumerant" : "ShaderClockKHR",
12818          "value" : 5055,
12819          "capabilities" : [ "Shader" ],
12820          "extensions" : [ "SPV_KHR_shader_clock" ],
12821          "version" : "None"
12822        },
12823        {
12824          "enumerant" : "SampleMaskOverrideCoverageNV",
12825          "value" : 5249,
12826          "capabilities" : [ "SampleRateShading" ],
12827          "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
12828          "version" : "None"
12829        },
12830        {
12831          "enumerant" : "GeometryShaderPassthroughNV",
12832          "value" : 5251,
12833          "capabilities" : [ "Geometry" ],
12834          "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
12835          "version" : "None"
12836        },
12837        {
12838          "enumerant" : "ShaderViewportIndexLayerEXT",
12839          "value" : 5254,
12840          "capabilities" : [ "MultiViewport" ],
12841          "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ],
12842          "version" : "None"
12843        },
12844        {
12845          "enumerant" : "ShaderViewportIndexLayerNV",
12846          "value" : 5254,
12847          "capabilities" : [ "MultiViewport" ],
12848          "extensions" : [ "SPV_NV_viewport_array2" ],
12849          "version" : "None"
12850        },
12851        {
12852          "enumerant" : "ShaderViewportMaskNV",
12853          "value" : 5255,
12854          "capabilities" : [ "ShaderViewportIndexLayerNV" ],
12855          "extensions" : [ "SPV_NV_viewport_array2" ],
12856          "version" : "None"
12857        },
12858        {
12859          "enumerant" : "ShaderStereoViewNV",
12860          "value" : 5259,
12861          "capabilities" : [ "ShaderViewportMaskNV" ],
12862          "extensions" : [ "SPV_NV_stereo_view_rendering" ],
12863          "version" : "None"
12864        },
12865        {
12866          "enumerant" : "PerViewAttributesNV",
12867          "value" : 5260,
12868          "capabilities" : [ "MultiView" ],
12869          "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ],
12870          "version" : "None"
12871        },
12872        {
12873          "enumerant" : "FragmentFullyCoveredEXT",
12874          "value" : 5265,
12875          "capabilities" : [ "Shader" ],
12876          "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
12877          "version" : "None"
12878        },
12879        {
12880          "enumerant" : "MeshShadingNV",
12881          "value" : 5266,
12882          "capabilities" : [ "Shader" ],
12883          "extensions" : [ "SPV_NV_mesh_shader" ],
12884          "version" : "None"
12885        },
12886        {
12887          "enumerant" : "ImageFootprintNV",
12888          "value" : 5282,
12889          "extensions" : [ "SPV_NV_shader_image_footprint" ],
12890          "version" : "None"
12891        },
12892        {
12893          "enumerant" : "FragmentBarycentricNV",
12894          "value" : 5284,
12895          "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
12896          "version" : "None"
12897        },
12898        {
12899          "enumerant" : "ComputeDerivativeGroupQuadsNV",
12900          "value" : 5288,
12901          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
12902          "version" : "None"
12903        },
12904        {
12905          "enumerant" : "FragmentDensityEXT",
12906          "value" : 5291,
12907          "capabilities" : [ "Shader" ],
12908          "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
12909          "version" : "None"
12910        },
12911        {
12912          "enumerant" : "ShadingRateNV",
12913          "value" : 5291,
12914          "capabilities" : [ "Shader" ],
12915          "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
12916          "version" : "None"
12917        },
12918        {
12919          "enumerant" : "GroupNonUniformPartitionedNV",
12920          "value" : 5297,
12921          "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
12922          "version" : "None"
12923        },
12924        {
12925          "enumerant" : "ShaderNonUniform",
12926          "value" : 5301,
12927          "capabilities" : [ "Shader" ],
12928          "version" : "1.5"
12929        },
12930        {
12931          "enumerant" : "ShaderNonUniformEXT",
12932          "value" : 5301,
12933          "capabilities" : [ "Shader" ],
12934          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
12935          "version" : "1.5"
12936        },
12937        {
12938          "enumerant" : "RuntimeDescriptorArray",
12939          "value" : 5302,
12940          "capabilities" : [ "Shader" ],
12941          "version" : "1.5"
12942        },
12943        {
12944          "enumerant" : "RuntimeDescriptorArrayEXT",
12945          "value" : 5302,
12946          "capabilities" : [ "Shader" ],
12947          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
12948          "version" : "1.5"
12949        },
12950        {
12951          "enumerant" : "InputAttachmentArrayDynamicIndexing",
12952          "value" : 5303,
12953          "capabilities" : [ "InputAttachment" ],
12954          "version" : "1.5"
12955        },
12956        {
12957          "enumerant" : "InputAttachmentArrayDynamicIndexingEXT",
12958          "value" : 5303,
12959          "capabilities" : [ "InputAttachment" ],
12960          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
12961          "version" : "1.5"
12962        },
12963        {
12964          "enumerant" : "UniformTexelBufferArrayDynamicIndexing",
12965          "value" : 5304,
12966          "capabilities" : [ "SampledBuffer" ],
12967          "version" : "1.5"
12968        },
12969        {
12970          "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT",
12971          "value" : 5304,
12972          "capabilities" : [ "SampledBuffer" ],
12973          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
12974          "version" : "1.5"
12975        },
12976        {
12977          "enumerant" : "StorageTexelBufferArrayDynamicIndexing",
12978          "value" : 5305,
12979          "capabilities" : [ "ImageBuffer" ],
12980          "version" : "1.5"
12981        },
12982        {
12983          "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT",
12984          "value" : 5305,
12985          "capabilities" : [ "ImageBuffer" ],
12986          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
12987          "version" : "1.5"
12988        },
12989        {
12990          "enumerant" : "UniformBufferArrayNonUniformIndexing",
12991          "value" : 5306,
12992          "capabilities" : [ "ShaderNonUniform" ],
12993          "version" : "1.5"
12994        },
12995        {
12996          "enumerant" : "UniformBufferArrayNonUniformIndexingEXT",
12997          "value" : 5306,
12998          "capabilities" : [ "ShaderNonUniform" ],
12999          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13000          "version" : "1.5"
13001        },
13002        {
13003          "enumerant" : "SampledImageArrayNonUniformIndexing",
13004          "value" : 5307,
13005          "capabilities" : [ "ShaderNonUniform" ],
13006          "version" : "1.5"
13007        },
13008        {
13009          "enumerant" : "SampledImageArrayNonUniformIndexingEXT",
13010          "value" : 5307,
13011          "capabilities" : [ "ShaderNonUniform" ],
13012          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13013          "version" : "1.5"
13014        },
13015        {
13016          "enumerant" : "StorageBufferArrayNonUniformIndexing",
13017          "value" : 5308,
13018          "capabilities" : [ "ShaderNonUniform" ],
13019          "version" : "1.5"
13020        },
13021        {
13022          "enumerant" : "StorageBufferArrayNonUniformIndexingEXT",
13023          "value" : 5308,
13024          "capabilities" : [ "ShaderNonUniform" ],
13025          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13026          "version" : "1.5"
13027        },
13028        {
13029          "enumerant" : "StorageImageArrayNonUniformIndexing",
13030          "value" : 5309,
13031          "capabilities" : [ "ShaderNonUniform" ],
13032          "version" : "1.5"
13033        },
13034        {
13035          "enumerant" : "StorageImageArrayNonUniformIndexingEXT",
13036          "value" : 5309,
13037          "capabilities" : [ "ShaderNonUniform" ],
13038          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13039          "version" : "1.5"
13040        },
13041        {
13042          "enumerant" : "InputAttachmentArrayNonUniformIndexing",
13043          "value" : 5310,
13044          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
13045          "version" : "1.5"
13046        },
13047        {
13048          "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT",
13049          "value" : 5310,
13050          "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
13051          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13052          "version" : "1.5"
13053        },
13054        {
13055          "enumerant" : "UniformTexelBufferArrayNonUniformIndexing",
13056          "value" : 5311,
13057          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
13058          "version" : "1.5"
13059        },
13060        {
13061          "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT",
13062          "value" : 5311,
13063          "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
13064          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13065          "version" : "1.5"
13066        },
13067        {
13068          "enumerant" : "StorageTexelBufferArrayNonUniformIndexing",
13069          "value" : 5312,
13070          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
13071          "version" : "1.5"
13072        },
13073        {
13074          "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT",
13075          "value" : 5312,
13076          "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
13077          "extensions" : [ "SPV_EXT_descriptor_indexing" ],
13078          "version" : "1.5"
13079        },
13080        {
13081          "enumerant" : "RayTracingNV",
13082          "value" : 5340,
13083          "capabilities" : [ "Shader" ],
13084          "extensions" : [ "SPV_NV_ray_tracing" ],
13085          "version" : "None"
13086        },
13087        {
13088          "enumerant" : "VulkanMemoryModel",
13089          "value" : 5345,
13090          "version" : "1.5"
13091        },
13092        {
13093          "enumerant" : "VulkanMemoryModelKHR",
13094          "value" : 5345,
13095          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
13096          "version" : "1.5"
13097        },
13098        {
13099          "enumerant" : "VulkanMemoryModelDeviceScope",
13100          "value" : 5346,
13101          "version" : "1.5"
13102        },
13103        {
13104          "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
13105          "value" : 5346,
13106          "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
13107          "version" : "1.5"
13108        },
13109        {
13110          "enumerant" : "PhysicalStorageBufferAddresses",
13111          "value" : 5347,
13112          "capabilities" : [ "Shader" ],
13113          "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
13114          "version" : "1.5"
13115        },
13116        {
13117          "enumerant" : "PhysicalStorageBufferAddressesEXT",
13118          "value" : 5347,
13119          "capabilities" : [ "Shader" ],
13120          "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
13121          "version" : "1.5"
13122        },
13123        {
13124          "enumerant" : "ComputeDerivativeGroupLinearNV",
13125          "value" : 5350,
13126          "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
13127          "version" : "None"
13128        },
13129        {
13130          "enumerant" : "RayTracingProvisionalKHR",
13131          "value" : 5353,
13132          "capabilities" : [ "Shader" ],
13133          "extensions" : [ "SPV_KHR_ray_tracing" ],
13134          "version" : "None"
13135        },
13136        {
13137          "enumerant" : "CooperativeMatrixNV",
13138          "value" : 5357,
13139          "capabilities" : [ "Shader" ],
13140          "extensions" : [ "SPV_NV_cooperative_matrix" ],
13141          "version" : "None"
13142        },
13143        {
13144          "enumerant" : "FragmentShaderSampleInterlockEXT",
13145          "value" : 5363,
13146          "capabilities" : [ "Shader" ],
13147          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
13148          "version" : "None"
13149        },
13150        {
13151          "enumerant" : "FragmentShaderShadingRateInterlockEXT",
13152          "value" : 5372,
13153          "capabilities" : [ "Shader" ],
13154          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
13155          "version" : "None"
13156        },
13157        {
13158          "enumerant" : "ShaderSMBuiltinsNV",
13159          "value" : 5373,
13160          "capabilities" : [ "Shader" ],
13161          "extensions" : [ "SPV_NV_shader_sm_builtins" ],
13162          "version" : "None"
13163        },
13164        {
13165          "enumerant" : "FragmentShaderPixelInterlockEXT",
13166          "value" : 5378,
13167          "capabilities" : [ "Shader" ],
13168          "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
13169          "version" : "None"
13170        },
13171        {
13172          "enumerant" : "DemoteToHelperInvocationEXT",
13173          "value" : 5379,
13174          "capabilities" : [ "Shader" ],
13175          "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
13176          "version" : "None"
13177        },
13178        {
13179          "enumerant" : "SubgroupShuffleINTEL",
13180          "value" : 5568,
13181          "extensions" : [ "SPV_INTEL_subgroups" ],
13182          "version" : "None"
13183        },
13184        {
13185          "enumerant" : "SubgroupBufferBlockIOINTEL",
13186          "value" : 5569,
13187          "extensions" : [ "SPV_INTEL_subgroups" ],
13188          "version" : "None"
13189        },
13190        {
13191          "enumerant" : "SubgroupImageBlockIOINTEL",
13192          "value" : 5570,
13193          "extensions" : [ "SPV_INTEL_subgroups" ],
13194          "version" : "None"
13195        },
13196        {
13197          "enumerant" : "SubgroupImageMediaBlockIOINTEL",
13198          "value" : 5579,
13199          "extensions" : [ "SPV_INTEL_media_block_io" ],
13200          "version" : "None"
13201        },
13202        {
13203          "enumerant" : "RoundToInfinityINTEL",
13204          "value" : 5582,
13205          "extensions" : [ "SPV_INTEL_float_controls2" ],
13206          "version" : "None"
13207        },
13208        {
13209          "enumerant" : "FloatingPointModeINTEL",
13210          "value" : 5583,
13211          "extensions" : [ "SPV_INTEL_float_controls2" ],
13212          "version" : "None"
13213        },
13214        {
13215          "enumerant" : "IntegerFunctions2INTEL",
13216          "value" : 5584,
13217          "capabilities" : [ "Shader" ],
13218          "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
13219          "version" : "None"
13220        },
13221        {
13222          "enumerant" : "FunctionPointersINTEL",
13223          "value" : 5603,
13224          "extensions" : [ "SPV_INTEL_function_pointers" ],
13225          "version" : "None"
13226        },
13227        {
13228          "enumerant" : "IndirectReferencesINTEL",
13229          "value" : 5604,
13230          "extensions" : [ "SPV_INTEL_function_pointers" ],
13231          "version" : "None"
13232        },
13233        {
13234          "enumerant" : "AsmINTEL",
13235          "value" : 5606,
13236          "extensions" : [ "SPV_INTEL_inline_assembly" ],
13237          "version" : "None"
13238        },
13239        {
13240          "enumerant" : "AtomicFloat32MinMaxEXT",
13241          "value" : 5612,
13242          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
13243          "version" : "None"
13244        },
13245        {
13246          "enumerant" : "AtomicFloat64MinMaxEXT",
13247          "value" : 5613,
13248          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
13249          "version" : "None"
13250        },
13251        {
13252          "enumerant" : "AtomicFloat16MinMaxEXT",
13253          "value" : 5616,
13254          "extensions" : [ "SPV_EXT_shader_atomic_float_min_max" ],
13255          "version" : "None"
13256        },
13257        {
13258          "enumerant" : "VectorComputeINTEL",
13259          "value" : 5617,
13260          "capabilities" : [ "VectorAnyINTEL" ],
13261          "extensions" : [ "SPV_INTEL_vector_compute" ],
13262          "version" : "None"
13263        },
13264        {
13265          "enumerant" : "VectorAnyINTEL",
13266          "value" : 5619,
13267          "extensions" : [ "SPV_INTEL_vector_compute" ],
13268          "version" : "None"
13269        },
13270        {
13271          "enumerant" : "ExpectAssumeKHR",
13272          "value" : 5629,
13273          "extensions" : [ "SPV_KHR_expect_assume" ],
13274          "version" : "None"
13275        },
13276        {
13277          "enumerant" : "SubgroupAvcMotionEstimationINTEL",
13278          "value" : 5696,
13279          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
13280          "version" : "None"
13281        },
13282        {
13283          "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL",
13284          "value" : 5697,
13285          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
13286          "version" : "None"
13287        },
13288        {
13289          "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL",
13290          "value" : 5698,
13291          "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
13292          "version" : "None"
13293        },
13294        {
13295          "enumerant" : "VariableLengthArrayINTEL",
13296          "value" : 5817,
13297          "extensions" : [ "SPV_INTEL_variable_length_array" ],
13298          "version" : "None"
13299        },
13300        {
13301          "enumerant" : "FunctionFloatControlINTEL",
13302          "value" : 5821,
13303          "extensions" : [ "SPV_INTEL_float_controls2" ],
13304          "version" : "None"
13305        },
13306        {
13307          "enumerant" : "FPGAMemoryAttributesINTEL",
13308          "value" : 5824,
13309          "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
13310          "version" : "None"
13311        },
13312        {
13313          "enumerant" : "FPFastMathModeINTEL",
13314          "value" : 5837,
13315          "capabilities" : [ "Kernel" ],
13316          "extensions" : [ "SPV_INTEL_fp_fast_math_mode" ],
13317          "version" : "None"
13318        },
13319        {
13320          "enumerant" : "ArbitraryPrecisionIntegersINTEL",
13321          "value" : 5844,
13322          "extensions" : [ "SPV_INTEL_arbitrary_precision_integers" ],
13323          "version" : "None"
13324        },
13325        {
13326          "enumerant" : "ArbitraryPrecisionFloatingPointINTEL",
13327          "value" : 5845,
13328          "extensions" : [ "SPV_INTEL_arbitrary_precision_floating_point" ],
13329          "version" : "None"
13330        },
13331        {
13332          "enumerant" : "UnstructuredLoopControlsINTEL",
13333          "value" : 5886,
13334          "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
13335          "version" : "None"
13336        },
13337        {
13338          "enumerant" : "FPGALoopControlsINTEL",
13339          "value" : 5888,
13340          "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
13341          "version" : "None"
13342        },
13343        {
13344          "enumerant" : "KernelAttributesINTEL",
13345          "value" : 5892,
13346          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
13347          "version" : "None"
13348        },
13349        {
13350          "enumerant" : "FPGAKernelAttributesINTEL",
13351          "value" : 5897,
13352          "extensions" : [ "SPV_INTEL_kernel_attributes" ],
13353          "version" : "None"
13354        },
13355        {
13356          "enumerant" : "FPGAMemoryAccessesINTEL",
13357          "value" : 5898,
13358          "extensions" : [ "SPV_INTEL_fpga_memory_accesses" ],
13359          "version" : "None"
13360        },
13361        {
13362          "enumerant" : "FPGAClusterAttributesINTEL",
13363          "value" : 5904,
13364          "extensions" : [ "SPV_INTEL_fpga_cluster_attributes" ],
13365          "version" : "None"
13366        },
13367        {
13368          "enumerant" : "LoopFuseINTEL",
13369          "value" : 5906,
13370          "extensions" : [ "SPV_INTEL_loop_fuse" ],
13371          "version" : "None"
13372        },
13373        {
13374          "enumerant" : "FPGABufferLocationINTEL",
13375          "value" : 5920,
13376          "extensions" : [ "SPV_INTEL_fpga_buffer_location" ],
13377          "version" : "None"
13378        },
13379        {
13380          "enumerant" : "ArbitraryPrecisionFixedPointINTEL",
13381          "value" : 5922,
13382          "extensions" : [ "SPV_INTEL_arbitrary_precision_fixed_point" ],
13383          "version" : "None"
13384        },
13385        {
13386          "enumerant" : "USMStorageClassesINTEL",
13387          "value" : 5935,
13388          "extensions" : [ "SPV_INTEL_usm_storage_classes" ],
13389          "version" : "None"
13390        },
13391        {
13392          "enumerant" : "IOPipesINTEL",
13393          "value" : 5943,
13394          "extensions" : [ "SPV_INTEL_io_pipes" ],
13395          "version" : "None"
13396        },
13397        {
13398          "enumerant" : "BlockingPipesINTEL",
13399          "value" : 5945,
13400          "extensions" : [ "SPV_INTEL_blocking_pipes" ],
13401          "version" : "None"
13402        },
13403        {
13404          "enumerant" : "FPGARegINTEL",
13405          "value" : 5948,
13406          "extensions" : [ "SPV_INTEL_fpga_reg" ],
13407          "version" : "None"
13408        },
13409        {
13410          "enumerant" : "DotProductInputAllKHR",
13411          "value" : 6016,
13412          "extensions" : [ "SPV_KHR_integer_dot_product" ],
13413          "version" : "None"
13414        },
13415        {
13416          "enumerant" : "DotProductInput4x8BitKHR",
13417          "value" : 6017,
13418          "capabilities" : [ "Int8" ],
13419          "extensions" : [ "SPV_KHR_integer_dot_product" ],
13420          "version" : "None"
13421        },
13422        {
13423          "enumerant" : "DotProductInput4x8BitPackedKHR",
13424          "value" : 6018,
13425          "extensions" : [ "SPV_KHR_integer_dot_product" ],
13426          "version" : "None"
13427        },
13428        {
13429          "enumerant" : "DotProductKHR",
13430          "value" : 6019,
13431          "extensions" : [ "SPV_KHR_integer_dot_product" ],
13432          "version" : "None"
13433        },
13434        {
13435          "enumerant" : "BitInstructions",
13436          "value" : 6025,
13437          "extensions" : [ "SPV_KHR_bit_instructions" ],
13438          "version" : "None"
13439        },
13440        {
13441          "enumerant" : "AtomicFloat32AddEXT",
13442          "value" : 6033,
13443          "capabilities" : [ "Shader" ],
13444          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
13445          "version" : "None"
13446        },
13447        {
13448          "enumerant" : "AtomicFloat64AddEXT",
13449          "value" : 6034,
13450          "capabilities" : [ "Shader" ],
13451          "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
13452          "version" : "None"
13453        },
13454        {
13455          "enumerant" : "LongConstantCompositeINTEL",
13456          "value" : 6089,
13457          "extensions" : [ "SPV_INTEL_long_constant_composite" ],
13458          "version" : "None"
13459        },
13460        {
13461          "enumerant" : "OptNoneINTEL",
13462          "value" : 6094,
13463          "extensions" : [ "SPV_INTEL_optnone" ],
13464          "version" : "None"
13465        },
13466        {
13467          "enumerant" : "AtomicFloat16AddEXT",
13468          "value" : 6095,
13469          "capabilities" : [ "Shader" ],
13470          "extensions" : [ "SPV_EXT_shader_atomic_float16_add" ],
13471          "version" : "None"
13472        },
13473        {
13474          "enumerant" : "DebugInfoModuleINTEL",
13475          "value" : 6114,
13476          "extensions" : [ "SPV_INTEL_debug_module" ],
13477          "version" : "None"
13478        }
13479      ]
13480    },
13481    {
13482      "category" : "ValueEnum",
13483      "kind" : "RayQueryIntersection",
13484      "enumerants" : [
13485        {
13486          "enumerant" : "RayQueryCandidateIntersectionKHR",
13487          "value" : 0,
13488          "capabilities" : [ "RayQueryKHR" ],
13489          "version" : "None"
13490        },
13491        {
13492          "enumerant" : "RayQueryCommittedIntersectionKHR",
13493          "value" : 1,
13494          "capabilities" : [ "RayQueryKHR" ],
13495          "version" : "None"
13496        }
13497      ]
13498    },
13499    {
13500      "category" : "ValueEnum",
13501      "kind" : "RayQueryCommittedIntersectionType",
13502      "enumerants" : [
13503        {
13504          "enumerant" : "RayQueryCommittedIntersectionNoneKHR",
13505          "value" : 0,
13506          "capabilities" : [ "RayQueryKHR" ],
13507          "version" : "None"
13508        },
13509        {
13510          "enumerant" : "RayQueryCommittedIntersectionTriangleKHR",
13511          "value" : 1,
13512          "capabilities" : [ "RayQueryKHR" ],
13513          "version" : "None"
13514        },
13515        {
13516          "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR",
13517          "value" : 2,
13518          "capabilities" : [ "RayQueryKHR" ],
13519          "version" : "None"
13520        }
13521      ]
13522    },
13523    {
13524      "category" : "ValueEnum",
13525      "kind" : "RayQueryCandidateIntersectionType",
13526      "enumerants" : [
13527        {
13528          "enumerant" : "RayQueryCandidateIntersectionTriangleKHR",
13529          "value" : 0,
13530          "capabilities" : [ "RayQueryKHR" ],
13531          "version" : "None"
13532        },
13533        {
13534          "enumerant" : "RayQueryCandidateIntersectionAABBKHR",
13535          "value" : 1,
13536          "capabilities" : [ "RayQueryKHR" ],
13537          "version" : "None"
13538        }
13539      ]
13540    },
13541    {
13542      "category" : "ValueEnum",
13543      "kind" : "PackedVectorFormat",
13544      "enumerants" : [
13545        {
13546          "enumerant" : "PackedVectorFormat4x8BitKHR",
13547          "value" : 0,
13548          "extensions" : [ "SPV_KHR_integer_dot_product" ],
13549          "version" : "None"
13550        }
13551      ]
13552    },
13553    {
13554      "category" : "Id",
13555      "kind" : "IdResultType",
13556      "doc" : "Reference to an <id> representing the result's type of the enclosing instruction"
13557    },
13558    {
13559      "category" : "Id",
13560      "kind" : "IdResult",
13561      "doc" : "Definition of an <id> representing the result of the enclosing instruction"
13562    },
13563    {
13564      "category" : "Id",
13565      "kind" : "IdMemorySemantics",
13566      "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the MemorySemantics operand kind"
13567    },
13568    {
13569      "category" : "Id",
13570      "kind" : "IdScope",
13571      "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the Scope operand kind"
13572    },
13573    {
13574      "category" : "Id",
13575      "kind" : "IdRef",
13576      "doc" : "Reference to an <id>"
13577    },
13578    {
13579      "category" : "Literal",
13580      "kind" : "LiteralInteger",
13581      "doc" : "An integer consuming one or more words"
13582    },
13583    {
13584      "category" : "Literal",
13585      "kind" : "LiteralString",
13586      "doc" : "A null-terminated stream of characters consuming an integral number of words"
13587    },
13588    {
13589      "category" : "Literal",
13590      "kind" : "LiteralContextDependentNumber",
13591      "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction"
13592    },
13593    {
13594      "category" : "Literal",
13595      "kind" : "LiteralExtInstInteger",
13596      "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)"
13597    },
13598    {
13599      "category" : "Literal",
13600      "kind" : "LiteralSpecConstantOpInteger",
13601      "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)"
13602    },
13603    {
13604      "category" : "Composite",
13605      "kind" : "PairLiteralIntegerIdRef",
13606      "bases" : [ "LiteralInteger", "IdRef" ]
13607    },
13608    {
13609      "category" : "Composite",
13610      "kind" : "PairIdRefLiteralInteger",
13611      "bases" : [ "IdRef", "LiteralInteger" ]
13612    },
13613    {
13614      "category" : "Composite",
13615      "kind" : "PairIdRefIdRef",
13616      "bases" : [ "IdRef", "IdRef" ]
13617    }
13618  ]
13619}
13620