3 "Copyright (c) 2014-2020 The Khronos Group Inc.",
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:",
12 "The above copyright notice and this permission notice shall be included in",
13 "all copies or substantial portions of the Materials.",
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/ ",
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",
27 "magic_number" : "0x07230203",
31 "instruction_printing_class" : [
36 "tag" : "Miscellaneous",
37 "heading" : "Miscellaneous Instructions"
41 "heading" : "Debug Instructions"
45 "heading" : "Annotation Instructions"
49 "heading" : "Extension Instructions"
52 "tag" : "Mode-Setting",
53 "heading" : "Mode-Setting Instructions"
56 "tag" : "Type-Declaration",
57 "heading" : "Type-Declaration Instructions"
60 "tag" : "Constant-Creation",
61 "heading" : "Constant-Creation Instructions"
65 "heading" : "Memory Instructions"
69 "heading" : "Function Instructions"
73 "heading" : "Image Instructions"
77 "heading" : "Conversion Instructions"
81 "heading" : "Composite Instructions"
85 "heading" : "Arithmetic Instructions"
89 "heading" : "Bit Instructions"
92 "tag" : "Relational_and_Logical",
93 "heading" : "Relational and Logical Instructions"
97 "heading" : "Derivative Instructions"
100 "tag" : "Control-Flow",
101 "heading" : "Control-Flow Instructions"
105 "heading" : "Atomic Instructions"
109 "heading" : "Primitive Instructions"
113 "heading" : "Barrier Instructions"
117 "heading" : "Group and Subgroup Instructions"
120 "tag" : "Device-Side_Enqueue",
121 "heading" : "Device-Side Enqueue Instructions"
125 "heading" : "Pipe Instructions"
128 "tag" : "Non-Uniform",
129 "heading" : "Non-Uniform Instructions"
133 "heading" : "Reserved Instructions"
139 "class" : "Miscellaneous",
143 "opname" : "OpUndef",
144 "class" : "Miscellaneous",
147 { "kind" : "IdResultType" },
148 { "kind" : "IdResult" }
152 "opname" : "OpSourceContinued",
156 { "kind" : "LiteralString", "name" : "'Continued Source'" }
160 "opname" : "OpSource",
164 { "kind" : "SourceLanguage" },
165 { "kind" : "LiteralInteger", "name" : "'Version'" },
166 { "kind" : "IdRef", "quantifier" : "?", "name" : "'File'" },
167 { "kind" : "LiteralString", "quantifier" : "?", "name" : "'Source'" }
171 "opname" : "OpSourceExtension",
175 { "kind" : "LiteralString", "name" : "'Extension'" }
183 { "kind" : "IdRef", "name" : "'Target'" },
184 { "kind" : "LiteralString", "name" : "'Name'" }
188 "opname" : "OpMemberName",
192 { "kind" : "IdRef", "name" : "'Type'" },
193 { "kind" : "LiteralInteger", "name" : "'Member'" },
194 { "kind" : "LiteralString", "name" : "'Name'" }
198 "opname" : "OpString",
202 { "kind" : "IdResult" },
203 { "kind" : "LiteralString", "name" : "'String'" }
211 { "kind" : "IdRef", "name" : "'File'" },
212 { "kind" : "LiteralInteger", "name" : "'Line'" },
213 { "kind" : "LiteralInteger", "name" : "'Column'" }
217 "opname" : "OpExtension",
218 "class" : "Extension",
221 { "kind" : "LiteralString", "name" : "'Name'" }
225 "opname" : "OpExtInstImport",
226 "class" : "Extension",
229 { "kind" : "IdResult" },
230 { "kind" : "LiteralString", "name" : "'Name'" }
234 "opname" : "OpExtInst",
235 "class" : "Extension",
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..." }
246 "opname" : "OpMemoryModel",
247 "class" : "Mode-Setting",
250 { "kind" : "AddressingModel" },
251 { "kind" : "MemoryModel" }
255 "opname" : "OpEntryPoint",
256 "class" : "Mode-Setting",
259 { "kind" : "ExecutionModel" },
260 { "kind" : "IdRef", "name" : "'Entry Point'" },
261 { "kind" : "LiteralString", "name" : "'Name'" },
262 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Interface'" }
266 "opname" : "OpExecutionMode",
267 "class" : "Mode-Setting",
270 { "kind" : "IdRef", "name" : "'Entry Point'" },
271 { "kind" : "ExecutionMode", "name" : "'Mode'" }
275 "opname" : "OpCapability",
276 "class" : "Mode-Setting",
279 { "kind" : "Capability", "name" : "'Capability'" }
283 "opname" : "OpTypeVoid",
284 "class" : "Type-Declaration",
287 { "kind" : "IdResult" }
291 "opname" : "OpTypeBool",
292 "class" : "Type-Declaration",
295 { "kind" : "IdResult" }
299 "opname" : "OpTypeInt",
300 "class" : "Type-Declaration",
303 { "kind" : "IdResult" },
304 { "kind" : "LiteralInteger", "name" : "'Width'" },
305 { "kind" : "LiteralInteger", "name" : "'Signedness'" }
309 "opname" : "OpTypeFloat",
310 "class" : "Type-Declaration",
313 { "kind" : "IdResult" },
314 { "kind" : "LiteralInteger", "name" : "'Width'" }
318 "opname" : "OpTypeVector",
319 "class" : "Type-Declaration",
322 { "kind" : "IdResult" },
323 { "kind" : "IdRef", "name" : "'Component Type'" },
324 { "kind" : "LiteralInteger", "name" : "'Component Count'" }
328 "opname" : "OpTypeMatrix",
329 "class" : "Type-Declaration",
332 { "kind" : "IdResult" },
333 { "kind" : "IdRef", "name" : "'Column Type'" },
334 { "kind" : "LiteralInteger", "name" : "'Column Count'" }
336 "capabilities" : [ "Matrix" ]
339 "opname" : "OpTypeImage",
340 "class" : "Type-Declaration",
343 { "kind" : "IdResult" },
344 { "kind" : "IdRef", "name" : "'Sampled Type'" },
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" : "?" }
355 "opname" : "OpTypeSampler",
356 "class" : "Type-Declaration",
359 { "kind" : "IdResult" }
363 "opname" : "OpTypeSampledImage",
364 "class" : "Type-Declaration",
367 { "kind" : "IdResult" },
368 { "kind" : "IdRef", "name" : "'Image Type'" }
372 "opname" : "OpTypeArray",
373 "class" : "Type-Declaration",
376 { "kind" : "IdResult" },
377 { "kind" : "IdRef", "name" : "'Element Type'" },
378 { "kind" : "IdRef", "name" : "'Length'" }
382 "opname" : "OpTypeRuntimeArray",
383 "class" : "Type-Declaration",
386 { "kind" : "IdResult" },
387 { "kind" : "IdRef", "name" : "'Element Type'" }
389 "capabilities" : [ "Shader" ]
392 "opname" : "OpTypeStruct",
393 "class" : "Type-Declaration",
396 { "kind" : "IdResult" },
397 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
401 "opname" : "OpTypeOpaque",
402 "class" : "Type-Declaration",
405 { "kind" : "IdResult" },
406 { "kind" : "LiteralString", "name" : "The name of the opaque type." }
408 "capabilities" : [ "Kernel" ]
411 "opname" : "OpTypePointer",
412 "class" : "Type-Declaration",
415 { "kind" : "IdResult" },
416 { "kind" : "StorageClass" },
417 { "kind" : "IdRef", "name" : "'Type'" }
421 "opname" : "OpTypeFunction",
422 "class" : "Type-Declaration",
425 { "kind" : "IdResult" },
426 { "kind" : "IdRef", "name" : "'Return Type'" },
427 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." }
431 "opname" : "OpTypeEvent",
432 "class" : "Type-Declaration",
435 { "kind" : "IdResult" }
437 "capabilities" : [ "Kernel" ]
440 "opname" : "OpTypeDeviceEvent",
441 "class" : "Type-Declaration",
444 { "kind" : "IdResult" }
446 "capabilities" : [ "DeviceEnqueue" ]
449 "opname" : "OpTypeReserveId",
450 "class" : "Type-Declaration",
453 { "kind" : "IdResult" }
455 "capabilities" : [ "Pipes" ]
458 "opname" : "OpTypeQueue",
459 "class" : "Type-Declaration",
462 { "kind" : "IdResult" }
464 "capabilities" : [ "DeviceEnqueue" ]
467 "opname" : "OpTypePipe",
468 "class" : "Type-Declaration",
471 { "kind" : "IdResult" },
472 { "kind" : "AccessQualifier", "name" : "'Qualifier'" }
474 "capabilities" : [ "Pipes" ]
477 "opname" : "OpTypeForwardPointer",
478 "class" : "Type-Declaration",
481 { "kind" : "IdRef", "name" : "'Pointer Type'" },
482 { "kind" : "StorageClass" }
486 "PhysicalStorageBufferAddresses"
490 "opname" : "OpConstantTrue",
491 "class" : "Constant-Creation",
494 { "kind" : "IdResultType" },
495 { "kind" : "IdResult" }
499 "opname" : "OpConstantFalse",
500 "class" : "Constant-Creation",
503 { "kind" : "IdResultType" },
504 { "kind" : "IdResult" }
508 "opname" : "OpConstant",
509 "class" : "Constant-Creation",
512 { "kind" : "IdResultType" },
513 { "kind" : "IdResult" },
514 { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
518 "opname" : "OpConstantComposite",
519 "class" : "Constant-Creation",
522 { "kind" : "IdResultType" },
523 { "kind" : "IdResult" },
524 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" }
528 "opname" : "OpConstantSampler",
529 "class" : "Constant-Creation",
532 { "kind" : "IdResultType" },
533 { "kind" : "IdResult" },
534 { "kind" : "SamplerAddressingMode" },
535 { "kind" : "LiteralInteger", "name" : "'Param'" },
536 { "kind" : "SamplerFilterMode" }
538 "capabilities" : [ "LiteralSampler" ]
541 "opname" : "OpConstantNull",
542 "class" : "Constant-Creation",
545 { "kind" : "IdResultType" },
546 { "kind" : "IdResult" }
550 "opname" : "OpSpecConstantTrue",
551 "class" : "Constant-Creation",
554 { "kind" : "IdResultType" },
555 { "kind" : "IdResult" }
559 "opname" : "OpSpecConstantFalse",
560 "class" : "Constant-Creation",
563 { "kind" : "IdResultType" },
564 { "kind" : "IdResult" }
568 "opname" : "OpSpecConstant",
569 "class" : "Constant-Creation",
572 { "kind" : "IdResultType" },
573 { "kind" : "IdResult" },
574 { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
578 "opname" : "OpSpecConstantComposite",
579 "class" : "Constant-Creation",
582 { "kind" : "IdResultType" },
583 { "kind" : "IdResult" },
584 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" }
588 "opname" : "OpSpecConstantOp",
589 "class" : "Constant-Creation",
592 { "kind" : "IdResultType" },
593 { "kind" : "IdResult" },
594 { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" }
598 "opname" : "OpFunction",
599 "class" : "Function",
602 { "kind" : "IdResultType" },
603 { "kind" : "IdResult" },
604 { "kind" : "FunctionControl" },
605 { "kind" : "IdRef", "name" : "'Function Type'" }
609 "opname" : "OpFunctionParameter",
610 "class" : "Function",
613 { "kind" : "IdResultType" },
614 { "kind" : "IdResult" }
618 "opname" : "OpFunctionEnd",
619 "class" : "Function",
623 "opname" : "OpFunctionCall",
624 "class" : "Function",
627 { "kind" : "IdResultType" },
628 { "kind" : "IdResult" },
629 { "kind" : "IdRef", "name" : "'Function'" },
630 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." }
634 "opname" : "OpVariable",
638 { "kind" : "IdResultType" },
639 { "kind" : "IdResult" },
640 { "kind" : "StorageClass" },
641 { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" }
645 "opname" : "OpImageTexelPointer",
649 { "kind" : "IdResultType" },
650 { "kind" : "IdResult" },
651 { "kind" : "IdRef", "name" : "'Image'" },
652 { "kind" : "IdRef", "name" : "'Coordinate'" },
653 { "kind" : "IdRef", "name" : "'Sample'" }
661 { "kind" : "IdResultType" },
662 { "kind" : "IdResult" },
663 { "kind" : "IdRef", "name" : "'Pointer'" },
664 { "kind" : "MemoryAccess", "quantifier" : "?" }
668 "opname" : "OpStore",
672 { "kind" : "IdRef", "name" : "'Pointer'" },
673 { "kind" : "IdRef", "name" : "'Object'" },
674 { "kind" : "MemoryAccess", "quantifier" : "?" }
678 "opname" : "OpCopyMemory",
682 { "kind" : "IdRef", "name" : "'Target'" },
683 { "kind" : "IdRef", "name" : "'Source'" },
684 { "kind" : "MemoryAccess", "quantifier" : "?" },
685 { "kind" : "MemoryAccess", "quantifier" : "?" }
689 "opname" : "OpCopyMemorySized",
693 { "kind" : "IdRef", "name" : "'Target'" },
694 { "kind" : "IdRef", "name" : "'Source'" },
695 { "kind" : "IdRef", "name" : "'Size'" },
696 { "kind" : "MemoryAccess", "quantifier" : "?" },
697 { "kind" : "MemoryAccess", "quantifier" : "?" }
699 "capabilities" : [ "Addresses" ]
702 "opname" : "OpAccessChain",
706 { "kind" : "IdResultType" },
707 { "kind" : "IdResult" },
708 { "kind" : "IdRef", "name" : "'Base'" },
709 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
713 "opname" : "OpInBoundsAccessChain",
717 { "kind" : "IdResultType" },
718 { "kind" : "IdResult" },
719 { "kind" : "IdRef", "name" : "'Base'" },
720 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
724 "opname" : "OpPtrAccessChain",
728 { "kind" : "IdResultType" },
729 { "kind" : "IdResult" },
730 { "kind" : "IdRef", "name" : "'Base'" },
731 { "kind" : "IdRef", "name" : "'Element'" },
732 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
737 "VariablePointersStorageBuffer",
738 "PhysicalStorageBufferAddresses"
742 "opname" : "OpArrayLength",
746 { "kind" : "IdResultType" },
747 { "kind" : "IdResult" },
748 { "kind" : "IdRef", "name" : "'Structure'" },
749 { "kind" : "LiteralInteger", "name" : "'Array member'" }
751 "capabilities" : [ "Shader" ]
754 "opname" : "OpGenericPtrMemSemantics",
758 { "kind" : "IdResultType" },
759 { "kind" : "IdResult" },
760 { "kind" : "IdRef", "name" : "'Pointer'" }
762 "capabilities" : [ "Kernel" ]
765 "opname" : "OpInBoundsPtrAccessChain",
769 { "kind" : "IdResultType" },
770 { "kind" : "IdResult" },
771 { "kind" : "IdRef", "name" : "'Base'" },
772 { "kind" : "IdRef", "name" : "'Element'" },
773 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
775 "capabilities" : [ "Addresses" ]
778 "opname" : "OpDecorate",
779 "class" : "Annotation",
782 { "kind" : "IdRef", "name" : "'Target'" },
783 { "kind" : "Decoration" }
787 "opname" : "OpMemberDecorate",
788 "class" : "Annotation",
791 { "kind" : "IdRef", "name" : "'Structure Type'" },
792 { "kind" : "LiteralInteger", "name" : "'Member'" },
793 { "kind" : "Decoration" }
797 "opname" : "OpDecorationGroup",
798 "class" : "Annotation",
801 { "kind" : "IdResult" }
805 "opname" : "OpGroupDecorate",
806 "class" : "Annotation",
809 { "kind" : "IdRef", "name" : "'Decoration Group'" },
810 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" }
814 "opname" : "OpGroupMemberDecorate",
815 "class" : "Annotation",
818 { "kind" : "IdRef", "name" : "'Decoration Group'" },
819 { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" }
823 "opname" : "OpVectorExtractDynamic",
824 "class" : "Composite",
827 { "kind" : "IdResultType" },
828 { "kind" : "IdResult" },
829 { "kind" : "IdRef", "name" : "'Vector'" },
830 { "kind" : "IdRef", "name" : "'Index'" }
834 "opname" : "OpVectorInsertDynamic",
835 "class" : "Composite",
838 { "kind" : "IdResultType" },
839 { "kind" : "IdResult" },
840 { "kind" : "IdRef", "name" : "'Vector'" },
841 { "kind" : "IdRef", "name" : "'Component'" },
842 { "kind" : "IdRef", "name" : "'Index'" }
846 "opname" : "OpVectorShuffle",
847 "class" : "Composite",
850 { "kind" : "IdResultType" },
851 { "kind" : "IdResult" },
852 { "kind" : "IdRef", "name" : "'Vector 1'" },
853 { "kind" : "IdRef", "name" : "'Vector 2'" },
854 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" }
858 "opname" : "OpCompositeConstruct",
859 "class" : "Composite",
862 { "kind" : "IdResultType" },
863 { "kind" : "IdResult" },
864 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" }
868 "opname" : "OpCompositeExtract",
869 "class" : "Composite",
872 { "kind" : "IdResultType" },
873 { "kind" : "IdResult" },
874 { "kind" : "IdRef", "name" : "'Composite'" },
875 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
879 "opname" : "OpCompositeInsert",
880 "class" : "Composite",
883 { "kind" : "IdResultType" },
884 { "kind" : "IdResult" },
885 { "kind" : "IdRef", "name" : "'Object'" },
886 { "kind" : "IdRef", "name" : "'Composite'" },
887 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
891 "opname" : "OpCopyObject",
892 "class" : "Composite",
895 { "kind" : "IdResultType" },
896 { "kind" : "IdResult" },
897 { "kind" : "IdRef", "name" : "'Operand'" }
901 "opname" : "OpTranspose",
902 "class" : "Composite",
905 { "kind" : "IdResultType" },
906 { "kind" : "IdResult" },
907 { "kind" : "IdRef", "name" : "'Matrix'" }
909 "capabilities" : [ "Matrix" ]
912 "opname" : "OpSampledImage",
916 { "kind" : "IdResultType" },
917 { "kind" : "IdResult" },
918 { "kind" : "IdRef", "name" : "'Image'" },
919 { "kind" : "IdRef", "name" : "'Sampler'" }
923 "opname" : "OpImageSampleImplicitLod",
927 { "kind" : "IdResultType" },
928 { "kind" : "IdResult" },
929 { "kind" : "IdRef", "name" : "'Sampled Image'" },
930 { "kind" : "IdRef", "name" : "'Coordinate'" },
931 { "kind" : "ImageOperands", "quantifier" : "?" }
933 "capabilities" : [ "Shader" ]
936 "opname" : "OpImageSampleExplicitLod",
940 { "kind" : "IdResultType" },
941 { "kind" : "IdResult" },
942 { "kind" : "IdRef", "name" : "'Sampled Image'" },
943 { "kind" : "IdRef", "name" : "'Coordinate'" },
944 { "kind" : "ImageOperands" }
948 "opname" : "OpImageSampleDrefImplicitLod",
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" : "?" }
959 "capabilities" : [ "Shader" ]
962 "opname" : "OpImageSampleDrefExplicitLod",
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" }
973 "capabilities" : [ "Shader" ]
976 "opname" : "OpImageSampleProjImplicitLod",
980 { "kind" : "IdResultType" },
981 { "kind" : "IdResult" },
982 { "kind" : "IdRef", "name" : "'Sampled Image'" },
983 { "kind" : "IdRef", "name" : "'Coordinate'" },
984 { "kind" : "ImageOperands", "quantifier" : "?" }
986 "capabilities" : [ "Shader" ]
989 "opname" : "OpImageSampleProjExplicitLod",
993 { "kind" : "IdResultType" },
994 { "kind" : "IdResult" },
995 { "kind" : "IdRef", "name" : "'Sampled Image'" },
996 { "kind" : "IdRef", "name" : "'Coordinate'" },
997 { "kind" : "ImageOperands" }
999 "capabilities" : [ "Shader" ]
1002 "opname" : "OpImageSampleProjDrefImplicitLod",
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" : "?" }
1013 "capabilities" : [ "Shader" ]
1016 "opname" : "OpImageSampleProjDrefExplicitLod",
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" }
1027 "capabilities" : [ "Shader" ]
1030 "opname" : "OpImageFetch",
1034 { "kind" : "IdResultType" },
1035 { "kind" : "IdResult" },
1036 { "kind" : "IdRef", "name" : "'Image'" },
1037 { "kind" : "IdRef", "name" : "'Coordinate'" },
1038 { "kind" : "ImageOperands", "quantifier" : "?" }
1042 "opname" : "OpImageGather",
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" : "?" }
1053 "capabilities" : [ "Shader" ]
1056 "opname" : "OpImageDrefGather",
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" : "?" }
1067 "capabilities" : [ "Shader" ]
1070 "opname" : "OpImageRead",
1074 { "kind" : "IdResultType" },
1075 { "kind" : "IdResult" },
1076 { "kind" : "IdRef", "name" : "'Image'" },
1077 { "kind" : "IdRef", "name" : "'Coordinate'" },
1078 { "kind" : "ImageOperands", "quantifier" : "?" }
1082 "opname" : "OpImageWrite",
1086 { "kind" : "IdRef", "name" : "'Image'" },
1087 { "kind" : "IdRef", "name" : "'Coordinate'" },
1088 { "kind" : "IdRef", "name" : "'Texel'" },
1089 { "kind" : "ImageOperands", "quantifier" : "?" }
1093 "opname" : "OpImage",
1097 { "kind" : "IdResultType" },
1098 { "kind" : "IdResult" },
1099 { "kind" : "IdRef", "name" : "'Sampled Image'" }
1103 "opname" : "OpImageQueryFormat",
1107 { "kind" : "IdResultType" },
1108 { "kind" : "IdResult" },
1109 { "kind" : "IdRef", "name" : "'Image'" }
1111 "capabilities" : [ "Kernel" ]
1114 "opname" : "OpImageQueryOrder",
1118 { "kind" : "IdResultType" },
1119 { "kind" : "IdResult" },
1120 { "kind" : "IdRef", "name" : "'Image'" }
1122 "capabilities" : [ "Kernel" ]
1125 "opname" : "OpImageQuerySizeLod",
1129 { "kind" : "IdResultType" },
1130 { "kind" : "IdResult" },
1131 { "kind" : "IdRef", "name" : "'Image'" },
1132 { "kind" : "IdRef", "name" : "'Level of Detail'" }
1134 "capabilities" : [ "Kernel", "ImageQuery" ]
1137 "opname" : "OpImageQuerySize",
1141 { "kind" : "IdResultType" },
1142 { "kind" : "IdResult" },
1143 { "kind" : "IdRef", "name" : "'Image'" }
1145 "capabilities" : [ "Kernel", "ImageQuery" ]
1148 "opname" : "OpImageQueryLod",
1152 { "kind" : "IdResultType" },
1153 { "kind" : "IdResult" },
1154 { "kind" : "IdRef", "name" : "'Sampled Image'" },
1155 { "kind" : "IdRef", "name" : "'Coordinate'" }
1157 "capabilities" : [ "ImageQuery" ]
1160 "opname" : "OpImageQueryLevels",
1164 { "kind" : "IdResultType" },
1165 { "kind" : "IdResult" },
1166 { "kind" : "IdRef", "name" : "'Image'" }
1168 "capabilities" : [ "Kernel", "ImageQuery" ]
1171 "opname" : "OpImageQuerySamples",
1175 { "kind" : "IdResultType" },
1176 { "kind" : "IdResult" },
1177 { "kind" : "IdRef", "name" : "'Image'" }
1179 "capabilities" : [ "Kernel", "ImageQuery" ]
1182 "opname" : "OpConvertFToU",
1183 "class" : "Conversion",
1186 { "kind" : "IdResultType" },
1187 { "kind" : "IdResult" },
1188 { "kind" : "IdRef", "name" : "'Float Value'" }
1192 "opname" : "OpConvertFToS",
1193 "class" : "Conversion",
1196 { "kind" : "IdResultType" },
1197 { "kind" : "IdResult" },
1198 { "kind" : "IdRef", "name" : "'Float Value'" }
1202 "opname" : "OpConvertSToF",
1203 "class" : "Conversion",
1206 { "kind" : "IdResultType" },
1207 { "kind" : "IdResult" },
1208 { "kind" : "IdRef", "name" : "'Signed Value'" }
1212 "opname" : "OpConvertUToF",
1213 "class" : "Conversion",
1216 { "kind" : "IdResultType" },
1217 { "kind" : "IdResult" },
1218 { "kind" : "IdRef", "name" : "'Unsigned Value'" }
1222 "opname" : "OpUConvert",
1223 "class" : "Conversion",
1226 { "kind" : "IdResultType" },
1227 { "kind" : "IdResult" },
1228 { "kind" : "IdRef", "name" : "'Unsigned Value'" }
1232 "opname" : "OpSConvert",
1233 "class" : "Conversion",
1236 { "kind" : "IdResultType" },
1237 { "kind" : "IdResult" },
1238 { "kind" : "IdRef", "name" : "'Signed Value'" }
1242 "opname" : "OpFConvert",
1243 "class" : "Conversion",
1246 { "kind" : "IdResultType" },
1247 { "kind" : "IdResult" },
1248 { "kind" : "IdRef", "name" : "'Float Value'" }
1252 "opname" : "OpQuantizeToF16",
1253 "class" : "Conversion",
1256 { "kind" : "IdResultType" },
1257 { "kind" : "IdResult" },
1258 { "kind" : "IdRef", "name" : "'Value'" }
1262 "opname" : "OpConvertPtrToU",
1263 "class" : "Conversion",
1266 { "kind" : "IdResultType" },
1267 { "kind" : "IdResult" },
1268 { "kind" : "IdRef", "name" : "'Pointer'" }
1272 "PhysicalStorageBufferAddresses"
1276 "opname" : "OpSatConvertSToU",
1277 "class" : "Conversion",
1280 { "kind" : "IdResultType" },
1281 { "kind" : "IdResult" },
1282 { "kind" : "IdRef", "name" : "'Signed Value'" }
1284 "capabilities" : [ "Kernel" ]
1287 "opname" : "OpSatConvertUToS",
1288 "class" : "Conversion",
1291 { "kind" : "IdResultType" },
1292 { "kind" : "IdResult" },
1293 { "kind" : "IdRef", "name" : "'Unsigned Value'" }
1295 "capabilities" : [ "Kernel" ]
1298 "opname" : "OpConvertUToPtr",
1299 "class" : "Conversion",
1302 { "kind" : "IdResultType" },
1303 { "kind" : "IdResult" },
1304 { "kind" : "IdRef", "name" : "'Integer Value'" }
1308 "PhysicalStorageBufferAddresses"
1312 "opname" : "OpPtrCastToGeneric",
1313 "class" : "Conversion",
1316 { "kind" : "IdResultType" },
1317 { "kind" : "IdResult" },
1318 { "kind" : "IdRef", "name" : "'Pointer'" }
1320 "capabilities" : [ "Kernel" ]
1323 "opname" : "OpGenericCastToPtr",
1324 "class" : "Conversion",
1327 { "kind" : "IdResultType" },
1328 { "kind" : "IdResult" },
1329 { "kind" : "IdRef", "name" : "'Pointer'" }
1331 "capabilities" : [ "Kernel" ]
1334 "opname" : "OpGenericCastToPtrExplicit",
1335 "class" : "Conversion",
1338 { "kind" : "IdResultType" },
1339 { "kind" : "IdResult" },
1340 { "kind" : "IdRef", "name" : "'Pointer'" },
1341 { "kind" : "StorageClass", "name" : "'Storage'" }
1343 "capabilities" : [ "Kernel" ]
1346 "opname" : "OpBitcast",
1347 "class" : "Conversion",
1350 { "kind" : "IdResultType" },
1351 { "kind" : "IdResult" },
1352 { "kind" : "IdRef", "name" : "'Operand'" }
1356 "opname" : "OpSNegate",
1357 "class" : "Arithmetic",
1360 { "kind" : "IdResultType" },
1361 { "kind" : "IdResult" },
1362 { "kind" : "IdRef", "name" : "'Operand'" }
1366 "opname" : "OpFNegate",
1367 "class" : "Arithmetic",
1370 { "kind" : "IdResultType" },
1371 { "kind" : "IdResult" },
1372 { "kind" : "IdRef", "name" : "'Operand'" }
1376 "opname" : "OpIAdd",
1377 "class" : "Arithmetic",
1380 { "kind" : "IdResultType" },
1381 { "kind" : "IdResult" },
1382 { "kind" : "IdRef", "name" : "'Operand 1'" },
1383 { "kind" : "IdRef", "name" : "'Operand 2'" }
1387 "opname" : "OpFAdd",
1388 "class" : "Arithmetic",
1391 { "kind" : "IdResultType" },
1392 { "kind" : "IdResult" },
1393 { "kind" : "IdRef", "name" : "'Operand 1'" },
1394 { "kind" : "IdRef", "name" : "'Operand 2'" }
1398 "opname" : "OpISub",
1399 "class" : "Arithmetic",
1402 { "kind" : "IdResultType" },
1403 { "kind" : "IdResult" },
1404 { "kind" : "IdRef", "name" : "'Operand 1'" },
1405 { "kind" : "IdRef", "name" : "'Operand 2'" }
1409 "opname" : "OpFSub",
1410 "class" : "Arithmetic",
1413 { "kind" : "IdResultType" },
1414 { "kind" : "IdResult" },
1415 { "kind" : "IdRef", "name" : "'Operand 1'" },
1416 { "kind" : "IdRef", "name" : "'Operand 2'" }
1420 "opname" : "OpIMul",
1421 "class" : "Arithmetic",
1424 { "kind" : "IdResultType" },
1425 { "kind" : "IdResult" },
1426 { "kind" : "IdRef", "name" : "'Operand 1'" },
1427 { "kind" : "IdRef", "name" : "'Operand 2'" }
1431 "opname" : "OpFMul",
1432 "class" : "Arithmetic",
1435 { "kind" : "IdResultType" },
1436 { "kind" : "IdResult" },
1437 { "kind" : "IdRef", "name" : "'Operand 1'" },
1438 { "kind" : "IdRef", "name" : "'Operand 2'" }
1442 "opname" : "OpUDiv",
1443 "class" : "Arithmetic",
1446 { "kind" : "IdResultType" },
1447 { "kind" : "IdResult" },
1448 { "kind" : "IdRef", "name" : "'Operand 1'" },
1449 { "kind" : "IdRef", "name" : "'Operand 2'" }
1453 "opname" : "OpSDiv",
1454 "class" : "Arithmetic",
1457 { "kind" : "IdResultType" },
1458 { "kind" : "IdResult" },
1459 { "kind" : "IdRef", "name" : "'Operand 1'" },
1460 { "kind" : "IdRef", "name" : "'Operand 2'" }
1464 "opname" : "OpFDiv",
1465 "class" : "Arithmetic",
1468 { "kind" : "IdResultType" },
1469 { "kind" : "IdResult" },
1470 { "kind" : "IdRef", "name" : "'Operand 1'" },
1471 { "kind" : "IdRef", "name" : "'Operand 2'" }
1475 "opname" : "OpUMod",
1476 "class" : "Arithmetic",
1479 { "kind" : "IdResultType" },
1480 { "kind" : "IdResult" },
1481 { "kind" : "IdRef", "name" : "'Operand 1'" },
1482 { "kind" : "IdRef", "name" : "'Operand 2'" }
1486 "opname" : "OpSRem",
1487 "class" : "Arithmetic",
1490 { "kind" : "IdResultType" },
1491 { "kind" : "IdResult" },
1492 { "kind" : "IdRef", "name" : "'Operand 1'" },
1493 { "kind" : "IdRef", "name" : "'Operand 2'" }
1497 "opname" : "OpSMod",
1498 "class" : "Arithmetic",
1501 { "kind" : "IdResultType" },
1502 { "kind" : "IdResult" },
1503 { "kind" : "IdRef", "name" : "'Operand 1'" },
1504 { "kind" : "IdRef", "name" : "'Operand 2'" }
1508 "opname" : "OpFRem",
1509 "class" : "Arithmetic",
1512 { "kind" : "IdResultType" },
1513 { "kind" : "IdResult" },
1514 { "kind" : "IdRef", "name" : "'Operand 1'" },
1515 { "kind" : "IdRef", "name" : "'Operand 2'" }
1519 "opname" : "OpFMod",
1520 "class" : "Arithmetic",
1523 { "kind" : "IdResultType" },
1524 { "kind" : "IdResult" },
1525 { "kind" : "IdRef", "name" : "'Operand 1'" },
1526 { "kind" : "IdRef", "name" : "'Operand 2'" }
1530 "opname" : "OpVectorTimesScalar",
1531 "class" : "Arithmetic",
1534 { "kind" : "IdResultType" },
1535 { "kind" : "IdResult" },
1536 { "kind" : "IdRef", "name" : "'Vector'" },
1537 { "kind" : "IdRef", "name" : "'Scalar'" }
1541 "opname" : "OpMatrixTimesScalar",
1542 "class" : "Arithmetic",
1545 { "kind" : "IdResultType" },
1546 { "kind" : "IdResult" },
1547 { "kind" : "IdRef", "name" : "'Matrix'" },
1548 { "kind" : "IdRef", "name" : "'Scalar'" }
1550 "capabilities" : [ "Matrix" ]
1553 "opname" : "OpVectorTimesMatrix",
1554 "class" : "Arithmetic",
1557 { "kind" : "IdResultType" },
1558 { "kind" : "IdResult" },
1559 { "kind" : "IdRef", "name" : "'Vector'" },
1560 { "kind" : "IdRef", "name" : "'Matrix'" }
1562 "capabilities" : [ "Matrix" ]
1565 "opname" : "OpMatrixTimesVector",
1566 "class" : "Arithmetic",
1569 { "kind" : "IdResultType" },
1570 { "kind" : "IdResult" },
1571 { "kind" : "IdRef", "name" : "'Matrix'" },
1572 { "kind" : "IdRef", "name" : "'Vector'" }
1574 "capabilities" : [ "Matrix" ]
1577 "opname" : "OpMatrixTimesMatrix",
1578 "class" : "Arithmetic",
1581 { "kind" : "IdResultType" },
1582 { "kind" : "IdResult" },
1583 { "kind" : "IdRef", "name" : "'LeftMatrix'" },
1584 { "kind" : "IdRef", "name" : "'RightMatrix'" }
1586 "capabilities" : [ "Matrix" ]
1589 "opname" : "OpOuterProduct",
1590 "class" : "Arithmetic",
1593 { "kind" : "IdResultType" },
1594 { "kind" : "IdResult" },
1595 { "kind" : "IdRef", "name" : "'Vector 1'" },
1596 { "kind" : "IdRef", "name" : "'Vector 2'" }
1598 "capabilities" : [ "Matrix" ]
1602 "class" : "Arithmetic",
1605 { "kind" : "IdResultType" },
1606 { "kind" : "IdResult" },
1607 { "kind" : "IdRef", "name" : "'Vector 1'" },
1608 { "kind" : "IdRef", "name" : "'Vector 2'" }
1612 "opname" : "OpIAddCarry",
1613 "class" : "Arithmetic",
1616 { "kind" : "IdResultType" },
1617 { "kind" : "IdResult" },
1618 { "kind" : "IdRef", "name" : "'Operand 1'" },
1619 { "kind" : "IdRef", "name" : "'Operand 2'" }
1623 "opname" : "OpISubBorrow",
1624 "class" : "Arithmetic",
1627 { "kind" : "IdResultType" },
1628 { "kind" : "IdResult" },
1629 { "kind" : "IdRef", "name" : "'Operand 1'" },
1630 { "kind" : "IdRef", "name" : "'Operand 2'" }
1634 "opname" : "OpUMulExtended",
1635 "class" : "Arithmetic",
1638 { "kind" : "IdResultType" },
1639 { "kind" : "IdResult" },
1640 { "kind" : "IdRef", "name" : "'Operand 1'" },
1641 { "kind" : "IdRef", "name" : "'Operand 2'" }
1645 "opname" : "OpSMulExtended",
1646 "class" : "Arithmetic",
1649 { "kind" : "IdResultType" },
1650 { "kind" : "IdResult" },
1651 { "kind" : "IdRef", "name" : "'Operand 1'" },
1652 { "kind" : "IdRef", "name" : "'Operand 2'" }
1657 "class" : "Relational_and_Logical",
1660 { "kind" : "IdResultType" },
1661 { "kind" : "IdResult" },
1662 { "kind" : "IdRef", "name" : "'Vector'" }
1667 "class" : "Relational_and_Logical",
1670 { "kind" : "IdResultType" },
1671 { "kind" : "IdResult" },
1672 { "kind" : "IdRef", "name" : "'Vector'" }
1676 "opname" : "OpIsNan",
1677 "class" : "Relational_and_Logical",
1680 { "kind" : "IdResultType" },
1681 { "kind" : "IdResult" },
1682 { "kind" : "IdRef", "name" : "'x'" }
1686 "opname" : "OpIsInf",
1687 "class" : "Relational_and_Logical",
1690 { "kind" : "IdResultType" },
1691 { "kind" : "IdResult" },
1692 { "kind" : "IdRef", "name" : "'x'" }
1696 "opname" : "OpIsFinite",
1697 "class" : "Relational_and_Logical",
1700 { "kind" : "IdResultType" },
1701 { "kind" : "IdResult" },
1702 { "kind" : "IdRef", "name" : "'x'" }
1704 "capabilities" : [ "Kernel" ]
1707 "opname" : "OpIsNormal",
1708 "class" : "Relational_and_Logical",
1711 { "kind" : "IdResultType" },
1712 { "kind" : "IdResult" },
1713 { "kind" : "IdRef", "name" : "'x'" }
1715 "capabilities" : [ "Kernel" ]
1718 "opname" : "OpSignBitSet",
1719 "class" : "Relational_and_Logical",
1722 { "kind" : "IdResultType" },
1723 { "kind" : "IdResult" },
1724 { "kind" : "IdRef", "name" : "'x'" }
1726 "capabilities" : [ "Kernel" ]
1729 "opname" : "OpLessOrGreater",
1730 "class" : "Relational_and_Logical",
1733 { "kind" : "IdResultType" },
1734 { "kind" : "IdResult" },
1735 { "kind" : "IdRef", "name" : "'x'" },
1736 { "kind" : "IdRef", "name" : "'y'" }
1738 "capabilities" : [ "Kernel" ]
1741 "opname" : "OpOrdered",
1742 "class" : "Relational_and_Logical",
1745 { "kind" : "IdResultType" },
1746 { "kind" : "IdResult" },
1747 { "kind" : "IdRef", "name" : "'x'" },
1748 { "kind" : "IdRef", "name" : "'y'" }
1750 "capabilities" : [ "Kernel" ]
1753 "opname" : "OpUnordered",
1754 "class" : "Relational_and_Logical",
1757 { "kind" : "IdResultType" },
1758 { "kind" : "IdResult" },
1759 { "kind" : "IdRef", "name" : "'x'" },
1760 { "kind" : "IdRef", "name" : "'y'" }
1762 "capabilities" : [ "Kernel" ]
1765 "opname" : "OpLogicalEqual",
1766 "class" : "Relational_and_Logical",
1769 { "kind" : "IdResultType" },
1770 { "kind" : "IdResult" },
1771 { "kind" : "IdRef", "name" : "'Operand 1'" },
1772 { "kind" : "IdRef", "name" : "'Operand 2'" }
1776 "opname" : "OpLogicalNotEqual",
1777 "class" : "Relational_and_Logical",
1780 { "kind" : "IdResultType" },
1781 { "kind" : "IdResult" },
1782 { "kind" : "IdRef", "name" : "'Operand 1'" },
1783 { "kind" : "IdRef", "name" : "'Operand 2'" }
1787 "opname" : "OpLogicalOr",
1788 "class" : "Relational_and_Logical",
1791 { "kind" : "IdResultType" },
1792 { "kind" : "IdResult" },
1793 { "kind" : "IdRef", "name" : "'Operand 1'" },
1794 { "kind" : "IdRef", "name" : "'Operand 2'" }
1798 "opname" : "OpLogicalAnd",
1799 "class" : "Relational_and_Logical",
1802 { "kind" : "IdResultType" },
1803 { "kind" : "IdResult" },
1804 { "kind" : "IdRef", "name" : "'Operand 1'" },
1805 { "kind" : "IdRef", "name" : "'Operand 2'" }
1809 "opname" : "OpLogicalNot",
1810 "class" : "Relational_and_Logical",
1813 { "kind" : "IdResultType" },
1814 { "kind" : "IdResult" },
1815 { "kind" : "IdRef", "name" : "'Operand'" }
1819 "opname" : "OpSelect",
1820 "class" : "Relational_and_Logical",
1823 { "kind" : "IdResultType" },
1824 { "kind" : "IdResult" },
1825 { "kind" : "IdRef", "name" : "'Condition'" },
1826 { "kind" : "IdRef", "name" : "'Object 1'" },
1827 { "kind" : "IdRef", "name" : "'Object 2'" }
1831 "opname" : "OpIEqual",
1832 "class" : "Relational_and_Logical",
1835 { "kind" : "IdResultType" },
1836 { "kind" : "IdResult" },
1837 { "kind" : "IdRef", "name" : "'Operand 1'" },
1838 { "kind" : "IdRef", "name" : "'Operand 2'" }
1842 "opname" : "OpINotEqual",
1843 "class" : "Relational_and_Logical",
1846 { "kind" : "IdResultType" },
1847 { "kind" : "IdResult" },
1848 { "kind" : "IdRef", "name" : "'Operand 1'" },
1849 { "kind" : "IdRef", "name" : "'Operand 2'" }
1853 "opname" : "OpUGreaterThan",
1854 "class" : "Relational_and_Logical",
1857 { "kind" : "IdResultType" },
1858 { "kind" : "IdResult" },
1859 { "kind" : "IdRef", "name" : "'Operand 1'" },
1860 { "kind" : "IdRef", "name" : "'Operand 2'" }
1864 "opname" : "OpSGreaterThan",
1865 "class" : "Relational_and_Logical",
1868 { "kind" : "IdResultType" },
1869 { "kind" : "IdResult" },
1870 { "kind" : "IdRef", "name" : "'Operand 1'" },
1871 { "kind" : "IdRef", "name" : "'Operand 2'" }
1875 "opname" : "OpUGreaterThanEqual",
1876 "class" : "Relational_and_Logical",
1879 { "kind" : "IdResultType" },
1880 { "kind" : "IdResult" },
1881 { "kind" : "IdRef", "name" : "'Operand 1'" },
1882 { "kind" : "IdRef", "name" : "'Operand 2'" }
1886 "opname" : "OpSGreaterThanEqual",
1887 "class" : "Relational_and_Logical",
1890 { "kind" : "IdResultType" },
1891 { "kind" : "IdResult" },
1892 { "kind" : "IdRef", "name" : "'Operand 1'" },
1893 { "kind" : "IdRef", "name" : "'Operand 2'" }
1897 "opname" : "OpULessThan",
1898 "class" : "Relational_and_Logical",
1901 { "kind" : "IdResultType" },
1902 { "kind" : "IdResult" },
1903 { "kind" : "IdRef", "name" : "'Operand 1'" },
1904 { "kind" : "IdRef", "name" : "'Operand 2'" }
1908 "opname" : "OpSLessThan",
1909 "class" : "Relational_and_Logical",
1912 { "kind" : "IdResultType" },
1913 { "kind" : "IdResult" },
1914 { "kind" : "IdRef", "name" : "'Operand 1'" },
1915 { "kind" : "IdRef", "name" : "'Operand 2'" }
1919 "opname" : "OpULessThanEqual",
1920 "class" : "Relational_and_Logical",
1923 { "kind" : "IdResultType" },
1924 { "kind" : "IdResult" },
1925 { "kind" : "IdRef", "name" : "'Operand 1'" },
1926 { "kind" : "IdRef", "name" : "'Operand 2'" }
1930 "opname" : "OpSLessThanEqual",
1931 "class" : "Relational_and_Logical",
1934 { "kind" : "IdResultType" },
1935 { "kind" : "IdResult" },
1936 { "kind" : "IdRef", "name" : "'Operand 1'" },
1937 { "kind" : "IdRef", "name" : "'Operand 2'" }
1941 "opname" : "OpFOrdEqual",
1942 "class" : "Relational_and_Logical",
1945 { "kind" : "IdResultType" },
1946 { "kind" : "IdResult" },
1947 { "kind" : "IdRef", "name" : "'Operand 1'" },
1948 { "kind" : "IdRef", "name" : "'Operand 2'" }
1952 "opname" : "OpFUnordEqual",
1953 "class" : "Relational_and_Logical",
1956 { "kind" : "IdResultType" },
1957 { "kind" : "IdResult" },
1958 { "kind" : "IdRef", "name" : "'Operand 1'" },
1959 { "kind" : "IdRef", "name" : "'Operand 2'" }
1963 "opname" : "OpFOrdNotEqual",
1964 "class" : "Relational_and_Logical",
1967 { "kind" : "IdResultType" },
1968 { "kind" : "IdResult" },
1969 { "kind" : "IdRef", "name" : "'Operand 1'" },
1970 { "kind" : "IdRef", "name" : "'Operand 2'" }
1974 "opname" : "OpFUnordNotEqual",
1975 "class" : "Relational_and_Logical",
1978 { "kind" : "IdResultType" },
1979 { "kind" : "IdResult" },
1980 { "kind" : "IdRef", "name" : "'Operand 1'" },
1981 { "kind" : "IdRef", "name" : "'Operand 2'" }
1985 "opname" : "OpFOrdLessThan",
1986 "class" : "Relational_and_Logical",
1989 { "kind" : "IdResultType" },
1990 { "kind" : "IdResult" },
1991 { "kind" : "IdRef", "name" : "'Operand 1'" },
1992 { "kind" : "IdRef", "name" : "'Operand 2'" }
1996 "opname" : "OpFUnordLessThan",
1997 "class" : "Relational_and_Logical",
2000 { "kind" : "IdResultType" },
2001 { "kind" : "IdResult" },
2002 { "kind" : "IdRef", "name" : "'Operand 1'" },
2003 { "kind" : "IdRef", "name" : "'Operand 2'" }
2007 "opname" : "OpFOrdGreaterThan",
2008 "class" : "Relational_and_Logical",
2011 { "kind" : "IdResultType" },
2012 { "kind" : "IdResult" },
2013 { "kind" : "IdRef", "name" : "'Operand 1'" },
2014 { "kind" : "IdRef", "name" : "'Operand 2'" }
2018 "opname" : "OpFUnordGreaterThan",
2019 "class" : "Relational_and_Logical",
2022 { "kind" : "IdResultType" },
2023 { "kind" : "IdResult" },
2024 { "kind" : "IdRef", "name" : "'Operand 1'" },
2025 { "kind" : "IdRef", "name" : "'Operand 2'" }
2029 "opname" : "OpFOrdLessThanEqual",
2030 "class" : "Relational_and_Logical",
2033 { "kind" : "IdResultType" },
2034 { "kind" : "IdResult" },
2035 { "kind" : "IdRef", "name" : "'Operand 1'" },
2036 { "kind" : "IdRef", "name" : "'Operand 2'" }
2040 "opname" : "OpFUnordLessThanEqual",
2041 "class" : "Relational_and_Logical",
2044 { "kind" : "IdResultType" },
2045 { "kind" : "IdResult" },
2046 { "kind" : "IdRef", "name" : "'Operand 1'" },
2047 { "kind" : "IdRef", "name" : "'Operand 2'" }
2051 "opname" : "OpFOrdGreaterThanEqual",
2052 "class" : "Relational_and_Logical",
2055 { "kind" : "IdResultType" },
2056 { "kind" : "IdResult" },
2057 { "kind" : "IdRef", "name" : "'Operand 1'" },
2058 { "kind" : "IdRef", "name" : "'Operand 2'" }
2062 "opname" : "OpFUnordGreaterThanEqual",
2063 "class" : "Relational_and_Logical",
2066 { "kind" : "IdResultType" },
2067 { "kind" : "IdResult" },
2068 { "kind" : "IdRef", "name" : "'Operand 1'" },
2069 { "kind" : "IdRef", "name" : "'Operand 2'" }
2073 "opname" : "OpShiftRightLogical",
2077 { "kind" : "IdResultType" },
2078 { "kind" : "IdResult" },
2079 { "kind" : "IdRef", "name" : "'Base'" },
2080 { "kind" : "IdRef", "name" : "'Shift'" }
2084 "opname" : "OpShiftRightArithmetic",
2088 { "kind" : "IdResultType" },
2089 { "kind" : "IdResult" },
2090 { "kind" : "IdRef", "name" : "'Base'" },
2091 { "kind" : "IdRef", "name" : "'Shift'" }
2095 "opname" : "OpShiftLeftLogical",
2099 { "kind" : "IdResultType" },
2100 { "kind" : "IdResult" },
2101 { "kind" : "IdRef", "name" : "'Base'" },
2102 { "kind" : "IdRef", "name" : "'Shift'" }
2106 "opname" : "OpBitwiseOr",
2110 { "kind" : "IdResultType" },
2111 { "kind" : "IdResult" },
2112 { "kind" : "IdRef", "name" : "'Operand 1'" },
2113 { "kind" : "IdRef", "name" : "'Operand 2'" }
2117 "opname" : "OpBitwiseXor",
2121 { "kind" : "IdResultType" },
2122 { "kind" : "IdResult" },
2123 { "kind" : "IdRef", "name" : "'Operand 1'" },
2124 { "kind" : "IdRef", "name" : "'Operand 2'" }
2128 "opname" : "OpBitwiseAnd",
2132 { "kind" : "IdResultType" },
2133 { "kind" : "IdResult" },
2134 { "kind" : "IdRef", "name" : "'Operand 1'" },
2135 { "kind" : "IdRef", "name" : "'Operand 2'" }
2143 { "kind" : "IdResultType" },
2144 { "kind" : "IdResult" },
2145 { "kind" : "IdRef", "name" : "'Operand'" }
2149 "opname" : "OpBitFieldInsert",
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'" }
2160 "capabilities" : [ "Shader" ]
2163 "opname" : "OpBitFieldSExtract",
2167 { "kind" : "IdResultType" },
2168 { "kind" : "IdResult" },
2169 { "kind" : "IdRef", "name" : "'Base'" },
2170 { "kind" : "IdRef", "name" : "'Offset'" },
2171 { "kind" : "IdRef", "name" : "'Count'" }
2173 "capabilities" : [ "Shader" ]
2176 "opname" : "OpBitFieldUExtract",
2180 { "kind" : "IdResultType" },
2181 { "kind" : "IdResult" },
2182 { "kind" : "IdRef", "name" : "'Base'" },
2183 { "kind" : "IdRef", "name" : "'Offset'" },
2184 { "kind" : "IdRef", "name" : "'Count'" }
2186 "capabilities" : [ "Shader" ]
2189 "opname" : "OpBitReverse",
2193 { "kind" : "IdResultType" },
2194 { "kind" : "IdResult" },
2195 { "kind" : "IdRef", "name" : "'Base'" }
2197 "capabilities" : [ "Shader" ]
2200 "opname" : "OpBitCount",
2204 { "kind" : "IdResultType" },
2205 { "kind" : "IdResult" },
2206 { "kind" : "IdRef", "name" : "'Base'" }
2210 "opname" : "OpDPdx",
2211 "class" : "Derivative",
2214 { "kind" : "IdResultType" },
2215 { "kind" : "IdResult" },
2216 { "kind" : "IdRef", "name" : "'P'" }
2218 "capabilities" : [ "Shader" ]
2221 "opname" : "OpDPdy",
2222 "class" : "Derivative",
2225 { "kind" : "IdResultType" },
2226 { "kind" : "IdResult" },
2227 { "kind" : "IdRef", "name" : "'P'" }
2229 "capabilities" : [ "Shader" ]
2232 "opname" : "OpFwidth",
2233 "class" : "Derivative",
2236 { "kind" : "IdResultType" },
2237 { "kind" : "IdResult" },
2238 { "kind" : "IdRef", "name" : "'P'" }
2240 "capabilities" : [ "Shader" ]
2243 "opname" : "OpDPdxFine",
2244 "class" : "Derivative",
2247 { "kind" : "IdResultType" },
2248 { "kind" : "IdResult" },
2249 { "kind" : "IdRef", "name" : "'P'" }
2251 "capabilities" : [ "DerivativeControl" ]
2254 "opname" : "OpDPdyFine",
2255 "class" : "Derivative",
2258 { "kind" : "IdResultType" },
2259 { "kind" : "IdResult" },
2260 { "kind" : "IdRef", "name" : "'P'" }
2262 "capabilities" : [ "DerivativeControl" ]
2265 "opname" : "OpFwidthFine",
2266 "class" : "Derivative",
2269 { "kind" : "IdResultType" },
2270 { "kind" : "IdResult" },
2271 { "kind" : "IdRef", "name" : "'P'" }
2273 "capabilities" : [ "DerivativeControl" ]
2276 "opname" : "OpDPdxCoarse",
2277 "class" : "Derivative",
2280 { "kind" : "IdResultType" },
2281 { "kind" : "IdResult" },
2282 { "kind" : "IdRef", "name" : "'P'" }
2284 "capabilities" : [ "DerivativeControl" ]
2287 "opname" : "OpDPdyCoarse",
2288 "class" : "Derivative",
2291 { "kind" : "IdResultType" },
2292 { "kind" : "IdResult" },
2293 { "kind" : "IdRef", "name" : "'P'" }
2295 "capabilities" : [ "DerivativeControl" ]
2298 "opname" : "OpFwidthCoarse",
2299 "class" : "Derivative",
2302 { "kind" : "IdResultType" },
2303 { "kind" : "IdResult" },
2304 { "kind" : "IdRef", "name" : "'P'" }
2306 "capabilities" : [ "DerivativeControl" ]
2309 "opname" : "OpEmitVertex",
2310 "class" : "Primitive",
2312 "capabilities" : [ "Geometry" ]
2315 "opname" : "OpEndPrimitive",
2316 "class" : "Primitive",
2318 "capabilities" : [ "Geometry" ]
2321 "opname" : "OpEmitStreamVertex",
2322 "class" : "Primitive",
2325 { "kind" : "IdRef", "name" : "'Stream'" }
2327 "capabilities" : [ "GeometryStreams" ]
2330 "opname" : "OpEndStreamPrimitive",
2331 "class" : "Primitive",
2334 { "kind" : "IdRef", "name" : "'Stream'" }
2336 "capabilities" : [ "GeometryStreams" ]
2339 "opname" : "OpControlBarrier",
2340 "class" : "Barrier",
2343 { "kind" : "IdScope", "name" : "'Execution'" },
2344 { "kind" : "IdScope", "name" : "'Memory'" },
2345 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2349 "opname" : "OpMemoryBarrier",
2350 "class" : "Barrier",
2353 { "kind" : "IdScope", "name" : "'Memory'" },
2354 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2358 "opname" : "OpAtomicLoad",
2362 { "kind" : "IdResultType" },
2363 { "kind" : "IdResult" },
2364 { "kind" : "IdRef", "name" : "'Pointer'" },
2365 { "kind" : "IdScope", "name" : "'Memory'" },
2366 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2370 "opname" : "OpAtomicStore",
2374 { "kind" : "IdRef", "name" : "'Pointer'" },
2375 { "kind" : "IdScope", "name" : "'Memory'" },
2376 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2377 { "kind" : "IdRef", "name" : "'Value'" }
2381 "opname" : "OpAtomicExchange",
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'" }
2394 "opname" : "OpAtomicCompareExchange",
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'" }
2409 "opname" : "OpAtomicCompareExchangeWeak",
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'" }
2422 "capabilities" : [ "Kernel" ],
2423 "lastVersion" : "1.3"
2426 "opname" : "OpAtomicIIncrement",
2430 { "kind" : "IdResultType" },
2431 { "kind" : "IdResult" },
2432 { "kind" : "IdRef", "name" : "'Pointer'" },
2433 { "kind" : "IdScope", "name" : "'Memory'" },
2434 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2438 "opname" : "OpAtomicIDecrement",
2442 { "kind" : "IdResultType" },
2443 { "kind" : "IdResult" },
2444 { "kind" : "IdRef", "name" : "'Pointer'" },
2445 { "kind" : "IdScope", "name" : "'Memory'" },
2446 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2450 "opname" : "OpAtomicIAdd",
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'" }
2463 "opname" : "OpAtomicISub",
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'" }
2476 "opname" : "OpAtomicSMin",
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'" }
2489 "opname" : "OpAtomicUMin",
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'" }
2502 "opname" : "OpAtomicSMax",
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'" }
2515 "opname" : "OpAtomicUMax",
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'" }
2528 "opname" : "OpAtomicAnd",
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'" }
2541 "opname" : "OpAtomicOr",
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'" }
2554 "opname" : "OpAtomicXor",
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'" }
2568 "class" : "Control-Flow",
2571 { "kind" : "IdResultType" },
2572 { "kind" : "IdResult" },
2573 { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" }
2577 "opname" : "OpLoopMerge",
2578 "class" : "Control-Flow",
2581 { "kind" : "IdRef", "name" : "'Merge Block'" },
2582 { "kind" : "IdRef", "name" : "'Continue Target'" },
2583 { "kind" : "LoopControl" }
2587 "opname" : "OpSelectionMerge",
2588 "class" : "Control-Flow",
2591 { "kind" : "IdRef", "name" : "'Merge Block'" },
2592 { "kind" : "SelectionControl" }
2596 "opname" : "OpLabel",
2597 "class" : "Control-Flow",
2600 { "kind" : "IdResult" }
2604 "opname" : "OpBranch",
2605 "class" : "Control-Flow",
2608 { "kind" : "IdRef", "name" : "'Target Label'" }
2612 "opname" : "OpBranchConditional",
2613 "class" : "Control-Flow",
2616 { "kind" : "IdRef", "name" : "'Condition'" },
2617 { "kind" : "IdRef", "name" : "'True Label'" },
2618 { "kind" : "IdRef", "name" : "'False Label'" },
2619 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" }
2623 "opname" : "OpSwitch",
2624 "class" : "Control-Flow",
2627 { "kind" : "IdRef", "name" : "'Selector'" },
2628 { "kind" : "IdRef", "name" : "'Default'" },
2629 { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" }
2633 "opname" : "OpKill",
2634 "class" : "Control-Flow",
2636 "capabilities" : [ "Shader" ]
2639 "opname" : "OpReturn",
2640 "class" : "Control-Flow",
2644 "opname" : "OpReturnValue",
2645 "class" : "Control-Flow",
2648 { "kind" : "IdRef", "name" : "'Value'" }
2652 "opname" : "OpUnreachable",
2653 "class" : "Control-Flow",
2657 "opname" : "OpLifetimeStart",
2658 "class" : "Control-Flow",
2661 { "kind" : "IdRef", "name" : "'Pointer'" },
2662 { "kind" : "LiteralInteger", "name" : "'Size'" }
2664 "capabilities" : [ "Kernel" ]
2667 "opname" : "OpLifetimeStop",
2668 "class" : "Control-Flow",
2671 { "kind" : "IdRef", "name" : "'Pointer'" },
2672 { "kind" : "LiteralInteger", "name" : "'Size'" }
2674 "capabilities" : [ "Kernel" ]
2677 "opname" : "OpGroupAsyncCopy",
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'" }
2690 "capabilities" : [ "Kernel" ]
2693 "opname" : "OpGroupWaitEvents",
2697 { "kind" : "IdScope", "name" : "'Execution'" },
2698 { "kind" : "IdRef", "name" : "'Num Events'" },
2699 { "kind" : "IdRef", "name" : "'Events List'" }
2701 "capabilities" : [ "Kernel" ]
2704 "opname" : "OpGroupAll",
2708 { "kind" : "IdResultType" },
2709 { "kind" : "IdResult" },
2710 { "kind" : "IdScope", "name" : "'Execution'" },
2711 { "kind" : "IdRef", "name" : "'Predicate'" }
2713 "capabilities" : [ "Groups" ]
2716 "opname" : "OpGroupAny",
2720 { "kind" : "IdResultType" },
2721 { "kind" : "IdResult" },
2722 { "kind" : "IdScope", "name" : "'Execution'" },
2723 { "kind" : "IdRef", "name" : "'Predicate'" }
2725 "capabilities" : [ "Groups" ]
2728 "opname" : "OpGroupBroadcast",
2732 { "kind" : "IdResultType" },
2733 { "kind" : "IdResult" },
2734 { "kind" : "IdScope", "name" : "'Execution'" },
2735 { "kind" : "IdRef", "name" : "'Value'" },
2736 { "kind" : "IdRef", "name" : "'LocalId'" }
2738 "capabilities" : [ "Groups" ]
2741 "opname" : "OpGroupIAdd",
2745 { "kind" : "IdResultType" },
2746 { "kind" : "IdResult" },
2747 { "kind" : "IdScope", "name" : "'Execution'" },
2748 { "kind" : "GroupOperation", "name" : "'Operation'" },
2749 { "kind" : "IdRef", "name" : "'X'" }
2751 "capabilities" : [ "Groups" ]
2754 "opname" : "OpGroupFAdd",
2758 { "kind" : "IdResultType" },
2759 { "kind" : "IdResult" },
2760 { "kind" : "IdScope", "name" : "'Execution'" },
2761 { "kind" : "GroupOperation", "name" : "'Operation'" },
2762 { "kind" : "IdRef", "name" : "'X'" }
2764 "capabilities" : [ "Groups" ]
2767 "opname" : "OpGroupFMin",
2771 { "kind" : "IdResultType" },
2772 { "kind" : "IdResult" },
2773 { "kind" : "IdScope", "name" : "'Execution'" },
2774 { "kind" : "GroupOperation", "name" : "'Operation'" },
2775 { "kind" : "IdRef", "name" : "'X'" }
2777 "capabilities" : [ "Groups" ]
2780 "opname" : "OpGroupUMin",
2784 { "kind" : "IdResultType" },
2785 { "kind" : "IdResult" },
2786 { "kind" : "IdScope", "name" : "'Execution'" },
2787 { "kind" : "GroupOperation", "name" : "'Operation'" },
2788 { "kind" : "IdRef", "name" : "'X'" }
2790 "capabilities" : [ "Groups" ]
2793 "opname" : "OpGroupSMin",
2797 { "kind" : "IdResultType" },
2798 { "kind" : "IdResult" },
2799 { "kind" : "IdScope", "name" : "'Execution'" },
2800 { "kind" : "GroupOperation", "name" : "'Operation'" },
2801 { "kind" : "IdRef", "name" : "'X'" }
2803 "capabilities" : [ "Groups" ]
2806 "opname" : "OpGroupFMax",
2810 { "kind" : "IdResultType" },
2811 { "kind" : "IdResult" },
2812 { "kind" : "IdScope", "name" : "'Execution'" },
2813 { "kind" : "GroupOperation", "name" : "'Operation'" },
2814 { "kind" : "IdRef", "name" : "'X'" }
2816 "capabilities" : [ "Groups" ]
2819 "opname" : "OpGroupUMax",
2823 { "kind" : "IdResultType" },
2824 { "kind" : "IdResult" },
2825 { "kind" : "IdScope", "name" : "'Execution'" },
2826 { "kind" : "GroupOperation", "name" : "'Operation'" },
2827 { "kind" : "IdRef", "name" : "'X'" }
2829 "capabilities" : [ "Groups" ]
2832 "opname" : "OpGroupSMax",
2836 { "kind" : "IdResultType" },
2837 { "kind" : "IdResult" },
2838 { "kind" : "IdScope", "name" : "'Execution'" },
2839 { "kind" : "GroupOperation", "name" : "'Operation'" },
2840 { "kind" : "IdRef", "name" : "'X'" }
2842 "capabilities" : [ "Groups" ]
2845 "opname" : "OpReadPipe",
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'" }
2856 "capabilities" : [ "Pipes" ]
2859 "opname" : "OpWritePipe",
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'" }
2870 "capabilities" : [ "Pipes" ]
2873 "opname" : "OpReservedReadPipe",
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'" }
2886 "capabilities" : [ "Pipes" ]
2889 "opname" : "OpReservedWritePipe",
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'" }
2902 "capabilities" : [ "Pipes" ]
2905 "opname" : "OpReserveReadPipePackets",
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'" }
2916 "capabilities" : [ "Pipes" ]
2919 "opname" : "OpReserveWritePipePackets",
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'" }
2930 "capabilities" : [ "Pipes" ]
2933 "opname" : "OpCommitReadPipe",
2937 { "kind" : "IdRef", "name" : "'Pipe'" },
2938 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2939 { "kind" : "IdRef", "name" : "'Packet Size'" },
2940 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2942 "capabilities" : [ "Pipes" ]
2945 "opname" : "OpCommitWritePipe",
2949 { "kind" : "IdRef", "name" : "'Pipe'" },
2950 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2951 { "kind" : "IdRef", "name" : "'Packet Size'" },
2952 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2954 "capabilities" : [ "Pipes" ]
2957 "opname" : "OpIsValidReserveId",
2961 { "kind" : "IdResultType" },
2962 { "kind" : "IdResult" },
2963 { "kind" : "IdRef", "name" : "'Reserve Id'" }
2965 "capabilities" : [ "Pipes" ]
2968 "opname" : "OpGetNumPipePackets",
2972 { "kind" : "IdResultType" },
2973 { "kind" : "IdResult" },
2974 { "kind" : "IdRef", "name" : "'Pipe'" },
2975 { "kind" : "IdRef", "name" : "'Packet Size'" },
2976 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2978 "capabilities" : [ "Pipes" ]
2981 "opname" : "OpGetMaxPipePackets",
2985 { "kind" : "IdResultType" },
2986 { "kind" : "IdResult" },
2987 { "kind" : "IdRef", "name" : "'Pipe'" },
2988 { "kind" : "IdRef", "name" : "'Packet Size'" },
2989 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2991 "capabilities" : [ "Pipes" ]
2994 "opname" : "OpGroupReserveReadPipePackets",
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'" }
3006 "capabilities" : [ "Pipes" ]
3009 "opname" : "OpGroupReserveWritePipePackets",
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'" }
3021 "capabilities" : [ "Pipes" ]
3024 "opname" : "OpGroupCommitReadPipe",
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'" }
3034 "capabilities" : [ "Pipes" ]
3037 "opname" : "OpGroupCommitWritePipe",
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'" }
3047 "capabilities" : [ "Pipes" ]
3050 "opname" : "OpEnqueueMarker",
3051 "class" : "Device-Side_Enqueue",
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'" }
3061 "capabilities" : [ "DeviceEnqueue" ]
3064 "opname" : "OpEnqueueKernel",
3065 "class" : "Device-Side_Enqueue",
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'" }
3082 "capabilities" : [ "DeviceEnqueue" ]
3085 "opname" : "OpGetKernelNDrangeSubGroupCount",
3086 "class" : "Device-Side_Enqueue",
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'" }
3097 "capabilities" : [ "DeviceEnqueue" ]
3100 "opname" : "OpGetKernelNDrangeMaxSubGroupSize",
3101 "class" : "Device-Side_Enqueue",
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'" }
3112 "capabilities" : [ "DeviceEnqueue" ]
3115 "opname" : "OpGetKernelWorkGroupSize",
3116 "class" : "Device-Side_Enqueue",
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'" }
3126 "capabilities" : [ "DeviceEnqueue" ]
3129 "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple",
3130 "class" : "Device-Side_Enqueue",
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'" }
3140 "capabilities" : [ "DeviceEnqueue" ]
3143 "opname" : "OpRetainEvent",
3144 "class" : "Device-Side_Enqueue",
3147 { "kind" : "IdRef", "name" : "'Event'" }
3149 "capabilities" : [ "DeviceEnqueue" ]
3152 "opname" : "OpReleaseEvent",
3153 "class" : "Device-Side_Enqueue",
3156 { "kind" : "IdRef", "name" : "'Event'" }
3158 "capabilities" : [ "DeviceEnqueue" ]
3161 "opname" : "OpCreateUserEvent",
3162 "class" : "Device-Side_Enqueue",
3165 { "kind" : "IdResultType" },
3166 { "kind" : "IdResult" }
3168 "capabilities" : [ "DeviceEnqueue" ]
3171 "opname" : "OpIsValidEvent",
3172 "class" : "Device-Side_Enqueue",
3175 { "kind" : "IdResultType" },
3176 { "kind" : "IdResult" },
3177 { "kind" : "IdRef", "name" : "'Event'" }
3179 "capabilities" : [ "DeviceEnqueue" ]
3182 "opname" : "OpSetUserEventStatus",
3183 "class" : "Device-Side_Enqueue",
3186 { "kind" : "IdRef", "name" : "'Event'" },
3187 { "kind" : "IdRef", "name" : "'Status'" }
3189 "capabilities" : [ "DeviceEnqueue" ]
3192 "opname" : "OpCaptureEventProfilingInfo",
3193 "class" : "Device-Side_Enqueue",
3196 { "kind" : "IdRef", "name" : "'Event'" },
3197 { "kind" : "IdRef", "name" : "'Profiling Info'" },
3198 { "kind" : "IdRef", "name" : "'Value'" }
3200 "capabilities" : [ "DeviceEnqueue" ]
3203 "opname" : "OpGetDefaultQueue",
3204 "class" : "Device-Side_Enqueue",
3207 { "kind" : "IdResultType" },
3208 { "kind" : "IdResult" }
3210 "capabilities" : [ "DeviceEnqueue" ]
3213 "opname" : "OpBuildNDRange",
3214 "class" : "Device-Side_Enqueue",
3217 { "kind" : "IdResultType" },
3218 { "kind" : "IdResult" },
3219 { "kind" : "IdRef", "name" : "'GlobalWorkSize'" },
3220 { "kind" : "IdRef", "name" : "'LocalWorkSize'" },
3221 { "kind" : "IdRef", "name" : "'GlobalWorkOffset'" }
3223 "capabilities" : [ "DeviceEnqueue" ]
3226 "opname" : "OpImageSparseSampleImplicitLod",
3230 { "kind" : "IdResultType" },
3231 { "kind" : "IdResult" },
3232 { "kind" : "IdRef", "name" : "'Sampled Image'" },
3233 { "kind" : "IdRef", "name" : "'Coordinate'" },
3234 { "kind" : "ImageOperands", "quantifier" : "?" }
3236 "capabilities" : [ "SparseResidency" ]
3239 "opname" : "OpImageSparseSampleExplicitLod",
3243 { "kind" : "IdResultType" },
3244 { "kind" : "IdResult" },
3245 { "kind" : "IdRef", "name" : "'Sampled Image'" },
3246 { "kind" : "IdRef", "name" : "'Coordinate'" },
3247 { "kind" : "ImageOperands" }
3249 "capabilities" : [ "SparseResidency" ]
3252 "opname" : "OpImageSparseSampleDrefImplicitLod",
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" : "?" }
3263 "capabilities" : [ "SparseResidency" ]
3266 "opname" : "OpImageSparseSampleDrefExplicitLod",
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" }
3277 "capabilities" : [ "SparseResidency" ]
3280 "opname" : "OpImageSparseSampleProjImplicitLod",
3284 { "kind" : "IdResultType" },
3285 { "kind" : "IdResult" },
3286 { "kind" : "IdRef", "name" : "'Sampled Image'" },
3287 { "kind" : "IdRef", "name" : "'Coordinate'" },
3288 { "kind" : "ImageOperands", "quantifier" : "?" }
3290 "capabilities" : [ "SparseResidency" ],
3294 "opname" : "OpImageSparseSampleProjExplicitLod",
3298 { "kind" : "IdResultType" },
3299 { "kind" : "IdResult" },
3300 { "kind" : "IdRef", "name" : "'Sampled Image'" },
3301 { "kind" : "IdRef", "name" : "'Coordinate'" },
3302 { "kind" : "ImageOperands" }
3304 "capabilities" : [ "SparseResidency" ],
3308 "opname" : "OpImageSparseSampleProjDrefImplicitLod",
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" : "?" }
3319 "capabilities" : [ "SparseResidency" ],
3323 "opname" : "OpImageSparseSampleProjDrefExplicitLod",
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" }
3334 "capabilities" : [ "SparseResidency" ],
3338 "opname" : "OpImageSparseFetch",
3342 { "kind" : "IdResultType" },
3343 { "kind" : "IdResult" },
3344 { "kind" : "IdRef", "name" : "'Image'" },
3345 { "kind" : "IdRef", "name" : "'Coordinate'" },
3346 { "kind" : "ImageOperands", "quantifier" : "?" }
3348 "capabilities" : [ "SparseResidency" ]
3351 "opname" : "OpImageSparseGather",
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" : "?" }
3362 "capabilities" : [ "SparseResidency" ]
3365 "opname" : "OpImageSparseDrefGather",
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" : "?" }
3376 "capabilities" : [ "SparseResidency" ]
3379 "opname" : "OpImageSparseTexelsResident",
3383 { "kind" : "IdResultType" },
3384 { "kind" : "IdResult" },
3385 { "kind" : "IdRef", "name" : "'Resident Code'" }
3387 "capabilities" : [ "SparseResidency" ]
3390 "opname" : "OpNoLine",
3395 "opname" : "OpAtomicFlagTestAndSet",
3399 { "kind" : "IdResultType" },
3400 { "kind" : "IdResult" },
3401 { "kind" : "IdRef", "name" : "'Pointer'" },
3402 { "kind" : "IdScope", "name" : "'Memory'" },
3403 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3405 "capabilities" : [ "Kernel" ]
3408 "opname" : "OpAtomicFlagClear",
3412 { "kind" : "IdRef", "name" : "'Pointer'" },
3413 { "kind" : "IdScope", "name" : "'Memory'" },
3414 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3416 "capabilities" : [ "Kernel" ]
3419 "opname" : "OpImageSparseRead",
3423 { "kind" : "IdResultType" },
3424 { "kind" : "IdResult" },
3425 { "kind" : "IdRef", "name" : "'Image'" },
3426 { "kind" : "IdRef", "name" : "'Coordinate'" },
3427 { "kind" : "ImageOperands", "quantifier" : "?" }
3429 "capabilities" : [ "SparseResidency" ]
3432 "opname" : "OpSizeOf",
3433 "class" : "Miscellaneous",
3436 { "kind" : "IdResultType" },
3437 { "kind" : "IdResult" },
3438 { "kind" : "IdRef", "name" : "'Pointer'" }
3440 "capabilities" : [ "Addresses" ],
3444 "opname" : "OpTypePipeStorage",
3445 "class" : "Type-Declaration",
3448 { "kind" : "IdResult" }
3450 "capabilities" : [ "PipeStorage" ],
3454 "opname" : "OpConstantPipeStorage",
3458 { "kind" : "IdResultType" },
3459 { "kind" : "IdResult" },
3460 { "kind" : "LiteralInteger", "name" : "'Packet Size'" },
3461 { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" },
3462 { "kind" : "LiteralInteger", "name" : "'Capacity'" }
3464 "capabilities" : [ "PipeStorage" ],
3468 "opname" : "OpCreatePipeFromPipeStorage",
3472 { "kind" : "IdResultType" },
3473 { "kind" : "IdResult" },
3474 { "kind" : "IdRef", "name" : "'Pipe Storage'" }
3476 "capabilities" : [ "PipeStorage" ],
3480 "opname" : "OpGetKernelLocalSizeForSubgroupCount",
3481 "class" : "Device-Side_Enqueue",
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'" }
3492 "capabilities" : [ "SubgroupDispatch" ],
3496 "opname" : "OpGetKernelMaxNumSubgroups",
3497 "class" : "Device-Side_Enqueue",
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'" }
3507 "capabilities" : [ "SubgroupDispatch" ],
3511 "opname" : "OpTypeNamedBarrier",
3512 "class" : "Type-Declaration",
3515 { "kind" : "IdResult" }
3517 "capabilities" : [ "NamedBarrier" ],
3521 "opname" : "OpNamedBarrierInitialize",
3522 "class" : "Barrier",
3525 { "kind" : "IdResultType" },
3526 { "kind" : "IdResult" },
3527 { "kind" : "IdRef", "name" : "'Subgroup Count'" }
3529 "capabilities" : [ "NamedBarrier" ],
3533 "opname" : "OpMemoryNamedBarrier",
3534 "class" : "Barrier",
3537 { "kind" : "IdRef", "name" : "'Named Barrier'" },
3538 { "kind" : "IdScope", "name" : "'Memory'" },
3539 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3541 "capabilities" : [ "NamedBarrier" ],
3545 "opname" : "OpModuleProcessed",
3549 { "kind" : "LiteralString", "name" : "'Process'" }
3554 "opname" : "OpExecutionModeId",
3555 "class" : "Mode-Setting",
3558 { "kind" : "IdRef", "name" : "'Entry Point'" },
3559 { "kind" : "ExecutionMode", "name" : "'Mode'" }
3564 "opname" : "OpDecorateId",
3565 "class" : "Annotation",
3568 { "kind" : "IdRef", "name" : "'Target'" },
3569 { "kind" : "Decoration" }
3571 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
3575 "opname" : "OpGroupNonUniformElect",
3576 "class" : "Non-Uniform",
3579 { "kind" : "IdResultType" },
3580 { "kind" : "IdResult" },
3581 { "kind" : "IdScope", "name" : "'Execution'" }
3583 "capabilities" : [ "GroupNonUniform" ],
3587 "opname" : "OpGroupNonUniformAll",
3588 "class" : "Non-Uniform",
3591 { "kind" : "IdResultType" },
3592 { "kind" : "IdResult" },
3593 { "kind" : "IdScope", "name" : "'Execution'" },
3594 { "kind" : "IdRef", "name" : "'Predicate'" }
3596 "capabilities" : [ "GroupNonUniformVote" ],
3600 "opname" : "OpGroupNonUniformAny",
3601 "class" : "Non-Uniform",
3604 { "kind" : "IdResultType" },
3605 { "kind" : "IdResult" },
3606 { "kind" : "IdScope", "name" : "'Execution'" },
3607 { "kind" : "IdRef", "name" : "'Predicate'" }
3609 "capabilities" : [ "GroupNonUniformVote" ],
3613 "opname" : "OpGroupNonUniformAllEqual",
3614 "class" : "Non-Uniform",
3617 { "kind" : "IdResultType" },
3618 { "kind" : "IdResult" },
3619 { "kind" : "IdScope", "name" : "'Execution'" },
3620 { "kind" : "IdRef", "name" : "'Value'" }
3622 "capabilities" : [ "GroupNonUniformVote" ],
3626 "opname" : "OpGroupNonUniformBroadcast",
3627 "class" : "Non-Uniform",
3630 { "kind" : "IdResultType" },
3631 { "kind" : "IdResult" },
3632 { "kind" : "IdScope", "name" : "'Execution'" },
3633 { "kind" : "IdRef", "name" : "'Value'" },
3634 { "kind" : "IdRef", "name" : "'Id'" }
3636 "capabilities" : [ "GroupNonUniformBallot" ],
3640 "opname" : "OpGroupNonUniformBroadcastFirst",
3641 "class" : "Non-Uniform",
3644 { "kind" : "IdResultType" },
3645 { "kind" : "IdResult" },
3646 { "kind" : "IdScope", "name" : "'Execution'" },
3647 { "kind" : "IdRef", "name" : "'Value'" }
3649 "capabilities" : [ "GroupNonUniformBallot" ],
3653 "opname" : "OpGroupNonUniformBallot",
3654 "class" : "Non-Uniform",
3657 { "kind" : "IdResultType" },
3658 { "kind" : "IdResult" },
3659 { "kind" : "IdScope", "name" : "'Execution'" },
3660 { "kind" : "IdRef", "name" : "'Predicate'" }
3662 "capabilities" : [ "GroupNonUniformBallot" ],
3666 "opname" : "OpGroupNonUniformInverseBallot",
3667 "class" : "Non-Uniform",
3670 { "kind" : "IdResultType" },
3671 { "kind" : "IdResult" },
3672 { "kind" : "IdScope", "name" : "'Execution'" },
3673 { "kind" : "IdRef", "name" : "'Value'" }
3675 "capabilities" : [ "GroupNonUniformBallot" ],
3679 "opname" : "OpGroupNonUniformBallotBitExtract",
3680 "class" : "Non-Uniform",
3683 { "kind" : "IdResultType" },
3684 { "kind" : "IdResult" },
3685 { "kind" : "IdScope", "name" : "'Execution'" },
3686 { "kind" : "IdRef", "name" : "'Value'" },
3687 { "kind" : "IdRef", "name" : "'Index'" }
3689 "capabilities" : [ "GroupNonUniformBallot" ],
3693 "opname" : "OpGroupNonUniformBallotBitCount",
3694 "class" : "Non-Uniform",
3697 { "kind" : "IdResultType" },
3698 { "kind" : "IdResult" },
3699 { "kind" : "IdScope", "name" : "'Execution'" },
3700 { "kind" : "GroupOperation", "name" : "'Operation'" },
3701 { "kind" : "IdRef", "name" : "'Value'" }
3703 "capabilities" : [ "GroupNonUniformBallot" ],
3707 "opname" : "OpGroupNonUniformBallotFindLSB",
3708 "class" : "Non-Uniform",
3711 { "kind" : "IdResultType" },
3712 { "kind" : "IdResult" },
3713 { "kind" : "IdScope", "name" : "'Execution'" },
3714 { "kind" : "IdRef", "name" : "'Value'" }
3716 "capabilities" : [ "GroupNonUniformBallot" ],
3720 "opname" : "OpGroupNonUniformBallotFindMSB",
3721 "class" : "Non-Uniform",
3724 { "kind" : "IdResultType" },
3725 { "kind" : "IdResult" },
3726 { "kind" : "IdScope", "name" : "'Execution'" },
3727 { "kind" : "IdRef", "name" : "'Value'" }
3729 "capabilities" : [ "GroupNonUniformBallot" ],
3733 "opname" : "OpGroupNonUniformShuffle",
3734 "class" : "Non-Uniform",
3737 { "kind" : "IdResultType" },
3738 { "kind" : "IdResult" },
3739 { "kind" : "IdScope", "name" : "'Execution'" },
3740 { "kind" : "IdRef", "name" : "'Value'" },
3741 { "kind" : "IdRef", "name" : "'Id'" }
3743 "capabilities" : [ "GroupNonUniformShuffle" ],
3747 "opname" : "OpGroupNonUniformShuffleXor",
3748 "class" : "Non-Uniform",
3751 { "kind" : "IdResultType" },
3752 { "kind" : "IdResult" },
3753 { "kind" : "IdScope", "name" : "'Execution'" },
3754 { "kind" : "IdRef", "name" : "'Value'" },
3755 { "kind" : "IdRef", "name" : "'Mask'" }
3757 "capabilities" : [ "GroupNonUniformShuffle" ],
3761 "opname" : "OpGroupNonUniformShuffleUp",
3762 "class" : "Non-Uniform",
3765 { "kind" : "IdResultType" },
3766 { "kind" : "IdResult" },
3767 { "kind" : "IdScope", "name" : "'Execution'" },
3768 { "kind" : "IdRef", "name" : "'Value'" },
3769 { "kind" : "IdRef", "name" : "'Delta'" }
3771 "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3775 "opname" : "OpGroupNonUniformShuffleDown",
3776 "class" : "Non-Uniform",
3779 { "kind" : "IdResultType" },
3780 { "kind" : "IdResult" },
3781 { "kind" : "IdScope", "name" : "'Execution'" },
3782 { "kind" : "IdRef", "name" : "'Value'" },
3783 { "kind" : "IdRef", "name" : "'Delta'" }
3785 "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3789 "opname" : "OpGroupNonUniformIAdd",
3790 "class" : "Non-Uniform",
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" : "?" }
3800 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3804 "opname" : "OpGroupNonUniformFAdd",
3805 "class" : "Non-Uniform",
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" : "?" }
3815 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3819 "opname" : "OpGroupNonUniformIMul",
3820 "class" : "Non-Uniform",
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" : "?" }
3830 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3834 "opname" : "OpGroupNonUniformFMul",
3835 "class" : "Non-Uniform",
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" : "?" }
3845 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3849 "opname" : "OpGroupNonUniformSMin",
3850 "class" : "Non-Uniform",
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" : "?" }
3860 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3864 "opname" : "OpGroupNonUniformUMin",
3865 "class" : "Non-Uniform",
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" : "?" }
3875 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3879 "opname" : "OpGroupNonUniformFMin",
3880 "class" : "Non-Uniform",
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" : "?" }
3890 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3894 "opname" : "OpGroupNonUniformSMax",
3895 "class" : "Non-Uniform",
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" : "?" }
3905 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3909 "opname" : "OpGroupNonUniformUMax",
3910 "class" : "Non-Uniform",
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" : "?" }
3920 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3924 "opname" : "OpGroupNonUniformFMax",
3925 "class" : "Non-Uniform",
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" : "?" }
3935 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3939 "opname" : "OpGroupNonUniformBitwiseAnd",
3940 "class" : "Non-Uniform",
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" : "?" }
3950 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3954 "opname" : "OpGroupNonUniformBitwiseOr",
3955 "class" : "Non-Uniform",
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" : "?" }
3965 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3969 "opname" : "OpGroupNonUniformBitwiseXor",
3970 "class" : "Non-Uniform",
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" : "?" }
3980 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3984 "opname" : "OpGroupNonUniformLogicalAnd",
3985 "class" : "Non-Uniform",
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" : "?" }
3995 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3999 "opname" : "OpGroupNonUniformLogicalOr",
4000 "class" : "Non-Uniform",
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" : "?" }
4010 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4014 "opname" : "OpGroupNonUniformLogicalXor",
4015 "class" : "Non-Uniform",
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" : "?" }
4025 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
4029 "opname" : "OpGroupNonUniformQuadBroadcast",
4030 "class" : "Non-Uniform",
4033 { "kind" : "IdResultType" },
4034 { "kind" : "IdResult" },
4035 { "kind" : "IdScope", "name" : "'Execution'" },
4036 { "kind" : "IdRef", "name" : "'Value'" },
4037 { "kind" : "IdRef", "name" : "'Index'" }
4039 "capabilities" : [ "GroupNonUniformQuad" ],
4043 "opname" : "OpGroupNonUniformQuadSwap",
4044 "class" : "Non-Uniform",
4047 { "kind" : "IdResultType" },
4048 { "kind" : "IdResult" },
4049 { "kind" : "IdScope", "name" : "'Execution'" },
4050 { "kind" : "IdRef", "name" : "'Value'" },
4051 { "kind" : "IdRef", "name" : "'Direction'" }
4053 "capabilities" : [ "GroupNonUniformQuad" ],
4057 "opname" : "OpCopyLogical",
4058 "class" : "Composite",
4061 { "kind" : "IdResultType" },
4062 { "kind" : "IdResult" },
4063 { "kind" : "IdRef", "name" : "'Operand'" }
4068 "opname" : "OpPtrEqual",
4072 { "kind" : "IdResultType" },
4073 { "kind" : "IdResult" },
4074 { "kind" : "IdRef", "name" : "'Operand 1'" },
4075 { "kind" : "IdRef", "name" : "'Operand 2'" }
4080 "opname" : "OpPtrNotEqual",
4084 { "kind" : "IdResultType" },
4085 { "kind" : "IdResult" },
4086 { "kind" : "IdRef", "name" : "'Operand 1'" },
4087 { "kind" : "IdRef", "name" : "'Operand 2'" }
4092 "opname" : "OpPtrDiff",
4096 { "kind" : "IdResultType" },
4097 { "kind" : "IdResult" },
4098 { "kind" : "IdRef", "name" : "'Operand 1'" },
4099 { "kind" : "IdRef", "name" : "'Operand 2'" }
4101 "capabilities" : [ "Addresses", "VariablePointers", "VariablePointersStorageBuffer" ],
4105 "opname" : "OpSubgroupBallotKHR",
4109 { "kind" : "IdResultType" },
4110 { "kind" : "IdResult" },
4111 { "kind" : "IdRef", "name" : "'Predicate'" }
4113 "capabilities" : [ "SubgroupBallotKHR" ],
4114 "extensions" : [ "SPV_KHR_shader_ballot" ],
4118 "opname" : "OpSubgroupFirstInvocationKHR",
4122 { "kind" : "IdResultType" },
4123 { "kind" : "IdResult" },
4124 { "kind" : "IdRef", "name" : "'Value'" }
4126 "capabilities" : [ "SubgroupBallotKHR" ],
4127 "extensions" : [ "SPV_KHR_shader_ballot" ],
4131 "opname" : "OpSubgroupAllKHR",
4135 { "kind" : "IdResultType" },
4136 { "kind" : "IdResult" },
4137 { "kind" : "IdRef", "name" : "'Predicate'" }
4140 "SPV_KHR_subgroup_vote"
4142 "capabilities" : [ "SubgroupVoteKHR" ],
4146 "opname" : "OpSubgroupAnyKHR",
4150 { "kind" : "IdResultType" },
4151 { "kind" : "IdResult" },
4152 { "kind" : "IdRef", "name" : "'Predicate'" }
4155 "SPV_KHR_subgroup_vote"
4157 "capabilities" : [ "SubgroupVoteKHR" ],
4161 "opname" : "OpSubgroupAllEqualKHR",
4165 { "kind" : "IdResultType" },
4166 { "kind" : "IdResult" },
4167 { "kind" : "IdRef", "name" : "'Predicate'" }
4170 "SPV_KHR_subgroup_vote"
4172 "capabilities" : [ "SubgroupVoteKHR" ],
4176 "opname" : "OpSubgroupReadInvocationKHR",
4180 { "kind" : "IdResultType" },
4181 { "kind" : "IdResult" },
4182 { "kind" : "IdRef", "name" : "'Value'" },
4183 { "kind" : "IdRef", "name" : "'Index'" }
4185 "capabilities" : [ "SubgroupBallotKHR" ],
4186 "extensions" : [ "SPV_KHR_shader_ballot" ],
4190 "opname" : "OpTypeRayQueryProvisionalKHR",
4191 "class" : "Reserved",
4194 { "kind" : "IdResult" }
4196 "capabilities" : [ "RayQueryProvisionalKHR" ],
4197 "extensions" : [ "SPV_KHR_ray_query" ],
4201 "opname" : "OpRayQueryInitializeKHR",
4202 "class" : "Reserved",
4207 "name" : "'RayQuery'"
4215 "name" : "'RayFlags'"
4219 "name" : "'CullMask'"
4223 "name" : "'RayOrigin'"
4227 "name" : "'RayTMin'"
4231 "name" : "'RayDirection'"
4235 "name" : "'RayTMax'"
4239 "capabilities" : [ "RayQueryProvisionalKHR" ],
4240 "extensions" : [ "SPV_KHR_ray_query" ],
4244 "opname" : "OpRayQueryTerminateKHR",
4245 "class" : "Reserved",
4250 "name" : "'RayQuery'"
4253 "capabilities" : [ "RayQueryProvisionalKHR" ],
4254 "extensions" : [ "SPV_KHR_ray_query" ],
4258 "opname" : "OpRayQueryGenerateIntersectionKHR",
4259 "class" : "Reserved",
4264 "name" : "'RayQuery'"
4271 "capabilities" : [ "RayQueryProvisionalKHR" ],
4272 "extensions" : [ "SPV_KHR_ray_query" ],
4276 "opname" : "OpRayQueryConfirmIntersectionKHR",
4277 "class" : "Reserved",
4282 "name" : "'RayQuery'"
4285 "capabilities" : [ "RayQueryProvisionalKHR" ],
4286 "extensions" : [ "SPV_KHR_ray_query" ],
4290 "opname" : "OpRayQueryProceedKHR",
4291 "class" : "Reserved",
4294 { "kind" : "IdResultType" },
4295 { "kind" : "IdResult" },
4298 "name" : "'RayQuery'"
4301 "capabilities" : [ "RayQueryProvisionalKHR" ],
4302 "extensions" : [ "SPV_KHR_ray_query" ],
4306 "opname" : "OpRayQueryGetIntersectionTypeKHR",
4307 "class" : "Reserved",
4310 { "kind" : "IdResultType" },
4311 { "kind" : "IdResult" },
4314 "name" : "'RayQuery'"
4318 "name" : "'Intersection'"
4321 "capabilities" : [ "RayQueryProvisionalKHR" ],
4322 "extensions" : [ "SPV_KHR_ray_query" ],
4326 "opname" : "OpGroupIAddNonUniformAMD",
4330 { "kind" : "IdResultType" },
4331 { "kind" : "IdResult" },
4332 { "kind" : "IdScope", "name" : "'Execution'" },
4333 { "kind" : "GroupOperation", "name" : "'Operation'" },
4334 { "kind" : "IdRef", "name" : "'X'" }
4336 "capabilities" : [ "Groups" ],
4337 "extensions" : [ "SPV_AMD_shader_ballot" ],
4341 "opname" : "OpGroupFAddNonUniformAMD",
4345 { "kind" : "IdResultType" },
4346 { "kind" : "IdResult" },
4347 { "kind" : "IdScope", "name" : "'Execution'" },
4348 { "kind" : "GroupOperation", "name" : "'Operation'" },
4349 { "kind" : "IdRef", "name" : "'X'" }
4351 "capabilities" : [ "Groups" ],
4352 "extensions" : [ "SPV_AMD_shader_ballot" ],
4356 "opname" : "OpGroupFMinNonUniformAMD",
4360 { "kind" : "IdResultType" },
4361 { "kind" : "IdResult" },
4362 { "kind" : "IdScope", "name" : "'Execution'" },
4363 { "kind" : "GroupOperation", "name" : "'Operation'" },
4364 { "kind" : "IdRef", "name" : "'X'" }
4366 "capabilities" : [ "Groups" ],
4367 "extensions" : [ "SPV_AMD_shader_ballot" ],
4371 "opname" : "OpGroupUMinNonUniformAMD",
4375 { "kind" : "IdResultType" },
4376 { "kind" : "IdResult" },
4377 { "kind" : "IdScope", "name" : "'Execution'" },
4378 { "kind" : "GroupOperation", "name" : "'Operation'" },
4379 { "kind" : "IdRef", "name" : "'X'" }
4381 "capabilities" : [ "Groups" ],
4382 "extensions" : [ "SPV_AMD_shader_ballot" ],
4386 "opname" : "OpGroupSMinNonUniformAMD",
4390 { "kind" : "IdResultType" },
4391 { "kind" : "IdResult" },
4392 { "kind" : "IdScope", "name" : "'Execution'" },
4393 { "kind" : "GroupOperation", "name" : "'Operation'" },
4394 { "kind" : "IdRef", "name" : "'X'" }
4396 "capabilities" : [ "Groups" ],
4397 "extensions" : [ "SPV_AMD_shader_ballot" ],
4401 "opname" : "OpGroupFMaxNonUniformAMD",
4405 { "kind" : "IdResultType" },
4406 { "kind" : "IdResult" },
4407 { "kind" : "IdScope", "name" : "'Execution'" },
4408 { "kind" : "GroupOperation", "name" : "'Operation'" },
4409 { "kind" : "IdRef", "name" : "'X'" }
4411 "capabilities" : [ "Groups" ],
4412 "extensions" : [ "SPV_AMD_shader_ballot" ],
4416 "opname" : "OpGroupUMaxNonUniformAMD",
4420 { "kind" : "IdResultType" },
4421 { "kind" : "IdResult" },
4422 { "kind" : "IdScope", "name" : "'Execution'" },
4423 { "kind" : "GroupOperation", "name" : "'Operation'" },
4424 { "kind" : "IdRef", "name" : "'X'" }
4426 "capabilities" : [ "Groups" ],
4427 "extensions" : [ "SPV_AMD_shader_ballot" ],
4431 "opname" : "OpGroupSMaxNonUniformAMD",
4435 { "kind" : "IdResultType" },
4436 { "kind" : "IdResult" },
4437 { "kind" : "IdScope", "name" : "'Execution'" },
4438 { "kind" : "GroupOperation", "name" : "'Operation'" },
4439 { "kind" : "IdRef", "name" : "'X'" }
4441 "capabilities" : [ "Groups" ],
4442 "extensions" : [ "SPV_AMD_shader_ballot" ],
4446 "opname" : "OpFragmentMaskFetchAMD",
4447 "class" : "Reserved",
4450 { "kind" : "IdResultType" },
4451 { "kind" : "IdResult" },
4452 { "kind" : "IdRef", "name" : "'Image'" },
4453 { "kind" : "IdRef", "name" : "'Coordinate'" }
4455 "capabilities" : [ "FragmentMaskAMD" ],
4456 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
4460 "opname" : "OpFragmentFetchAMD",
4461 "class" : "Reserved",
4464 { "kind" : "IdResultType" },
4465 { "kind" : "IdResult" },
4466 { "kind" : "IdRef", "name" : "'Image'" },
4467 { "kind" : "IdRef", "name" : "'Coordinate'" },
4468 { "kind" : "IdRef", "name" : "'Fragment Index'" }
4470 "capabilities" : [ "FragmentMaskAMD" ],
4471 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
4475 "opname" : "OpReadClockKHR",
4476 "class" : "Reserved",
4479 { "kind" : "IdResultType" },
4480 { "kind" : "IdResult" },
4481 { "kind" : "IdScope", "name" : "'Execution'" }
4483 "capabilities" : [ "ShaderClockKHR" ],
4484 "extensions" : [ "SPV_KHR_shader_clock" ],
4488 "opname" : "OpImageSampleFootprintNV",
4492 { "kind" : "IdResultType" },
4493 { "kind" : "IdResult" },
4494 { "kind" : "IdRef", "name" : "'Sampled Image'" },
4495 { "kind" : "IdRef", "name" : "'Coordinate'" },
4496 { "kind" : "IdRef", "name" : "'Granularity'" },
4497 { "kind" : "IdRef", "name" : "'Coarse'" },
4498 { "kind" : "ImageOperands", "quantifier" : "?" }
4500 "capabilities" : [ "ImageFootprintNV" ],
4501 "extensions" : [ "SPV_NV_shader_image_footprint" ],
4505 "opname" : "OpGroupNonUniformPartitionNV",
4506 "class" : "Non-Uniform",
4509 { "kind" : "IdResultType" },
4510 { "kind" : "IdResult" },
4511 { "kind" : "IdRef", "name" : "'Value'" }
4513 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
4514 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
4518 "opname" : "OpWritePackedPrimitiveIndices4x8NV",
4519 "class" : "Reserved",
4522 { "kind" : "IdRef", "name" : "'Index Offset'" },
4523 { "kind" : "IdRef", "name" : "'Packed Indices'" }
4525 "capabilities" : [ "MeshShadingNV" ],
4526 "extensions" : [ "SPV_NV_mesh_shader" ],
4530 "opname" : "OpReportIntersectionNV",
4531 "class" : "Reserved",
4534 { "kind" : "IdResultType" },
4535 { "kind" : "IdResult" },
4536 { "kind" : "IdRef", "name" : "'Hit'" },
4537 { "kind" : "IdRef", "name" : "'HitKind'" }
4539 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4540 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4544 "opname" : "OpReportIntersectionKHR",
4545 "class" : "Reserved",
4548 { "kind" : "IdResultType" },
4549 { "kind" : "IdResult" },
4550 { "kind" : "IdRef", "name" : "'Hit'" },
4551 { "kind" : "IdRef", "name" : "'HitKind'" }
4553 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4554 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4558 "opname" : "OpIgnoreIntersectionNV",
4559 "class" : "Reserved",
4561 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4562 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4566 "opname" : "OpIgnoreIntersectionKHR",
4567 "class" : "Reserved",
4569 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4570 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4574 "opname" : "OpTerminateRayNV",
4575 "class" : "Reserved",
4577 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4578 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4582 "opname" : "OpTerminateRayKHR",
4583 "class" : "Reserved",
4585 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4586 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4590 "opname" : "OpTraceNV",
4591 "class" : "Reserved",
4595 { "kind" : "IdRef", "name" : "'Accel'" },
4596 { "kind" : "IdRef", "name" : "'Ray Flags'" },
4597 { "kind" : "IdRef", "name" : "'Cull Mask'" },
4598 { "kind" : "IdRef", "name" : "'SBT Offset'" },
4599 { "kind" : "IdRef", "name" : "'SBT Stride'" },
4600 { "kind" : "IdRef", "name" : "'Miss Index'" },
4601 { "kind" : "IdRef", "name" : "'Ray Origin'" },
4602 { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4603 { "kind" : "IdRef", "name" : "'Ray Direction'" },
4604 { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4605 { "kind" : "IdRef", "name" : "'PayloadId'" }
4607 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4608 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4612 "opname" : "OpTraceRayKHR",
4613 "class" : "Reserved",
4617 { "kind" : "IdRef", "name" : "'Accel'" },
4618 { "kind" : "IdRef", "name" : "'Ray Flags'" },
4619 { "kind" : "IdRef", "name" : "'Cull Mask'" },
4620 { "kind" : "IdRef", "name" : "'SBT Offset'" },
4621 { "kind" : "IdRef", "name" : "'SBT Stride'" },
4622 { "kind" : "IdRef", "name" : "'Miss Index'" },
4623 { "kind" : "IdRef", "name" : "'Ray Origin'" },
4624 { "kind" : "IdRef", "name" : "'Ray Tmin'" },
4625 { "kind" : "IdRef", "name" : "'Ray Direction'" },
4626 { "kind" : "IdRef", "name" : "'Ray Tmax'" },
4627 { "kind" : "IdRef", "name" : "'PayloadId'" }
4629 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4630 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4634 "opname" : "OpTypeAccelerationStructureNV",
4635 "class" : "Reserved",
4638 { "kind" : "IdResult" }
4640 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR", "RayQueryProvisionalKHR" ],
4641 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4645 "opname" : "OpTypeAccelerationStructureKHR",
4646 "class" : "Reserved",
4649 { "kind" : "IdResult" }
4651 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR", "RayQueryProvisionalKHR" ],
4652 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing", "SPV_KHR_ray_query" ],
4656 "opname" : "OpExecuteCallableNV",
4657 "class" : "Reserved",
4661 { "kind" : "IdRef", "name" : "'SBT Index'" },
4662 { "kind" : "IdRef", "name" : "'Callable DataId'" }
4664 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4665 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4669 "opname" : "OpExecuteCallableKHR",
4670 "class" : "Reserved",
4674 { "kind" : "IdRef", "name" : "'SBT Index'" },
4675 { "kind" : "IdRef", "name" : "'Callable DataId'" }
4677 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
4678 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
4682 "opname" : "OpTypeCooperativeMatrixNV",
4683 "class" : "Reserved",
4686 { "kind" : "IdResult" },
4687 { "kind" : "IdRef", "name" : "'Component Type'" },
4688 { "kind" : "IdScope", "name" : "'Execution'" },
4689 { "kind" : "IdRef", "name" : "'Rows'" },
4690 { "kind" : "IdRef", "name" : "'Columns'" }
4692 "capabilities" : [ "CooperativeMatrixNV" ],
4693 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4697 "opname" : "OpCooperativeMatrixLoadNV",
4698 "class" : "Reserved",
4701 { "kind" : "IdResultType" },
4702 { "kind" : "IdResult" },
4703 { "kind" : "IdRef", "name" : "'Pointer'" },
4704 { "kind" : "IdRef", "name" : "'Stride'" },
4705 { "kind" : "IdRef", "name" : "'Column Major'" },
4706 { "kind" : "MemoryAccess", "quantifier" : "?" }
4708 "capabilities" : [ "CooperativeMatrixNV" ],
4709 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4713 "opname" : "OpCooperativeMatrixStoreNV",
4714 "class" : "Reserved",
4717 { "kind" : "IdRef", "name" : "'Pointer'" },
4718 { "kind" : "IdRef", "name" : "'Object'" },
4719 { "kind" : "IdRef", "name" : "'Stride'" },
4720 { "kind" : "IdRef", "name" : "'Column Major'" },
4721 { "kind" : "MemoryAccess", "quantifier" : "?" }
4723 "capabilities" : [ "CooperativeMatrixNV" ],
4724 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4728 "opname" : "OpCooperativeMatrixMulAddNV",
4729 "class" : "Reserved",
4732 { "kind" : "IdResultType" },
4733 { "kind" : "IdResult" },
4734 { "kind" : "IdRef", "name" : "'A'" },
4735 { "kind" : "IdRef", "name" : "'B'" },
4736 { "kind" : "IdRef", "name" : "'C'" }
4738 "capabilities" : [ "CooperativeMatrixNV" ],
4739 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4743 "opname" : "OpCooperativeMatrixLengthNV",
4744 "class" : "Reserved",
4747 { "kind" : "IdResultType" },
4748 { "kind" : "IdResult" },
4749 { "kind" : "IdRef", "name" : "'Type'" }
4751 "capabilities" : [ "CooperativeMatrixNV" ],
4752 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4756 "opname" : "OpBeginInvocationInterlockEXT",
4757 "class" : "Reserved",
4759 "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
4760 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
4764 "opname" : "OpEndInvocationInterlockEXT",
4765 "class" : "Reserved",
4767 "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
4768 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
4772 "opname" : "OpDemoteToHelperInvocationEXT",
4773 "class" : "Reserved",
4775 "capabilities" : [ "DemoteToHelperInvocationEXT" ],
4776 "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
4780 "opname" : "OpIsHelperInvocationEXT",
4781 "class" : "Reserved",
4784 { "kind" : "IdResultType" },
4785 { "kind" : "IdResult" }
4787 "capabilities" : [ "DemoteToHelperInvocationEXT" ],
4788 "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
4792 "opname" : "OpSubgroupShuffleINTEL",
4796 { "kind" : "IdResultType" },
4797 { "kind" : "IdResult" },
4798 { "kind" : "IdRef", "name" : "'Data'" },
4799 { "kind" : "IdRef", "name" : "'InvocationId'" }
4801 "capabilities" : [ "SubgroupShuffleINTEL" ],
4805 "opname" : "OpSubgroupShuffleDownINTEL",
4809 { "kind" : "IdResultType" },
4810 { "kind" : "IdResult" },
4811 { "kind" : "IdRef", "name" : "'Current'" },
4812 { "kind" : "IdRef", "name" : "'Next'" },
4813 { "kind" : "IdRef", "name" : "'Delta'" }
4815 "capabilities" : [ "SubgroupShuffleINTEL" ],
4819 "opname" : "OpSubgroupShuffleUpINTEL",
4823 { "kind" : "IdResultType" },
4824 { "kind" : "IdResult" },
4825 { "kind" : "IdRef", "name" : "'Previous'" },
4826 { "kind" : "IdRef", "name" : "'Current'" },
4827 { "kind" : "IdRef", "name" : "'Delta'" }
4829 "capabilities" : [ "SubgroupShuffleINTEL" ],
4833 "opname" : "OpSubgroupShuffleXorINTEL",
4837 { "kind" : "IdResultType" },
4838 { "kind" : "IdResult" },
4839 { "kind" : "IdRef", "name" : "'Data'" },
4840 { "kind" : "IdRef", "name" : "'Value'" }
4842 "capabilities" : [ "SubgroupShuffleINTEL" ],
4846 "opname" : "OpSubgroupBlockReadINTEL",
4850 { "kind" : "IdResultType" },
4851 { "kind" : "IdResult" },
4852 { "kind" : "IdRef", "name" : "'Ptr'" }
4854 "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4858 "opname" : "OpSubgroupBlockWriteINTEL",
4862 { "kind" : "IdRef", "name" : "'Ptr'" },
4863 { "kind" : "IdRef", "name" : "'Data'" }
4865 "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4869 "opname" : "OpSubgroupImageBlockReadINTEL",
4873 { "kind" : "IdResultType" },
4874 { "kind" : "IdResult" },
4875 { "kind" : "IdRef", "name" : "'Image'" },
4876 { "kind" : "IdRef", "name" : "'Coordinate'" }
4878 "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4882 "opname" : "OpSubgroupImageBlockWriteINTEL",
4886 { "kind" : "IdRef", "name" : "'Image'" },
4887 { "kind" : "IdRef", "name" : "'Coordinate'" },
4888 { "kind" : "IdRef", "name" : "'Data'" }
4890 "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4894 "opname" : "OpSubgroupImageMediaBlockReadINTEL",
4898 { "kind" : "IdResultType" },
4899 { "kind" : "IdResult" },
4900 { "kind" : "IdRef", "name" : "'Image'" },
4901 { "kind" : "IdRef", "name" : "'Coordinate'" },
4902 { "kind" : "IdRef", "name" : "'Width'" },
4903 { "kind" : "IdRef", "name" : "'Height'" }
4905 "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
4909 "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
4913 { "kind" : "IdRef", "name" : "'Image'" },
4914 { "kind" : "IdRef", "name" : "'Coordinate'" },
4915 { "kind" : "IdRef", "name" : "'Width'" },
4916 { "kind" : "IdRef", "name" : "'Height'" },
4917 { "kind" : "IdRef", "name" : "'Data'" }
4919 "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
4923 "opname" : "OpUCountLeadingZerosINTEL",
4924 "class" : "Reserved",
4927 { "kind" : "IdResultType" },
4928 { "kind" : "IdResult" },
4929 { "kind" : "IdRef", "name" : "'Operand'" }
4931 "capabilities" : [ "IntegerFunctions2INTEL" ],
4935 "opname" : "OpUCountTrailingZerosINTEL",
4936 "class" : "Reserved",
4939 { "kind" : "IdResultType" },
4940 { "kind" : "IdResult" },
4941 { "kind" : "IdRef", "name" : "'Operand'" }
4943 "capabilities" : [ "IntegerFunctions2INTEL" ],
4947 "opname" : "OpAbsISubINTEL",
4948 "class" : "Reserved",
4951 { "kind" : "IdResultType" },
4952 { "kind" : "IdResult" },
4953 { "kind" : "IdRef", "name" : "'Operand 1'" },
4954 { "kind" : "IdRef", "name" : "'Operand 2'" }
4956 "capabilities" : [ "IntegerFunctions2INTEL" ],
4960 "opname" : "OpAbsUSubINTEL",
4961 "class" : "Reserved",
4964 { "kind" : "IdResultType" },
4965 { "kind" : "IdResult" },
4966 { "kind" : "IdRef", "name" : "'Operand 1'" },
4967 { "kind" : "IdRef", "name" : "'Operand 2'" }
4969 "capabilities" : [ "IntegerFunctions2INTEL" ],
4973 "opname" : "OpIAddSatINTEL",
4974 "class" : "Reserved",
4977 { "kind" : "IdResultType" },
4978 { "kind" : "IdResult" },
4979 { "kind" : "IdRef", "name" : "'Operand 1'" },
4980 { "kind" : "IdRef", "name" : "'Operand 2'" }
4982 "capabilities" : [ "IntegerFunctions2INTEL" ],
4986 "opname" : "OpUAddSatINTEL",
4987 "class" : "Reserved",
4990 { "kind" : "IdResultType" },
4991 { "kind" : "IdResult" },
4992 { "kind" : "IdRef", "name" : "'Operand 1'" },
4993 { "kind" : "IdRef", "name" : "'Operand 2'" }
4995 "capabilities" : [ "IntegerFunctions2INTEL" ],
4999 "opname" : "OpIAverageINTEL",
5000 "class" : "Reserved",
5003 { "kind" : "IdResultType" },
5004 { "kind" : "IdResult" },
5005 { "kind" : "IdRef", "name" : "'Operand 1'" },
5006 { "kind" : "IdRef", "name" : "'Operand 2'" }
5008 "capabilities" : [ "IntegerFunctions2INTEL" ],
5012 "opname" : "OpUAverageINTEL",
5013 "class" : "Reserved",
5016 { "kind" : "IdResultType" },
5017 { "kind" : "IdResult" },
5018 { "kind" : "IdRef", "name" : "'Operand 1'" },
5019 { "kind" : "IdRef", "name" : "'Operand 2'" }
5021 "capabilities" : [ "IntegerFunctions2INTEL" ],
5025 "opname" : "OpIAverageRoundedINTEL",
5026 "class" : "Reserved",
5029 { "kind" : "IdResultType" },
5030 { "kind" : "IdResult" },
5031 { "kind" : "IdRef", "name" : "'Operand 1'" },
5032 { "kind" : "IdRef", "name" : "'Operand 2'" }
5034 "capabilities" : [ "IntegerFunctions2INTEL" ],
5038 "opname" : "OpUAverageRoundedINTEL",
5039 "class" : "Reserved",
5042 { "kind" : "IdResultType" },
5043 { "kind" : "IdResult" },
5044 { "kind" : "IdRef", "name" : "'Operand 1'" },
5045 { "kind" : "IdRef", "name" : "'Operand 2'" }
5047 "capabilities" : [ "IntegerFunctions2INTEL" ],
5051 "opname" : "OpISubSatINTEL",
5052 "class" : "Reserved",
5055 { "kind" : "IdResultType" },
5056 { "kind" : "IdResult" },
5057 { "kind" : "IdRef", "name" : "'Operand 1'" },
5058 { "kind" : "IdRef", "name" : "'Operand 2'" }
5060 "capabilities" : [ "IntegerFunctions2INTEL" ],
5064 "opname" : "OpUSubSatINTEL",
5065 "class" : "Reserved",
5068 { "kind" : "IdResultType" },
5069 { "kind" : "IdResult" },
5070 { "kind" : "IdRef", "name" : "'Operand 1'" },
5071 { "kind" : "IdRef", "name" : "'Operand 2'" }
5073 "capabilities" : [ "IntegerFunctions2INTEL" ],
5077 "opname" : "OpIMul32x16INTEL",
5078 "class" : "Reserved",
5081 { "kind" : "IdResultType" },
5082 { "kind" : "IdResult" },
5083 { "kind" : "IdRef", "name" : "'Operand 1'" },
5084 { "kind" : "IdRef", "name" : "'Operand 2'" }
5086 "capabilities" : [ "IntegerFunctions2INTEL" ],
5090 "opname" : "OpUMul32x16INTEL",
5091 "class" : "Reserved",
5094 { "kind" : "IdResultType" },
5095 { "kind" : "IdResult" },
5096 { "kind" : "IdRef", "name" : "'Operand 1'" },
5097 { "kind" : "IdRef", "name" : "'Operand 2'" }
5099 "capabilities" : [ "IntegerFunctions2INTEL" ],
5103 "opname" : "OpFunctionPointerINTEL",
5104 "class" : "@exclude",
5107 { "kind" : "IdResultType" },
5108 { "kind" : "IdResult" },
5109 { "kind" : "IdRef", "name" : "'Function'" }
5111 "capabilities" : [ "FunctionPointersINTEL" ],
5112 "extensions" : [ "SPV_INTEL_function_pointers" ],
5116 "opname" : "OpFunctionPointerCallINTEL",
5117 "class" : "@exclude",
5120 { "kind" : "IdResultType" },
5121 { "kind" : "IdResult" },
5122 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1'" }
5124 "capabilities" : [ "FunctionPointersINTEL" ],
5125 "extensions" : [ "SPV_INTEL_function_pointers" ],
5129 "opname" : "OpDecorateString",
5130 "class" : "Annotation",
5133 { "kind" : "IdRef", "name" : "'Target'" },
5134 { "kind" : "Decoration" }
5136 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5140 "opname" : "OpDecorateStringGOOGLE",
5141 "class" : "Annotation",
5144 { "kind" : "IdRef", "name" : "'Target'" },
5145 { "kind" : "Decoration" }
5147 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5151 "opname" : "OpMemberDecorateString",
5152 "class" : "Annotation",
5155 { "kind" : "IdRef", "name" : "'Struct Type'" },
5156 { "kind" : "LiteralInteger", "name" : "'Member'" },
5157 { "kind" : "Decoration" }
5159 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5163 "opname" : "OpMemberDecorateStringGOOGLE",
5164 "class" : "Annotation",
5167 { "kind" : "IdRef", "name" : "'Struct Type'" },
5168 { "kind" : "LiteralInteger", "name" : "'Member'" },
5169 { "kind" : "Decoration" }
5171 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
5175 "opname" : "OpVmeImageINTEL",
5176 "class" : "@exclude",
5179 { "kind" : "IdResultType" },
5180 { "kind" : "IdResult" },
5181 { "kind" : "IdRef", "name" : "'Image Type'" },
5182 { "kind" : "IdRef", "name" : "'Sampler'" }
5184 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5188 "opname" : "OpTypeVmeImageINTEL",
5189 "class" : "@exclude",
5192 { "kind" : "IdResult" },
5193 { "kind" : "IdRef", "name" : "'Image Type'" }
5195 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5199 "opname" : "OpTypeAvcImePayloadINTEL",
5200 "class" : "@exclude",
5203 { "kind" : "IdResult" }
5205 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5209 "opname" : "OpTypeAvcRefPayloadINTEL",
5210 "class" : "@exclude",
5213 { "kind" : "IdResult" }
5215 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5219 "opname" : "OpTypeAvcSicPayloadINTEL",
5220 "class" : "@exclude",
5223 { "kind" : "IdResult" }
5225 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5229 "opname" : "OpTypeAvcMcePayloadINTEL",
5230 "class" : "@exclude",
5233 { "kind" : "IdResult" }
5235 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5239 "opname" : "OpTypeAvcMceResultINTEL",
5240 "class" : "@exclude",
5243 { "kind" : "IdResult" }
5245 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5249 "opname" : "OpTypeAvcImeResultINTEL",
5250 "class" : "@exclude",
5253 { "kind" : "IdResult" }
5255 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5259 "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
5260 "class" : "@exclude",
5263 { "kind" : "IdResult" }
5265 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5269 "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
5270 "class" : "@exclude",
5273 { "kind" : "IdResult" }
5275 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5279 "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
5280 "class" : "@exclude",
5283 { "kind" : "IdResult" }
5285 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5289 "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
5290 "class" : "@exclude",
5293 { "kind" : "IdResult" }
5295 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5299 "opname" : "OpTypeAvcRefResultINTEL",
5300 "class" : "@exclude",
5303 { "kind" : "IdResult" }
5305 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5309 "opname" : "OpTypeAvcSicResultINTEL",
5310 "class" : "@exclude",
5313 { "kind" : "IdResult" }
5315 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5319 "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
5320 "class" : "@exclude",
5323 { "kind" : "IdResultType" },
5324 { "kind" : "IdResult" },
5325 { "kind" : "IdRef", "name" : "'Slice Type'" },
5326 { "kind" : "IdRef", "name" : "'Qp'" }
5328 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5332 "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
5333 "class" : "@exclude",
5336 { "kind" : "IdResultType" },
5337 { "kind" : "IdResult" },
5338 { "kind" : "IdRef", "name" : "'Reference Base Penalty'" },
5339 { "kind" : "IdRef", "name" : "'Payload'" }
5341 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5345 "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
5346 "class" : "@exclude",
5349 { "kind" : "IdResultType" },
5350 { "kind" : "IdResult" },
5351 { "kind" : "IdRef", "name" : "'Slice Type'" },
5352 { "kind" : "IdRef", "name" : "'Qp'" }
5354 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5358 "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
5359 "class" : "@exclude",
5362 { "kind" : "IdResultType" },
5363 { "kind" : "IdResult" },
5364 { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
5365 { "kind" : "IdRef", "name" : "'Payload'" }
5367 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5371 "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
5372 "class" : "@exclude",
5375 { "kind" : "IdResultType" },
5376 { "kind" : "IdResult" },
5377 { "kind" : "IdRef", "name" : "'Slice Type'" },
5378 { "kind" : "IdRef", "name" : "'Qp'" }
5380 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5384 "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
5385 "class" : "@exclude",
5388 { "kind" : "IdResultType" },
5389 { "kind" : "IdResult" },
5390 { "kind" : "IdRef", "name" : "'Direction Cost'" },
5391 { "kind" : "IdRef", "name" : "'Payload'" }
5393 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5397 "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
5398 "class" : "@exclude",
5401 { "kind" : "IdResultType" },
5402 { "kind" : "IdResult" },
5403 { "kind" : "IdRef", "name" : "'Slice Type'" },
5404 { "kind" : "IdRef", "name" : "'Qp'" }
5406 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5410 "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
5411 "class" : "@exclude",
5414 { "kind" : "IdResultType" },
5415 { "kind" : "IdResult" },
5416 { "kind" : "IdRef", "name" : "'Slice Type'" },
5417 { "kind" : "IdRef", "name" : "'Qp'" }
5419 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5423 "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
5424 "class" : "@exclude",
5427 { "kind" : "IdResultType" },
5428 { "kind" : "IdResult" }
5430 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5434 "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
5435 "class" : "@exclude",
5438 { "kind" : "IdResultType" },
5439 { "kind" : "IdResult" }
5441 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5445 "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
5446 "class" : "@exclude",
5449 { "kind" : "IdResultType" },
5450 { "kind" : "IdResult" }
5452 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5456 "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
5457 "class" : "@exclude",
5460 { "kind" : "IdResultType" },
5461 { "kind" : "IdResult" },
5462 { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" },
5463 { "kind" : "IdRef", "name" : "'Packed Cost Table'" },
5464 { "kind" : "IdRef", "name" : "'Cost Precision'" },
5465 { "kind" : "IdRef", "name" : "'Payload'" }
5467 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5471 "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
5472 "class" : "@exclude",
5475 { "kind" : "IdResultType" },
5476 { "kind" : "IdResult" },
5477 { "kind" : "IdRef", "name" : "'Slice Type'" },
5478 { "kind" : "IdRef", "name" : "'Qp'" }
5480 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5484 "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
5485 "class" : "@exclude",
5488 { "kind" : "IdResultType" },
5489 { "kind" : "IdResult" }
5491 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5495 "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
5496 "class" : "@exclude",
5499 { "kind" : "IdResultType" },
5500 { "kind" : "IdResult" }
5502 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5506 "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
5507 "class" : "@exclude",
5510 { "kind" : "IdResultType" },
5511 { "kind" : "IdResult" },
5512 { "kind" : "IdRef", "name" : "'Payload'" }
5514 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5518 "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
5519 "class" : "@exclude",
5522 { "kind" : "IdResultType" },
5523 { "kind" : "IdResult" },
5524 { "kind" : "IdRef", "name" : "'Source Field Polarity'" },
5525 { "kind" : "IdRef", "name" : "'Payload'" }
5527 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5531 "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
5532 "class" : "@exclude",
5535 { "kind" : "IdResultType" },
5536 { "kind" : "IdResult" },
5537 { "kind" : "IdRef", "name" : "'Reference Field Polarity'" },
5538 { "kind" : "IdRef", "name" : "'Payload'" }
5540 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5544 "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
5545 "class" : "@exclude",
5548 { "kind" : "IdResultType" },
5549 { "kind" : "IdResult" },
5550 { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" },
5551 { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" },
5552 { "kind" : "IdRef", "name" : "'Payload'" }
5554 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5558 "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
5559 "class" : "@exclude",
5562 { "kind" : "IdResultType" },
5563 { "kind" : "IdResult" },
5564 { "kind" : "IdRef", "name" : "'Payload'" }
5566 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5570 "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
5571 "class" : "@exclude",
5574 { "kind" : "IdResultType" },
5575 { "kind" : "IdResult" },
5576 { "kind" : "IdRef", "name" : "'Payload'" }
5578 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5582 "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
5583 "class" : "@exclude",
5586 { "kind" : "IdResultType" },
5587 { "kind" : "IdResult" },
5588 { "kind" : "IdRef", "name" : "'Payload'" }
5590 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5594 "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
5595 "class" : "@exclude",
5598 { "kind" : "IdResultType" },
5599 { "kind" : "IdResult" },
5600 { "kind" : "IdRef", "name" : "'Payload'" }
5602 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5606 "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
5607 "class" : "@exclude",
5610 { "kind" : "IdResultType" },
5611 { "kind" : "IdResult" },
5612 { "kind" : "IdRef", "name" : "'Payload'" }
5614 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5618 "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
5619 "class" : "@exclude",
5622 { "kind" : "IdResultType" },
5623 { "kind" : "IdResult" },
5624 { "kind" : "IdRef", "name" : "'Payload'" }
5626 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5630 "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
5631 "class" : "@exclude",
5634 { "kind" : "IdResultType" },
5635 { "kind" : "IdResult" },
5636 { "kind" : "IdRef", "name" : "'Payload'" }
5638 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5642 "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
5643 "class" : "@exclude",
5646 { "kind" : "IdResultType" },
5647 { "kind" : "IdResult" },
5648 { "kind" : "IdRef", "name" : "'Payload'" }
5650 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5654 "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
5655 "class" : "@exclude",
5658 { "kind" : "IdResultType" },
5659 { "kind" : "IdResult" },
5660 { "kind" : "IdRef", "name" : "'Payload'" }
5662 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5666 "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
5667 "class" : "@exclude",
5670 { "kind" : "IdResultType" },
5671 { "kind" : "IdResult" },
5672 { "kind" : "IdRef", "name" : "'Payload'" }
5674 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5678 "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
5679 "class" : "@exclude",
5682 { "kind" : "IdResultType" },
5683 { "kind" : "IdResult" },
5684 { "kind" : "IdRef", "name" : "'Payload'" }
5686 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5690 "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
5691 "class" : "@exclude",
5694 { "kind" : "IdResultType" },
5695 { "kind" : "IdResult" },
5696 { "kind" : "IdRef", "name" : "'Payload'" }
5698 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5702 "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
5703 "class" : "@exclude",
5706 { "kind" : "IdResultType" },
5707 { "kind" : "IdResult" },
5708 { "kind" : "IdRef", "name" : "'Payload'" }
5710 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5714 "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
5715 "class" : "@exclude",
5718 { "kind" : "IdResultType" },
5719 { "kind" : "IdResult" },
5720 { "kind" : "IdRef", "name" : "'Payload'" }
5722 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5726 "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
5727 "class" : "@exclude",
5730 { "kind" : "IdResultType" },
5731 { "kind" : "IdResult" },
5732 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5733 { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" },
5734 { "kind" : "IdRef", "name" : "'Payload'" }
5736 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5740 "opname" : "OpSubgroupAvcImeInitializeINTEL",
5741 "class" : "@exclude",
5744 { "kind" : "IdResultType" },
5745 { "kind" : "IdResult" },
5746 { "kind" : "IdRef", "name" : "'Src Coord'" },
5747 { "kind" : "IdRef", "name" : "'Partition Mask'" },
5748 { "kind" : "IdRef", "name" : "'SAD Adjustment'" }
5750 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5754 "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
5755 "class" : "@exclude",
5758 { "kind" : "IdResultType" },
5759 { "kind" : "IdResult" },
5760 { "kind" : "IdRef", "name" : "'Ref Offset'" },
5761 { "kind" : "IdRef", "name" : "'Search Window Config'" },
5762 { "kind" : "IdRef", "name" : "'Payload'" }
5764 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5768 "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
5769 "class" : "@exclude",
5772 { "kind" : "IdResultType" },
5773 { "kind" : "IdResult" },
5774 { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" },
5775 { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" },
5776 { "kind" : "IdRef", "name" : "'id> Search Window Config'" },
5777 { "kind" : "IdRef", "name" : "'Payload'" }
5779 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5783 "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
5784 "class" : "@exclude",
5787 { "kind" : "IdResultType" },
5788 { "kind" : "IdResult" },
5789 { "kind" : "IdRef", "name" : "'Search Window Config'" },
5790 { "kind" : "IdRef", "name" : "'Dual Ref'" }
5792 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5796 "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
5797 "class" : "@exclude",
5800 { "kind" : "IdResultType" },
5801 { "kind" : "IdResult" },
5802 { "kind" : "IdRef", "name" : "'Ref Offset'" },
5803 { "kind" : "IdRef", "name" : "'Src Coord'" },
5804 { "kind" : "IdRef", "name" : "'Ref Window Size'" },
5805 { "kind" : "IdRef", "name" : "'Image Size'" }
5807 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5811 "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
5812 "class" : "@exclude",
5815 { "kind" : "IdResultType" },
5816 { "kind" : "IdResult" },
5817 { "kind" : "IdRef", "name" : "'Payload'" }
5819 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5823 "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
5824 "class" : "@exclude",
5827 { "kind" : "IdResultType" },
5828 { "kind" : "IdResult" },
5829 { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" },
5830 { "kind" : "IdRef", "name" : "'Payload'" }
5832 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5836 "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
5837 "class" : "@exclude",
5840 { "kind" : "IdResultType" },
5841 { "kind" : "IdResult" },
5842 { "kind" : "IdRef", "name" : "'Payload'" }
5844 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5848 "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
5849 "class" : "@exclude",
5852 { "kind" : "IdResultType" },
5853 { "kind" : "IdResult" },
5854 { "kind" : "IdRef", "name" : "'Threshold'" },
5855 { "kind" : "IdRef", "name" : "'Payload'" }
5857 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5861 "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
5862 "class" : "@exclude",
5865 { "kind" : "IdResultType" },
5866 { "kind" : "IdResult" },
5867 { "kind" : "IdRef", "name" : "'Packed Sad Weights'" },
5868 { "kind" : "IdRef", "name" : "'Payload'" }
5870 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5874 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
5875 "class" : "@exclude",
5878 { "kind" : "IdResultType" },
5879 { "kind" : "IdResult" },
5880 { "kind" : "IdRef", "name" : "'Src Image'" },
5881 { "kind" : "IdRef", "name" : "'Ref Image'" },
5882 { "kind" : "IdRef", "name" : "'Payload'" }
5884 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5888 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
5889 "class" : "@exclude",
5892 { "kind" : "IdResultType" },
5893 { "kind" : "IdResult" },
5894 { "kind" : "IdRef", "name" : "'Src Image'" },
5895 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5896 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5897 { "kind" : "IdRef", "name" : "'Payload'" }
5899 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5903 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
5904 "class" : "@exclude",
5907 { "kind" : "IdResultType" },
5908 { "kind" : "IdResult" },
5909 { "kind" : "IdRef", "name" : "'Src Image'" },
5910 { "kind" : "IdRef", "name" : "'Ref Image'" },
5911 { "kind" : "IdRef", "name" : "'Payload'" },
5912 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5914 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5918 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
5919 "class" : "@exclude",
5922 { "kind" : "IdResultType" },
5923 { "kind" : "IdResult" },
5924 { "kind" : "IdRef", "name" : "'Src Image'" },
5925 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5926 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5927 { "kind" : "IdRef", "name" : "'Payload'" },
5928 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5930 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5934 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
5935 "class" : "@exclude",
5938 { "kind" : "IdResultType" },
5939 { "kind" : "IdResult" },
5940 { "kind" : "IdRef", "name" : "'Src Image'" },
5941 { "kind" : "IdRef", "name" : "'Ref Image'" },
5942 { "kind" : "IdRef", "name" : "'Payload'" }
5944 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5948 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
5949 "class" : "@exclude",
5952 { "kind" : "IdResultType" },
5953 { "kind" : "IdResult" },
5954 { "kind" : "IdRef", "name" : "'Src Image'" },
5955 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5956 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5957 { "kind" : "IdRef", "name" : "'Payload'" }
5959 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5963 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
5964 "class" : "@exclude",
5967 { "kind" : "IdResultType" },
5968 { "kind" : "IdResult" },
5969 { "kind" : "IdRef", "name" : "'Src Image'" },
5970 { "kind" : "IdRef", "name" : "'Ref Image'" },
5971 { "kind" : "IdRef", "name" : "'Payload'" },
5972 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5974 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5978 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
5979 "class" : "@exclude",
5982 { "kind" : "IdResultType" },
5983 { "kind" : "IdResult" },
5984 { "kind" : "IdRef", "name" : "'Src Image'" },
5985 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5986 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5987 { "kind" : "IdRef", "name" : "'Payload'" },
5988 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5990 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5994 "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
5995 "class" : "@exclude",
5998 { "kind" : "IdResultType" },
5999 { "kind" : "IdResult" },
6000 { "kind" : "IdRef", "name" : "'Payload'" }
6002 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6006 "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
6007 "class" : "@exclude",
6010 { "kind" : "IdResultType" },
6011 { "kind" : "IdResult" },
6012 { "kind" : "IdRef", "name" : "'Payload'" }
6014 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6018 "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
6019 "class" : "@exclude",
6022 { "kind" : "IdResultType" },
6023 { "kind" : "IdResult" },
6024 { "kind" : "IdRef", "name" : "'Payload'" }
6026 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6030 "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
6031 "class" : "@exclude",
6034 { "kind" : "IdResultType" },
6035 { "kind" : "IdResult" },
6036 { "kind" : "IdRef", "name" : "'Payload'" }
6038 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6042 "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
6043 "class" : "@exclude",
6046 { "kind" : "IdResultType" },
6047 { "kind" : "IdResult" },
6048 { "kind" : "IdRef", "name" : "'Payload'" }
6050 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6054 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
6055 "class" : "@exclude",
6058 { "kind" : "IdResultType" },
6059 { "kind" : "IdResult" },
6060 { "kind" : "IdRef", "name" : "'Payload'" },
6061 { "kind" : "IdRef", "name" : "'Major Shape'" }
6063 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6067 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
6068 "class" : "@exclude",
6071 { "kind" : "IdResultType" },
6072 { "kind" : "IdResult" },
6073 { "kind" : "IdRef", "name" : "'Payload'" },
6074 { "kind" : "IdRef", "name" : "'Major Shape'" }
6076 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6080 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
6081 "class" : "@exclude",
6084 { "kind" : "IdResultType" },
6085 { "kind" : "IdResult" },
6086 { "kind" : "IdRef", "name" : "'Payload'" },
6087 { "kind" : "IdRef", "name" : "'Major Shape'" }
6089 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6093 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
6094 "class" : "@exclude",
6097 { "kind" : "IdResultType" },
6098 { "kind" : "IdResult" },
6099 { "kind" : "IdRef", "name" : "'Payload'" },
6100 { "kind" : "IdRef", "name" : "'Major Shape'" },
6101 { "kind" : "IdRef", "name" : "'Direction'" }
6103 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6107 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
6108 "class" : "@exclude",
6111 { "kind" : "IdResultType" },
6112 { "kind" : "IdResult" },
6113 { "kind" : "IdRef", "name" : "'Payload'" },
6114 { "kind" : "IdRef", "name" : "'Major Shape'" },
6115 { "kind" : "IdRef", "name" : "'Direction'" }
6117 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6121 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
6122 "class" : "@exclude",
6125 { "kind" : "IdResultType" },
6126 { "kind" : "IdResult" },
6127 { "kind" : "IdRef", "name" : "'Payload'" },
6128 { "kind" : "IdRef", "name" : "'Major Shape'" },
6129 { "kind" : "IdRef", "name" : "'Direction'" }
6131 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6135 "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
6136 "class" : "@exclude",
6139 { "kind" : "IdResultType" },
6140 { "kind" : "IdResult" },
6141 { "kind" : "IdRef", "name" : "'Image Select'" },
6142 { "kind" : "IdRef", "name" : "'Payload'" }
6144 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6148 "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
6149 "class" : "@exclude",
6152 { "kind" : "IdResultType" },
6153 { "kind" : "IdResult" },
6154 { "kind" : "IdRef", "name" : "'Payload'" }
6156 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6160 "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
6161 "class" : "@exclude",
6164 { "kind" : "IdResultType" },
6165 { "kind" : "IdResult" },
6166 { "kind" : "IdRef", "name" : "'Payload'" }
6168 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6172 "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
6173 "class" : "@exclude",
6176 { "kind" : "IdResultType" },
6177 { "kind" : "IdResult" },
6178 { "kind" : "IdRef", "name" : "'Payload'" }
6180 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6184 "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
6185 "class" : "@exclude",
6188 { "kind" : "IdResultType" },
6189 { "kind" : "IdResult" },
6190 { "kind" : "IdRef", "name" : "'Payload'" }
6192 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6196 "opname" : "OpSubgroupAvcFmeInitializeINTEL",
6197 "class" : "@exclude",
6200 { "kind" : "IdResultType" },
6201 { "kind" : "IdResult" },
6202 { "kind" : "IdRef", "name" : "'Src Coord'" },
6203 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6204 { "kind" : "IdRef", "name" : "'Major Shapes'" },
6205 { "kind" : "IdRef", "name" : "'Minor Shapes'" },
6206 { "kind" : "IdRef", "name" : "'Direction'" },
6207 { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
6208 { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
6210 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6214 "opname" : "OpSubgroupAvcBmeInitializeINTEL",
6215 "class" : "@exclude",
6218 { "kind" : "IdResultType" },
6219 { "kind" : "IdResult" },
6220 { "kind" : "IdRef", "name" : "'Src Coord'" },
6221 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6222 { "kind" : "IdRef", "name" : "'Major Shapes'" },
6223 { "kind" : "IdRef", "name" : "'Minor Shapes'" },
6224 { "kind" : "IdRef", "name" : "'Direction'" },
6225 { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
6226 { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
6227 { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
6229 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6233 "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
6234 "class" : "@exclude",
6237 { "kind" : "IdResultType" },
6238 { "kind" : "IdResult" },
6239 { "kind" : "IdRef", "name" : "'Payload'" }
6241 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6245 "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
6246 "class" : "@exclude",
6249 { "kind" : "IdResultType" },
6250 { "kind" : "IdResult" },
6251 { "kind" : "IdRef", "name" : "'Payload'" }
6253 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6257 "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
6258 "class" : "@exclude",
6261 { "kind" : "IdResultType" },
6262 { "kind" : "IdResult" },
6263 { "kind" : "IdRef", "name" : "'Payload'" }
6265 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6269 "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
6270 "class" : "@exclude",
6273 { "kind" : "IdResultType" },
6274 { "kind" : "IdResult" },
6275 { "kind" : "IdRef", "name" : "'Src Image'" },
6276 { "kind" : "IdRef", "name" : "'Ref Image'" },
6277 { "kind" : "IdRef", "name" : "'Payload'" }
6279 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6283 "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
6284 "class" : "@exclude",
6287 { "kind" : "IdResultType" },
6288 { "kind" : "IdResult" },
6289 { "kind" : "IdRef", "name" : "'Src Image'" },
6290 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6291 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6292 { "kind" : "IdRef", "name" : "'Payload'" }
6294 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6298 "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
6299 "class" : "@exclude",
6302 { "kind" : "IdResultType" },
6303 { "kind" : "IdResult" },
6304 { "kind" : "IdRef", "name" : "'Src Image'" },
6305 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6306 { "kind" : "IdRef", "name" : "'Payload'" }
6308 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6312 "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
6313 "class" : "@exclude",
6316 { "kind" : "IdResultType" },
6317 { "kind" : "IdResult" },
6318 { "kind" : "IdRef", "name" : "'Src Image'" },
6319 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6320 { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
6321 { "kind" : "IdRef", "name" : "'Payload'" }
6323 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6327 "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
6328 "class" : "@exclude",
6331 { "kind" : "IdResultType" },
6332 { "kind" : "IdResult" },
6333 { "kind" : "IdRef", "name" : "'Payload'" }
6335 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6339 "opname" : "OpSubgroupAvcSicInitializeINTEL",
6340 "class" : "@exclude",
6343 { "kind" : "IdResultType" },
6344 { "kind" : "IdResult" },
6345 { "kind" : "IdRef", "name" : "'Src Coord'" }
6347 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6351 "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
6352 "class" : "@exclude",
6355 { "kind" : "IdResultType" },
6356 { "kind" : "IdResult" },
6357 { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
6358 { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" },
6359 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
6360 { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
6361 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6362 { "kind" : "IdRef", "name" : "'Payload'" }
6364 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6368 "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
6369 "class" : "@exclude",
6372 { "kind" : "IdResultType" },
6373 { "kind" : "IdResult" },
6374 { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
6375 { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
6376 { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
6377 { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
6378 { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
6379 { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
6380 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6381 { "kind" : "IdRef", "name" : "'Payload'" }
6383 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6387 "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
6388 "class" : "@exclude",
6391 { "kind" : "IdResultType" },
6392 { "kind" : "IdResult" },
6393 { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
6394 { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
6395 { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
6396 { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
6397 { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
6398 { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
6399 { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" },
6400 { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" },
6401 { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" },
6402 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
6403 { "kind" : "IdRef", "name" : "'Payload'" }
6405 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6409 "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
6410 "class" : "@exclude",
6413 { "kind" : "IdResultType" },
6414 { "kind" : "IdResult" },
6415 { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
6416 { "kind" : "IdRef", "name" : "'Direction'" }
6418 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6422 "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
6423 "class" : "@exclude",
6426 { "kind" : "IdResultType" },
6427 { "kind" : "IdResult" },
6428 { "kind" : "IdRef", "name" : "'Payload'" }
6430 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6434 "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
6435 "class" : "@exclude",
6438 { "kind" : "IdResultType" },
6439 { "kind" : "IdResult" },
6440 { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
6441 { "kind" : "IdRef", "name" : "'Payload'" }
6443 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6447 "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
6448 "class" : "@exclude",
6451 { "kind" : "IdResultType" },
6452 { "kind" : "IdResult" },
6453 { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" },
6454 { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" },
6455 { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" },
6456 { "kind" : "IdRef", "name" : "'Payload'" }
6458 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6462 "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
6463 "class" : "@exclude",
6466 { "kind" : "IdResultType" },
6467 { "kind" : "IdResult" },
6468 { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" },
6469 { "kind" : "IdRef", "name" : "'Payload'" }
6471 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6475 "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
6476 "class" : "@exclude",
6479 { "kind" : "IdResultType" },
6480 { "kind" : "IdResult" },
6481 { "kind" : "IdRef", "name" : "'Payload'" }
6483 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6487 "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
6488 "class" : "@exclude",
6491 { "kind" : "IdResultType" },
6492 { "kind" : "IdResult" },
6493 { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" },
6494 { "kind" : "IdRef", "name" : "'Payload'" }
6496 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6500 "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
6501 "class" : "@exclude",
6504 { "kind" : "IdResultType" },
6505 { "kind" : "IdResult" },
6506 { "kind" : "IdRef", "name" : "'Block Based Skip Type'" },
6507 { "kind" : "IdRef", "name" : "'Payload'" }
6509 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6513 "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
6514 "class" : "@exclude",
6517 { "kind" : "IdResultType" },
6518 { "kind" : "IdResult" },
6519 { "kind" : "IdRef", "name" : "'Src Image'" },
6520 { "kind" : "IdRef", "name" : "'Payload'" }
6522 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6526 "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
6527 "class" : "@exclude",
6530 { "kind" : "IdResultType" },
6531 { "kind" : "IdResult" },
6532 { "kind" : "IdRef", "name" : "'Src Image'" },
6533 { "kind" : "IdRef", "name" : "'Ref Image'" },
6534 { "kind" : "IdRef", "name" : "'Payload'" }
6536 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6540 "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
6541 "class" : "@exclude",
6544 { "kind" : "IdResultType" },
6545 { "kind" : "IdResult" },
6546 { "kind" : "IdRef", "name" : "'Src Image'" },
6547 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
6548 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
6549 { "kind" : "IdRef", "name" : "'Payload'" }
6551 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6555 "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
6556 "class" : "@exclude",
6559 { "kind" : "IdResultType" },
6560 { "kind" : "IdResult" },
6561 { "kind" : "IdRef", "name" : "'Src Image'" },
6562 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6563 { "kind" : "IdRef", "name" : "'Payload'" }
6565 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6569 "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
6570 "class" : "@exclude",
6573 { "kind" : "IdResultType" },
6574 { "kind" : "IdResult" },
6575 { "kind" : "IdRef", "name" : "'Src Image'" },
6576 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
6577 { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
6578 { "kind" : "IdRef", "name" : "'Payload'" }
6580 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6584 "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
6585 "class" : "@exclude",
6588 { "kind" : "IdResultType" },
6589 { "kind" : "IdResult" },
6590 { "kind" : "IdRef", "name" : "'Payload'" }
6592 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6596 "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
6597 "class" : "@exclude",
6600 { "kind" : "IdResultType" },
6601 { "kind" : "IdResult" },
6602 { "kind" : "IdRef", "name" : "'Payload'" }
6604 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6608 "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
6609 "class" : "@exclude",
6612 { "kind" : "IdResultType" },
6613 { "kind" : "IdResult" },
6614 { "kind" : "IdRef", "name" : "'Payload'" }
6616 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6620 "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
6621 "class" : "@exclude",
6624 { "kind" : "IdResultType" },
6625 { "kind" : "IdResult" },
6626 { "kind" : "IdRef", "name" : "'Payload'" }
6628 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6632 "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
6633 "class" : "@exclude",
6636 { "kind" : "IdResultType" },
6637 { "kind" : "IdResult" },
6638 { "kind" : "IdRef", "name" : "'Payload'" }
6640 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6644 "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
6645 "class" : "@exclude",
6648 { "kind" : "IdResultType" },
6649 { "kind" : "IdResult" },
6650 { "kind" : "IdRef", "name" : "'Payload'" }
6652 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
6656 "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
6657 "class" : "@exclude",
6660 { "kind" : "IdResultType" },
6661 { "kind" : "IdResult" },
6662 { "kind" : "IdRef", "name" : "'Payload'" }
6664 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6668 "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
6669 "class" : "@exclude",
6672 { "kind" : "IdResultType" },
6673 { "kind" : "IdResult" },
6674 { "kind" : "IdRef", "name" : "'Payload'" }
6676 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
6680 "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
6681 "class" : "@exclude",
6684 { "kind" : "IdResultType" },
6685 { "kind" : "IdResult" },
6686 { "kind" : "IdRef", "name" : "'Payload'" }
6688 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
6692 "opname" : "OpLoopControlINTEL",
6693 "class" : "Reserved",
6696 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Loop Control Parameters'" }
6698 "capabilities" : [ "UnstructuredLoopControlsINTEL" ],
6699 "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
6703 "opname" : "OpReadPipeBlockingINTEL",
6707 { "kind" : "IdResultType" },
6708 { "kind" : "IdResult" },
6709 { "kind" : "IdRef", "name" : "'Packet Size'" },
6710 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
6712 "capabilities" : [ "BlockingPipesINTEL" ],
6713 "extensions" : [ "SPV_INTEL_blocking_pipes" ],
6717 "opname" : "OpWritePipeBlockingINTEL",
6721 { "kind" : "IdResultType" },
6722 { "kind" : "IdResult" },
6723 { "kind" : "IdRef", "name" : "'Packet Size'" },
6724 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
6726 "capabilities" : [ "BlockingPipesINTEL" ],
6727 "extensions" : [ "SPV_INTEL_blocking_pipes" ],
6731 "opname" : "OpFPGARegINTEL",
6732 "class" : "Reserved",
6735 { "kind" : "IdResultType" },
6736 { "kind" : "IdResult" },
6737 { "kind" : "IdRef", "name" : "'Result'" },
6738 { "kind" : "IdRef", "name" : "'Input'" }
6740 "capabilities" : [ "FPGARegINTEL" ],
6741 "extensions" : [ "SPV_INTEL_fpga_reg" ],
6745 "opname" : "OpRayQueryGetRayTMinKHR",
6746 "class" : "Reserved",
6749 { "kind" : "IdResultType" },
6750 { "kind" : "IdResult" },
6753 "name" : "'RayQuery'"
6756 "capabilities" : [ "RayQueryProvisionalKHR" ],
6757 "extensions" : [ "SPV_KHR_ray_query" ],
6761 "opname" : "OpRayQueryGetRayFlagsKHR",
6762 "class" : "Reserved",
6765 { "kind" : "IdResultType" },
6766 { "kind" : "IdResult" },
6769 "name" : "'RayQuery'"
6772 "capabilities" : [ "RayQueryProvisionalKHR" ],
6773 "extensions" : [ "SPV_KHR_ray_query" ],
6777 "opname" : "OpRayQueryGetIntersectionTKHR",
6778 "class" : "Reserved",
6781 { "kind" : "IdResultType" },
6782 { "kind" : "IdResult" },
6785 "name" : "'RayQuery'"
6789 "name" : "'Intersection'"
6792 "capabilities" : [ "RayQueryProvisionalKHR" ],
6793 "extensions" : [ "SPV_KHR_ray_query" ],
6797 "opname" : "OpRayQueryGetIntersectionInstanceCustomIndexKHR",
6798 "class" : "Reserved",
6801 { "kind" : "IdResultType" },
6802 { "kind" : "IdResult" },
6805 "name" : "'RayQuery'"
6809 "name" : "'Intersection'"
6812 "capabilities" : [ "RayQueryProvisionalKHR" ],
6813 "extensions" : [ "SPV_KHR_ray_query" ],
6817 "opname" : "OpRayQueryGetIntersectionInstanceIdKHR",
6818 "class" : "Reserved",
6821 { "kind" : "IdResultType" },
6822 { "kind" : "IdResult" },
6825 "name" : "'RayQuery'"
6829 "name" : "'Intersection'"
6832 "capabilities" : [ "RayQueryProvisionalKHR" ],
6833 "extensions" : [ "SPV_KHR_ray_query" ],
6837 "opname" : "OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR",
6838 "class" : "Reserved",
6841 { "kind" : "IdResultType" },
6842 { "kind" : "IdResult" },
6845 "name" : "'RayQuery'"
6849 "name" : "'Intersection'"
6852 "capabilities" : [ "RayQueryProvisionalKHR" ],
6853 "extensions" : [ "SPV_KHR_ray_query" ],
6857 "opname" : "OpRayQueryGetIntersectionGeometryIndexKHR",
6858 "class" : "Reserved",
6861 { "kind" : "IdResultType" },
6862 { "kind" : "IdResult" },
6865 "name" : "'RayQuery'"
6869 "name" : "'Intersection'"
6872 "capabilities" : [ "RayQueryProvisionalKHR" ],
6873 "extensions" : [ "SPV_KHR_ray_query" ],
6877 "opname" : "OpRayQueryGetIntersectionPrimitiveIndexKHR",
6878 "class" : "Reserved",
6881 { "kind" : "IdResultType" },
6882 { "kind" : "IdResult" },
6885 "name" : "'RayQuery'"
6889 "name" : "'Intersection'"
6892 "capabilities" : [ "RayQueryProvisionalKHR" ],
6893 "extensions" : [ "SPV_KHR_ray_query" ],
6897 "opname" : "OpRayQueryGetIntersectionBarycentricsKHR",
6898 "class" : "Reserved",
6901 { "kind" : "IdResultType" },
6902 { "kind" : "IdResult" },
6905 "name" : "'RayQuery'"
6909 "name" : "'Intersection'"
6912 "capabilities" : [ "RayQueryProvisionalKHR" ],
6913 "extensions" : [ "SPV_KHR_ray_query" ],
6917 "opname" : "OpRayQueryGetIntersectionFrontFaceKHR",
6918 "class" : "Reserved",
6921 { "kind" : "IdResultType" },
6922 { "kind" : "IdResult" },
6925 "name" : "'RayQuery'"
6929 "name" : "'Intersection'"
6932 "capabilities" : [ "RayQueryProvisionalKHR" ],
6933 "extensions" : [ "SPV_KHR_ray_query" ],
6937 "opname" : "OpRayQueryGetIntersectionCandidateAABBOpaqueKHR",
6938 "class" : "Reserved",
6941 { "kind" : "IdResultType" },
6942 { "kind" : "IdResult" },
6945 "name" : "'RayQuery'"
6948 "capabilities" : [ "RayQueryProvisionalKHR" ],
6949 "extensions" : [ "SPV_KHR_ray_query" ],
6953 "opname" : "OpRayQueryGetIntersectionObjectRayDirectionKHR",
6954 "class" : "Reserved",
6957 { "kind" : "IdResultType" },
6958 { "kind" : "IdResult" },
6961 "name" : "'RayQuery'"
6965 "name" : "'Intersection'"
6968 "capabilities" : [ "RayQueryProvisionalKHR" ],
6969 "extensions" : [ "SPV_KHR_ray_query" ],
6973 "opname" : "OpRayQueryGetIntersectionObjectRayOriginKHR",
6974 "class" : "Reserved",
6977 { "kind" : "IdResultType" },
6978 { "kind" : "IdResult" },
6981 "name" : "'RayQuery'"
6985 "name" : "'Intersection'"
6988 "capabilities" : [ "RayQueryProvisionalKHR" ],
6989 "extensions" : [ "SPV_KHR_ray_query" ],
6993 "opname" : "OpRayQueryGetWorldRayDirectionKHR",
6994 "class" : "Reserved",
6997 { "kind" : "IdResultType" },
6998 { "kind" : "IdResult" },
7001 "name" : "'RayQuery'"
7004 "capabilities" : [ "RayQueryProvisionalKHR" ],
7005 "extensions" : [ "SPV_KHR_ray_query" ],
7009 "opname" : "OpRayQueryGetWorldRayOriginKHR",
7010 "class" : "Reserved",
7013 { "kind" : "IdResultType" },
7014 { "kind" : "IdResult" },
7017 "name" : "'RayQuery'"
7020 "capabilities" : [ "RayQueryProvisionalKHR" ],
7021 "extensions" : [ "SPV_KHR_ray_query" ],
7025 "opname" : "OpRayQueryGetIntersectionObjectToWorldKHR",
7026 "class" : "Reserved",
7029 { "kind" : "IdResultType" },
7030 { "kind" : "IdResult" },
7033 "name" : "'RayQuery'"
7037 "name" : "'Intersection'"
7040 "capabilities" : [ "RayQueryProvisionalKHR" ],
7041 "extensions" : [ "SPV_KHR_ray_query" ],
7045 "opname" : "OpRayQueryGetIntersectionWorldToObjectKHR",
7046 "class" : "Reserved",
7049 { "kind" : "IdResultType" },
7050 { "kind" : "IdResult" },
7053 "name" : "'RayQuery'"
7057 "name" : "'Intersection'"
7060 "capabilities" : [ "RayQueryProvisionalKHR" ],
7061 "extensions" : [ "SPV_KHR_ray_query" ],
7065 "opname" : "OpAtomicFAddEXT",
7069 { "kind" : "IdResultType" },
7070 { "kind" : "IdResult" },
7071 { "kind" : "IdRef", "name" : "'Pointer'" },
7072 { "kind" : "IdScope", "name" : "'Memory'" },
7073 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
7074 { "kind" : "IdRef", "name" : "'Value'" }
7076 "capabilities" : [ "AtomicFloat32AddEXT", "AtomicFloat64AddEXT" ],
7077 "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
7083 "category" : "BitEnum",
7084 "kind" : "ImageOperands",
7087 "enumerant" : "None",
7091 "enumerant" : "Bias",
7093 "capabilities" : [ "Shader" ],
7095 { "kind" : "IdRef" }
7099 "enumerant" : "Lod",
7102 { "kind" : "IdRef" }
7106 "enumerant" : "Grad",
7109 { "kind" : "IdRef" },
7110 { "kind" : "IdRef" }
7114 "enumerant" : "ConstOffset",
7117 { "kind" : "IdRef" }
7121 "enumerant" : "Offset",
7123 "capabilities" : [ "ImageGatherExtended" ],
7125 { "kind" : "IdRef" }
7129 "enumerant" : "ConstOffsets",
7131 "capabilities" : [ "ImageGatherExtended" ],
7133 { "kind" : "IdRef" }
7137 "enumerant" : "Sample",
7140 { "kind" : "IdRef" }
7144 "enumerant" : "MinLod",
7146 "capabilities" : [ "MinLod" ],
7148 { "kind" : "IdRef" }
7152 "enumerant" : "MakeTexelAvailable",
7154 "capabilities" : [ "VulkanMemoryModel" ],
7156 { "kind" : "IdScope" }
7161 "enumerant" : "MakeTexelAvailableKHR",
7163 "capabilities" : [ "VulkanMemoryModel" ],
7165 { "kind" : "IdScope" }
7167 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7171 "enumerant" : "MakeTexelVisible",
7173 "capabilities" : [ "VulkanMemoryModel" ],
7175 { "kind" : "IdScope" }
7180 "enumerant" : "MakeTexelVisibleKHR",
7182 "capabilities" : [ "VulkanMemoryModel" ],
7184 { "kind" : "IdScope" }
7186 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7190 "enumerant" : "NonPrivateTexel",
7192 "capabilities" : [ "VulkanMemoryModel" ],
7196 "enumerant" : "NonPrivateTexelKHR",
7198 "capabilities" : [ "VulkanMemoryModel" ],
7199 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7203 "enumerant" : "VolatileTexel",
7205 "capabilities" : [ "VulkanMemoryModel" ],
7209 "enumerant" : "VolatileTexelKHR",
7211 "capabilities" : [ "VulkanMemoryModel" ],
7212 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7216 "enumerant" : "SignExtend",
7221 "enumerant" : "ZeroExtend",
7228 "category" : "BitEnum",
7229 "kind" : "FPFastMathMode",
7232 "enumerant" : "None",
7236 "enumerant" : "NotNaN",
7238 "capabilities" : [ "Kernel" ]
7241 "enumerant" : "NotInf",
7243 "capabilities" : [ "Kernel" ]
7246 "enumerant" : "NSZ",
7248 "capabilities" : [ "Kernel" ]
7251 "enumerant" : "AllowRecip",
7253 "capabilities" : [ "Kernel" ]
7256 "enumerant" : "Fast",
7258 "capabilities" : [ "Kernel" ]
7263 "category" : "BitEnum",
7264 "kind" : "SelectionControl",
7267 "enumerant" : "None",
7271 "enumerant" : "Flatten",
7275 "enumerant" : "DontFlatten",
7281 "category" : "BitEnum",
7282 "kind" : "LoopControl",
7285 "enumerant" : "None",
7289 "enumerant" : "Unroll",
7293 "enumerant" : "DontUnroll",
7297 "enumerant" : "DependencyInfinite",
7302 "enumerant" : "DependencyLength",
7305 { "kind" : "LiteralInteger" }
7310 "enumerant" : "MinIterations",
7313 { "kind" : "LiteralInteger" }
7318 "enumerant" : "MaxIterations",
7321 { "kind" : "LiteralInteger" }
7326 "enumerant" : "IterationMultiple",
7329 { "kind" : "LiteralInteger" }
7334 "enumerant" : "PeelCount",
7337 { "kind" : "LiteralInteger" }
7342 "enumerant" : "PartialCount",
7345 { "kind" : "LiteralInteger" }
7350 "enumerant" : "InitiationIntervalINTEL",
7351 "value" : "0x10000",
7353 { "kind" : "LiteralInteger" }
7355 "capabilities" : [ "FPGALoopControlsINTEL" ],
7356 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7360 "enumerant" : "MaxConcurrencyINTEL",
7361 "value" : "0x20000",
7363 { "kind" : "LiteralInteger" }
7365 "capabilities" : [ "FPGALoopControlsINTEL" ],
7366 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7370 "enumerant" : "DependencyArrayINTEL",
7371 "value" : "0x40000",
7373 { "kind" : "LiteralInteger" }
7375 "capabilities" : [ "FPGALoopControlsINTEL" ],
7376 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7380 "enumerant" : "PipelineEnableINTEL",
7381 "value" : "0x80000",
7383 { "kind" : "LiteralInteger" }
7385 "capabilities" : [ "FPGALoopControlsINTEL" ],
7386 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7390 "enumerant" : "LoopCoalesceINTEL",
7391 "value" : "0x100000",
7393 { "kind" : "LiteralInteger" }
7395 "capabilities" : [ "FPGALoopControlsINTEL" ],
7396 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7400 "enumerant" : "MaxInterleavingINTEL",
7401 "value" : "0x200000",
7403 { "kind" : "LiteralInteger" }
7405 "capabilities" : [ "FPGALoopControlsINTEL" ],
7406 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7410 "enumerant" : "SpeculatedIterationsINTEL",
7411 "value" : "0x400000",
7413 { "kind" : "LiteralInteger" }
7415 "capabilities" : [ "FPGALoopControlsINTEL" ],
7416 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
7422 "category" : "BitEnum",
7423 "kind" : "FunctionControl",
7426 "enumerant" : "None",
7430 "enumerant" : "Inline",
7434 "enumerant" : "DontInline",
7438 "enumerant" : "Pure",
7442 "enumerant" : "Const",
7448 "category" : "BitEnum",
7449 "kind" : "MemorySemantics",
7452 "enumerant" : "Relaxed",
7456 "enumerant" : "None",
7460 "enumerant" : "Acquire",
7464 "enumerant" : "Release",
7468 "enumerant" : "AcquireRelease",
7472 "enumerant" : "SequentiallyConsistent",
7476 "enumerant" : "UniformMemory",
7478 "capabilities" : [ "Shader" ]
7481 "enumerant" : "SubgroupMemory",
7485 "enumerant" : "WorkgroupMemory",
7489 "enumerant" : "CrossWorkgroupMemory",
7493 "enumerant" : "AtomicCounterMemory",
7495 "capabilities" : [ "AtomicStorage" ]
7498 "enumerant" : "ImageMemory",
7502 "enumerant" : "OutputMemory",
7504 "capabilities" : [ "VulkanMemoryModel" ],
7508 "enumerant" : "OutputMemoryKHR",
7510 "capabilities" : [ "VulkanMemoryModel" ],
7511 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7515 "enumerant" : "MakeAvailable",
7517 "capabilities" : [ "VulkanMemoryModel" ],
7521 "enumerant" : "MakeAvailableKHR",
7523 "capabilities" : [ "VulkanMemoryModel" ],
7524 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7528 "enumerant" : "MakeVisible",
7530 "capabilities" : [ "VulkanMemoryModel" ],
7534 "enumerant" : "MakeVisibleKHR",
7536 "capabilities" : [ "VulkanMemoryModel" ],
7537 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7541 "enumerant" : "Volatile",
7543 "capabilities" : [ "VulkanMemoryModel" ],
7544 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7550 "category" : "BitEnum",
7551 "kind" : "MemoryAccess",
7554 "enumerant" : "None",
7558 "enumerant" : "Volatile",
7562 "enumerant" : "Aligned",
7565 { "kind" : "LiteralInteger" }
7569 "enumerant" : "Nontemporal",
7573 "enumerant" : "MakePointerAvailable",
7576 { "kind" : "IdScope" }
7578 "capabilities" : [ "VulkanMemoryModel" ],
7582 "enumerant" : "MakePointerAvailableKHR",
7585 { "kind" : "IdScope" }
7587 "capabilities" : [ "VulkanMemoryModel" ],
7588 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7592 "enumerant" : "MakePointerVisible",
7595 { "kind" : "IdScope" }
7597 "capabilities" : [ "VulkanMemoryModel" ],
7601 "enumerant" : "MakePointerVisibleKHR",
7604 { "kind" : "IdScope" }
7606 "capabilities" : [ "VulkanMemoryModel" ],
7607 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7611 "enumerant" : "NonPrivatePointer",
7613 "capabilities" : [ "VulkanMemoryModel" ],
7617 "enumerant" : "NonPrivatePointerKHR",
7619 "capabilities" : [ "VulkanMemoryModel" ],
7620 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7626 "category" : "BitEnum",
7627 "kind" : "KernelProfilingInfo",
7630 "enumerant" : "None",
7634 "enumerant" : "CmdExecTime",
7636 "capabilities" : [ "Kernel" ]
7641 "category" : "BitEnum",
7642 "kind" : "RayFlags",
7645 "enumerant" : "NoneKHR",
7647 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7651 "enumerant" : "OpaqueKHR",
7653 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7657 "enumerant" : "NoOpaqueKHR",
7659 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7663 "enumerant" : "TerminateOnFirstHitKHR",
7665 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7669 "enumerant" : "SkipClosestHitShaderKHR",
7671 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7675 "enumerant" : "CullBackFacingTrianglesKHR",
7677 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7681 "enumerant" : "CullFrontFacingTrianglesKHR",
7683 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7687 "enumerant" : "CullOpaqueKHR",
7689 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7693 "enumerant" : "CullNoOpaqueKHR",
7695 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
7699 "enumerant" : "SkipTrianglesKHR",
7701 "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ],
7705 "enumerant" : "SkipAABBsKHR",
7707 "capabilities" : [ "RayTraversalPrimitiveCullingProvisionalKHR" ],
7713 "category" : "ValueEnum",
7714 "kind" : "SourceLanguage",
7717 "enumerant" : "Unknown",
7721 "enumerant" : "ESSL",
7725 "enumerant" : "GLSL",
7729 "enumerant" : "OpenCL_C",
7733 "enumerant" : "OpenCL_CPP",
7737 "enumerant" : "HLSL",
7743 "category" : "ValueEnum",
7744 "kind" : "ExecutionModel",
7747 "enumerant" : "Vertex",
7749 "capabilities" : [ "Shader" ]
7752 "enumerant" : "TessellationControl",
7754 "capabilities" : [ "Tessellation" ]
7757 "enumerant" : "TessellationEvaluation",
7759 "capabilities" : [ "Tessellation" ]
7762 "enumerant" : "Geometry",
7764 "capabilities" : [ "Geometry" ]
7767 "enumerant" : "Fragment",
7769 "capabilities" : [ "Shader" ]
7772 "enumerant" : "GLCompute",
7774 "capabilities" : [ "Shader" ]
7777 "enumerant" : "Kernel",
7779 "capabilities" : [ "Kernel" ]
7782 "enumerant" : "TaskNV",
7784 "capabilities" : [ "MeshShadingNV" ],
7788 "enumerant" : "MeshNV",
7790 "capabilities" : [ "MeshShadingNV" ],
7794 "enumerant" : "RayGenerationNV",
7796 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7800 "enumerant" : "RayGenerationKHR",
7802 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7806 "enumerant" : "IntersectionNV",
7808 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7812 "enumerant" : "IntersectionKHR",
7814 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7818 "enumerant" : "AnyHitNV",
7820 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7824 "enumerant" : "AnyHitKHR",
7826 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7830 "enumerant" : "ClosestHitNV",
7832 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7836 "enumerant" : "ClosestHitKHR",
7838 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7842 "enumerant" : "MissNV",
7844 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7848 "enumerant" : "MissKHR",
7850 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7854 "enumerant" : "CallableNV",
7856 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7860 "enumerant" : "CallableKHR",
7862 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
7868 "category" : "ValueEnum",
7869 "kind" : "AddressingModel",
7872 "enumerant" : "Logical",
7876 "enumerant" : "Physical32",
7878 "capabilities" : [ "Addresses" ]
7881 "enumerant" : "Physical64",
7883 "capabilities" : [ "Addresses" ]
7886 "enumerant" : "PhysicalStorageBuffer64",
7888 "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
7889 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
7893 "enumerant" : "PhysicalStorageBuffer64EXT",
7895 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
7896 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
7902 "category" : "ValueEnum",
7903 "kind" : "MemoryModel",
7906 "enumerant" : "Simple",
7908 "capabilities" : [ "Shader" ]
7911 "enumerant" : "GLSL450",
7913 "capabilities" : [ "Shader" ]
7916 "enumerant" : "OpenCL",
7918 "capabilities" : [ "Kernel" ]
7921 "enumerant" : "Vulkan",
7923 "capabilities" : [ "VulkanMemoryModel" ],
7927 "enumerant" : "VulkanKHR",
7929 "capabilities" : [ "VulkanMemoryModel" ],
7930 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
7936 "category" : "ValueEnum",
7937 "kind" : "ExecutionMode",
7940 "enumerant" : "Invocations",
7942 "capabilities" : [ "Geometry" ],
7944 { "kind" : "LiteralInteger", "name" : "'Number of <<Invocation,invocations>>'" }
7948 "enumerant" : "SpacingEqual",
7950 "capabilities" : [ "Tessellation" ]
7953 "enumerant" : "SpacingFractionalEven",
7955 "capabilities" : [ "Tessellation" ]
7958 "enumerant" : "SpacingFractionalOdd",
7960 "capabilities" : [ "Tessellation" ]
7963 "enumerant" : "VertexOrderCw",
7965 "capabilities" : [ "Tessellation" ]
7968 "enumerant" : "VertexOrderCcw",
7970 "capabilities" : [ "Tessellation" ]
7973 "enumerant" : "PixelCenterInteger",
7975 "capabilities" : [ "Shader" ]
7978 "enumerant" : "OriginUpperLeft",
7980 "capabilities" : [ "Shader" ]
7983 "enumerant" : "OriginLowerLeft",
7985 "capabilities" : [ "Shader" ]
7988 "enumerant" : "EarlyFragmentTests",
7990 "capabilities" : [ "Shader" ]
7993 "enumerant" : "PointMode",
7995 "capabilities" : [ "Tessellation" ]
7998 "enumerant" : "Xfb",
8000 "capabilities" : [ "TransformFeedback" ]
8003 "enumerant" : "DepthReplacing",
8005 "capabilities" : [ "Shader" ]
8008 "enumerant" : "DepthGreater",
8010 "capabilities" : [ "Shader" ]
8013 "enumerant" : "DepthLess",
8015 "capabilities" : [ "Shader" ]
8018 "enumerant" : "DepthUnchanged",
8020 "capabilities" : [ "Shader" ]
8023 "enumerant" : "LocalSize",
8026 { "kind" : "LiteralInteger", "name" : "'x size'" },
8027 { "kind" : "LiteralInteger", "name" : "'y size'" },
8028 { "kind" : "LiteralInteger", "name" : "'z size'" }
8032 "enumerant" : "LocalSizeHint",
8034 "capabilities" : [ "Kernel" ],
8036 { "kind" : "LiteralInteger", "name" : "'x size'" },
8037 { "kind" : "LiteralInteger", "name" : "'y size'" },
8038 { "kind" : "LiteralInteger", "name" : "'z size'" }
8042 "enumerant" : "InputPoints",
8044 "capabilities" : [ "Geometry" ]
8047 "enumerant" : "InputLines",
8049 "capabilities" : [ "Geometry" ]
8052 "enumerant" : "InputLinesAdjacency",
8054 "capabilities" : [ "Geometry" ]
8057 "enumerant" : "Triangles",
8059 "capabilities" : [ "Geometry", "Tessellation" ]
8062 "enumerant" : "InputTrianglesAdjacency",
8064 "capabilities" : [ "Geometry" ]
8067 "enumerant" : "Quads",
8069 "capabilities" : [ "Tessellation" ]
8072 "enumerant" : "Isolines",
8074 "capabilities" : [ "Tessellation" ]
8077 "enumerant" : "OutputVertices",
8079 "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV" ],
8081 { "kind" : "LiteralInteger", "name" : "'Vertex count'" }
8085 "enumerant" : "OutputPoints",
8087 "capabilities" : [ "Geometry", "MeshShadingNV" ]
8090 "enumerant" : "OutputLineStrip",
8092 "capabilities" : [ "Geometry" ]
8095 "enumerant" : "OutputTriangleStrip",
8097 "capabilities" : [ "Geometry" ]
8100 "enumerant" : "VecTypeHint",
8102 "capabilities" : [ "Kernel" ],
8104 { "kind" : "LiteralInteger", "name" : "'Vector type'" }
8108 "enumerant" : "ContractionOff",
8110 "capabilities" : [ "Kernel" ]
8113 "enumerant" : "Initializer",
8115 "capabilities" : [ "Kernel" ],
8119 "enumerant" : "Finalizer",
8121 "capabilities" : [ "Kernel" ],
8125 "enumerant" : "SubgroupSize",
8127 "capabilities" : [ "SubgroupDispatch" ],
8129 { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
8134 "enumerant" : "SubgroupsPerWorkgroup",
8136 "capabilities" : [ "SubgroupDispatch" ],
8138 { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
8143 "enumerant" : "SubgroupsPerWorkgroupId",
8145 "capabilities" : [ "SubgroupDispatch" ],
8147 { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
8152 "enumerant" : "LocalSizeId",
8155 { "kind" : "IdRef", "name" : "'x size'" },
8156 { "kind" : "IdRef", "name" : "'y size'" },
8157 { "kind" : "IdRef", "name" : "'z size'" }
8162 "enumerant" : "LocalSizeHintId",
8164 "capabilities" : [ "Kernel" ],
8166 { "kind" : "IdRef", "name" : "'Local Size Hint'" }
8171 "enumerant" : "PostDepthCoverage",
8173 "capabilities" : [ "SampleMaskPostDepthCoverage" ],
8174 "extensions" : [ "SPV_KHR_post_depth_coverage" ],
8178 "enumerant" : "DenormPreserve",
8180 "capabilities" : [ "DenormPreserve" ],
8181 "extensions" : [ "SPV_KHR_float_controls" ],
8183 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
8188 "enumerant" : "DenormFlushToZero",
8190 "capabilities" : [ "DenormFlushToZero" ],
8191 "extensions" : [ "SPV_KHR_float_controls" ],
8193 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
8198 "enumerant" : "SignedZeroInfNanPreserve",
8200 "capabilities" : [ "SignedZeroInfNanPreserve" ],
8201 "extensions" : [ "SPV_KHR_float_controls" ],
8203 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
8208 "enumerant" : "RoundingModeRTE",
8210 "capabilities" : [ "RoundingModeRTE" ],
8211 "extensions" : [ "SPV_KHR_float_controls" ],
8213 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
8218 "enumerant" : "RoundingModeRTZ",
8220 "capabilities" : [ "RoundingModeRTZ" ],
8221 "extensions" : [ "SPV_KHR_float_controls" ],
8223 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
8228 "enumerant" : "StencilRefReplacingEXT",
8230 "capabilities" : [ "StencilExportEXT" ],
8231 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
8235 "enumerant" : "OutputLinesNV",
8237 "capabilities" : [ "MeshShadingNV" ],
8238 "extensions" : [ "SPV_NV_mesh_shader" ],
8242 "enumerant" : "OutputPrimitivesNV",
8244 "capabilities" : [ "MeshShadingNV" ],
8246 { "kind" : "LiteralInteger", "name" : "'Primitive count'" }
8248 "extensions" : [ "SPV_NV_mesh_shader" ],
8252 "enumerant" : "DerivativeGroupQuadsNV",
8254 "capabilities" : [ "ComputeDerivativeGroupQuadsNV" ],
8255 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
8259 "enumerant" : "DerivativeGroupLinearNV",
8261 "capabilities" : [ "ComputeDerivativeGroupLinearNV" ],
8262 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
8266 "enumerant" : "OutputTrianglesNV",
8268 "capabilities" : [ "MeshShadingNV" ],
8269 "extensions" : [ "SPV_NV_mesh_shader" ],
8273 "enumerant" : "PixelInterlockOrderedEXT",
8275 "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
8276 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
8280 "enumerant" : "PixelInterlockUnorderedEXT",
8282 "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
8283 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
8287 "enumerant" : "SampleInterlockOrderedEXT",
8289 "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
8290 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
8294 "enumerant" : "SampleInterlockUnorderedEXT",
8296 "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
8297 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
8301 "enumerant" : "ShadingRateInterlockOrderedEXT",
8303 "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
8304 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
8308 "enumerant" : "ShadingRateInterlockUnorderedEXT",
8310 "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
8311 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
8315 "enumerant" : "MaxWorkgroupSizeINTEL",
8318 { "kind" : "LiteralInteger", "name" : "'max_x_size'" },
8319 { "kind" : "LiteralInteger", "name" : "'max_y_size'" },
8320 { "kind" : "LiteralInteger", "name" : "'max_z_size'" }
8322 "capabilities" : [ "KernelAttributesINTEL" ],
8323 "extensions" : [ "SPV_INTEL_kernel_attributes" ],
8327 "enumerant" : "MaxWorkDimINTEL",
8330 { "kind" : "LiteralInteger", "name" : "'max_dimensions'" }
8332 "capabilities" : [ "KernelAttributesINTEL" ],
8333 "extensions" : [ "SPV_INTEL_kernel_attributes" ],
8337 "enumerant" : "NoGlobalOffsetINTEL",
8339 "capabilities" : [ "KernelAttributesINTEL" ],
8340 "extensions" : [ "SPV_INTEL_kernel_attributes" ],
8344 "enumerant" : "NumSIMDWorkitemsINTEL",
8347 { "kind" : "LiteralInteger", "name" : "'vector_width'" }
8349 "capabilities" : [ "FPGAKernelAttributesINTEL" ],
8350 "extensions" : [ "SPV_INTEL_kernel_attributes" ],
8356 "category" : "ValueEnum",
8357 "kind" : "StorageClass",
8360 "enumerant" : "UniformConstant",
8364 "enumerant" : "Input",
8368 "enumerant" : "Uniform",
8370 "capabilities" : [ "Shader" ]
8373 "enumerant" : "Output",
8375 "capabilities" : [ "Shader" ]
8378 "enumerant" : "Workgroup",
8382 "enumerant" : "CrossWorkgroup",
8386 "enumerant" : "Private",
8388 "capabilities" : [ "Shader" ]
8391 "enumerant" : "Function",
8395 "enumerant" : "Generic",
8397 "capabilities" : [ "GenericPointer" ]
8400 "enumerant" : "PushConstant",
8402 "capabilities" : [ "Shader" ]
8405 "enumerant" : "AtomicCounter",
8407 "capabilities" : [ "AtomicStorage" ]
8410 "enumerant" : "Image",
8414 "enumerant" : "StorageBuffer",
8417 "SPV_KHR_storage_buffer_storage_class",
8418 "SPV_KHR_variable_pointers"
8420 "capabilities" : [ "Shader" ],
8424 "enumerant" : "CallableDataNV",
8426 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8427 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8431 "enumerant" : "CallableDataKHR",
8433 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8434 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8438 "enumerant" : "IncomingCallableDataNV",
8440 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8441 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8445 "enumerant" : "IncomingCallableDataKHR",
8447 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8448 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8452 "enumerant" : "RayPayloadNV",
8454 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8455 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8459 "enumerant" : "RayPayloadKHR",
8461 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8462 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8466 "enumerant" : "HitAttributeNV",
8468 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8469 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8473 "enumerant" : "HitAttributeKHR",
8475 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8476 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8480 "enumerant" : "IncomingRayPayloadNV",
8482 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8483 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8487 "enumerant" : "IncomingRayPayloadKHR",
8489 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8490 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8494 "enumerant" : "ShaderRecordBufferNV",
8496 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8497 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8501 "enumerant" : "ShaderRecordBufferKHR",
8503 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
8504 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
8508 "enumerant" : "PhysicalStorageBuffer",
8510 "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
8511 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
8515 "enumerant" : "PhysicalStorageBufferEXT",
8517 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
8518 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
8522 "enumerant" : "CodeSectionINTEL",
8524 "extensions" : [ "SPV_INTEL_function_pointers" ],
8525 "capabilities" : [ "FunctionPointersINTEL" ],
8531 "category" : "ValueEnum",
8537 "capabilities" : [ "Sampled1D", "Image1D" ]
8542 "capabilities" : [ "Shader", "Kernel", "ImageMSArray" ]
8549 "enumerant" : "Cube",
8551 "capabilities" : [ "Shader", "ImageCubeArray" ]
8554 "enumerant" : "Rect",
8556 "capabilities" : [ "SampledRect", "ImageRect" ]
8559 "enumerant" : "Buffer",
8561 "capabilities" : [ "SampledBuffer", "ImageBuffer" ]
8564 "enumerant" : "SubpassData",
8566 "capabilities" : [ "InputAttachment" ]
8571 "category" : "ValueEnum",
8572 "kind" : "SamplerAddressingMode",
8575 "enumerant" : "None",
8577 "capabilities" : [ "Kernel" ]
8580 "enumerant" : "ClampToEdge",
8582 "capabilities" : [ "Kernel" ]
8585 "enumerant" : "Clamp",
8587 "capabilities" : [ "Kernel" ]
8590 "enumerant" : "Repeat",
8592 "capabilities" : [ "Kernel" ]
8595 "enumerant" : "RepeatMirrored",
8597 "capabilities" : [ "Kernel" ]
8602 "category" : "ValueEnum",
8603 "kind" : "SamplerFilterMode",
8606 "enumerant" : "Nearest",
8608 "capabilities" : [ "Kernel" ]
8611 "enumerant" : "Linear",
8613 "capabilities" : [ "Kernel" ]
8618 "category" : "ValueEnum",
8619 "kind" : "ImageFormat",
8622 "enumerant" : "Unknown",
8626 "enumerant" : "Rgba32f",
8628 "capabilities" : [ "Shader" ]
8631 "enumerant" : "Rgba16f",
8633 "capabilities" : [ "Shader" ]
8636 "enumerant" : "R32f",
8638 "capabilities" : [ "Shader" ]
8641 "enumerant" : "Rgba8",
8643 "capabilities" : [ "Shader" ]
8646 "enumerant" : "Rgba8Snorm",
8648 "capabilities" : [ "Shader" ]
8651 "enumerant" : "Rg32f",
8653 "capabilities" : [ "StorageImageExtendedFormats" ]
8656 "enumerant" : "Rg16f",
8658 "capabilities" : [ "StorageImageExtendedFormats" ]
8661 "enumerant" : "R11fG11fB10f",
8663 "capabilities" : [ "StorageImageExtendedFormats" ]
8666 "enumerant" : "R16f",
8668 "capabilities" : [ "StorageImageExtendedFormats" ]
8671 "enumerant" : "Rgba16",
8673 "capabilities" : [ "StorageImageExtendedFormats" ]
8676 "enumerant" : "Rgb10A2",
8678 "capabilities" : [ "StorageImageExtendedFormats" ]
8681 "enumerant" : "Rg16",
8683 "capabilities" : [ "StorageImageExtendedFormats" ]
8686 "enumerant" : "Rg8",
8688 "capabilities" : [ "StorageImageExtendedFormats" ]
8691 "enumerant" : "R16",
8693 "capabilities" : [ "StorageImageExtendedFormats" ]
8698 "capabilities" : [ "StorageImageExtendedFormats" ]
8701 "enumerant" : "Rgba16Snorm",
8703 "capabilities" : [ "StorageImageExtendedFormats" ]
8706 "enumerant" : "Rg16Snorm",
8708 "capabilities" : [ "StorageImageExtendedFormats" ]
8711 "enumerant" : "Rg8Snorm",
8713 "capabilities" : [ "StorageImageExtendedFormats" ]
8716 "enumerant" : "R16Snorm",
8718 "capabilities" : [ "StorageImageExtendedFormats" ]
8721 "enumerant" : "R8Snorm",
8723 "capabilities" : [ "StorageImageExtendedFormats" ]
8726 "enumerant" : "Rgba32i",
8728 "capabilities" : [ "Shader" ]
8731 "enumerant" : "Rgba16i",
8733 "capabilities" : [ "Shader" ]
8736 "enumerant" : "Rgba8i",
8738 "capabilities" : [ "Shader" ]
8741 "enumerant" : "R32i",
8743 "capabilities" : [ "Shader" ]
8746 "enumerant" : "Rg32i",
8748 "capabilities" : [ "StorageImageExtendedFormats" ]
8751 "enumerant" : "Rg16i",
8753 "capabilities" : [ "StorageImageExtendedFormats" ]
8756 "enumerant" : "Rg8i",
8758 "capabilities" : [ "StorageImageExtendedFormats" ]
8761 "enumerant" : "R16i",
8763 "capabilities" : [ "StorageImageExtendedFormats" ]
8766 "enumerant" : "R8i",
8768 "capabilities" : [ "StorageImageExtendedFormats" ]
8771 "enumerant" : "Rgba32ui",
8773 "capabilities" : [ "Shader" ]
8776 "enumerant" : "Rgba16ui",
8778 "capabilities" : [ "Shader" ]
8781 "enumerant" : "Rgba8ui",
8783 "capabilities" : [ "Shader" ]
8786 "enumerant" : "R32ui",
8788 "capabilities" : [ "Shader" ]
8791 "enumerant" : "Rgb10a2ui",
8793 "capabilities" : [ "StorageImageExtendedFormats" ]
8796 "enumerant" : "Rg32ui",
8798 "capabilities" : [ "StorageImageExtendedFormats" ]
8801 "enumerant" : "Rg16ui",
8803 "capabilities" : [ "StorageImageExtendedFormats" ]
8806 "enumerant" : "Rg8ui",
8808 "capabilities" : [ "StorageImageExtendedFormats" ]
8811 "enumerant" : "R16ui",
8813 "capabilities" : [ "StorageImageExtendedFormats" ]
8816 "enumerant" : "R8ui",
8818 "capabilities" : [ "StorageImageExtendedFormats" ]
8823 "category" : "ValueEnum",
8824 "kind" : "ImageChannelOrder",
8829 "capabilities" : [ "Kernel" ]
8834 "capabilities" : [ "Kernel" ]
8839 "capabilities" : [ "Kernel" ]
8844 "capabilities" : [ "Kernel" ]
8847 "enumerant" : "RGB",
8849 "capabilities" : [ "Kernel" ]
8852 "enumerant" : "RGBA",
8854 "capabilities" : [ "Kernel" ]
8857 "enumerant" : "BGRA",
8859 "capabilities" : [ "Kernel" ]
8862 "enumerant" : "ARGB",
8864 "capabilities" : [ "Kernel" ]
8867 "enumerant" : "Intensity",
8869 "capabilities" : [ "Kernel" ]
8872 "enumerant" : "Luminance",
8874 "capabilities" : [ "Kernel" ]
8879 "capabilities" : [ "Kernel" ]
8882 "enumerant" : "RGx",
8884 "capabilities" : [ "Kernel" ]
8887 "enumerant" : "RGBx",
8889 "capabilities" : [ "Kernel" ]
8892 "enumerant" : "Depth",
8894 "capabilities" : [ "Kernel" ]
8897 "enumerant" : "DepthStencil",
8899 "capabilities" : [ "Kernel" ]
8902 "enumerant" : "sRGB",
8904 "capabilities" : [ "Kernel" ]
8907 "enumerant" : "sRGBx",
8909 "capabilities" : [ "Kernel" ]
8912 "enumerant" : "sRGBA",
8914 "capabilities" : [ "Kernel" ]
8917 "enumerant" : "sBGRA",
8919 "capabilities" : [ "Kernel" ]
8922 "enumerant" : "ABGR",
8924 "capabilities" : [ "Kernel" ]
8929 "category" : "ValueEnum",
8930 "kind" : "ImageChannelDataType",
8933 "enumerant" : "SnormInt8",
8935 "capabilities" : [ "Kernel" ]
8938 "enumerant" : "SnormInt16",
8940 "capabilities" : [ "Kernel" ]
8943 "enumerant" : "UnormInt8",
8945 "capabilities" : [ "Kernel" ]
8948 "enumerant" : "UnormInt16",
8950 "capabilities" : [ "Kernel" ]
8953 "enumerant" : "UnormShort565",
8955 "capabilities" : [ "Kernel" ]
8958 "enumerant" : "UnormShort555",
8960 "capabilities" : [ "Kernel" ]
8963 "enumerant" : "UnormInt101010",
8965 "capabilities" : [ "Kernel" ]
8968 "enumerant" : "SignedInt8",
8970 "capabilities" : [ "Kernel" ]
8973 "enumerant" : "SignedInt16",
8975 "capabilities" : [ "Kernel" ]
8978 "enumerant" : "SignedInt32",
8980 "capabilities" : [ "Kernel" ]
8983 "enumerant" : "UnsignedInt8",
8985 "capabilities" : [ "Kernel" ]
8988 "enumerant" : "UnsignedInt16",
8990 "capabilities" : [ "Kernel" ]
8993 "enumerant" : "UnsignedInt32",
8995 "capabilities" : [ "Kernel" ]
8998 "enumerant" : "HalfFloat",
9000 "capabilities" : [ "Kernel" ]
9003 "enumerant" : "Float",
9005 "capabilities" : [ "Kernel" ]
9008 "enumerant" : "UnormInt24",
9010 "capabilities" : [ "Kernel" ]
9013 "enumerant" : "UnormInt101010_2",
9015 "capabilities" : [ "Kernel" ]
9020 "category" : "ValueEnum",
9021 "kind" : "FPRoundingMode",
9024 "enumerant" : "RTE",
9028 "enumerant" : "RTZ",
9032 "enumerant" : "RTP",
9036 "enumerant" : "RTN",
9042 "category" : "ValueEnum",
9043 "kind" : "LinkageType",
9046 "enumerant" : "Export",
9048 "capabilities" : [ "Linkage" ]
9051 "enumerant" : "Import",
9053 "capabilities" : [ "Linkage" ]
9058 "category" : "ValueEnum",
9059 "kind" : "AccessQualifier",
9062 "enumerant" : "ReadOnly",
9064 "capabilities" : [ "Kernel" ]
9067 "enumerant" : "WriteOnly",
9069 "capabilities" : [ "Kernel" ]
9072 "enumerant" : "ReadWrite",
9074 "capabilities" : [ "Kernel" ]
9079 "category" : "ValueEnum",
9080 "kind" : "FunctionParameterAttribute",
9083 "enumerant" : "Zext",
9085 "capabilities" : [ "Kernel" ]
9088 "enumerant" : "Sext",
9090 "capabilities" : [ "Kernel" ]
9093 "enumerant" : "ByVal",
9095 "capabilities" : [ "Kernel" ]
9098 "enumerant" : "Sret",
9100 "capabilities" : [ "Kernel" ]
9103 "enumerant" : "NoAlias",
9105 "capabilities" : [ "Kernel" ]
9108 "enumerant" : "NoCapture",
9110 "capabilities" : [ "Kernel" ]
9113 "enumerant" : "NoWrite",
9115 "capabilities" : [ "Kernel" ]
9118 "enumerant" : "NoReadWrite",
9120 "capabilities" : [ "Kernel" ]
9125 "category" : "ValueEnum",
9126 "kind" : "Decoration",
9129 "enumerant" : "RelaxedPrecision",
9131 "capabilities" : [ "Shader" ]
9134 "enumerant" : "SpecId",
9136 "capabilities" : [ "Shader", "Kernel" ],
9138 { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
9142 "enumerant" : "Block",
9144 "capabilities" : [ "Shader" ]
9147 "enumerant" : "BufferBlock",
9149 "capabilities" : [ "Shader" ],
9150 "lastVersion" : "1.3"
9153 "enumerant" : "RowMajor",
9155 "capabilities" : [ "Matrix" ]
9158 "enumerant" : "ColMajor",
9160 "capabilities" : [ "Matrix" ]
9163 "enumerant" : "ArrayStride",
9165 "capabilities" : [ "Shader" ],
9167 { "kind" : "LiteralInteger", "name" : "'Array Stride'" }
9171 "enumerant" : "MatrixStride",
9173 "capabilities" : [ "Matrix" ],
9175 { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" }
9179 "enumerant" : "GLSLShared",
9181 "capabilities" : [ "Shader" ]
9184 "enumerant" : "GLSLPacked",
9186 "capabilities" : [ "Shader" ]
9189 "enumerant" : "CPacked",
9191 "capabilities" : [ "Kernel" ]
9194 "enumerant" : "BuiltIn",
9197 { "kind" : "BuiltIn" }
9201 "enumerant" : "NoPerspective",
9203 "capabilities" : [ "Shader" ]
9206 "enumerant" : "Flat",
9208 "capabilities" : [ "Shader" ]
9211 "enumerant" : "Patch",
9213 "capabilities" : [ "Tessellation" ]
9216 "enumerant" : "Centroid",
9218 "capabilities" : [ "Shader" ]
9221 "enumerant" : "Sample",
9223 "capabilities" : [ "SampleRateShading" ]
9226 "enumerant" : "Invariant",
9228 "capabilities" : [ "Shader" ]
9231 "enumerant" : "Restrict",
9235 "enumerant" : "Aliased",
9239 "enumerant" : "Volatile",
9243 "enumerant" : "Constant",
9245 "capabilities" : [ "Kernel" ]
9248 "enumerant" : "Coherent",
9252 "enumerant" : "NonWritable",
9256 "enumerant" : "NonReadable",
9260 "enumerant" : "Uniform",
9262 "capabilities" : [ "Shader" ]
9265 "enumerant" : "UniformId",
9267 "capabilities" : [ "Shader" ],
9269 { "kind" : "IdScope", "name" : "'Execution'" }
9274 "enumerant" : "SaturatedConversion",
9276 "capabilities" : [ "Kernel" ]
9279 "enumerant" : "Stream",
9281 "capabilities" : [ "GeometryStreams" ],
9283 { "kind" : "LiteralInteger", "name" : "'Stream Number'" }
9287 "enumerant" : "Location",
9289 "capabilities" : [ "Shader" ],
9291 { "kind" : "LiteralInteger", "name" : "'Location'" }
9295 "enumerant" : "Component",
9297 "capabilities" : [ "Shader" ],
9299 { "kind" : "LiteralInteger", "name" : "'Component'" }
9303 "enumerant" : "Index",
9305 "capabilities" : [ "Shader" ],
9307 { "kind" : "LiteralInteger", "name" : "'Index'" }
9311 "enumerant" : "Binding",
9313 "capabilities" : [ "Shader" ],
9315 { "kind" : "LiteralInteger", "name" : "'Binding Point'" }
9319 "enumerant" : "DescriptorSet",
9321 "capabilities" : [ "Shader" ],
9323 { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" }
9327 "enumerant" : "Offset",
9329 "capabilities" : [ "Shader" ],
9331 { "kind" : "LiteralInteger", "name" : "'Byte Offset'" }
9335 "enumerant" : "XfbBuffer",
9337 "capabilities" : [ "TransformFeedback" ],
9339 { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" }
9343 "enumerant" : "XfbStride",
9345 "capabilities" : [ "TransformFeedback" ],
9347 { "kind" : "LiteralInteger", "name" : "'XFB Stride'" }
9351 "enumerant" : "FuncParamAttr",
9353 "capabilities" : [ "Kernel" ],
9355 { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" }
9359 "enumerant" : "FPRoundingMode",
9362 { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" }
9366 "enumerant" : "FPFastMathMode",
9368 "capabilities" : [ "Kernel" ],
9370 { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" }
9374 "enumerant" : "LinkageAttributes",
9376 "capabilities" : [ "Linkage" ],
9378 { "kind" : "LiteralString", "name" : "'Name'" },
9379 { "kind" : "LinkageType", "name" : "'Linkage Type'" }
9383 "enumerant" : "NoContraction",
9385 "capabilities" : [ "Shader" ]
9388 "enumerant" : "InputAttachmentIndex",
9390 "capabilities" : [ "InputAttachment" ],
9392 { "kind" : "LiteralInteger", "name" : "'Attachment Index'" }
9396 "enumerant" : "Alignment",
9398 "capabilities" : [ "Kernel" ],
9400 { "kind" : "LiteralInteger", "name" : "'Alignment'" }
9404 "enumerant" : "MaxByteOffset",
9406 "capabilities" : [ "Addresses" ],
9408 { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
9413 "enumerant" : "AlignmentId",
9415 "capabilities" : [ "Kernel" ],
9417 { "kind" : "IdRef", "name" : "'Alignment'" }
9422 "enumerant" : "MaxByteOffsetId",
9424 "capabilities" : [ "Addresses" ],
9426 { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
9431 "enumerant" : "NoSignedWrap",
9433 "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
9437 "enumerant" : "NoUnsignedWrap",
9439 "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
9443 "enumerant" : "ExplicitInterpAMD",
9445 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
9449 "enumerant" : "OverrideCoverageNV",
9451 "capabilities" : [ "SampleMaskOverrideCoverageNV" ],
9452 "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
9456 "enumerant" : "PassthroughNV",
9458 "capabilities" : [ "GeometryShaderPassthroughNV" ],
9459 "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
9463 "enumerant" : "ViewportRelativeNV",
9465 "capabilities" : [ "ShaderViewportMaskNV" ],
9469 "enumerant" : "SecondaryViewportRelativeNV",
9471 "capabilities" : [ "ShaderStereoViewNV" ],
9472 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
9475 { "kind" : "LiteralInteger", "name" : "'Offset'" }
9479 "enumerant" : "PerPrimitiveNV",
9481 "capabilities" : [ "MeshShadingNV" ],
9482 "extensions" : [ "SPV_NV_mesh_shader" ],
9486 "enumerant" : "PerViewNV",
9488 "capabilities" : [ "MeshShadingNV" ],
9489 "extensions" : [ "SPV_NV_mesh_shader" ],
9493 "enumerant" : "PerTaskNV",
9495 "capabilities" : [ "MeshShadingNV" ],
9496 "extensions" : [ "SPV_NV_mesh_shader" ],
9500 "enumerant" : "PerVertexNV",
9502 "capabilities" : [ "FragmentBarycentricNV" ],
9503 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
9507 "enumerant" : "NonUniform",
9509 "capabilities" : [ "ShaderNonUniform" ],
9513 "enumerant" : "NonUniformEXT",
9515 "capabilities" : [ "ShaderNonUniform" ],
9516 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9520 "enumerant" : "RestrictPointer",
9522 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9523 "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
9527 "enumerant" : "RestrictPointerEXT",
9529 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9530 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9534 "enumerant" : "AliasedPointer",
9536 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9537 "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
9541 "enumerant" : "AliasedPointerEXT",
9543 "capabilities" : [ "PhysicalStorageBufferAddresses" ],
9544 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9548 "enumerant" : "ReferencedIndirectlyINTEL",
9550 "capabilities" : [ "IndirectReferencesINTEL" ],
9551 "extensions" : [ "SPV_INTEL_function_pointers" ],
9555 "enumerant" : "CounterBuffer",
9558 { "kind" : "IdRef", "name" : "'Counter Buffer'" }
9563 "enumerant" : "HlslCounterBufferGOOGLE",
9566 { "kind" : "IdRef", "name" : "'Counter Buffer'" }
9568 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
9572 "enumerant" : "UserSemantic",
9575 { "kind" : "LiteralString", "name" : "'Semantic'" }
9580 "enumerant" : "HlslSemanticGOOGLE",
9583 { "kind" : "LiteralString", "name" : "'Semantic'" }
9585 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
9589 "enumerant" : "UserTypeGOOGLE",
9592 { "kind" : "LiteralString", "name" : "'User Type'" }
9594 "extensions" : [ "SPV_GOOGLE_user_type" ],
9598 "enumerant" : "RegisterINTEL",
9600 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9601 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9605 "enumerant" : "MemoryINTEL",
9608 { "kind" : "LiteralString", "name" : "'Memory Type'" }
9610 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9611 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9615 "enumerant" : "NumbanksINTEL",
9618 { "kind" : "LiteralInteger", "name" : "'Banks'" }
9620 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9621 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9625 "enumerant" : "BankwidthINTEL",
9628 { "kind" : "LiteralInteger", "name" : "'Bank Width'" }
9630 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9631 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9635 "enumerant" : "MaxPrivateCopiesINTEL",
9638 { "kind" : "LiteralInteger", "name" : "'Maximum Copies'" }
9640 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9641 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9645 "enumerant" : "SinglepumpINTEL",
9647 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9648 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9652 "enumerant" : "DoublepumpINTEL",
9654 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9655 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9659 "enumerant" : "MaxReplicatesINTEL",
9662 { "kind" : "LiteralInteger", "name" : "'Maximum Replicates'" }
9664 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9665 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9669 "enumerant" : "SimpleDualPortINTEL",
9671 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9672 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9676 "enumerant" : "MergeINTEL",
9679 { "kind" : "LiteralString", "name" : "'Merge Key'" },
9680 { "kind" : "LiteralString", "name" : "'Merge Type'" }
9682 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9683 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9687 "enumerant" : "BankBitsINTEL",
9690 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Bank Bits'" }
9692 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9693 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9697 "enumerant" : "ForcePow2DepthINTEL",
9700 { "kind" : "LiteralInteger", "name" : "'Force Key'" }
9702 "capabilities" : [ "FPGAMemoryAttributesINTEL" ],
9703 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
9709 "category" : "ValueEnum",
9713 "enumerant" : "Position",
9715 "capabilities" : [ "Shader" ]
9718 "enumerant" : "PointSize",
9720 "capabilities" : [ "Shader" ]
9723 "enumerant" : "ClipDistance",
9725 "capabilities" : [ "ClipDistance" ]
9728 "enumerant" : "CullDistance",
9730 "capabilities" : [ "CullDistance" ]
9733 "enumerant" : "VertexId",
9735 "capabilities" : [ "Shader" ]
9738 "enumerant" : "InstanceId",
9740 "capabilities" : [ "Shader" ]
9743 "enumerant" : "PrimitiveId",
9745 "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV", "RayTracingProvisionalKHR" ]
9748 "enumerant" : "InvocationId",
9750 "capabilities" : [ "Geometry", "Tessellation" ]
9753 "enumerant" : "Layer",
9755 "capabilities" : [ "Geometry", "ShaderLayer", "ShaderViewportIndexLayerEXT" ]
9758 "enumerant" : "ViewportIndex",
9760 "capabilities" : [ "MultiViewport", "ShaderViewportIndex", "ShaderViewportIndexLayerEXT" ]
9763 "enumerant" : "TessLevelOuter",
9765 "capabilities" : [ "Tessellation" ]
9768 "enumerant" : "TessLevelInner",
9770 "capabilities" : [ "Tessellation" ]
9773 "enumerant" : "TessCoord",
9775 "capabilities" : [ "Tessellation" ]
9778 "enumerant" : "PatchVertices",
9780 "capabilities" : [ "Tessellation" ]
9783 "enumerant" : "FragCoord",
9785 "capabilities" : [ "Shader" ]
9788 "enumerant" : "PointCoord",
9790 "capabilities" : [ "Shader" ]
9793 "enumerant" : "FrontFacing",
9795 "capabilities" : [ "Shader" ]
9798 "enumerant" : "SampleId",
9800 "capabilities" : [ "SampleRateShading" ]
9803 "enumerant" : "SamplePosition",
9805 "capabilities" : [ "SampleRateShading" ]
9808 "enumerant" : "SampleMask",
9810 "capabilities" : [ "Shader" ]
9813 "enumerant" : "FragDepth",
9815 "capabilities" : [ "Shader" ]
9818 "enumerant" : "HelperInvocation",
9820 "capabilities" : [ "Shader" ]
9823 "enumerant" : "NumWorkgroups",
9827 "enumerant" : "WorkgroupSize",
9831 "enumerant" : "WorkgroupId",
9835 "enumerant" : "LocalInvocationId",
9839 "enumerant" : "GlobalInvocationId",
9843 "enumerant" : "LocalInvocationIndex",
9847 "enumerant" : "WorkDim",
9849 "capabilities" : [ "Kernel" ]
9852 "enumerant" : "GlobalSize",
9854 "capabilities" : [ "Kernel" ]
9857 "enumerant" : "EnqueuedWorkgroupSize",
9859 "capabilities" : [ "Kernel" ]
9862 "enumerant" : "GlobalOffset",
9864 "capabilities" : [ "Kernel" ]
9867 "enumerant" : "GlobalLinearId",
9869 "capabilities" : [ "Kernel" ]
9872 "enumerant" : "SubgroupSize",
9874 "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
9877 "enumerant" : "SubgroupMaxSize",
9879 "capabilities" : [ "Kernel" ]
9882 "enumerant" : "NumSubgroups",
9884 "capabilities" : [ "Kernel", "GroupNonUniform" ]
9887 "enumerant" : "NumEnqueuedSubgroups",
9889 "capabilities" : [ "Kernel" ]
9892 "enumerant" : "SubgroupId",
9894 "capabilities" : [ "Kernel", "GroupNonUniform" ]
9897 "enumerant" : "SubgroupLocalInvocationId",
9899 "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
9902 "enumerant" : "VertexIndex",
9904 "capabilities" : [ "Shader" ]
9907 "enumerant" : "InstanceIndex",
9909 "capabilities" : [ "Shader" ]
9912 "enumerant" : "SubgroupEqMask",
9914 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9918 "enumerant" : "SubgroupGeMask",
9920 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9924 "enumerant" : "SubgroupGtMask",
9926 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9930 "enumerant" : "SubgroupLeMask",
9932 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9936 "enumerant" : "SubgroupLtMask",
9938 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9942 "enumerant" : "SubgroupEqMaskKHR",
9944 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9945 "extensions" : [ "SPV_KHR_shader_ballot" ],
9949 "enumerant" : "SubgroupGeMaskKHR",
9951 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9952 "extensions" : [ "SPV_KHR_shader_ballot" ],
9956 "enumerant" : "SubgroupGtMaskKHR",
9958 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9959 "extensions" : [ "SPV_KHR_shader_ballot" ],
9963 "enumerant" : "SubgroupLeMaskKHR",
9965 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9966 "extensions" : [ "SPV_KHR_shader_ballot" ],
9970 "enumerant" : "SubgroupLtMaskKHR",
9972 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
9973 "extensions" : [ "SPV_KHR_shader_ballot" ],
9977 "enumerant" : "BaseVertex",
9979 "capabilities" : [ "DrawParameters" ],
9980 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
9984 "enumerant" : "BaseInstance",
9986 "capabilities" : [ "DrawParameters" ],
9987 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
9991 "enumerant" : "DrawIndex",
9993 "capabilities" : [ "DrawParameters", "MeshShadingNV" ],
9994 "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader" ],
9998 "enumerant" : "DeviceIndex",
10000 "capabilities" : [ "DeviceGroup" ],
10001 "extensions" : [ "SPV_KHR_device_group" ],
10005 "enumerant" : "ViewIndex",
10007 "capabilities" : [ "MultiView" ],
10008 "extensions" : [ "SPV_KHR_multiview" ],
10012 "enumerant" : "BaryCoordNoPerspAMD",
10014 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10018 "enumerant" : "BaryCoordNoPerspCentroidAMD",
10020 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10024 "enumerant" : "BaryCoordNoPerspSampleAMD",
10026 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10030 "enumerant" : "BaryCoordSmoothAMD",
10032 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10036 "enumerant" : "BaryCoordSmoothCentroidAMD",
10038 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10042 "enumerant" : "BaryCoordSmoothSampleAMD",
10044 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10048 "enumerant" : "BaryCoordPullModelAMD",
10050 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
10054 "enumerant" : "FragStencilRefEXT",
10056 "capabilities" : [ "StencilExportEXT" ],
10057 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
10061 "enumerant" : "ViewportMaskNV",
10063 "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ],
10064 "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ],
10068 "enumerant" : "SecondaryPositionNV",
10070 "capabilities" : [ "ShaderStereoViewNV" ],
10071 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
10075 "enumerant" : "SecondaryViewportMaskNV",
10077 "capabilities" : [ "ShaderStereoViewNV" ],
10078 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
10082 "enumerant" : "PositionPerViewNV",
10084 "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
10085 "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
10089 "enumerant" : "ViewportMaskPerViewNV",
10091 "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
10092 "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
10096 "enumerant" : "FullyCoveredEXT",
10098 "capabilities" : [ "FragmentFullyCoveredEXT" ],
10099 "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
10103 "enumerant" : "TaskCountNV",
10105 "capabilities" : [ "MeshShadingNV" ],
10106 "extensions" : [ "SPV_NV_mesh_shader" ],
10110 "enumerant" : "PrimitiveCountNV",
10112 "capabilities" : [ "MeshShadingNV" ],
10113 "extensions" : [ "SPV_NV_mesh_shader" ],
10117 "enumerant" : "PrimitiveIndicesNV",
10119 "capabilities" : [ "MeshShadingNV" ],
10120 "extensions" : [ "SPV_NV_mesh_shader" ],
10124 "enumerant" : "ClipDistancePerViewNV",
10126 "capabilities" : [ "MeshShadingNV" ],
10127 "extensions" : [ "SPV_NV_mesh_shader" ],
10131 "enumerant" : "CullDistancePerViewNV",
10133 "capabilities" : [ "MeshShadingNV" ],
10134 "extensions" : [ "SPV_NV_mesh_shader" ],
10138 "enumerant" : "LayerPerViewNV",
10140 "capabilities" : [ "MeshShadingNV" ],
10141 "extensions" : [ "SPV_NV_mesh_shader" ],
10145 "enumerant" : "MeshViewCountNV",
10147 "capabilities" : [ "MeshShadingNV" ],
10148 "extensions" : [ "SPV_NV_mesh_shader" ],
10152 "enumerant" : "MeshViewIndicesNV",
10154 "capabilities" : [ "MeshShadingNV" ],
10155 "extensions" : [ "SPV_NV_mesh_shader" ],
10159 "enumerant" : "BaryCoordNV",
10161 "capabilities" : [ "FragmentBarycentricNV" ],
10162 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
10166 "enumerant" : "BaryCoordNoPerspNV",
10168 "capabilities" : [ "FragmentBarycentricNV" ],
10169 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
10173 "enumerant" : "FragSizeEXT",
10175 "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
10176 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
10180 "enumerant" : "FragmentSizeNV",
10182 "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
10183 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
10187 "enumerant" : "FragInvocationCountEXT",
10189 "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
10190 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
10194 "enumerant" : "InvocationsPerPixelNV",
10196 "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
10197 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
10201 "enumerant" : "LaunchIdNV",
10203 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10204 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10208 "enumerant" : "LaunchIdKHR",
10210 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10211 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10215 "enumerant" : "LaunchSizeNV",
10217 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10218 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10222 "enumerant" : "LaunchSizeKHR",
10224 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10225 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10229 "enumerant" : "WorldRayOriginNV",
10231 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10232 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10236 "enumerant" : "WorldRayOriginKHR",
10238 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10239 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10243 "enumerant" : "WorldRayDirectionNV",
10245 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10246 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10250 "enumerant" : "WorldRayDirectionKHR",
10252 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10253 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10257 "enumerant" : "ObjectRayOriginNV",
10259 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10260 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10264 "enumerant" : "ObjectRayOriginKHR",
10266 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10267 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10271 "enumerant" : "ObjectRayDirectionNV",
10273 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10274 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10278 "enumerant" : "ObjectRayDirectionKHR",
10280 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10281 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10285 "enumerant" : "RayTminNV",
10287 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10288 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10292 "enumerant" : "RayTminKHR",
10294 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10295 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10299 "enumerant" : "RayTmaxNV",
10301 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10302 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10306 "enumerant" : "RayTmaxKHR",
10308 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10309 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10313 "enumerant" : "InstanceCustomIndexNV",
10315 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10316 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10320 "enumerant" : "InstanceCustomIndexKHR",
10322 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10323 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10327 "enumerant" : "ObjectToWorldNV",
10329 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10330 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10334 "enumerant" : "ObjectToWorldKHR",
10336 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10337 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10341 "enumerant" : "WorldToObjectNV",
10343 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10344 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10348 "enumerant" : "WorldToObjectKHR",
10350 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10351 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10355 "enumerant" : "HitTNV",
10357 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10358 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10362 "enumerant" : "HitTKHR",
10364 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10365 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10369 "enumerant" : "HitKindNV",
10371 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10372 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10376 "enumerant" : "HitKindKHR",
10378 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10379 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10383 "enumerant" : "IncomingRayFlagsNV",
10385 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10386 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10390 "enumerant" : "IncomingRayFlagsKHR",
10392 "capabilities" : [ "RayTracingNV" , "RayTracingProvisionalKHR" ],
10393 "extensions" : [ "SPV_NV_ray_tracing" , "SPV_KHR_ray_tracing" ],
10397 "enumerant" : "RayGeometryIndexKHR",
10399 "capabilities" : [ "RayTracingProvisionalKHR" ],
10400 "extensions" : [ "SPV_KHR_ray_tracing" ],
10404 "enumerant" : "WarpsPerSMNV",
10406 "capabilities" : [ "ShaderSMBuiltinsNV" ],
10407 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
10411 "enumerant" : "SMCountNV",
10413 "capabilities" : [ "ShaderSMBuiltinsNV" ],
10414 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
10418 "enumerant" : "WarpIDNV",
10420 "capabilities" : [ "ShaderSMBuiltinsNV" ],
10421 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
10425 "enumerant" : "SMIDNV",
10427 "capabilities" : [ "ShaderSMBuiltinsNV" ],
10428 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
10434 "category" : "ValueEnum",
10438 "enumerant" : "CrossDevice",
10442 "enumerant" : "Device",
10446 "enumerant" : "Workgroup",
10450 "enumerant" : "Subgroup",
10454 "enumerant" : "Invocation",
10458 "enumerant" : "QueueFamily",
10460 "capabilities" : [ "VulkanMemoryModel" ],
10464 "enumerant" : "QueueFamilyKHR",
10466 "capabilities" : [ "VulkanMemoryModel" ],
10470 "enumerant" : "ShaderCallKHR",
10472 "capabilities" : [ "RayTracingProvisionalKHR" ],
10478 "category" : "ValueEnum",
10479 "kind" : "GroupOperation",
10482 "enumerant" : "Reduce",
10484 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
10487 "enumerant" : "InclusiveScan",
10489 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
10492 "enumerant" : "ExclusiveScan",
10494 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
10497 "enumerant" : "ClusteredReduce",
10499 "capabilities" : [ "GroupNonUniformClustered" ],
10503 "enumerant" : "PartitionedReduceNV",
10505 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
10506 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
10510 "enumerant" : "PartitionedInclusiveScanNV",
10512 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
10513 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
10517 "enumerant" : "PartitionedExclusiveScanNV",
10519 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
10520 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
10526 "category" : "ValueEnum",
10527 "kind" : "KernelEnqueueFlags",
10530 "enumerant" : "NoWait",
10532 "capabilities" : [ "Kernel" ]
10535 "enumerant" : "WaitKernel",
10537 "capabilities" : [ "Kernel" ]
10540 "enumerant" : "WaitWorkGroup",
10542 "capabilities" : [ "Kernel" ]
10547 "category" : "ValueEnum",
10548 "kind" : "Capability",
10551 "enumerant" : "Matrix",
10555 "enumerant" : "Shader",
10557 "capabilities" : [ "Matrix" ]
10560 "enumerant" : "Geometry",
10562 "capabilities" : [ "Shader" ]
10565 "enumerant" : "Tessellation",
10567 "capabilities" : [ "Shader" ]
10570 "enumerant" : "Addresses",
10574 "enumerant" : "Linkage",
10578 "enumerant" : "Kernel",
10582 "enumerant" : "Vector16",
10584 "capabilities" : [ "Kernel" ]
10587 "enumerant" : "Float16Buffer",
10589 "capabilities" : [ "Kernel" ]
10592 "enumerant" : "Float16",
10596 "enumerant" : "Float64",
10600 "enumerant" : "Int64",
10604 "enumerant" : "Int64Atomics",
10606 "capabilities" : [ "Int64" ]
10609 "enumerant" : "ImageBasic",
10611 "capabilities" : [ "Kernel" ]
10614 "enumerant" : "ImageReadWrite",
10616 "capabilities" : [ "ImageBasic" ]
10619 "enumerant" : "ImageMipmap",
10621 "capabilities" : [ "ImageBasic" ]
10624 "enumerant" : "Pipes",
10626 "capabilities" : [ "Kernel" ]
10629 "enumerant" : "Groups",
10631 "extensions" : [ "SPV_AMD_shader_ballot" ]
10634 "enumerant" : "DeviceEnqueue",
10636 "capabilities" : [ "Kernel" ]
10639 "enumerant" : "LiteralSampler",
10641 "capabilities" : [ "Kernel" ]
10644 "enumerant" : "AtomicStorage",
10646 "capabilities" : [ "Shader" ]
10649 "enumerant" : "Int16",
10653 "enumerant" : "TessellationPointSize",
10655 "capabilities" : [ "Tessellation" ]
10658 "enumerant" : "GeometryPointSize",
10660 "capabilities" : [ "Geometry" ]
10663 "enumerant" : "ImageGatherExtended",
10665 "capabilities" : [ "Shader" ]
10668 "enumerant" : "StorageImageMultisample",
10670 "capabilities" : [ "Shader" ]
10673 "enumerant" : "UniformBufferArrayDynamicIndexing",
10675 "capabilities" : [ "Shader" ]
10678 "enumerant" : "SampledImageArrayDynamicIndexing",
10680 "capabilities" : [ "Shader" ]
10683 "enumerant" : "StorageBufferArrayDynamicIndexing",
10685 "capabilities" : [ "Shader" ]
10688 "enumerant" : "StorageImageArrayDynamicIndexing",
10690 "capabilities" : [ "Shader" ]
10693 "enumerant" : "ClipDistance",
10695 "capabilities" : [ "Shader" ]
10698 "enumerant" : "CullDistance",
10700 "capabilities" : [ "Shader" ]
10703 "enumerant" : "ImageCubeArray",
10705 "capabilities" : [ "SampledCubeArray" ]
10708 "enumerant" : "SampleRateShading",
10710 "capabilities" : [ "Shader" ]
10713 "enumerant" : "ImageRect",
10715 "capabilities" : [ "SampledRect" ]
10718 "enumerant" : "SampledRect",
10720 "capabilities" : [ "Shader" ]
10723 "enumerant" : "GenericPointer",
10725 "capabilities" : [ "Addresses" ]
10728 "enumerant" : "Int8",
10732 "enumerant" : "InputAttachment",
10734 "capabilities" : [ "Shader" ]
10737 "enumerant" : "SparseResidency",
10739 "capabilities" : [ "Shader" ]
10742 "enumerant" : "MinLod",
10744 "capabilities" : [ "Shader" ]
10747 "enumerant" : "Sampled1D",
10751 "enumerant" : "Image1D",
10753 "capabilities" : [ "Sampled1D" ]
10756 "enumerant" : "SampledCubeArray",
10758 "capabilities" : [ "Shader" ]
10761 "enumerant" : "SampledBuffer",
10765 "enumerant" : "ImageBuffer",
10767 "capabilities" : [ "SampledBuffer" ]
10770 "enumerant" : "ImageMSArray",
10772 "capabilities" : [ "Shader" ]
10775 "enumerant" : "StorageImageExtendedFormats",
10777 "capabilities" : [ "Shader" ]
10780 "enumerant" : "ImageQuery",
10782 "capabilities" : [ "Shader" ]
10785 "enumerant" : "DerivativeControl",
10787 "capabilities" : [ "Shader" ]
10790 "enumerant" : "InterpolationFunction",
10792 "capabilities" : [ "Shader" ]
10795 "enumerant" : "TransformFeedback",
10797 "capabilities" : [ "Shader" ]
10800 "enumerant" : "GeometryStreams",
10802 "capabilities" : [ "Geometry" ]
10805 "enumerant" : "StorageImageReadWithoutFormat",
10807 "capabilities" : [ "Shader" ]
10810 "enumerant" : "StorageImageWriteWithoutFormat",
10812 "capabilities" : [ "Shader" ]
10815 "enumerant" : "MultiViewport",
10817 "capabilities" : [ "Geometry" ]
10820 "enumerant" : "SubgroupDispatch",
10822 "capabilities" : [ "DeviceEnqueue" ],
10826 "enumerant" : "NamedBarrier",
10828 "capabilities" : [ "Kernel" ],
10832 "enumerant" : "PipeStorage",
10834 "capabilities" : [ "Pipes" ],
10838 "enumerant" : "GroupNonUniform",
10843 "enumerant" : "GroupNonUniformVote",
10845 "capabilities" : [ "GroupNonUniform" ],
10849 "enumerant" : "GroupNonUniformArithmetic",
10851 "capabilities" : [ "GroupNonUniform" ],
10855 "enumerant" : "GroupNonUniformBallot",
10857 "capabilities" : [ "GroupNonUniform" ],
10861 "enumerant" : "GroupNonUniformShuffle",
10863 "capabilities" : [ "GroupNonUniform" ],
10867 "enumerant" : "GroupNonUniformShuffleRelative",
10869 "capabilities" : [ "GroupNonUniform" ],
10873 "enumerant" : "GroupNonUniformClustered",
10875 "capabilities" : [ "GroupNonUniform" ],
10879 "enumerant" : "GroupNonUniformQuad",
10881 "capabilities" : [ "GroupNonUniform" ],
10885 "enumerant" : "ShaderLayer",
10890 "enumerant" : "ShaderViewportIndex",
10895 "enumerant" : "SubgroupBallotKHR",
10897 "extensions" : [ "SPV_KHR_shader_ballot" ],
10901 "enumerant" : "DrawParameters",
10903 "capabilities" : [ "Shader" ],
10904 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
10908 "enumerant" : "SubgroupVoteKHR",
10910 "extensions" : [ "SPV_KHR_subgroup_vote" ],
10914 "enumerant" : "StorageBuffer16BitAccess",
10916 "extensions" : [ "SPV_KHR_16bit_storage" ],
10920 "enumerant" : "StorageUniformBufferBlock16",
10922 "extensions" : [ "SPV_KHR_16bit_storage" ],
10926 "enumerant" : "UniformAndStorageBuffer16BitAccess",
10929 "StorageBuffer16BitAccess",
10930 "StorageUniformBufferBlock16"
10932 "extensions" : [ "SPV_KHR_16bit_storage" ],
10936 "enumerant" : "StorageUniform16",
10939 "StorageBuffer16BitAccess",
10940 "StorageUniformBufferBlock16"
10942 "extensions" : [ "SPV_KHR_16bit_storage" ],
10946 "enumerant" : "StoragePushConstant16",
10948 "extensions" : [ "SPV_KHR_16bit_storage" ],
10952 "enumerant" : "StorageInputOutput16",
10954 "extensions" : [ "SPV_KHR_16bit_storage" ],
10958 "enumerant" : "DeviceGroup",
10960 "extensions" : [ "SPV_KHR_device_group" ],
10964 "enumerant" : "MultiView",
10966 "capabilities" : [ "Shader" ],
10967 "extensions" : [ "SPV_KHR_multiview" ],
10971 "enumerant" : "VariablePointersStorageBuffer",
10973 "capabilities" : [ "Shader" ],
10974 "extensions" : [ "SPV_KHR_variable_pointers" ],
10978 "enumerant" : "VariablePointers",
10980 "capabilities" : [ "VariablePointersStorageBuffer" ],
10981 "extensions" : [ "SPV_KHR_variable_pointers" ],
10985 "enumerant" : "AtomicStorageOps",
10987 "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ],
10991 "enumerant" : "SampleMaskPostDepthCoverage",
10993 "extensions" : [ "SPV_KHR_post_depth_coverage" ],
10997 "enumerant" : "StorageBuffer8BitAccess",
10999 "extensions" : [ "SPV_KHR_8bit_storage" ],
11003 "enumerant" : "UniformAndStorageBuffer8BitAccess",
11005 "capabilities" : [ "StorageBuffer8BitAccess" ],
11006 "extensions" : [ "SPV_KHR_8bit_storage" ],
11010 "enumerant" : "StoragePushConstant8",
11012 "extensions" : [ "SPV_KHR_8bit_storage" ],
11016 "enumerant" : "DenormPreserve",
11018 "extensions" : [ "SPV_KHR_float_controls" ],
11022 "enumerant" : "DenormFlushToZero",
11024 "extensions" : [ "SPV_KHR_float_controls" ],
11028 "enumerant" : "SignedZeroInfNanPreserve",
11030 "extensions" : [ "SPV_KHR_float_controls" ],
11034 "enumerant" : "RoundingModeRTE",
11036 "extensions" : [ "SPV_KHR_float_controls" ],
11040 "enumerant" : "RoundingModeRTZ",
11042 "extensions" : [ "SPV_KHR_float_controls" ],
11046 "enumerant" : "RayQueryProvisionalKHR",
11048 "capabilities" : [ "Shader" ],
11049 "extensions" : [ "SPV_KHR_ray_query" ],
11053 "enumerant" : "RayTraversalPrimitiveCullingProvisionalKHR",
11055 "capabilities" : [ "RayQueryProvisionalKHR","RayTracingProvisionalKHR" ],
11056 "extensions" : [ "SPV_KHR_ray_query","SPV_KHR_ray_tracing" ],
11060 "enumerant" : "Float16ImageAMD",
11062 "capabilities" : [ "Shader" ],
11063 "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ],
11067 "enumerant" : "ImageGatherBiasLodAMD",
11069 "capabilities" : [ "Shader" ],
11070 "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ],
11074 "enumerant" : "FragmentMaskAMD",
11076 "capabilities" : [ "Shader" ],
11077 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
11081 "enumerant" : "StencilExportEXT",
11083 "capabilities" : [ "Shader" ],
11084 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
11088 "enumerant" : "ImageReadWriteLodAMD",
11090 "capabilities" : [ "Shader" ],
11091 "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
11095 "enumerant" : "ShaderClockKHR",
11097 "capabilities" : [ "Shader" ],
11098 "extensions" : [ "SPV_KHR_shader_clock" ],
11102 "enumerant" : "SampleMaskOverrideCoverageNV",
11104 "capabilities" : [ "SampleRateShading" ],
11105 "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
11109 "enumerant" : "GeometryShaderPassthroughNV",
11111 "capabilities" : [ "Geometry" ],
11112 "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
11116 "enumerant" : "ShaderViewportIndexLayerEXT",
11118 "capabilities" : [ "MultiViewport" ],
11119 "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ],
11123 "enumerant" : "ShaderViewportIndexLayerNV",
11125 "capabilities" : [ "MultiViewport" ],
11126 "extensions" : [ "SPV_NV_viewport_array2" ],
11130 "enumerant" : "ShaderViewportMaskNV",
11132 "capabilities" : [ "ShaderViewportIndexLayerNV" ],
11133 "extensions" : [ "SPV_NV_viewport_array2" ],
11137 "enumerant" : "ShaderStereoViewNV",
11139 "capabilities" : [ "ShaderViewportMaskNV" ],
11140 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
11144 "enumerant" : "PerViewAttributesNV",
11146 "capabilities" : [ "MultiView" ],
11147 "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ],
11151 "enumerant" : "FragmentFullyCoveredEXT",
11153 "capabilities" : [ "Shader" ],
11154 "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
11158 "enumerant" : "MeshShadingNV",
11160 "capabilities" : [ "Shader" ],
11161 "extensions" : [ "SPV_NV_mesh_shader" ],
11165 "enumerant" : "ImageFootprintNV",
11167 "extensions" : [ "SPV_NV_shader_image_footprint" ],
11171 "enumerant" : "FragmentBarycentricNV",
11173 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
11177 "enumerant" : "ComputeDerivativeGroupQuadsNV",
11179 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
11183 "enumerant" : "FragmentDensityEXT",
11185 "capabilities" : [ "Shader" ],
11186 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
11190 "enumerant" : "ShadingRateNV",
11192 "capabilities" : [ "Shader" ],
11193 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
11197 "enumerant" : "GroupNonUniformPartitionedNV",
11199 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
11203 "enumerant" : "ShaderNonUniform",
11205 "capabilities" : [ "Shader" ],
11209 "enumerant" : "ShaderNonUniformEXT",
11211 "capabilities" : [ "Shader" ],
11212 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11216 "enumerant" : "RuntimeDescriptorArray",
11218 "capabilities" : [ "Shader" ],
11222 "enumerant" : "RuntimeDescriptorArrayEXT",
11224 "capabilities" : [ "Shader" ],
11225 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11229 "enumerant" : "InputAttachmentArrayDynamicIndexing",
11231 "capabilities" : [ "InputAttachment" ],
11235 "enumerant" : "InputAttachmentArrayDynamicIndexingEXT",
11237 "capabilities" : [ "InputAttachment" ],
11238 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11242 "enumerant" : "UniformTexelBufferArrayDynamicIndexing",
11244 "capabilities" : [ "SampledBuffer" ],
11248 "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT",
11250 "capabilities" : [ "SampledBuffer" ],
11251 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11255 "enumerant" : "StorageTexelBufferArrayDynamicIndexing",
11257 "capabilities" : [ "ImageBuffer" ],
11261 "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT",
11263 "capabilities" : [ "ImageBuffer" ],
11264 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11268 "enumerant" : "UniformBufferArrayNonUniformIndexing",
11270 "capabilities" : [ "ShaderNonUniform" ],
11274 "enumerant" : "UniformBufferArrayNonUniformIndexingEXT",
11276 "capabilities" : [ "ShaderNonUniform" ],
11277 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11281 "enumerant" : "SampledImageArrayNonUniformIndexing",
11283 "capabilities" : [ "ShaderNonUniform" ],
11287 "enumerant" : "SampledImageArrayNonUniformIndexingEXT",
11289 "capabilities" : [ "ShaderNonUniform" ],
11290 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11294 "enumerant" : "StorageBufferArrayNonUniformIndexing",
11296 "capabilities" : [ "ShaderNonUniform" ],
11300 "enumerant" : "StorageBufferArrayNonUniformIndexingEXT",
11302 "capabilities" : [ "ShaderNonUniform" ],
11303 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11307 "enumerant" : "StorageImageArrayNonUniformIndexing",
11309 "capabilities" : [ "ShaderNonUniform" ],
11313 "enumerant" : "StorageImageArrayNonUniformIndexingEXT",
11315 "capabilities" : [ "ShaderNonUniform" ],
11316 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11320 "enumerant" : "InputAttachmentArrayNonUniformIndexing",
11322 "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
11326 "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT",
11328 "capabilities" : [ "InputAttachment", "ShaderNonUniform" ],
11329 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11333 "enumerant" : "UniformTexelBufferArrayNonUniformIndexing",
11335 "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
11339 "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT",
11341 "capabilities" : [ "SampledBuffer", "ShaderNonUniform" ],
11342 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11346 "enumerant" : "StorageTexelBufferArrayNonUniformIndexing",
11348 "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
11352 "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT",
11354 "capabilities" : [ "ImageBuffer", "ShaderNonUniform" ],
11355 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
11359 "enumerant" : "RayTracingNV",
11361 "capabilities" : [ "Shader" ],
11362 "extensions" : [ "SPV_NV_ray_tracing" ],
11366 "enumerant" : "VulkanMemoryModel",
11371 "enumerant" : "VulkanMemoryModelKHR",
11373 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
11377 "enumerant" : "VulkanMemoryModelDeviceScope",
11382 "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
11384 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
11388 "enumerant" : "PhysicalStorageBufferAddresses",
11390 "capabilities" : [ "Shader" ],
11391 "extensions" : [ "SPV_EXT_physical_storage_buffer", "SPV_KHR_physical_storage_buffer" ],
11395 "enumerant" : "PhysicalStorageBufferAddressesEXT",
11397 "capabilities" : [ "Shader" ],
11398 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
11402 "enumerant" : "ComputeDerivativeGroupLinearNV",
11404 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
11408 "enumerant" : "RayTracingProvisionalKHR",
11410 "capabilities" : [ "Shader" ],
11411 "extensions" : [ "SPV_KHR_ray_tracing" ],
11415 "enumerant" : "CooperativeMatrixNV",
11417 "capabilities" : [ "Shader" ],
11418 "extensions" : [ "SPV_NV_cooperative_matrix" ],
11422 "enumerant" : "FragmentShaderSampleInterlockEXT",
11424 "capabilities" : [ "Shader" ],
11425 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11429 "enumerant" : "FragmentShaderShadingRateInterlockEXT",
11431 "capabilities" : [ "Shader" ],
11432 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11436 "enumerant" : "ShaderSMBuiltinsNV",
11438 "capabilities" : [ "Shader" ],
11439 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
11443 "enumerant" : "FragmentShaderPixelInterlockEXT",
11445 "capabilities" : [ "Shader" ],
11446 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
11450 "enumerant" : "DemoteToHelperInvocationEXT",
11452 "capabilities" : [ "Shader" ],
11453 "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
11457 "enumerant" : "SubgroupShuffleINTEL",
11459 "extensions" : [ "SPV_INTEL_subgroups" ],
11463 "enumerant" : "SubgroupBufferBlockIOINTEL",
11465 "extensions" : [ "SPV_INTEL_subgroups" ],
11469 "enumerant" : "SubgroupImageBlockIOINTEL",
11471 "extensions" : [ "SPV_INTEL_subgroups" ],
11475 "enumerant" : "SubgroupImageMediaBlockIOINTEL",
11477 "extensions" : [ "SPV_INTEL_media_block_io" ],
11481 "enumerant" : "IntegerFunctions2INTEL",
11483 "capabilities" : [ "Shader" ],
11484 "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
11488 "enumerant" : "FunctionPointersINTEL",
11490 "extensions" : [ "SPV_INTEL_function_pointers" ],
11494 "enumerant" : "IndirectReferencesINTEL",
11496 "extensions" : [ "SPV_INTEL_function_pointers" ],
11500 "enumerant" : "SubgroupAvcMotionEstimationINTEL",
11502 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
11506 "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL",
11508 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
11512 "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL",
11514 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
11518 "enumerant" : "FPGAMemoryAttributesINTEL",
11520 "extensions" : [ "SPV_INTEL_fpga_memory_attributes" ],
11524 "enumerant" : "UnstructuredLoopControlsINTEL",
11526 "extensions" : [ "SPV_INTEL_unstructured_loop_controls" ],
11530 "enumerant" : "FPGALoopControlsINTEL",
11532 "extensions" : [ "SPV_INTEL_fpga_loop_controls" ],
11536 "enumerant" : "KernelAttributesINTEL",
11538 "extensions" : [ "SPV_INTEL_kernel_attributes" ],
11542 "enumerant" : "FPGAKernelAttributesINTEL",
11544 "extensions" : [ "SPV_INTEL_kernel_attributes" ],
11548 "enumerant" : "BlockingPipesINTEL",
11550 "extensions" : [ "SPV_INTEL_blocking_pipes" ],
11554 "enumerant" : "FPGARegINTEL",
11556 "extensions" : [ "SPV_INTEL_fpga_reg" ],
11560 "enumerant" : "AtomicFloat32AddEXT",
11562 "capabilities" : [ "Shader" ],
11563 "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
11567 "enumerant" : "AtomicFloat64AddEXT",
11569 "capabilities" : [ "Shader" ],
11570 "extensions" : [ "SPV_EXT_shader_atomic_float_add" ],
11576 "category" : "ValueEnum",
11577 "kind" : "RayQueryIntersection",
11580 "enumerant" : "RayQueryCandidateIntersectionKHR",
11582 "capabilities" : [ "RayQueryProvisionalKHR" ],
11586 "enumerant" : "RayQueryCommittedIntersectionKHR",
11588 "capabilities" : [ "RayQueryProvisionalKHR" ],
11594 "category" : "ValueEnum",
11595 "kind" : "RayQueryCommittedIntersectionType",
11598 "enumerant" : "RayQueryCommittedIntersectionNoneKHR",
11600 "capabilities" : [ "RayQueryProvisionalKHR" ],
11604 "enumerant" : "RayQueryCommittedIntersectionTriangleKHR",
11606 "capabilities" : [ "RayQueryProvisionalKHR" ],
11610 "enumerant" : "RayQueryCommittedIntersectionGeneratedKHR",
11612 "capabilities" : [ "RayQueryProvisionalKHR" ],
11618 "category" : "ValueEnum",
11619 "kind" : "RayQueryCandidateIntersectionType",
11622 "enumerant" : "RayQueryCandidateIntersectionTriangleKHR",
11624 "capabilities" : [ "RayQueryProvisionalKHR" ],
11628 "enumerant" : "RayQueryCandidateIntersectionAABBKHR",
11630 "capabilities" : [ "RayQueryProvisionalKHR" ],
11637 "kind" : "IdResultType",
11638 "doc" : "Reference to an <id> representing the result's type of the enclosing instruction"
11642 "kind" : "IdResult",
11643 "doc" : "Definition of an <id> representing the result of the enclosing instruction"
11647 "kind" : "IdMemorySemantics",
11648 "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the MemorySemantics operand kind"
11652 "kind" : "IdScope",
11653 "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the Scope operand kind"
11658 "doc" : "Reference to an <id>"
11661 "category" : "Literal",
11662 "kind" : "LiteralInteger",
11663 "doc" : "An integer consuming one or more words"
11666 "category" : "Literal",
11667 "kind" : "LiteralString",
11668 "doc" : "A null-terminated stream of characters consuming an integral number of words"
11671 "category" : "Literal",
11672 "kind" : "LiteralContextDependentNumber",
11673 "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction"
11676 "category" : "Literal",
11677 "kind" : "LiteralExtInstInteger",
11678 "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)"
11681 "category" : "Literal",
11682 "kind" : "LiteralSpecConstantOpInteger",
11683 "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)"
11686 "category" : "Composite",
11687 "kind" : "PairLiteralIntegerIdRef",
11688 "bases" : [ "LiteralInteger", "IdRef" ]
11691 "category" : "Composite",
11692 "kind" : "PairIdRefLiteralInteger",
11693 "bases" : [ "IdRef", "LiteralInteger" ]
11696 "category" : "Composite",
11697 "kind" : "PairIdRefIdRef",
11698 "bases" : [ "IdRef", "IdRef" ]