3 "Copyright (c) 2014-2016 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",
40 { "kind" : "IdResultType" },
41 { "kind" : "IdResult" }
45 "opname" : "OpSourceContinued",
48 { "kind" : "LiteralString", "name" : "'Continued Source'" }
52 "opname" : "OpSource",
55 { "kind" : "SourceLanguage" },
56 { "kind" : "LiteralInteger", "name" : "'Version'" },
57 { "kind" : "IdRef", "quantifier" : "?", "name" : "'File'" },
58 { "kind" : "LiteralString", "quantifier" : "?", "name" : "'Source'" }
62 "opname" : "OpSourceExtension",
65 { "kind" : "LiteralString", "name" : "'Extension'" }
72 { "kind" : "IdRef", "name" : "'Target'" },
73 { "kind" : "LiteralString", "name" : "'Name'" }
77 "opname" : "OpMemberName",
80 { "kind" : "IdRef", "name" : "'Type'" },
81 { "kind" : "LiteralInteger", "name" : "'Member'" },
82 { "kind" : "LiteralString", "name" : "'Name'" }
86 "opname" : "OpString",
89 { "kind" : "IdResult" },
90 { "kind" : "LiteralString", "name" : "'String'" }
97 { "kind" : "IdRef", "name" : "'File'" },
98 { "kind" : "LiteralInteger", "name" : "'Line'" },
99 { "kind" : "LiteralInteger", "name" : "'Column'" }
103 "opname" : "OpExtension",
106 { "kind" : "LiteralString", "name" : "'Name'" }
110 "opname" : "OpExtInstImport",
113 { "kind" : "IdResult" },
114 { "kind" : "LiteralString", "name" : "'Name'" }
118 "opname" : "OpExtInst",
121 { "kind" : "IdResultType" },
122 { "kind" : "IdResult" },
123 { "kind" : "IdRef", "name" : "'Set'" },
124 { "kind" : "LiteralExtInstInteger", "name" : "'Instruction'" },
125 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Operand 1', +\n'Operand 2', +\n..." }
129 "opname" : "OpMemoryModel",
132 { "kind" : "AddressingModel" },
133 { "kind" : "MemoryModel" }
137 "opname" : "OpEntryPoint",
140 { "kind" : "ExecutionModel" },
141 { "kind" : "IdRef", "name" : "'Entry Point'" },
142 { "kind" : "LiteralString", "name" : "'Name'" },
143 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Interface'" }
147 "opname" : "OpExecutionMode",
150 { "kind" : "IdRef", "name" : "'Entry Point'" },
151 { "kind" : "ExecutionMode", "name" : "'Mode'" }
155 "opname" : "OpCapability",
158 { "kind" : "Capability", "name" : "'Capability'" }
162 "opname" : "OpTypeVoid",
165 { "kind" : "IdResult" }
169 "opname" : "OpTypeBool",
172 { "kind" : "IdResult" }
176 "opname" : "OpTypeInt",
179 { "kind" : "IdResult" },
180 { "kind" : "LiteralInteger", "name" : "'Width'" },
181 { "kind" : "LiteralInteger", "name" : "'Signedness'" }
185 "opname" : "OpTypeFloat",
188 { "kind" : "IdResult" },
189 { "kind" : "LiteralInteger", "name" : "'Width'" }
193 "opname" : "OpTypeVector",
196 { "kind" : "IdResult" },
197 { "kind" : "IdRef", "name" : "'Component Type'" },
198 { "kind" : "LiteralInteger", "name" : "'Component Count'" }
202 "opname" : "OpTypeMatrix",
205 { "kind" : "IdResult" },
206 { "kind" : "IdRef", "name" : "'Column Type'" },
207 { "kind" : "LiteralInteger", "name" : "'Column Count'" }
209 "capabilities" : [ "Matrix" ]
212 "opname" : "OpTypeImage",
215 { "kind" : "IdResult" },
216 { "kind" : "IdRef", "name" : "'Sampled Type'" },
218 { "kind" : "LiteralInteger", "name" : "'Depth'" },
219 { "kind" : "LiteralInteger", "name" : "'Arrayed'" },
220 { "kind" : "LiteralInteger", "name" : "'MS'" },
221 { "kind" : "LiteralInteger", "name" : "'Sampled'" },
222 { "kind" : "ImageFormat" },
223 { "kind" : "AccessQualifier", "quantifier" : "?" }
227 "opname" : "OpTypeSampler",
230 { "kind" : "IdResult" }
234 "opname" : "OpTypeSampledImage",
237 { "kind" : "IdResult" },
238 { "kind" : "IdRef", "name" : "'Image Type'" }
242 "opname" : "OpTypeArray",
245 { "kind" : "IdResult" },
246 { "kind" : "IdRef", "name" : "'Element Type'" },
247 { "kind" : "IdRef", "name" : "'Length'" }
251 "opname" : "OpTypeRuntimeArray",
254 { "kind" : "IdResult" },
255 { "kind" : "IdRef", "name" : "'Element Type'" }
257 "capabilities" : [ "Shader" ]
260 "opname" : "OpTypeStruct",
263 { "kind" : "IdResult" },
264 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Member 0 type', +\n'member 1 type', +\n..." }
268 "opname" : "OpTypeOpaque",
271 { "kind" : "IdResult" },
272 { "kind" : "LiteralString", "name" : "The name of the opaque type." }
274 "capabilities" : [ "Kernel" ]
277 "opname" : "OpTypePointer",
280 { "kind" : "IdResult" },
281 { "kind" : "StorageClass" },
282 { "kind" : "IdRef", "name" : "'Type'" }
286 "opname" : "OpTypeFunction",
289 { "kind" : "IdResult" },
290 { "kind" : "IdRef", "name" : "'Return Type'" },
291 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Parameter 0 Type', +\n'Parameter 1 Type', +\n..." }
295 "opname" : "OpTypeEvent",
298 { "kind" : "IdResult" }
300 "capabilities" : [ "Kernel" ]
303 "opname" : "OpTypeDeviceEvent",
306 { "kind" : "IdResult" }
308 "capabilities" : [ "DeviceEnqueue" ]
311 "opname" : "OpTypeReserveId",
314 { "kind" : "IdResult" }
316 "capabilities" : [ "Pipes" ]
319 "opname" : "OpTypeQueue",
322 { "kind" : "IdResult" }
324 "capabilities" : [ "DeviceEnqueue" ]
327 "opname" : "OpTypePipe",
330 { "kind" : "IdResult" },
331 { "kind" : "AccessQualifier", "name" : "'Qualifier'" }
333 "capabilities" : [ "Pipes" ]
336 "opname" : "OpTypeForwardPointer",
339 { "kind" : "IdRef", "name" : "'Pointer Type'" },
340 { "kind" : "StorageClass" }
344 "PhysicalStorageBufferAddressesEXT"
348 "opname" : "OpConstantTrue",
351 { "kind" : "IdResultType" },
352 { "kind" : "IdResult" }
356 "opname" : "OpConstantFalse",
359 { "kind" : "IdResultType" },
360 { "kind" : "IdResult" }
364 "opname" : "OpConstant",
367 { "kind" : "IdResultType" },
368 { "kind" : "IdResult" },
369 { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
373 "opname" : "OpConstantComposite",
376 { "kind" : "IdResultType" },
377 { "kind" : "IdResult" },
378 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" }
382 "opname" : "OpConstantSampler",
385 { "kind" : "IdResultType" },
386 { "kind" : "IdResult" },
387 { "kind" : "SamplerAddressingMode" },
388 { "kind" : "LiteralInteger", "name" : "'Param'" },
389 { "kind" : "SamplerFilterMode" }
391 "capabilities" : [ "LiteralSampler" ]
394 "opname" : "OpConstantNull",
397 { "kind" : "IdResultType" },
398 { "kind" : "IdResult" }
402 "opname" : "OpSpecConstantTrue",
405 { "kind" : "IdResultType" },
406 { "kind" : "IdResult" }
410 "opname" : "OpSpecConstantFalse",
413 { "kind" : "IdResultType" },
414 { "kind" : "IdResult" }
418 "opname" : "OpSpecConstant",
421 { "kind" : "IdResultType" },
422 { "kind" : "IdResult" },
423 { "kind" : "LiteralContextDependentNumber", "name" : "'Value'" }
427 "opname" : "OpSpecConstantComposite",
430 { "kind" : "IdResultType" },
431 { "kind" : "IdResult" },
432 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" }
436 "opname" : "OpSpecConstantOp",
439 { "kind" : "IdResultType" },
440 { "kind" : "IdResult" },
441 { "kind" : "LiteralSpecConstantOpInteger", "name" : "'Opcode'" }
445 "opname" : "OpFunction",
448 { "kind" : "IdResultType" },
449 { "kind" : "IdResult" },
450 { "kind" : "FunctionControl" },
451 { "kind" : "IdRef", "name" : "'Function Type'" }
455 "opname" : "OpFunctionParameter",
458 { "kind" : "IdResultType" },
459 { "kind" : "IdResult" }
463 "opname" : "OpFunctionEnd",
467 "opname" : "OpFunctionCall",
470 { "kind" : "IdResultType" },
471 { "kind" : "IdResult" },
472 { "kind" : "IdRef", "name" : "'Function'" },
473 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Argument 0', +\n'Argument 1', +\n..." }
477 "opname" : "OpVariable",
480 { "kind" : "IdResultType" },
481 { "kind" : "IdResult" },
482 { "kind" : "StorageClass" },
483 { "kind" : "IdRef", "quantifier" : "?", "name" : "'Initializer'" }
487 "opname" : "OpImageTexelPointer",
490 { "kind" : "IdResultType" },
491 { "kind" : "IdResult" },
492 { "kind" : "IdRef", "name" : "'Image'" },
493 { "kind" : "IdRef", "name" : "'Coordinate'" },
494 { "kind" : "IdRef", "name" : "'Sample'" }
501 { "kind" : "IdResultType" },
502 { "kind" : "IdResult" },
503 { "kind" : "IdRef", "name" : "'Pointer'" },
504 { "kind" : "MemoryAccess", "quantifier" : "?" }
508 "opname" : "OpStore",
511 { "kind" : "IdRef", "name" : "'Pointer'" },
512 { "kind" : "IdRef", "name" : "'Object'" },
513 { "kind" : "MemoryAccess", "quantifier" : "?" }
517 "opname" : "OpCopyMemory",
520 { "kind" : "IdRef", "name" : "'Target'" },
521 { "kind" : "IdRef", "name" : "'Source'" },
522 { "kind" : "MemoryAccess", "quantifier" : "?" },
523 { "kind" : "MemoryAccess", "quantifier" : "?" }
527 "opname" : "OpCopyMemorySized",
530 { "kind" : "IdRef", "name" : "'Target'" },
531 { "kind" : "IdRef", "name" : "'Source'" },
532 { "kind" : "IdRef", "name" : "'Size'" },
533 { "kind" : "MemoryAccess", "quantifier" : "?" },
534 { "kind" : "MemoryAccess", "quantifier" : "?" }
536 "capabilities" : [ "Addresses" ]
539 "opname" : "OpAccessChain",
542 { "kind" : "IdResultType" },
543 { "kind" : "IdResult" },
544 { "kind" : "IdRef", "name" : "'Base'" },
545 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
549 "opname" : "OpInBoundsAccessChain",
552 { "kind" : "IdResultType" },
553 { "kind" : "IdResult" },
554 { "kind" : "IdRef", "name" : "'Base'" },
555 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
559 "opname" : "OpPtrAccessChain",
562 { "kind" : "IdResultType" },
563 { "kind" : "IdResult" },
564 { "kind" : "IdRef", "name" : "'Base'" },
565 { "kind" : "IdRef", "name" : "'Element'" },
566 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
571 "VariablePointersStorageBuffer",
572 "PhysicalStorageBufferAddressesEXT"
576 "opname" : "OpArrayLength",
579 { "kind" : "IdResultType" },
580 { "kind" : "IdResult" },
581 { "kind" : "IdRef", "name" : "'Structure'" },
582 { "kind" : "LiteralInteger", "name" : "'Array member'" }
584 "capabilities" : [ "Shader" ]
587 "opname" : "OpGenericPtrMemSemantics",
590 { "kind" : "IdResultType" },
591 { "kind" : "IdResult" },
592 { "kind" : "IdRef", "name" : "'Pointer'" }
594 "capabilities" : [ "Kernel" ]
597 "opname" : "OpInBoundsPtrAccessChain",
600 { "kind" : "IdResultType" },
601 { "kind" : "IdResult" },
602 { "kind" : "IdRef", "name" : "'Base'" },
603 { "kind" : "IdRef", "name" : "'Element'" },
604 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Indexes'" }
606 "capabilities" : [ "Addresses" ]
609 "opname" : "OpDecorate",
612 { "kind" : "IdRef", "name" : "'Target'" },
613 { "kind" : "Decoration" }
617 "opname" : "OpMemberDecorate",
620 { "kind" : "IdRef", "name" : "'Structure Type'" },
621 { "kind" : "LiteralInteger", "name" : "'Member'" },
622 { "kind" : "Decoration" }
626 "opname" : "OpDecorationGroup",
629 { "kind" : "IdResult" }
633 "opname" : "OpGroupDecorate",
636 { "kind" : "IdRef", "name" : "'Decoration Group'" },
637 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Targets'" }
641 "opname" : "OpGroupMemberDecorate",
644 { "kind" : "IdRef", "name" : "'Decoration Group'" },
645 { "kind" : "PairIdRefLiteralInteger", "quantifier" : "*", "name" : "'Targets'" }
649 "opname" : "OpVectorExtractDynamic",
652 { "kind" : "IdResultType" },
653 { "kind" : "IdResult" },
654 { "kind" : "IdRef", "name" : "'Vector'" },
655 { "kind" : "IdRef", "name" : "'Index'" }
659 "opname" : "OpVectorInsertDynamic",
662 { "kind" : "IdResultType" },
663 { "kind" : "IdResult" },
664 { "kind" : "IdRef", "name" : "'Vector'" },
665 { "kind" : "IdRef", "name" : "'Component'" },
666 { "kind" : "IdRef", "name" : "'Index'" }
670 "opname" : "OpVectorShuffle",
673 { "kind" : "IdResultType" },
674 { "kind" : "IdResult" },
675 { "kind" : "IdRef", "name" : "'Vector 1'" },
676 { "kind" : "IdRef", "name" : "'Vector 2'" },
677 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Components'" }
681 "opname" : "OpCompositeConstruct",
684 { "kind" : "IdResultType" },
685 { "kind" : "IdResult" },
686 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Constituents'" }
690 "opname" : "OpCompositeExtract",
693 { "kind" : "IdResultType" },
694 { "kind" : "IdResult" },
695 { "kind" : "IdRef", "name" : "'Composite'" },
696 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
700 "opname" : "OpCompositeInsert",
703 { "kind" : "IdResultType" },
704 { "kind" : "IdResult" },
705 { "kind" : "IdRef", "name" : "'Object'" },
706 { "kind" : "IdRef", "name" : "'Composite'" },
707 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Indexes'" }
711 "opname" : "OpCopyObject",
714 { "kind" : "IdResultType" },
715 { "kind" : "IdResult" },
716 { "kind" : "IdRef", "name" : "'Operand'" }
720 "opname" : "OpTranspose",
723 { "kind" : "IdResultType" },
724 { "kind" : "IdResult" },
725 { "kind" : "IdRef", "name" : "'Matrix'" }
727 "capabilities" : [ "Matrix" ]
730 "opname" : "OpSampledImage",
733 { "kind" : "IdResultType" },
734 { "kind" : "IdResult" },
735 { "kind" : "IdRef", "name" : "'Image'" },
736 { "kind" : "IdRef", "name" : "'Sampler'" }
740 "opname" : "OpImageSampleImplicitLod",
743 { "kind" : "IdResultType" },
744 { "kind" : "IdResult" },
745 { "kind" : "IdRef", "name" : "'Sampled Image'" },
746 { "kind" : "IdRef", "name" : "'Coordinate'" },
747 { "kind" : "ImageOperands", "quantifier" : "?" }
749 "capabilities" : [ "Shader" ]
752 "opname" : "OpImageSampleExplicitLod",
755 { "kind" : "IdResultType" },
756 { "kind" : "IdResult" },
757 { "kind" : "IdRef", "name" : "'Sampled Image'" },
758 { "kind" : "IdRef", "name" : "'Coordinate'" },
759 { "kind" : "ImageOperands" }
763 "opname" : "OpImageSampleDrefImplicitLod",
766 { "kind" : "IdResultType" },
767 { "kind" : "IdResult" },
768 { "kind" : "IdRef", "name" : "'Sampled Image'" },
769 { "kind" : "IdRef", "name" : "'Coordinate'" },
770 { "kind" : "IdRef", "name" : "'D~ref~'" },
771 { "kind" : "ImageOperands", "quantifier" : "?" }
773 "capabilities" : [ "Shader" ]
776 "opname" : "OpImageSampleDrefExplicitLod",
779 { "kind" : "IdResultType" },
780 { "kind" : "IdResult" },
781 { "kind" : "IdRef", "name" : "'Sampled Image'" },
782 { "kind" : "IdRef", "name" : "'Coordinate'" },
783 { "kind" : "IdRef", "name" : "'D~ref~'" },
784 { "kind" : "ImageOperands" }
786 "capabilities" : [ "Shader" ]
789 "opname" : "OpImageSampleProjImplicitLod",
792 { "kind" : "IdResultType" },
793 { "kind" : "IdResult" },
794 { "kind" : "IdRef", "name" : "'Sampled Image'" },
795 { "kind" : "IdRef", "name" : "'Coordinate'" },
796 { "kind" : "ImageOperands", "quantifier" : "?" }
798 "capabilities" : [ "Shader" ]
801 "opname" : "OpImageSampleProjExplicitLod",
804 { "kind" : "IdResultType" },
805 { "kind" : "IdResult" },
806 { "kind" : "IdRef", "name" : "'Sampled Image'" },
807 { "kind" : "IdRef", "name" : "'Coordinate'" },
808 { "kind" : "ImageOperands" }
810 "capabilities" : [ "Shader" ]
813 "opname" : "OpImageSampleProjDrefImplicitLod",
816 { "kind" : "IdResultType" },
817 { "kind" : "IdResult" },
818 { "kind" : "IdRef", "name" : "'Sampled Image'" },
819 { "kind" : "IdRef", "name" : "'Coordinate'" },
820 { "kind" : "IdRef", "name" : "'D~ref~'" },
821 { "kind" : "ImageOperands", "quantifier" : "?" }
823 "capabilities" : [ "Shader" ]
826 "opname" : "OpImageSampleProjDrefExplicitLod",
829 { "kind" : "IdResultType" },
830 { "kind" : "IdResult" },
831 { "kind" : "IdRef", "name" : "'Sampled Image'" },
832 { "kind" : "IdRef", "name" : "'Coordinate'" },
833 { "kind" : "IdRef", "name" : "'D~ref~'" },
834 { "kind" : "ImageOperands" }
836 "capabilities" : [ "Shader" ]
839 "opname" : "OpImageFetch",
842 { "kind" : "IdResultType" },
843 { "kind" : "IdResult" },
844 { "kind" : "IdRef", "name" : "'Image'" },
845 { "kind" : "IdRef", "name" : "'Coordinate'" },
846 { "kind" : "ImageOperands", "quantifier" : "?" }
850 "opname" : "OpImageGather",
853 { "kind" : "IdResultType" },
854 { "kind" : "IdResult" },
855 { "kind" : "IdRef", "name" : "'Sampled Image'" },
856 { "kind" : "IdRef", "name" : "'Coordinate'" },
857 { "kind" : "IdRef", "name" : "'Component'" },
858 { "kind" : "ImageOperands", "quantifier" : "?" }
860 "capabilities" : [ "Shader" ]
863 "opname" : "OpImageDrefGather",
866 { "kind" : "IdResultType" },
867 { "kind" : "IdResult" },
868 { "kind" : "IdRef", "name" : "'Sampled Image'" },
869 { "kind" : "IdRef", "name" : "'Coordinate'" },
870 { "kind" : "IdRef", "name" : "'D~ref~'" },
871 { "kind" : "ImageOperands", "quantifier" : "?" }
873 "capabilities" : [ "Shader" ]
876 "opname" : "OpImageRead",
879 { "kind" : "IdResultType" },
880 { "kind" : "IdResult" },
881 { "kind" : "IdRef", "name" : "'Image'" },
882 { "kind" : "IdRef", "name" : "'Coordinate'" },
883 { "kind" : "ImageOperands", "quantifier" : "?" }
887 "opname" : "OpImageWrite",
890 { "kind" : "IdRef", "name" : "'Image'" },
891 { "kind" : "IdRef", "name" : "'Coordinate'" },
892 { "kind" : "IdRef", "name" : "'Texel'" },
893 { "kind" : "ImageOperands", "quantifier" : "?" }
897 "opname" : "OpImage",
900 { "kind" : "IdResultType" },
901 { "kind" : "IdResult" },
902 { "kind" : "IdRef", "name" : "'Sampled Image'" }
906 "opname" : "OpImageQueryFormat",
909 { "kind" : "IdResultType" },
910 { "kind" : "IdResult" },
911 { "kind" : "IdRef", "name" : "'Image'" }
913 "capabilities" : [ "Kernel" ]
916 "opname" : "OpImageQueryOrder",
919 { "kind" : "IdResultType" },
920 { "kind" : "IdResult" },
921 { "kind" : "IdRef", "name" : "'Image'" }
923 "capabilities" : [ "Kernel" ]
926 "opname" : "OpImageQuerySizeLod",
929 { "kind" : "IdResultType" },
930 { "kind" : "IdResult" },
931 { "kind" : "IdRef", "name" : "'Image'" },
932 { "kind" : "IdRef", "name" : "'Level of Detail'" }
934 "capabilities" : [ "Kernel", "ImageQuery" ]
937 "opname" : "OpImageQuerySize",
940 { "kind" : "IdResultType" },
941 { "kind" : "IdResult" },
942 { "kind" : "IdRef", "name" : "'Image'" }
944 "capabilities" : [ "Kernel", "ImageQuery" ]
947 "opname" : "OpImageQueryLod",
950 { "kind" : "IdResultType" },
951 { "kind" : "IdResult" },
952 { "kind" : "IdRef", "name" : "'Sampled Image'" },
953 { "kind" : "IdRef", "name" : "'Coordinate'" }
955 "capabilities" : [ "ImageQuery" ]
958 "opname" : "OpImageQueryLevels",
961 { "kind" : "IdResultType" },
962 { "kind" : "IdResult" },
963 { "kind" : "IdRef", "name" : "'Image'" }
965 "capabilities" : [ "Kernel", "ImageQuery" ]
968 "opname" : "OpImageQuerySamples",
971 { "kind" : "IdResultType" },
972 { "kind" : "IdResult" },
973 { "kind" : "IdRef", "name" : "'Image'" }
975 "capabilities" : [ "Kernel", "ImageQuery" ]
978 "opname" : "OpConvertFToU",
981 { "kind" : "IdResultType" },
982 { "kind" : "IdResult" },
983 { "kind" : "IdRef", "name" : "'Float Value'" }
987 "opname" : "OpConvertFToS",
990 { "kind" : "IdResultType" },
991 { "kind" : "IdResult" },
992 { "kind" : "IdRef", "name" : "'Float Value'" }
996 "opname" : "OpConvertSToF",
999 { "kind" : "IdResultType" },
1000 { "kind" : "IdResult" },
1001 { "kind" : "IdRef", "name" : "'Signed Value'" }
1005 "opname" : "OpConvertUToF",
1008 { "kind" : "IdResultType" },
1009 { "kind" : "IdResult" },
1010 { "kind" : "IdRef", "name" : "'Unsigned Value'" }
1014 "opname" : "OpUConvert",
1017 { "kind" : "IdResultType" },
1018 { "kind" : "IdResult" },
1019 { "kind" : "IdRef", "name" : "'Unsigned Value'" }
1023 "opname" : "OpSConvert",
1026 { "kind" : "IdResultType" },
1027 { "kind" : "IdResult" },
1028 { "kind" : "IdRef", "name" : "'Signed Value'" }
1032 "opname" : "OpFConvert",
1035 { "kind" : "IdResultType" },
1036 { "kind" : "IdResult" },
1037 { "kind" : "IdRef", "name" : "'Float Value'" }
1041 "opname" : "OpQuantizeToF16",
1044 { "kind" : "IdResultType" },
1045 { "kind" : "IdResult" },
1046 { "kind" : "IdRef", "name" : "'Value'" }
1050 "opname" : "OpConvertPtrToU",
1053 { "kind" : "IdResultType" },
1054 { "kind" : "IdResult" },
1055 { "kind" : "IdRef", "name" : "'Pointer'" }
1059 "PhysicalStorageBufferAddressesEXT"
1063 "opname" : "OpSatConvertSToU",
1066 { "kind" : "IdResultType" },
1067 { "kind" : "IdResult" },
1068 { "kind" : "IdRef", "name" : "'Signed Value'" }
1070 "capabilities" : [ "Kernel" ]
1073 "opname" : "OpSatConvertUToS",
1076 { "kind" : "IdResultType" },
1077 { "kind" : "IdResult" },
1078 { "kind" : "IdRef", "name" : "'Unsigned Value'" }
1080 "capabilities" : [ "Kernel" ]
1083 "opname" : "OpConvertUToPtr",
1086 { "kind" : "IdResultType" },
1087 { "kind" : "IdResult" },
1088 { "kind" : "IdRef", "name" : "'Integer Value'" }
1092 "PhysicalStorageBufferAddressesEXT"
1096 "opname" : "OpPtrCastToGeneric",
1099 { "kind" : "IdResultType" },
1100 { "kind" : "IdResult" },
1101 { "kind" : "IdRef", "name" : "'Pointer'" }
1103 "capabilities" : [ "Kernel" ]
1106 "opname" : "OpGenericCastToPtr",
1109 { "kind" : "IdResultType" },
1110 { "kind" : "IdResult" },
1111 { "kind" : "IdRef", "name" : "'Pointer'" }
1113 "capabilities" : [ "Kernel" ]
1116 "opname" : "OpGenericCastToPtrExplicit",
1119 { "kind" : "IdResultType" },
1120 { "kind" : "IdResult" },
1121 { "kind" : "IdRef", "name" : "'Pointer'" },
1122 { "kind" : "StorageClass", "name" : "'Storage'" }
1124 "capabilities" : [ "Kernel" ]
1127 "opname" : "OpBitcast",
1130 { "kind" : "IdResultType" },
1131 { "kind" : "IdResult" },
1132 { "kind" : "IdRef", "name" : "'Operand'" }
1136 "opname" : "OpSNegate",
1139 { "kind" : "IdResultType" },
1140 { "kind" : "IdResult" },
1141 { "kind" : "IdRef", "name" : "'Operand'" }
1145 "opname" : "OpFNegate",
1148 { "kind" : "IdResultType" },
1149 { "kind" : "IdResult" },
1150 { "kind" : "IdRef", "name" : "'Operand'" }
1154 "opname" : "OpIAdd",
1157 { "kind" : "IdResultType" },
1158 { "kind" : "IdResult" },
1159 { "kind" : "IdRef", "name" : "'Operand 1'" },
1160 { "kind" : "IdRef", "name" : "'Operand 2'" }
1164 "opname" : "OpFAdd",
1167 { "kind" : "IdResultType" },
1168 { "kind" : "IdResult" },
1169 { "kind" : "IdRef", "name" : "'Operand 1'" },
1170 { "kind" : "IdRef", "name" : "'Operand 2'" }
1174 "opname" : "OpISub",
1177 { "kind" : "IdResultType" },
1178 { "kind" : "IdResult" },
1179 { "kind" : "IdRef", "name" : "'Operand 1'" },
1180 { "kind" : "IdRef", "name" : "'Operand 2'" }
1184 "opname" : "OpFSub",
1187 { "kind" : "IdResultType" },
1188 { "kind" : "IdResult" },
1189 { "kind" : "IdRef", "name" : "'Operand 1'" },
1190 { "kind" : "IdRef", "name" : "'Operand 2'" }
1194 "opname" : "OpIMul",
1197 { "kind" : "IdResultType" },
1198 { "kind" : "IdResult" },
1199 { "kind" : "IdRef", "name" : "'Operand 1'" },
1200 { "kind" : "IdRef", "name" : "'Operand 2'" }
1204 "opname" : "OpFMul",
1207 { "kind" : "IdResultType" },
1208 { "kind" : "IdResult" },
1209 { "kind" : "IdRef", "name" : "'Operand 1'" },
1210 { "kind" : "IdRef", "name" : "'Operand 2'" }
1214 "opname" : "OpUDiv",
1217 { "kind" : "IdResultType" },
1218 { "kind" : "IdResult" },
1219 { "kind" : "IdRef", "name" : "'Operand 1'" },
1220 { "kind" : "IdRef", "name" : "'Operand 2'" }
1224 "opname" : "OpSDiv",
1227 { "kind" : "IdResultType" },
1228 { "kind" : "IdResult" },
1229 { "kind" : "IdRef", "name" : "'Operand 1'" },
1230 { "kind" : "IdRef", "name" : "'Operand 2'" }
1234 "opname" : "OpFDiv",
1237 { "kind" : "IdResultType" },
1238 { "kind" : "IdResult" },
1239 { "kind" : "IdRef", "name" : "'Operand 1'" },
1240 { "kind" : "IdRef", "name" : "'Operand 2'" }
1244 "opname" : "OpUMod",
1247 { "kind" : "IdResultType" },
1248 { "kind" : "IdResult" },
1249 { "kind" : "IdRef", "name" : "'Operand 1'" },
1250 { "kind" : "IdRef", "name" : "'Operand 2'" }
1254 "opname" : "OpSRem",
1257 { "kind" : "IdResultType" },
1258 { "kind" : "IdResult" },
1259 { "kind" : "IdRef", "name" : "'Operand 1'" },
1260 { "kind" : "IdRef", "name" : "'Operand 2'" }
1264 "opname" : "OpSMod",
1267 { "kind" : "IdResultType" },
1268 { "kind" : "IdResult" },
1269 { "kind" : "IdRef", "name" : "'Operand 1'" },
1270 { "kind" : "IdRef", "name" : "'Operand 2'" }
1274 "opname" : "OpFRem",
1277 { "kind" : "IdResultType" },
1278 { "kind" : "IdResult" },
1279 { "kind" : "IdRef", "name" : "'Operand 1'" },
1280 { "kind" : "IdRef", "name" : "'Operand 2'" }
1284 "opname" : "OpFMod",
1287 { "kind" : "IdResultType" },
1288 { "kind" : "IdResult" },
1289 { "kind" : "IdRef", "name" : "'Operand 1'" },
1290 { "kind" : "IdRef", "name" : "'Operand 2'" }
1294 "opname" : "OpVectorTimesScalar",
1297 { "kind" : "IdResultType" },
1298 { "kind" : "IdResult" },
1299 { "kind" : "IdRef", "name" : "'Vector'" },
1300 { "kind" : "IdRef", "name" : "'Scalar'" }
1304 "opname" : "OpMatrixTimesScalar",
1307 { "kind" : "IdResultType" },
1308 { "kind" : "IdResult" },
1309 { "kind" : "IdRef", "name" : "'Matrix'" },
1310 { "kind" : "IdRef", "name" : "'Scalar'" }
1312 "capabilities" : [ "Matrix" ]
1315 "opname" : "OpVectorTimesMatrix",
1318 { "kind" : "IdResultType" },
1319 { "kind" : "IdResult" },
1320 { "kind" : "IdRef", "name" : "'Vector'" },
1321 { "kind" : "IdRef", "name" : "'Matrix'" }
1323 "capabilities" : [ "Matrix" ]
1326 "opname" : "OpMatrixTimesVector",
1329 { "kind" : "IdResultType" },
1330 { "kind" : "IdResult" },
1331 { "kind" : "IdRef", "name" : "'Matrix'" },
1332 { "kind" : "IdRef", "name" : "'Vector'" }
1334 "capabilities" : [ "Matrix" ]
1337 "opname" : "OpMatrixTimesMatrix",
1340 { "kind" : "IdResultType" },
1341 { "kind" : "IdResult" },
1342 { "kind" : "IdRef", "name" : "'LeftMatrix'" },
1343 { "kind" : "IdRef", "name" : "'RightMatrix'" }
1345 "capabilities" : [ "Matrix" ]
1348 "opname" : "OpOuterProduct",
1351 { "kind" : "IdResultType" },
1352 { "kind" : "IdResult" },
1353 { "kind" : "IdRef", "name" : "'Vector 1'" },
1354 { "kind" : "IdRef", "name" : "'Vector 2'" }
1356 "capabilities" : [ "Matrix" ]
1362 { "kind" : "IdResultType" },
1363 { "kind" : "IdResult" },
1364 { "kind" : "IdRef", "name" : "'Vector 1'" },
1365 { "kind" : "IdRef", "name" : "'Vector 2'" }
1369 "opname" : "OpIAddCarry",
1372 { "kind" : "IdResultType" },
1373 { "kind" : "IdResult" },
1374 { "kind" : "IdRef", "name" : "'Operand 1'" },
1375 { "kind" : "IdRef", "name" : "'Operand 2'" }
1379 "opname" : "OpISubBorrow",
1382 { "kind" : "IdResultType" },
1383 { "kind" : "IdResult" },
1384 { "kind" : "IdRef", "name" : "'Operand 1'" },
1385 { "kind" : "IdRef", "name" : "'Operand 2'" }
1389 "opname" : "OpUMulExtended",
1392 { "kind" : "IdResultType" },
1393 { "kind" : "IdResult" },
1394 { "kind" : "IdRef", "name" : "'Operand 1'" },
1395 { "kind" : "IdRef", "name" : "'Operand 2'" }
1399 "opname" : "OpSMulExtended",
1402 { "kind" : "IdResultType" },
1403 { "kind" : "IdResult" },
1404 { "kind" : "IdRef", "name" : "'Operand 1'" },
1405 { "kind" : "IdRef", "name" : "'Operand 2'" }
1412 { "kind" : "IdResultType" },
1413 { "kind" : "IdResult" },
1414 { "kind" : "IdRef", "name" : "'Vector'" }
1421 { "kind" : "IdResultType" },
1422 { "kind" : "IdResult" },
1423 { "kind" : "IdRef", "name" : "'Vector'" }
1427 "opname" : "OpIsNan",
1430 { "kind" : "IdResultType" },
1431 { "kind" : "IdResult" },
1432 { "kind" : "IdRef", "name" : "'x'" }
1436 "opname" : "OpIsInf",
1439 { "kind" : "IdResultType" },
1440 { "kind" : "IdResult" },
1441 { "kind" : "IdRef", "name" : "'x'" }
1445 "opname" : "OpIsFinite",
1448 { "kind" : "IdResultType" },
1449 { "kind" : "IdResult" },
1450 { "kind" : "IdRef", "name" : "'x'" }
1452 "capabilities" : [ "Kernel" ]
1455 "opname" : "OpIsNormal",
1458 { "kind" : "IdResultType" },
1459 { "kind" : "IdResult" },
1460 { "kind" : "IdRef", "name" : "'x'" }
1462 "capabilities" : [ "Kernel" ]
1465 "opname" : "OpSignBitSet",
1468 { "kind" : "IdResultType" },
1469 { "kind" : "IdResult" },
1470 { "kind" : "IdRef", "name" : "'x'" }
1472 "capabilities" : [ "Kernel" ]
1475 "opname" : "OpLessOrGreater",
1478 { "kind" : "IdResultType" },
1479 { "kind" : "IdResult" },
1480 { "kind" : "IdRef", "name" : "'x'" },
1481 { "kind" : "IdRef", "name" : "'y'" }
1483 "capabilities" : [ "Kernel" ]
1486 "opname" : "OpOrdered",
1489 { "kind" : "IdResultType" },
1490 { "kind" : "IdResult" },
1491 { "kind" : "IdRef", "name" : "'x'" },
1492 { "kind" : "IdRef", "name" : "'y'" }
1494 "capabilities" : [ "Kernel" ]
1497 "opname" : "OpUnordered",
1500 { "kind" : "IdResultType" },
1501 { "kind" : "IdResult" },
1502 { "kind" : "IdRef", "name" : "'x'" },
1503 { "kind" : "IdRef", "name" : "'y'" }
1505 "capabilities" : [ "Kernel" ]
1508 "opname" : "OpLogicalEqual",
1511 { "kind" : "IdResultType" },
1512 { "kind" : "IdResult" },
1513 { "kind" : "IdRef", "name" : "'Operand 1'" },
1514 { "kind" : "IdRef", "name" : "'Operand 2'" }
1518 "opname" : "OpLogicalNotEqual",
1521 { "kind" : "IdResultType" },
1522 { "kind" : "IdResult" },
1523 { "kind" : "IdRef", "name" : "'Operand 1'" },
1524 { "kind" : "IdRef", "name" : "'Operand 2'" }
1528 "opname" : "OpLogicalOr",
1531 { "kind" : "IdResultType" },
1532 { "kind" : "IdResult" },
1533 { "kind" : "IdRef", "name" : "'Operand 1'" },
1534 { "kind" : "IdRef", "name" : "'Operand 2'" }
1538 "opname" : "OpLogicalAnd",
1541 { "kind" : "IdResultType" },
1542 { "kind" : "IdResult" },
1543 { "kind" : "IdRef", "name" : "'Operand 1'" },
1544 { "kind" : "IdRef", "name" : "'Operand 2'" }
1548 "opname" : "OpLogicalNot",
1551 { "kind" : "IdResultType" },
1552 { "kind" : "IdResult" },
1553 { "kind" : "IdRef", "name" : "'Operand'" }
1557 "opname" : "OpSelect",
1560 { "kind" : "IdResultType" },
1561 { "kind" : "IdResult" },
1562 { "kind" : "IdRef", "name" : "'Condition'" },
1563 { "kind" : "IdRef", "name" : "'Object 1'" },
1564 { "kind" : "IdRef", "name" : "'Object 2'" }
1568 "opname" : "OpIEqual",
1571 { "kind" : "IdResultType" },
1572 { "kind" : "IdResult" },
1573 { "kind" : "IdRef", "name" : "'Operand 1'" },
1574 { "kind" : "IdRef", "name" : "'Operand 2'" }
1578 "opname" : "OpINotEqual",
1581 { "kind" : "IdResultType" },
1582 { "kind" : "IdResult" },
1583 { "kind" : "IdRef", "name" : "'Operand 1'" },
1584 { "kind" : "IdRef", "name" : "'Operand 2'" }
1588 "opname" : "OpUGreaterThan",
1591 { "kind" : "IdResultType" },
1592 { "kind" : "IdResult" },
1593 { "kind" : "IdRef", "name" : "'Operand 1'" },
1594 { "kind" : "IdRef", "name" : "'Operand 2'" }
1598 "opname" : "OpSGreaterThan",
1601 { "kind" : "IdResultType" },
1602 { "kind" : "IdResult" },
1603 { "kind" : "IdRef", "name" : "'Operand 1'" },
1604 { "kind" : "IdRef", "name" : "'Operand 2'" }
1608 "opname" : "OpUGreaterThanEqual",
1611 { "kind" : "IdResultType" },
1612 { "kind" : "IdResult" },
1613 { "kind" : "IdRef", "name" : "'Operand 1'" },
1614 { "kind" : "IdRef", "name" : "'Operand 2'" }
1618 "opname" : "OpSGreaterThanEqual",
1621 { "kind" : "IdResultType" },
1622 { "kind" : "IdResult" },
1623 { "kind" : "IdRef", "name" : "'Operand 1'" },
1624 { "kind" : "IdRef", "name" : "'Operand 2'" }
1628 "opname" : "OpULessThan",
1631 { "kind" : "IdResultType" },
1632 { "kind" : "IdResult" },
1633 { "kind" : "IdRef", "name" : "'Operand 1'" },
1634 { "kind" : "IdRef", "name" : "'Operand 2'" }
1638 "opname" : "OpSLessThan",
1641 { "kind" : "IdResultType" },
1642 { "kind" : "IdResult" },
1643 { "kind" : "IdRef", "name" : "'Operand 1'" },
1644 { "kind" : "IdRef", "name" : "'Operand 2'" }
1648 "opname" : "OpULessThanEqual",
1651 { "kind" : "IdResultType" },
1652 { "kind" : "IdResult" },
1653 { "kind" : "IdRef", "name" : "'Operand 1'" },
1654 { "kind" : "IdRef", "name" : "'Operand 2'" }
1658 "opname" : "OpSLessThanEqual",
1661 { "kind" : "IdResultType" },
1662 { "kind" : "IdResult" },
1663 { "kind" : "IdRef", "name" : "'Operand 1'" },
1664 { "kind" : "IdRef", "name" : "'Operand 2'" }
1668 "opname" : "OpFOrdEqual",
1671 { "kind" : "IdResultType" },
1672 { "kind" : "IdResult" },
1673 { "kind" : "IdRef", "name" : "'Operand 1'" },
1674 { "kind" : "IdRef", "name" : "'Operand 2'" }
1678 "opname" : "OpFUnordEqual",
1681 { "kind" : "IdResultType" },
1682 { "kind" : "IdResult" },
1683 { "kind" : "IdRef", "name" : "'Operand 1'" },
1684 { "kind" : "IdRef", "name" : "'Operand 2'" }
1688 "opname" : "OpFOrdNotEqual",
1691 { "kind" : "IdResultType" },
1692 { "kind" : "IdResult" },
1693 { "kind" : "IdRef", "name" : "'Operand 1'" },
1694 { "kind" : "IdRef", "name" : "'Operand 2'" }
1698 "opname" : "OpFUnordNotEqual",
1701 { "kind" : "IdResultType" },
1702 { "kind" : "IdResult" },
1703 { "kind" : "IdRef", "name" : "'Operand 1'" },
1704 { "kind" : "IdRef", "name" : "'Operand 2'" }
1708 "opname" : "OpFOrdLessThan",
1711 { "kind" : "IdResultType" },
1712 { "kind" : "IdResult" },
1713 { "kind" : "IdRef", "name" : "'Operand 1'" },
1714 { "kind" : "IdRef", "name" : "'Operand 2'" }
1718 "opname" : "OpFUnordLessThan",
1721 { "kind" : "IdResultType" },
1722 { "kind" : "IdResult" },
1723 { "kind" : "IdRef", "name" : "'Operand 1'" },
1724 { "kind" : "IdRef", "name" : "'Operand 2'" }
1728 "opname" : "OpFOrdGreaterThan",
1731 { "kind" : "IdResultType" },
1732 { "kind" : "IdResult" },
1733 { "kind" : "IdRef", "name" : "'Operand 1'" },
1734 { "kind" : "IdRef", "name" : "'Operand 2'" }
1738 "opname" : "OpFUnordGreaterThan",
1741 { "kind" : "IdResultType" },
1742 { "kind" : "IdResult" },
1743 { "kind" : "IdRef", "name" : "'Operand 1'" },
1744 { "kind" : "IdRef", "name" : "'Operand 2'" }
1748 "opname" : "OpFOrdLessThanEqual",
1751 { "kind" : "IdResultType" },
1752 { "kind" : "IdResult" },
1753 { "kind" : "IdRef", "name" : "'Operand 1'" },
1754 { "kind" : "IdRef", "name" : "'Operand 2'" }
1758 "opname" : "OpFUnordLessThanEqual",
1761 { "kind" : "IdResultType" },
1762 { "kind" : "IdResult" },
1763 { "kind" : "IdRef", "name" : "'Operand 1'" },
1764 { "kind" : "IdRef", "name" : "'Operand 2'" }
1768 "opname" : "OpFOrdGreaterThanEqual",
1771 { "kind" : "IdResultType" },
1772 { "kind" : "IdResult" },
1773 { "kind" : "IdRef", "name" : "'Operand 1'" },
1774 { "kind" : "IdRef", "name" : "'Operand 2'" }
1778 "opname" : "OpFUnordGreaterThanEqual",
1781 { "kind" : "IdResultType" },
1782 { "kind" : "IdResult" },
1783 { "kind" : "IdRef", "name" : "'Operand 1'" },
1784 { "kind" : "IdRef", "name" : "'Operand 2'" }
1788 "opname" : "OpShiftRightLogical",
1791 { "kind" : "IdResultType" },
1792 { "kind" : "IdResult" },
1793 { "kind" : "IdRef", "name" : "'Base'" },
1794 { "kind" : "IdRef", "name" : "'Shift'" }
1798 "opname" : "OpShiftRightArithmetic",
1801 { "kind" : "IdResultType" },
1802 { "kind" : "IdResult" },
1803 { "kind" : "IdRef", "name" : "'Base'" },
1804 { "kind" : "IdRef", "name" : "'Shift'" }
1808 "opname" : "OpShiftLeftLogical",
1811 { "kind" : "IdResultType" },
1812 { "kind" : "IdResult" },
1813 { "kind" : "IdRef", "name" : "'Base'" },
1814 { "kind" : "IdRef", "name" : "'Shift'" }
1818 "opname" : "OpBitwiseOr",
1821 { "kind" : "IdResultType" },
1822 { "kind" : "IdResult" },
1823 { "kind" : "IdRef", "name" : "'Operand 1'" },
1824 { "kind" : "IdRef", "name" : "'Operand 2'" }
1828 "opname" : "OpBitwiseXor",
1831 { "kind" : "IdResultType" },
1832 { "kind" : "IdResult" },
1833 { "kind" : "IdRef", "name" : "'Operand 1'" },
1834 { "kind" : "IdRef", "name" : "'Operand 2'" }
1838 "opname" : "OpBitwiseAnd",
1841 { "kind" : "IdResultType" },
1842 { "kind" : "IdResult" },
1843 { "kind" : "IdRef", "name" : "'Operand 1'" },
1844 { "kind" : "IdRef", "name" : "'Operand 2'" }
1851 { "kind" : "IdResultType" },
1852 { "kind" : "IdResult" },
1853 { "kind" : "IdRef", "name" : "'Operand'" }
1857 "opname" : "OpBitFieldInsert",
1860 { "kind" : "IdResultType" },
1861 { "kind" : "IdResult" },
1862 { "kind" : "IdRef", "name" : "'Base'" },
1863 { "kind" : "IdRef", "name" : "'Insert'" },
1864 { "kind" : "IdRef", "name" : "'Offset'" },
1865 { "kind" : "IdRef", "name" : "'Count'" }
1867 "capabilities" : [ "Shader" ]
1870 "opname" : "OpBitFieldSExtract",
1873 { "kind" : "IdResultType" },
1874 { "kind" : "IdResult" },
1875 { "kind" : "IdRef", "name" : "'Base'" },
1876 { "kind" : "IdRef", "name" : "'Offset'" },
1877 { "kind" : "IdRef", "name" : "'Count'" }
1879 "capabilities" : [ "Shader" ]
1882 "opname" : "OpBitFieldUExtract",
1885 { "kind" : "IdResultType" },
1886 { "kind" : "IdResult" },
1887 { "kind" : "IdRef", "name" : "'Base'" },
1888 { "kind" : "IdRef", "name" : "'Offset'" },
1889 { "kind" : "IdRef", "name" : "'Count'" }
1891 "capabilities" : [ "Shader" ]
1894 "opname" : "OpBitReverse",
1897 { "kind" : "IdResultType" },
1898 { "kind" : "IdResult" },
1899 { "kind" : "IdRef", "name" : "'Base'" }
1901 "capabilities" : [ "Shader" ]
1904 "opname" : "OpBitCount",
1907 { "kind" : "IdResultType" },
1908 { "kind" : "IdResult" },
1909 { "kind" : "IdRef", "name" : "'Base'" }
1913 "opname" : "OpDPdx",
1916 { "kind" : "IdResultType" },
1917 { "kind" : "IdResult" },
1918 { "kind" : "IdRef", "name" : "'P'" }
1920 "capabilities" : [ "Shader" ]
1923 "opname" : "OpDPdy",
1926 { "kind" : "IdResultType" },
1927 { "kind" : "IdResult" },
1928 { "kind" : "IdRef", "name" : "'P'" }
1930 "capabilities" : [ "Shader" ]
1933 "opname" : "OpFwidth",
1936 { "kind" : "IdResultType" },
1937 { "kind" : "IdResult" },
1938 { "kind" : "IdRef", "name" : "'P'" }
1940 "capabilities" : [ "Shader" ]
1943 "opname" : "OpDPdxFine",
1946 { "kind" : "IdResultType" },
1947 { "kind" : "IdResult" },
1948 { "kind" : "IdRef", "name" : "'P'" }
1950 "capabilities" : [ "DerivativeControl" ]
1953 "opname" : "OpDPdyFine",
1956 { "kind" : "IdResultType" },
1957 { "kind" : "IdResult" },
1958 { "kind" : "IdRef", "name" : "'P'" }
1960 "capabilities" : [ "DerivativeControl" ]
1963 "opname" : "OpFwidthFine",
1966 { "kind" : "IdResultType" },
1967 { "kind" : "IdResult" },
1968 { "kind" : "IdRef", "name" : "'P'" }
1970 "capabilities" : [ "DerivativeControl" ]
1973 "opname" : "OpDPdxCoarse",
1976 { "kind" : "IdResultType" },
1977 { "kind" : "IdResult" },
1978 { "kind" : "IdRef", "name" : "'P'" }
1980 "capabilities" : [ "DerivativeControl" ]
1983 "opname" : "OpDPdyCoarse",
1986 { "kind" : "IdResultType" },
1987 { "kind" : "IdResult" },
1988 { "kind" : "IdRef", "name" : "'P'" }
1990 "capabilities" : [ "DerivativeControl" ]
1993 "opname" : "OpFwidthCoarse",
1996 { "kind" : "IdResultType" },
1997 { "kind" : "IdResult" },
1998 { "kind" : "IdRef", "name" : "'P'" }
2000 "capabilities" : [ "DerivativeControl" ]
2003 "opname" : "OpEmitVertex",
2005 "capabilities" : [ "Geometry" ]
2008 "opname" : "OpEndPrimitive",
2010 "capabilities" : [ "Geometry" ]
2013 "opname" : "OpEmitStreamVertex",
2016 { "kind" : "IdRef", "name" : "'Stream'" }
2018 "capabilities" : [ "GeometryStreams" ]
2021 "opname" : "OpEndStreamPrimitive",
2024 { "kind" : "IdRef", "name" : "'Stream'" }
2026 "capabilities" : [ "GeometryStreams" ]
2029 "opname" : "OpControlBarrier",
2032 { "kind" : "IdScope", "name" : "'Execution'" },
2033 { "kind" : "IdScope", "name" : "'Memory'" },
2034 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2038 "opname" : "OpMemoryBarrier",
2041 { "kind" : "IdScope", "name" : "'Memory'" },
2042 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2046 "opname" : "OpAtomicLoad",
2049 { "kind" : "IdResultType" },
2050 { "kind" : "IdResult" },
2051 { "kind" : "IdRef", "name" : "'Pointer'" },
2052 { "kind" : "IdScope", "name" : "'Memory'" },
2053 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2057 "opname" : "OpAtomicStore",
2060 { "kind" : "IdRef", "name" : "'Pointer'" },
2061 { "kind" : "IdScope", "name" : "'Memory'" },
2062 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2063 { "kind" : "IdRef", "name" : "'Value'" }
2067 "opname" : "OpAtomicExchange",
2070 { "kind" : "IdResultType" },
2071 { "kind" : "IdResult" },
2072 { "kind" : "IdRef", "name" : "'Pointer'" },
2073 { "kind" : "IdScope", "name" : "'Memory'" },
2074 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2075 { "kind" : "IdRef", "name" : "'Value'" }
2079 "opname" : "OpAtomicCompareExchange",
2082 { "kind" : "IdResultType" },
2083 { "kind" : "IdResult" },
2084 { "kind" : "IdRef", "name" : "'Pointer'" },
2085 { "kind" : "IdScope", "name" : "'Memory'" },
2086 { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2087 { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2088 { "kind" : "IdRef", "name" : "'Value'" },
2089 { "kind" : "IdRef", "name" : "'Comparator'" }
2093 "opname" : "OpAtomicCompareExchangeWeak",
2096 { "kind" : "IdResultType" },
2097 { "kind" : "IdResult" },
2098 { "kind" : "IdRef", "name" : "'Pointer'" },
2099 { "kind" : "IdScope", "name" : "'Memory'" },
2100 { "kind" : "IdMemorySemantics", "name" : "'Equal'" },
2101 { "kind" : "IdMemorySemantics", "name" : "'Unequal'" },
2102 { "kind" : "IdRef", "name" : "'Value'" },
2103 { "kind" : "IdRef", "name" : "'Comparator'" }
2105 "capabilities" : [ "Kernel" ],
2106 "lastVersion" : "1.3"
2109 "opname" : "OpAtomicIIncrement",
2112 { "kind" : "IdResultType" },
2113 { "kind" : "IdResult" },
2114 { "kind" : "IdRef", "name" : "'Pointer'" },
2115 { "kind" : "IdScope", "name" : "'Memory'" },
2116 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2120 "opname" : "OpAtomicIDecrement",
2123 { "kind" : "IdResultType" },
2124 { "kind" : "IdResult" },
2125 { "kind" : "IdRef", "name" : "'Pointer'" },
2126 { "kind" : "IdScope", "name" : "'Memory'" },
2127 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
2131 "opname" : "OpAtomicIAdd",
2134 { "kind" : "IdResultType" },
2135 { "kind" : "IdResult" },
2136 { "kind" : "IdRef", "name" : "'Pointer'" },
2137 { "kind" : "IdScope", "name" : "'Memory'" },
2138 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2139 { "kind" : "IdRef", "name" : "'Value'" }
2143 "opname" : "OpAtomicISub",
2146 { "kind" : "IdResultType" },
2147 { "kind" : "IdResult" },
2148 { "kind" : "IdRef", "name" : "'Pointer'" },
2149 { "kind" : "IdScope", "name" : "'Memory'" },
2150 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2151 { "kind" : "IdRef", "name" : "'Value'" }
2155 "opname" : "OpAtomicSMin",
2158 { "kind" : "IdResultType" },
2159 { "kind" : "IdResult" },
2160 { "kind" : "IdRef", "name" : "'Pointer'" },
2161 { "kind" : "IdScope", "name" : "'Memory'" },
2162 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2163 { "kind" : "IdRef", "name" : "'Value'" }
2167 "opname" : "OpAtomicUMin",
2170 { "kind" : "IdResultType" },
2171 { "kind" : "IdResult" },
2172 { "kind" : "IdRef", "name" : "'Pointer'" },
2173 { "kind" : "IdScope", "name" : "'Memory'" },
2174 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2175 { "kind" : "IdRef", "name" : "'Value'" }
2179 "opname" : "OpAtomicSMax",
2182 { "kind" : "IdResultType" },
2183 { "kind" : "IdResult" },
2184 { "kind" : "IdRef", "name" : "'Pointer'" },
2185 { "kind" : "IdScope", "name" : "'Memory'" },
2186 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2187 { "kind" : "IdRef", "name" : "'Value'" }
2191 "opname" : "OpAtomicUMax",
2194 { "kind" : "IdResultType" },
2195 { "kind" : "IdResult" },
2196 { "kind" : "IdRef", "name" : "'Pointer'" },
2197 { "kind" : "IdScope", "name" : "'Memory'" },
2198 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2199 { "kind" : "IdRef", "name" : "'Value'" }
2203 "opname" : "OpAtomicAnd",
2206 { "kind" : "IdResultType" },
2207 { "kind" : "IdResult" },
2208 { "kind" : "IdRef", "name" : "'Pointer'" },
2209 { "kind" : "IdScope", "name" : "'Memory'" },
2210 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2211 { "kind" : "IdRef", "name" : "'Value'" }
2215 "opname" : "OpAtomicOr",
2218 { "kind" : "IdResultType" },
2219 { "kind" : "IdResult" },
2220 { "kind" : "IdRef", "name" : "'Pointer'" },
2221 { "kind" : "IdScope", "name" : "'Memory'" },
2222 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2223 { "kind" : "IdRef", "name" : "'Value'" }
2227 "opname" : "OpAtomicXor",
2230 { "kind" : "IdResultType" },
2231 { "kind" : "IdResult" },
2232 { "kind" : "IdRef", "name" : "'Pointer'" },
2233 { "kind" : "IdScope", "name" : "'Memory'" },
2234 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" },
2235 { "kind" : "IdRef", "name" : "'Value'" }
2242 { "kind" : "IdResultType" },
2243 { "kind" : "IdResult" },
2244 { "kind" : "PairIdRefIdRef", "quantifier" : "*", "name" : "'Variable, Parent, ...'" }
2248 "opname" : "OpLoopMerge",
2251 { "kind" : "IdRef", "name" : "'Merge Block'" },
2252 { "kind" : "IdRef", "name" : "'Continue Target'" },
2253 { "kind" : "LoopControl" }
2257 "opname" : "OpSelectionMerge",
2260 { "kind" : "IdRef", "name" : "'Merge Block'" },
2261 { "kind" : "SelectionControl" }
2265 "opname" : "OpLabel",
2268 { "kind" : "IdResult" }
2272 "opname" : "OpBranch",
2275 { "kind" : "IdRef", "name" : "'Target Label'" }
2279 "opname" : "OpBranchConditional",
2282 { "kind" : "IdRef", "name" : "'Condition'" },
2283 { "kind" : "IdRef", "name" : "'True Label'" },
2284 { "kind" : "IdRef", "name" : "'False Label'" },
2285 { "kind" : "LiteralInteger", "quantifier" : "*", "name" : "'Branch weights'" }
2289 "opname" : "OpSwitch",
2292 { "kind" : "IdRef", "name" : "'Selector'" },
2293 { "kind" : "IdRef", "name" : "'Default'" },
2294 { "kind" : "PairLiteralIntegerIdRef", "quantifier" : "*", "name" : "'Target'" }
2298 "opname" : "OpKill",
2300 "capabilities" : [ "Shader" ]
2303 "opname" : "OpReturn",
2307 "opname" : "OpReturnValue",
2310 { "kind" : "IdRef", "name" : "'Value'" }
2314 "opname" : "OpUnreachable",
2318 "opname" : "OpLifetimeStart",
2321 { "kind" : "IdRef", "name" : "'Pointer'" },
2322 { "kind" : "LiteralInteger", "name" : "'Size'" }
2324 "capabilities" : [ "Kernel" ]
2327 "opname" : "OpLifetimeStop",
2330 { "kind" : "IdRef", "name" : "'Pointer'" },
2331 { "kind" : "LiteralInteger", "name" : "'Size'" }
2333 "capabilities" : [ "Kernel" ]
2336 "opname" : "OpGroupAsyncCopy",
2339 { "kind" : "IdResultType" },
2340 { "kind" : "IdResult" },
2341 { "kind" : "IdScope", "name" : "'Execution'" },
2342 { "kind" : "IdRef", "name" : "'Destination'" },
2343 { "kind" : "IdRef", "name" : "'Source'" },
2344 { "kind" : "IdRef", "name" : "'Num Elements'" },
2345 { "kind" : "IdRef", "name" : "'Stride'" },
2346 { "kind" : "IdRef", "name" : "'Event'" }
2348 "capabilities" : [ "Kernel" ]
2351 "opname" : "OpGroupWaitEvents",
2354 { "kind" : "IdScope", "name" : "'Execution'" },
2355 { "kind" : "IdRef", "name" : "'Num Events'" },
2356 { "kind" : "IdRef", "name" : "'Events List'" }
2358 "capabilities" : [ "Kernel" ]
2361 "opname" : "OpGroupAll",
2364 { "kind" : "IdResultType" },
2365 { "kind" : "IdResult" },
2366 { "kind" : "IdScope", "name" : "'Execution'" },
2367 { "kind" : "IdRef", "name" : "'Predicate'" }
2369 "capabilities" : [ "Groups" ]
2372 "opname" : "OpGroupAny",
2375 { "kind" : "IdResultType" },
2376 { "kind" : "IdResult" },
2377 { "kind" : "IdScope", "name" : "'Execution'" },
2378 { "kind" : "IdRef", "name" : "'Predicate'" }
2380 "capabilities" : [ "Groups" ]
2383 "opname" : "OpGroupBroadcast",
2386 { "kind" : "IdResultType" },
2387 { "kind" : "IdResult" },
2388 { "kind" : "IdScope", "name" : "'Execution'" },
2389 { "kind" : "IdRef", "name" : "'Value'" },
2390 { "kind" : "IdRef", "name" : "'LocalId'" }
2392 "capabilities" : [ "Groups" ]
2395 "opname" : "OpGroupIAdd",
2398 { "kind" : "IdResultType" },
2399 { "kind" : "IdResult" },
2400 { "kind" : "IdScope", "name" : "'Execution'" },
2401 { "kind" : "GroupOperation", "name" : "'Operation'" },
2402 { "kind" : "IdRef", "name" : "'X'" }
2404 "capabilities" : [ "Groups" ]
2407 "opname" : "OpGroupFAdd",
2410 { "kind" : "IdResultType" },
2411 { "kind" : "IdResult" },
2412 { "kind" : "IdScope", "name" : "'Execution'" },
2413 { "kind" : "GroupOperation", "name" : "'Operation'" },
2414 { "kind" : "IdRef", "name" : "'X'" }
2416 "capabilities" : [ "Groups" ]
2419 "opname" : "OpGroupFMin",
2422 { "kind" : "IdResultType" },
2423 { "kind" : "IdResult" },
2424 { "kind" : "IdScope", "name" : "'Execution'" },
2425 { "kind" : "GroupOperation", "name" : "'Operation'" },
2426 { "kind" : "IdRef", "name" : "'X'" }
2428 "capabilities" : [ "Groups" ]
2431 "opname" : "OpGroupUMin",
2434 { "kind" : "IdResultType" },
2435 { "kind" : "IdResult" },
2436 { "kind" : "IdScope", "name" : "'Execution'" },
2437 { "kind" : "GroupOperation", "name" : "'Operation'" },
2438 { "kind" : "IdRef", "name" : "'X'" }
2440 "capabilities" : [ "Groups" ]
2443 "opname" : "OpGroupSMin",
2446 { "kind" : "IdResultType" },
2447 { "kind" : "IdResult" },
2448 { "kind" : "IdScope", "name" : "'Execution'" },
2449 { "kind" : "GroupOperation", "name" : "'Operation'" },
2450 { "kind" : "IdRef", "name" : "'X'" }
2452 "capabilities" : [ "Groups" ]
2455 "opname" : "OpGroupFMax",
2458 { "kind" : "IdResultType" },
2459 { "kind" : "IdResult" },
2460 { "kind" : "IdScope", "name" : "'Execution'" },
2461 { "kind" : "GroupOperation", "name" : "'Operation'" },
2462 { "kind" : "IdRef", "name" : "'X'" }
2464 "capabilities" : [ "Groups" ]
2467 "opname" : "OpGroupUMax",
2470 { "kind" : "IdResultType" },
2471 { "kind" : "IdResult" },
2472 { "kind" : "IdScope", "name" : "'Execution'" },
2473 { "kind" : "GroupOperation", "name" : "'Operation'" },
2474 { "kind" : "IdRef", "name" : "'X'" }
2476 "capabilities" : [ "Groups" ]
2479 "opname" : "OpGroupSMax",
2482 { "kind" : "IdResultType" },
2483 { "kind" : "IdResult" },
2484 { "kind" : "IdScope", "name" : "'Execution'" },
2485 { "kind" : "GroupOperation", "name" : "'Operation'" },
2486 { "kind" : "IdRef", "name" : "'X'" }
2488 "capabilities" : [ "Groups" ]
2491 "opname" : "OpReadPipe",
2494 { "kind" : "IdResultType" },
2495 { "kind" : "IdResult" },
2496 { "kind" : "IdRef", "name" : "'Pipe'" },
2497 { "kind" : "IdRef", "name" : "'Pointer'" },
2498 { "kind" : "IdRef", "name" : "'Packet Size'" },
2499 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2501 "capabilities" : [ "Pipes" ]
2504 "opname" : "OpWritePipe",
2507 { "kind" : "IdResultType" },
2508 { "kind" : "IdResult" },
2509 { "kind" : "IdRef", "name" : "'Pipe'" },
2510 { "kind" : "IdRef", "name" : "'Pointer'" },
2511 { "kind" : "IdRef", "name" : "'Packet Size'" },
2512 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2514 "capabilities" : [ "Pipes" ]
2517 "opname" : "OpReservedReadPipe",
2520 { "kind" : "IdResultType" },
2521 { "kind" : "IdResult" },
2522 { "kind" : "IdRef", "name" : "'Pipe'" },
2523 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2524 { "kind" : "IdRef", "name" : "'Index'" },
2525 { "kind" : "IdRef", "name" : "'Pointer'" },
2526 { "kind" : "IdRef", "name" : "'Packet Size'" },
2527 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2529 "capabilities" : [ "Pipes" ]
2532 "opname" : "OpReservedWritePipe",
2535 { "kind" : "IdResultType" },
2536 { "kind" : "IdResult" },
2537 { "kind" : "IdRef", "name" : "'Pipe'" },
2538 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2539 { "kind" : "IdRef", "name" : "'Index'" },
2540 { "kind" : "IdRef", "name" : "'Pointer'" },
2541 { "kind" : "IdRef", "name" : "'Packet Size'" },
2542 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2544 "capabilities" : [ "Pipes" ]
2547 "opname" : "OpReserveReadPipePackets",
2550 { "kind" : "IdResultType" },
2551 { "kind" : "IdResult" },
2552 { "kind" : "IdRef", "name" : "'Pipe'" },
2553 { "kind" : "IdRef", "name" : "'Num Packets'" },
2554 { "kind" : "IdRef", "name" : "'Packet Size'" },
2555 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2557 "capabilities" : [ "Pipes" ]
2560 "opname" : "OpReserveWritePipePackets",
2563 { "kind" : "IdResultType" },
2564 { "kind" : "IdResult" },
2565 { "kind" : "IdRef", "name" : "'Pipe'" },
2566 { "kind" : "IdRef", "name" : "'Num Packets'" },
2567 { "kind" : "IdRef", "name" : "'Packet Size'" },
2568 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2570 "capabilities" : [ "Pipes" ]
2573 "opname" : "OpCommitReadPipe",
2576 { "kind" : "IdRef", "name" : "'Pipe'" },
2577 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2578 { "kind" : "IdRef", "name" : "'Packet Size'" },
2579 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2581 "capabilities" : [ "Pipes" ]
2584 "opname" : "OpCommitWritePipe",
2587 { "kind" : "IdRef", "name" : "'Pipe'" },
2588 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2589 { "kind" : "IdRef", "name" : "'Packet Size'" },
2590 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2592 "capabilities" : [ "Pipes" ]
2595 "opname" : "OpIsValidReserveId",
2598 { "kind" : "IdResultType" },
2599 { "kind" : "IdResult" },
2600 { "kind" : "IdRef", "name" : "'Reserve Id'" }
2602 "capabilities" : [ "Pipes" ]
2605 "opname" : "OpGetNumPipePackets",
2608 { "kind" : "IdResultType" },
2609 { "kind" : "IdResult" },
2610 { "kind" : "IdRef", "name" : "'Pipe'" },
2611 { "kind" : "IdRef", "name" : "'Packet Size'" },
2612 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2614 "capabilities" : [ "Pipes" ]
2617 "opname" : "OpGetMaxPipePackets",
2620 { "kind" : "IdResultType" },
2621 { "kind" : "IdResult" },
2622 { "kind" : "IdRef", "name" : "'Pipe'" },
2623 { "kind" : "IdRef", "name" : "'Packet Size'" },
2624 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2626 "capabilities" : [ "Pipes" ]
2629 "opname" : "OpGroupReserveReadPipePackets",
2632 { "kind" : "IdResultType" },
2633 { "kind" : "IdResult" },
2634 { "kind" : "IdScope", "name" : "'Execution'" },
2635 { "kind" : "IdRef", "name" : "'Pipe'" },
2636 { "kind" : "IdRef", "name" : "'Num Packets'" },
2637 { "kind" : "IdRef", "name" : "'Packet Size'" },
2638 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2640 "capabilities" : [ "Pipes" ]
2643 "opname" : "OpGroupReserveWritePipePackets",
2646 { "kind" : "IdResultType" },
2647 { "kind" : "IdResult" },
2648 { "kind" : "IdScope", "name" : "'Execution'" },
2649 { "kind" : "IdRef", "name" : "'Pipe'" },
2650 { "kind" : "IdRef", "name" : "'Num Packets'" },
2651 { "kind" : "IdRef", "name" : "'Packet Size'" },
2652 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2654 "capabilities" : [ "Pipes" ]
2657 "opname" : "OpGroupCommitReadPipe",
2660 { "kind" : "IdScope", "name" : "'Execution'" },
2661 { "kind" : "IdRef", "name" : "'Pipe'" },
2662 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2663 { "kind" : "IdRef", "name" : "'Packet Size'" },
2664 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2666 "capabilities" : [ "Pipes" ]
2669 "opname" : "OpGroupCommitWritePipe",
2672 { "kind" : "IdScope", "name" : "'Execution'" },
2673 { "kind" : "IdRef", "name" : "'Pipe'" },
2674 { "kind" : "IdRef", "name" : "'Reserve Id'" },
2675 { "kind" : "IdRef", "name" : "'Packet Size'" },
2676 { "kind" : "IdRef", "name" : "'Packet Alignment'" }
2678 "capabilities" : [ "Pipes" ]
2681 "opname" : "OpEnqueueMarker",
2684 { "kind" : "IdResultType" },
2685 { "kind" : "IdResult" },
2686 { "kind" : "IdRef", "name" : "'Queue'" },
2687 { "kind" : "IdRef", "name" : "'Num Events'" },
2688 { "kind" : "IdRef", "name" : "'Wait Events'" },
2689 { "kind" : "IdRef", "name" : "'Ret Event'" }
2691 "capabilities" : [ "DeviceEnqueue" ]
2694 "opname" : "OpEnqueueKernel",
2697 { "kind" : "IdResultType" },
2698 { "kind" : "IdResult" },
2699 { "kind" : "IdRef", "name" : "'Queue'" },
2700 { "kind" : "IdRef", "name" : "'Flags'" },
2701 { "kind" : "IdRef", "name" : "'ND Range'" },
2702 { "kind" : "IdRef", "name" : "'Num Events'" },
2703 { "kind" : "IdRef", "name" : "'Wait Events'" },
2704 { "kind" : "IdRef", "name" : "'Ret Event'" },
2705 { "kind" : "IdRef", "name" : "'Invoke'" },
2706 { "kind" : "IdRef", "name" : "'Param'" },
2707 { "kind" : "IdRef", "name" : "'Param Size'" },
2708 { "kind" : "IdRef", "name" : "'Param Align'" },
2709 { "kind" : "IdRef", "quantifier" : "*", "name" : "'Local Size'" }
2711 "capabilities" : [ "DeviceEnqueue" ]
2714 "opname" : "OpGetKernelNDrangeSubGroupCount",
2717 { "kind" : "IdResultType" },
2718 { "kind" : "IdResult" },
2719 { "kind" : "IdRef", "name" : "'ND Range'" },
2720 { "kind" : "IdRef", "name" : "'Invoke'" },
2721 { "kind" : "IdRef", "name" : "'Param'" },
2722 { "kind" : "IdRef", "name" : "'Param Size'" },
2723 { "kind" : "IdRef", "name" : "'Param Align'" }
2725 "capabilities" : [ "DeviceEnqueue" ]
2728 "opname" : "OpGetKernelNDrangeMaxSubGroupSize",
2731 { "kind" : "IdResultType" },
2732 { "kind" : "IdResult" },
2733 { "kind" : "IdRef", "name" : "'ND Range'" },
2734 { "kind" : "IdRef", "name" : "'Invoke'" },
2735 { "kind" : "IdRef", "name" : "'Param'" },
2736 { "kind" : "IdRef", "name" : "'Param Size'" },
2737 { "kind" : "IdRef", "name" : "'Param Align'" }
2739 "capabilities" : [ "DeviceEnqueue" ]
2742 "opname" : "OpGetKernelWorkGroupSize",
2745 { "kind" : "IdResultType" },
2746 { "kind" : "IdResult" },
2747 { "kind" : "IdRef", "name" : "'Invoke'" },
2748 { "kind" : "IdRef", "name" : "'Param'" },
2749 { "kind" : "IdRef", "name" : "'Param Size'" },
2750 { "kind" : "IdRef", "name" : "'Param Align'" }
2752 "capabilities" : [ "DeviceEnqueue" ]
2755 "opname" : "OpGetKernelPreferredWorkGroupSizeMultiple",
2758 { "kind" : "IdResultType" },
2759 { "kind" : "IdResult" },
2760 { "kind" : "IdRef", "name" : "'Invoke'" },
2761 { "kind" : "IdRef", "name" : "'Param'" },
2762 { "kind" : "IdRef", "name" : "'Param Size'" },
2763 { "kind" : "IdRef", "name" : "'Param Align'" }
2765 "capabilities" : [ "DeviceEnqueue" ]
2768 "opname" : "OpRetainEvent",
2771 { "kind" : "IdRef", "name" : "'Event'" }
2773 "capabilities" : [ "DeviceEnqueue" ]
2776 "opname" : "OpReleaseEvent",
2779 { "kind" : "IdRef", "name" : "'Event'" }
2781 "capabilities" : [ "DeviceEnqueue" ]
2784 "opname" : "OpCreateUserEvent",
2787 { "kind" : "IdResultType" },
2788 { "kind" : "IdResult" }
2790 "capabilities" : [ "DeviceEnqueue" ]
2793 "opname" : "OpIsValidEvent",
2796 { "kind" : "IdResultType" },
2797 { "kind" : "IdResult" },
2798 { "kind" : "IdRef", "name" : "'Event'" }
2800 "capabilities" : [ "DeviceEnqueue" ]
2803 "opname" : "OpSetUserEventStatus",
2806 { "kind" : "IdRef", "name" : "'Event'" },
2807 { "kind" : "IdRef", "name" : "'Status'" }
2809 "capabilities" : [ "DeviceEnqueue" ]
2812 "opname" : "OpCaptureEventProfilingInfo",
2815 { "kind" : "IdRef", "name" : "'Event'" },
2816 { "kind" : "IdRef", "name" : "'Profiling Info'" },
2817 { "kind" : "IdRef", "name" : "'Value'" }
2819 "capabilities" : [ "DeviceEnqueue" ]
2822 "opname" : "OpGetDefaultQueue",
2825 { "kind" : "IdResultType" },
2826 { "kind" : "IdResult" }
2828 "capabilities" : [ "DeviceEnqueue" ]
2831 "opname" : "OpBuildNDRange",
2834 { "kind" : "IdResultType" },
2835 { "kind" : "IdResult" },
2836 { "kind" : "IdRef", "name" : "'GlobalWorkSize'" },
2837 { "kind" : "IdRef", "name" : "'LocalWorkSize'" },
2838 { "kind" : "IdRef", "name" : "'GlobalWorkOffset'" }
2840 "capabilities" : [ "DeviceEnqueue" ]
2843 "opname" : "OpImageSparseSampleImplicitLod",
2846 { "kind" : "IdResultType" },
2847 { "kind" : "IdResult" },
2848 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2849 { "kind" : "IdRef", "name" : "'Coordinate'" },
2850 { "kind" : "ImageOperands", "quantifier" : "?" }
2852 "capabilities" : [ "SparseResidency" ]
2855 "opname" : "OpImageSparseSampleExplicitLod",
2858 { "kind" : "IdResultType" },
2859 { "kind" : "IdResult" },
2860 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2861 { "kind" : "IdRef", "name" : "'Coordinate'" },
2862 { "kind" : "ImageOperands" }
2864 "capabilities" : [ "SparseResidency" ]
2867 "opname" : "OpImageSparseSampleDrefImplicitLod",
2870 { "kind" : "IdResultType" },
2871 { "kind" : "IdResult" },
2872 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2873 { "kind" : "IdRef", "name" : "'Coordinate'" },
2874 { "kind" : "IdRef", "name" : "'D~ref~'" },
2875 { "kind" : "ImageOperands", "quantifier" : "?" }
2877 "capabilities" : [ "SparseResidency" ]
2880 "opname" : "OpImageSparseSampleDrefExplicitLod",
2883 { "kind" : "IdResultType" },
2884 { "kind" : "IdResult" },
2885 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2886 { "kind" : "IdRef", "name" : "'Coordinate'" },
2887 { "kind" : "IdRef", "name" : "'D~ref~'" },
2888 { "kind" : "ImageOperands" }
2890 "capabilities" : [ "SparseResidency" ]
2893 "opname" : "OpImageSparseSampleProjImplicitLod",
2896 { "kind" : "IdResultType" },
2897 { "kind" : "IdResult" },
2898 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2899 { "kind" : "IdRef", "name" : "'Coordinate'" },
2900 { "kind" : "ImageOperands", "quantifier" : "?" }
2902 "capabilities" : [ "SparseResidency" ],
2906 "opname" : "OpImageSparseSampleProjExplicitLod",
2909 { "kind" : "IdResultType" },
2910 { "kind" : "IdResult" },
2911 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2912 { "kind" : "IdRef", "name" : "'Coordinate'" },
2913 { "kind" : "ImageOperands" }
2915 "capabilities" : [ "SparseResidency" ],
2919 "opname" : "OpImageSparseSampleProjDrefImplicitLod",
2922 { "kind" : "IdResultType" },
2923 { "kind" : "IdResult" },
2924 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2925 { "kind" : "IdRef", "name" : "'Coordinate'" },
2926 { "kind" : "IdRef", "name" : "'D~ref~'" },
2927 { "kind" : "ImageOperands", "quantifier" : "?" }
2929 "capabilities" : [ "SparseResidency" ],
2933 "opname" : "OpImageSparseSampleProjDrefExplicitLod",
2936 { "kind" : "IdResultType" },
2937 { "kind" : "IdResult" },
2938 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2939 { "kind" : "IdRef", "name" : "'Coordinate'" },
2940 { "kind" : "IdRef", "name" : "'D~ref~'" },
2941 { "kind" : "ImageOperands" }
2943 "capabilities" : [ "SparseResidency" ],
2947 "opname" : "OpImageSparseFetch",
2950 { "kind" : "IdResultType" },
2951 { "kind" : "IdResult" },
2952 { "kind" : "IdRef", "name" : "'Image'" },
2953 { "kind" : "IdRef", "name" : "'Coordinate'" },
2954 { "kind" : "ImageOperands", "quantifier" : "?" }
2956 "capabilities" : [ "SparseResidency" ]
2959 "opname" : "OpImageSparseGather",
2962 { "kind" : "IdResultType" },
2963 { "kind" : "IdResult" },
2964 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2965 { "kind" : "IdRef", "name" : "'Coordinate'" },
2966 { "kind" : "IdRef", "name" : "'Component'" },
2967 { "kind" : "ImageOperands", "quantifier" : "?" }
2969 "capabilities" : [ "SparseResidency" ]
2972 "opname" : "OpImageSparseDrefGather",
2975 { "kind" : "IdResultType" },
2976 { "kind" : "IdResult" },
2977 { "kind" : "IdRef", "name" : "'Sampled Image'" },
2978 { "kind" : "IdRef", "name" : "'Coordinate'" },
2979 { "kind" : "IdRef", "name" : "'D~ref~'" },
2980 { "kind" : "ImageOperands", "quantifier" : "?" }
2982 "capabilities" : [ "SparseResidency" ]
2985 "opname" : "OpImageSparseTexelsResident",
2988 { "kind" : "IdResultType" },
2989 { "kind" : "IdResult" },
2990 { "kind" : "IdRef", "name" : "'Resident Code'" }
2992 "capabilities" : [ "SparseResidency" ]
2995 "opname" : "OpNoLine",
2999 "opname" : "OpAtomicFlagTestAndSet",
3002 { "kind" : "IdResultType" },
3003 { "kind" : "IdResult" },
3004 { "kind" : "IdRef", "name" : "'Pointer'" },
3005 { "kind" : "IdScope", "name" : "'Memory'" },
3006 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3008 "capabilities" : [ "Kernel" ]
3011 "opname" : "OpAtomicFlagClear",
3014 { "kind" : "IdRef", "name" : "'Pointer'" },
3015 { "kind" : "IdScope", "name" : "'Memory'" },
3016 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3018 "capabilities" : [ "Kernel" ]
3021 "opname" : "OpImageSparseRead",
3024 { "kind" : "IdResultType" },
3025 { "kind" : "IdResult" },
3026 { "kind" : "IdRef", "name" : "'Image'" },
3027 { "kind" : "IdRef", "name" : "'Coordinate'" },
3028 { "kind" : "ImageOperands", "quantifier" : "?" }
3030 "capabilities" : [ "SparseResidency" ]
3033 "opname" : "OpSizeOf",
3036 { "kind" : "IdResultType" },
3037 { "kind" : "IdResult" },
3038 { "kind" : "IdRef", "name" : "'Pointer'" }
3040 "capabilities" : [ "Addresses" ],
3044 "opname" : "OpTypePipeStorage",
3047 { "kind" : "IdResult" }
3049 "capabilities" : [ "PipeStorage" ],
3053 "opname" : "OpConstantPipeStorage",
3056 { "kind" : "IdResultType" },
3057 { "kind" : "IdResult" },
3058 { "kind" : "LiteralInteger", "name" : "'Packet Size'" },
3059 { "kind" : "LiteralInteger", "name" : "'Packet Alignment'" },
3060 { "kind" : "LiteralInteger", "name" : "'Capacity'" }
3062 "capabilities" : [ "PipeStorage" ],
3066 "opname" : "OpCreatePipeFromPipeStorage",
3069 { "kind" : "IdResultType" },
3070 { "kind" : "IdResult" },
3071 { "kind" : "IdRef", "name" : "'Pipe Storage'" }
3073 "capabilities" : [ "PipeStorage" ],
3077 "opname" : "OpGetKernelLocalSizeForSubgroupCount",
3080 { "kind" : "IdResultType" },
3081 { "kind" : "IdResult" },
3082 { "kind" : "IdRef", "name" : "'Subgroup Count'" },
3083 { "kind" : "IdRef", "name" : "'Invoke'" },
3084 { "kind" : "IdRef", "name" : "'Param'" },
3085 { "kind" : "IdRef", "name" : "'Param Size'" },
3086 { "kind" : "IdRef", "name" : "'Param Align'" }
3088 "capabilities" : [ "SubgroupDispatch" ],
3092 "opname" : "OpGetKernelMaxNumSubgroups",
3095 { "kind" : "IdResultType" },
3096 { "kind" : "IdResult" },
3097 { "kind" : "IdRef", "name" : "'Invoke'" },
3098 { "kind" : "IdRef", "name" : "'Param'" },
3099 { "kind" : "IdRef", "name" : "'Param Size'" },
3100 { "kind" : "IdRef", "name" : "'Param Align'" }
3102 "capabilities" : [ "SubgroupDispatch" ],
3106 "opname" : "OpTypeNamedBarrier",
3109 { "kind" : "IdResult" }
3111 "capabilities" : [ "NamedBarrier" ],
3115 "opname" : "OpNamedBarrierInitialize",
3118 { "kind" : "IdResultType" },
3119 { "kind" : "IdResult" },
3120 { "kind" : "IdRef", "name" : "'Subgroup Count'" }
3122 "capabilities" : [ "NamedBarrier" ],
3126 "opname" : "OpMemoryNamedBarrier",
3129 { "kind" : "IdRef", "name" : "'Named Barrier'" },
3130 { "kind" : "IdScope", "name" : "'Memory'" },
3131 { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
3133 "capabilities" : [ "NamedBarrier" ],
3137 "opname" : "OpModuleProcessed",
3140 { "kind" : "LiteralString", "name" : "'Process'" }
3145 "opname" : "OpExecutionModeId",
3148 { "kind" : "IdRef", "name" : "'Entry Point'" },
3149 { "kind" : "ExecutionMode", "name" : "'Mode'" }
3154 "opname" : "OpDecorateId",
3157 { "kind" : "IdRef", "name" : "'Target'" },
3158 { "kind" : "Decoration" }
3160 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
3164 "opname" : "OpGroupNonUniformElect",
3167 { "kind" : "IdResultType" },
3168 { "kind" : "IdResult" },
3169 { "kind" : "IdScope", "name" : "'Execution'" }
3171 "capabilities" : [ "GroupNonUniform" ],
3175 "opname" : "OpGroupNonUniformAll",
3178 { "kind" : "IdResultType" },
3179 { "kind" : "IdResult" },
3180 { "kind" : "IdScope", "name" : "'Execution'" },
3181 { "kind" : "IdRef", "name" : "'Predicate'" }
3183 "capabilities" : [ "GroupNonUniformVote" ],
3187 "opname" : "OpGroupNonUniformAny",
3190 { "kind" : "IdResultType" },
3191 { "kind" : "IdResult" },
3192 { "kind" : "IdScope", "name" : "'Execution'" },
3193 { "kind" : "IdRef", "name" : "'Predicate'" }
3195 "capabilities" : [ "GroupNonUniformVote" ],
3199 "opname" : "OpGroupNonUniformAllEqual",
3202 { "kind" : "IdResultType" },
3203 { "kind" : "IdResult" },
3204 { "kind" : "IdScope", "name" : "'Execution'" },
3205 { "kind" : "IdRef", "name" : "'Value'" }
3207 "capabilities" : [ "GroupNonUniformVote" ],
3211 "opname" : "OpGroupNonUniformBroadcast",
3214 { "kind" : "IdResultType" },
3215 { "kind" : "IdResult" },
3216 { "kind" : "IdScope", "name" : "'Execution'" },
3217 { "kind" : "IdRef", "name" : "'Value'" },
3218 { "kind" : "IdRef", "name" : "'Id'" }
3220 "capabilities" : [ "GroupNonUniformBallot" ],
3224 "opname" : "OpGroupNonUniformBroadcastFirst",
3227 { "kind" : "IdResultType" },
3228 { "kind" : "IdResult" },
3229 { "kind" : "IdScope", "name" : "'Execution'" },
3230 { "kind" : "IdRef", "name" : "'Value'" }
3232 "capabilities" : [ "GroupNonUniformBallot" ],
3236 "opname" : "OpGroupNonUniformBallot",
3239 { "kind" : "IdResultType" },
3240 { "kind" : "IdResult" },
3241 { "kind" : "IdScope", "name" : "'Execution'" },
3242 { "kind" : "IdRef", "name" : "'Predicate'" }
3244 "capabilities" : [ "GroupNonUniformBallot" ],
3248 "opname" : "OpGroupNonUniformInverseBallot",
3251 { "kind" : "IdResultType" },
3252 { "kind" : "IdResult" },
3253 { "kind" : "IdScope", "name" : "'Execution'" },
3254 { "kind" : "IdRef", "name" : "'Value'" }
3256 "capabilities" : [ "GroupNonUniformBallot" ],
3260 "opname" : "OpGroupNonUniformBallotBitExtract",
3263 { "kind" : "IdResultType" },
3264 { "kind" : "IdResult" },
3265 { "kind" : "IdScope", "name" : "'Execution'" },
3266 { "kind" : "IdRef", "name" : "'Value'" },
3267 { "kind" : "IdRef", "name" : "'Index'" }
3269 "capabilities" : [ "GroupNonUniformBallot" ],
3273 "opname" : "OpGroupNonUniformBallotBitCount",
3276 { "kind" : "IdResultType" },
3277 { "kind" : "IdResult" },
3278 { "kind" : "IdScope", "name" : "'Execution'" },
3279 { "kind" : "GroupOperation", "name" : "'Operation'" },
3280 { "kind" : "IdRef", "name" : "'Value'" }
3282 "capabilities" : [ "GroupNonUniformBallot" ],
3286 "opname" : "OpGroupNonUniformBallotFindLSB",
3289 { "kind" : "IdResultType" },
3290 { "kind" : "IdResult" },
3291 { "kind" : "IdScope", "name" : "'Execution'" },
3292 { "kind" : "IdRef", "name" : "'Value'" }
3294 "capabilities" : [ "GroupNonUniformBallot" ],
3298 "opname" : "OpGroupNonUniformBallotFindMSB",
3301 { "kind" : "IdResultType" },
3302 { "kind" : "IdResult" },
3303 { "kind" : "IdScope", "name" : "'Execution'" },
3304 { "kind" : "IdRef", "name" : "'Value'" }
3306 "capabilities" : [ "GroupNonUniformBallot" ],
3310 "opname" : "OpGroupNonUniformShuffle",
3313 { "kind" : "IdResultType" },
3314 { "kind" : "IdResult" },
3315 { "kind" : "IdScope", "name" : "'Execution'" },
3316 { "kind" : "IdRef", "name" : "'Value'" },
3317 { "kind" : "IdRef", "name" : "'Id'" }
3319 "capabilities" : [ "GroupNonUniformShuffle" ],
3323 "opname" : "OpGroupNonUniformShuffleXor",
3326 { "kind" : "IdResultType" },
3327 { "kind" : "IdResult" },
3328 { "kind" : "IdScope", "name" : "'Execution'" },
3329 { "kind" : "IdRef", "name" : "'Value'" },
3330 { "kind" : "IdRef", "name" : "'Mask'" }
3332 "capabilities" : [ "GroupNonUniformShuffle" ],
3336 "opname" : "OpGroupNonUniformShuffleUp",
3339 { "kind" : "IdResultType" },
3340 { "kind" : "IdResult" },
3341 { "kind" : "IdScope", "name" : "'Execution'" },
3342 { "kind" : "IdRef", "name" : "'Value'" },
3343 { "kind" : "IdRef", "name" : "'Delta'" }
3345 "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3349 "opname" : "OpGroupNonUniformShuffleDown",
3352 { "kind" : "IdResultType" },
3353 { "kind" : "IdResult" },
3354 { "kind" : "IdScope", "name" : "'Execution'" },
3355 { "kind" : "IdRef", "name" : "'Value'" },
3356 { "kind" : "IdRef", "name" : "'Delta'" }
3358 "capabilities" : [ "GroupNonUniformShuffleRelative" ],
3362 "opname" : "OpGroupNonUniformIAdd",
3365 { "kind" : "IdResultType" },
3366 { "kind" : "IdResult" },
3367 { "kind" : "IdScope", "name" : "'Execution'" },
3368 { "kind" : "GroupOperation", "name" : "'Operation'" },
3369 { "kind" : "IdRef", "name" : "'Value'" },
3370 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3372 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3376 "opname" : "OpGroupNonUniformFAdd",
3379 { "kind" : "IdResultType" },
3380 { "kind" : "IdResult" },
3381 { "kind" : "IdScope", "name" : "'Execution'" },
3382 { "kind" : "GroupOperation", "name" : "'Operation'" },
3383 { "kind" : "IdRef", "name" : "'Value'" },
3384 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3386 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3390 "opname" : "OpGroupNonUniformIMul",
3393 { "kind" : "IdResultType" },
3394 { "kind" : "IdResult" },
3395 { "kind" : "IdScope", "name" : "'Execution'" },
3396 { "kind" : "GroupOperation", "name" : "'Operation'" },
3397 { "kind" : "IdRef", "name" : "'Value'" },
3398 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3400 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3404 "opname" : "OpGroupNonUniformFMul",
3407 { "kind" : "IdResultType" },
3408 { "kind" : "IdResult" },
3409 { "kind" : "IdScope", "name" : "'Execution'" },
3410 { "kind" : "GroupOperation", "name" : "'Operation'" },
3411 { "kind" : "IdRef", "name" : "'Value'" },
3412 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3414 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3418 "opname" : "OpGroupNonUniformSMin",
3421 { "kind" : "IdResultType" },
3422 { "kind" : "IdResult" },
3423 { "kind" : "IdScope", "name" : "'Execution'" },
3424 { "kind" : "GroupOperation", "name" : "'Operation'" },
3425 { "kind" : "IdRef", "name" : "'Value'" },
3426 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3428 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3432 "opname" : "OpGroupNonUniformUMin",
3435 { "kind" : "IdResultType" },
3436 { "kind" : "IdResult" },
3437 { "kind" : "IdScope", "name" : "'Execution'" },
3438 { "kind" : "GroupOperation", "name" : "'Operation'" },
3439 { "kind" : "IdRef", "name" : "'Value'" },
3440 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3442 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3446 "opname" : "OpGroupNonUniformFMin",
3449 { "kind" : "IdResultType" },
3450 { "kind" : "IdResult" },
3451 { "kind" : "IdScope", "name" : "'Execution'" },
3452 { "kind" : "GroupOperation", "name" : "'Operation'" },
3453 { "kind" : "IdRef", "name" : "'Value'" },
3454 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3456 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3460 "opname" : "OpGroupNonUniformSMax",
3463 { "kind" : "IdResultType" },
3464 { "kind" : "IdResult" },
3465 { "kind" : "IdScope", "name" : "'Execution'" },
3466 { "kind" : "GroupOperation", "name" : "'Operation'" },
3467 { "kind" : "IdRef", "name" : "'Value'" },
3468 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3470 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3474 "opname" : "OpGroupNonUniformUMax",
3477 { "kind" : "IdResultType" },
3478 { "kind" : "IdResult" },
3479 { "kind" : "IdScope", "name" : "'Execution'" },
3480 { "kind" : "GroupOperation", "name" : "'Operation'" },
3481 { "kind" : "IdRef", "name" : "'Value'" },
3482 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3484 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3488 "opname" : "OpGroupNonUniformFMax",
3491 { "kind" : "IdResultType" },
3492 { "kind" : "IdResult" },
3493 { "kind" : "IdScope", "name" : "'Execution'" },
3494 { "kind" : "GroupOperation", "name" : "'Operation'" },
3495 { "kind" : "IdRef", "name" : "'Value'" },
3496 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3498 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3502 "opname" : "OpGroupNonUniformBitwiseAnd",
3505 { "kind" : "IdResultType" },
3506 { "kind" : "IdResult" },
3507 { "kind" : "IdScope", "name" : "'Execution'" },
3508 { "kind" : "GroupOperation", "name" : "'Operation'" },
3509 { "kind" : "IdRef", "name" : "'Value'" },
3510 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3512 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3516 "opname" : "OpGroupNonUniformBitwiseOr",
3519 { "kind" : "IdResultType" },
3520 { "kind" : "IdResult" },
3521 { "kind" : "IdScope", "name" : "'Execution'" },
3522 { "kind" : "GroupOperation", "name" : "'Operation'" },
3523 { "kind" : "IdRef", "name" : "'Value'" },
3524 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3526 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3530 "opname" : "OpGroupNonUniformBitwiseXor",
3533 { "kind" : "IdResultType" },
3534 { "kind" : "IdResult" },
3535 { "kind" : "IdScope", "name" : "'Execution'" },
3536 { "kind" : "GroupOperation", "name" : "'Operation'" },
3537 { "kind" : "IdRef", "name" : "'Value'" },
3538 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3540 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3544 "opname" : "OpGroupNonUniformLogicalAnd",
3547 { "kind" : "IdResultType" },
3548 { "kind" : "IdResult" },
3549 { "kind" : "IdScope", "name" : "'Execution'" },
3550 { "kind" : "GroupOperation", "name" : "'Operation'" },
3551 { "kind" : "IdRef", "name" : "'Value'" },
3552 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3554 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3558 "opname" : "OpGroupNonUniformLogicalOr",
3561 { "kind" : "IdResultType" },
3562 { "kind" : "IdResult" },
3563 { "kind" : "IdScope", "name" : "'Execution'" },
3564 { "kind" : "GroupOperation", "name" : "'Operation'" },
3565 { "kind" : "IdRef", "name" : "'Value'" },
3566 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3568 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3572 "opname" : "OpGroupNonUniformLogicalXor",
3575 { "kind" : "IdResultType" },
3576 { "kind" : "IdResult" },
3577 { "kind" : "IdScope", "name" : "'Execution'" },
3578 { "kind" : "GroupOperation", "name" : "'Operation'" },
3579 { "kind" : "IdRef", "name" : "'Value'" },
3580 { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
3582 "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
3586 "opname" : "OpGroupNonUniformQuadBroadcast",
3589 { "kind" : "IdResultType" },
3590 { "kind" : "IdResult" },
3591 { "kind" : "IdScope", "name" : "'Execution'" },
3592 { "kind" : "IdRef", "name" : "'Value'" },
3593 { "kind" : "IdRef", "name" : "'Index'" }
3595 "capabilities" : [ "GroupNonUniformQuad" ],
3599 "opname" : "OpGroupNonUniformQuadSwap",
3602 { "kind" : "IdResultType" },
3603 { "kind" : "IdResult" },
3604 { "kind" : "IdScope", "name" : "'Execution'" },
3605 { "kind" : "IdRef", "name" : "'Value'" },
3606 { "kind" : "IdRef", "name" : "'Direction'" }
3608 "capabilities" : [ "GroupNonUniformQuad" ],
3612 "opname" : "OpCopyLogical",
3615 { "kind" : "IdResultType" },
3616 { "kind" : "IdResult" },
3617 { "kind" : "IdRef", "name" : "'Operand'" }
3622 "opname" : "OpPtrEqual",
3625 { "kind" : "IdResultType" },
3626 { "kind" : "IdResult" },
3627 { "kind" : "IdRef", "name" : "'Operand 1'" },
3628 { "kind" : "IdRef", "name" : "'Operand 2'" }
3633 "opname" : "OpPtrNotEqual",
3636 { "kind" : "IdResultType" },
3637 { "kind" : "IdResult" },
3638 { "kind" : "IdRef", "name" : "'Operand 1'" },
3639 { "kind" : "IdRef", "name" : "'Operand 2'" }
3644 "opname" : "OpPtrDiff",
3647 { "kind" : "IdResultType" },
3648 { "kind" : "IdResult" },
3649 { "kind" : "IdRef", "name" : "'Operand 1'" },
3650 { "kind" : "IdRef", "name" : "'Operand 2'" }
3652 "capabilities" : [ "Addresses", "VariablePointers", "VariablePointersStorageBuffer" ],
3656 "opname" : "OpSubgroupBallotKHR",
3659 { "kind" : "IdResultType" },
3660 { "kind" : "IdResult" },
3661 { "kind" : "IdRef", "name" : "'Predicate'" }
3663 "capabilities" : [ "SubgroupBallotKHR" ],
3664 "extensions" : [ "SPV_KHR_shader_ballot" ],
3668 "opname" : "OpSubgroupFirstInvocationKHR",
3671 { "kind" : "IdResultType" },
3672 { "kind" : "IdResult" },
3673 { "kind" : "IdRef", "name" : "'Value'" }
3675 "capabilities" : [ "SubgroupBallotKHR" ],
3676 "extensions" : [ "SPV_KHR_shader_ballot" ],
3680 "opname" : "OpSubgroupAllKHR",
3683 { "kind" : "IdResultType" },
3684 { "kind" : "IdResult" },
3685 { "kind" : "IdRef", "name" : "'Predicate'" }
3688 "SPV_KHR_subgroup_vote"
3690 "capabilities" : [ "SubgroupVoteKHR" ],
3694 "opname" : "OpSubgroupAnyKHR",
3697 { "kind" : "IdResultType" },
3698 { "kind" : "IdResult" },
3699 { "kind" : "IdRef", "name" : "'Predicate'" }
3702 "SPV_KHR_subgroup_vote"
3704 "capabilities" : [ "SubgroupVoteKHR" ],
3708 "opname" : "OpSubgroupAllEqualKHR",
3711 { "kind" : "IdResultType" },
3712 { "kind" : "IdResult" },
3713 { "kind" : "IdRef", "name" : "'Predicate'" }
3716 "SPV_KHR_subgroup_vote"
3718 "capabilities" : [ "SubgroupVoteKHR" ],
3722 "opname" : "OpSubgroupReadInvocationKHR",
3725 { "kind" : "IdResultType" },
3726 { "kind" : "IdResult" },
3727 { "kind" : "IdRef", "name" : "'Value'" },
3728 { "kind" : "IdRef", "name" : "'Index'" }
3730 "capabilities" : [ "SubgroupBallotKHR" ],
3731 "extensions" : [ "SPV_KHR_shader_ballot" ],
3735 "opname" : "OpGroupIAddNonUniformAMD",
3738 { "kind" : "IdResultType" },
3739 { "kind" : "IdResult" },
3740 { "kind" : "IdScope", "name" : "'Execution'" },
3741 { "kind" : "GroupOperation", "name" : "'Operation'" },
3742 { "kind" : "IdRef", "name" : "'X'" }
3744 "capabilities" : [ "Groups" ],
3745 "extensions" : [ "SPV_AMD_shader_ballot" ],
3749 "opname" : "OpGroupFAddNonUniformAMD",
3752 { "kind" : "IdResultType" },
3753 { "kind" : "IdResult" },
3754 { "kind" : "IdScope", "name" : "'Execution'" },
3755 { "kind" : "GroupOperation", "name" : "'Operation'" },
3756 { "kind" : "IdRef", "name" : "'X'" }
3758 "capabilities" : [ "Groups" ],
3759 "extensions" : [ "SPV_AMD_shader_ballot" ],
3763 "opname" : "OpGroupFMinNonUniformAMD",
3766 { "kind" : "IdResultType" },
3767 { "kind" : "IdResult" },
3768 { "kind" : "IdScope", "name" : "'Execution'" },
3769 { "kind" : "GroupOperation", "name" : "'Operation'" },
3770 { "kind" : "IdRef", "name" : "'X'" }
3772 "capabilities" : [ "Groups" ],
3773 "extensions" : [ "SPV_AMD_shader_ballot" ],
3777 "opname" : "OpGroupUMinNonUniformAMD",
3780 { "kind" : "IdResultType" },
3781 { "kind" : "IdResult" },
3782 { "kind" : "IdScope", "name" : "'Execution'" },
3783 { "kind" : "GroupOperation", "name" : "'Operation'" },
3784 { "kind" : "IdRef", "name" : "'X'" }
3786 "capabilities" : [ "Groups" ],
3787 "extensions" : [ "SPV_AMD_shader_ballot" ],
3791 "opname" : "OpGroupSMinNonUniformAMD",
3794 { "kind" : "IdResultType" },
3795 { "kind" : "IdResult" },
3796 { "kind" : "IdScope", "name" : "'Execution'" },
3797 { "kind" : "GroupOperation", "name" : "'Operation'" },
3798 { "kind" : "IdRef", "name" : "'X'" }
3800 "capabilities" : [ "Groups" ],
3801 "extensions" : [ "SPV_AMD_shader_ballot" ],
3805 "opname" : "OpGroupFMaxNonUniformAMD",
3808 { "kind" : "IdResultType" },
3809 { "kind" : "IdResult" },
3810 { "kind" : "IdScope", "name" : "'Execution'" },
3811 { "kind" : "GroupOperation", "name" : "'Operation'" },
3812 { "kind" : "IdRef", "name" : "'X'" }
3814 "capabilities" : [ "Groups" ],
3815 "extensions" : [ "SPV_AMD_shader_ballot" ],
3819 "opname" : "OpGroupUMaxNonUniformAMD",
3822 { "kind" : "IdResultType" },
3823 { "kind" : "IdResult" },
3824 { "kind" : "IdScope", "name" : "'Execution'" },
3825 { "kind" : "GroupOperation", "name" : "'Operation'" },
3826 { "kind" : "IdRef", "name" : "'X'" }
3828 "capabilities" : [ "Groups" ],
3829 "extensions" : [ "SPV_AMD_shader_ballot" ],
3833 "opname" : "OpGroupSMaxNonUniformAMD",
3836 { "kind" : "IdResultType" },
3837 { "kind" : "IdResult" },
3838 { "kind" : "IdScope", "name" : "'Execution'" },
3839 { "kind" : "GroupOperation", "name" : "'Operation'" },
3840 { "kind" : "IdRef", "name" : "'X'" }
3842 "capabilities" : [ "Groups" ],
3843 "extensions" : [ "SPV_AMD_shader_ballot" ],
3847 "opname" : "OpFragmentMaskFetchAMD",
3850 { "kind" : "IdResultType" },
3851 { "kind" : "IdResult" },
3852 { "kind" : "IdRef", "name" : "'Image'" },
3853 { "kind" : "IdRef", "name" : "'Coordinate'" }
3855 "capabilities" : [ "FragmentMaskAMD" ],
3856 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
3860 "opname" : "OpFragmentFetchAMD",
3863 { "kind" : "IdResultType" },
3864 { "kind" : "IdResult" },
3865 { "kind" : "IdRef", "name" : "'Image'" },
3866 { "kind" : "IdRef", "name" : "'Coordinate'" },
3867 { "kind" : "IdRef", "name" : "'Fragment Index'" }
3869 "capabilities" : [ "FragmentMaskAMD" ],
3870 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
3874 "opname" : "OpImageSampleFootprintNV",
3877 { "kind" : "IdResultType" },
3878 { "kind" : "IdResult" },
3879 { "kind" : "IdRef", "name" : "'Sampled Image'" },
3880 { "kind" : "IdRef", "name" : "'Coordinate'" },
3881 { "kind" : "IdRef", "name" : "'Granularity'" },
3882 { "kind" : "IdRef", "name" : "'Coarse'" },
3883 { "kind" : "ImageOperands", "quantifier" : "?" }
3885 "capabilities" : [ "ImageFootprintNV" ],
3886 "extensions" : [ "SPV_NV_shader_image_footprint" ],
3890 "opname" : "OpGroupNonUniformPartitionNV",
3893 { "kind" : "IdResultType" },
3894 { "kind" : "IdResult" },
3895 { "kind" : "IdRef", "name" : "'Value'" }
3897 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
3898 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
3902 "opname" : "OpWritePackedPrimitiveIndices4x8NV",
3905 { "kind" : "IdRef", "name" : "'Index Offset'" },
3906 { "kind" : "IdRef", "name" : "'Packed Indices'" }
3908 "capabilities" : [ "MeshShadingNV" ],
3909 "extensions" : [ "SPV_NV_mesh_shader" ],
3913 "opname" : "OpReportIntersectionNV",
3916 { "kind" : "IdResultType" },
3917 { "kind" : "IdResult" },
3918 { "kind" : "IdRef", "name" : "'Hit'" },
3919 { "kind" : "IdRef", "name" : "'HitKind'" }
3921 "capabilities" : [ "RayTracingNV" ],
3922 "extensions" : [ "SPV_NV_ray_tracing" ]
3925 "opname" : "OpIgnoreIntersectionNV",
3928 "capabilities" : [ "RayTracingNV" ],
3929 "extensions" : [ "SPV_NV_ray_tracing" ]
3932 "opname" : "OpTerminateRayNV",
3935 "capabilities" : [ "RayTracingNV" ],
3936 "extensions" : [ "SPV_NV_ray_tracing" ]
3939 "opname" : "OpTraceNV",
3943 { "kind" : "IdRef", "name" : "'Accel'" },
3944 { "kind" : "IdRef", "name" : "'Ray Flags'" },
3945 { "kind" : "IdRef", "name" : "'Cull Mask'" },
3946 { "kind" : "IdRef", "name" : "'SBT Offset'" },
3947 { "kind" : "IdRef", "name" : "'SBT Stride'" },
3948 { "kind" : "IdRef", "name" : "'Miss Index'" },
3949 { "kind" : "IdRef", "name" : "'Ray Origin'" },
3950 { "kind" : "IdRef", "name" : "'Ray Tmin'" },
3951 { "kind" : "IdRef", "name" : "'Ray Direction'" },
3952 { "kind" : "IdRef", "name" : "'Ray Tmax'" },
3953 { "kind" : "IdRef", "name" : "'PayloadId'" }
3955 "capabilities" : [ "RayTracingNV" ],
3956 "extensions" : [ "SPV_NV_ray_tracing" ]
3959 "opname" : "OpTypeAccelerationStructureNV",
3962 { "kind" : "IdResult" }
3964 "capabilities" : [ "RayTracingNV" ],
3965 "extensions" : [ "SPV_NV_ray_tracing" ]
3968 "opname" : "OpExecuteCallableNV",
3972 { "kind" : "IdRef", "name" : "'SBT Index'" },
3973 { "kind" : "IdRef", "name" : "'Callable DataId'" }
3975 "capabilities" : [ "RayTracingNV" ],
3976 "extensions" : [ "SPV_NV_ray_tracing" ]
3979 "opname" : "OpTypeCooperativeMatrixNV",
3982 { "kind" : "IdResult" },
3983 { "kind" : "IdRef", "name" : "'Component Type'" },
3984 { "kind" : "IdScope", "name" : "'Execution'" },
3985 { "kind" : "IdRef", "name" : "'Rows'" },
3986 { "kind" : "IdRef", "name" : "'Columns'" }
3988 "capabilities" : [ "CooperativeMatrixNV" ],
3989 "extensions" : [ "SPV_NV_cooperative_matrix" ],
3993 "opname" : "OpCooperativeMatrixLoadNV",
3996 { "kind" : "IdResultType" },
3997 { "kind" : "IdResult" },
3998 { "kind" : "IdRef", "name" : "'Pointer'" },
3999 { "kind" : "IdRef", "name" : "'Stride'" },
4000 { "kind" : "IdRef", "name" : "'Column Major'" },
4001 { "kind" : "MemoryAccess", "quantifier" : "?" }
4003 "capabilities" : [ "CooperativeMatrixNV" ],
4004 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4008 "opname" : "OpCooperativeMatrixStoreNV",
4011 { "kind" : "IdRef", "name" : "'Pointer'" },
4012 { "kind" : "IdRef", "name" : "'Object'" },
4013 { "kind" : "IdRef", "name" : "'Stride'" },
4014 { "kind" : "IdRef", "name" : "'Column Major'" },
4015 { "kind" : "MemoryAccess", "quantifier" : "?" }
4017 "capabilities" : [ "CooperativeMatrixNV" ],
4018 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4022 "opname" : "OpCooperativeMatrixMulAddNV",
4025 { "kind" : "IdResultType" },
4026 { "kind" : "IdResult" },
4027 { "kind" : "IdRef", "name" : "'A'" },
4028 { "kind" : "IdRef", "name" : "'B'" },
4029 { "kind" : "IdRef", "name" : "'C'" }
4031 "capabilities" : [ "CooperativeMatrixNV" ],
4032 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4036 "opname" : "OpCooperativeMatrixLengthNV",
4039 { "kind" : "IdResultType" },
4040 { "kind" : "IdResult" },
4041 { "kind" : "IdRef", "name" : "'Type'" }
4043 "capabilities" : [ "CooperativeMatrixNV" ],
4044 "extensions" : [ "SPV_NV_cooperative_matrix" ],
4048 "opname" : "OpBeginInvocationInterlockEXT",
4050 "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
4051 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
4055 "opname" : "OpEndInvocationInterlockEXT",
4057 "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
4058 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
4062 "opname" : "OpDemoteToHelperInvocationEXT",
4064 "capabilities" : [ "DemoteToHelperInvocationEXT" ],
4065 "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
4069 "opname" : "OpIsHelperInvocationEXT",
4072 { "kind" : "IdResultType" },
4073 { "kind" : "IdResult" }
4075 "capabilities" : [ "DemoteToHelperInvocationEXT" ],
4076 "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
4080 "opname" : "OpSubgroupShuffleINTEL",
4083 { "kind" : "IdResultType" },
4084 { "kind" : "IdResult" },
4085 { "kind" : "IdRef", "name" : "'Data'" },
4086 { "kind" : "IdRef", "name" : "'InvocationId'" }
4088 "capabilities" : [ "SubgroupShuffleINTEL" ],
4092 "opname" : "OpSubgroupShuffleDownINTEL",
4095 { "kind" : "IdResultType" },
4096 { "kind" : "IdResult" },
4097 { "kind" : "IdRef", "name" : "'Current'" },
4098 { "kind" : "IdRef", "name" : "'Next'" },
4099 { "kind" : "IdRef", "name" : "'Delta'" }
4101 "capabilities" : [ "SubgroupShuffleINTEL" ],
4105 "opname" : "OpSubgroupShuffleUpINTEL",
4108 { "kind" : "IdResultType" },
4109 { "kind" : "IdResult" },
4110 { "kind" : "IdRef", "name" : "'Previous'" },
4111 { "kind" : "IdRef", "name" : "'Current'" },
4112 { "kind" : "IdRef", "name" : "'Delta'" }
4114 "capabilities" : [ "SubgroupShuffleINTEL" ],
4118 "opname" : "OpSubgroupShuffleXorINTEL",
4121 { "kind" : "IdResultType" },
4122 { "kind" : "IdResult" },
4123 { "kind" : "IdRef", "name" : "'Data'" },
4124 { "kind" : "IdRef", "name" : "'Value'" }
4126 "capabilities" : [ "SubgroupShuffleINTEL" ],
4130 "opname" : "OpSubgroupBlockReadINTEL",
4133 { "kind" : "IdResultType" },
4134 { "kind" : "IdResult" },
4135 { "kind" : "IdRef", "name" : "'Ptr'" }
4137 "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4141 "opname" : "OpSubgroupBlockWriteINTEL",
4144 { "kind" : "IdRef", "name" : "'Ptr'" },
4145 { "kind" : "IdRef", "name" : "'Data'" }
4147 "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4151 "opname" : "OpSubgroupImageBlockReadINTEL",
4154 { "kind" : "IdResultType" },
4155 { "kind" : "IdResult" },
4156 { "kind" : "IdRef", "name" : "'Image'" },
4157 { "kind" : "IdRef", "name" : "'Coordinate'" }
4159 "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4163 "opname" : "OpSubgroupImageBlockWriteINTEL",
4166 { "kind" : "IdRef", "name" : "'Image'" },
4167 { "kind" : "IdRef", "name" : "'Coordinate'" },
4168 { "kind" : "IdRef", "name" : "'Data'" }
4170 "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4174 "opname" : "OpSubgroupImageMediaBlockReadINTEL",
4177 { "kind" : "IdResultType" },
4178 { "kind" : "IdResult" },
4179 { "kind" : "IdRef", "name" : "'Image'" },
4180 { "kind" : "IdRef", "name" : "'Coordinate'" },
4181 { "kind" : "IdRef", "name" : "'Width'" },
4182 { "kind" : "IdRef", "name" : "'Height'" }
4184 "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
4188 "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
4191 { "kind" : "IdRef", "name" : "'Image'" },
4192 { "kind" : "IdRef", "name" : "'Coordinate'" },
4193 { "kind" : "IdRef", "name" : "'Width'" },
4194 { "kind" : "IdRef", "name" : "'Height'" },
4195 { "kind" : "IdRef", "name" : "'Data'" }
4197 "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
4201 "opname" : "OpUCountLeadingZerosINTEL",
4204 { "kind" : "IdResultType" },
4205 { "kind" : "IdResult" },
4206 { "kind" : "IdRef", "name" : "'Operand'" }
4208 "capabilities" : [ "IntegerFunctions2INTEL" ],
4212 "opname" : "OpUCountTrailingZerosINTEL",
4215 { "kind" : "IdResultType" },
4216 { "kind" : "IdResult" },
4217 { "kind" : "IdRef", "name" : "'Operand'" }
4219 "capabilities" : [ "IntegerFunctions2INTEL" ],
4223 "opname" : "OpAbsISubINTEL",
4226 { "kind" : "IdResultType" },
4227 { "kind" : "IdResult" },
4228 { "kind" : "IdRef", "name" : "'Operand 1'" },
4229 { "kind" : "IdRef", "name" : "'Operand 2'" }
4231 "capabilities" : [ "IntegerFunctions2INTEL" ],
4235 "opname" : "OpAbsUSubINTEL",
4238 { "kind" : "IdResultType" },
4239 { "kind" : "IdResult" },
4240 { "kind" : "IdRef", "name" : "'Operand 1'" },
4241 { "kind" : "IdRef", "name" : "'Operand 2'" }
4243 "capabilities" : [ "IntegerFunctions2INTEL" ],
4247 "opname" : "OpIAddSatINTEL",
4250 { "kind" : "IdResultType" },
4251 { "kind" : "IdResult" },
4252 { "kind" : "IdRef", "name" : "'Operand 1'" },
4253 { "kind" : "IdRef", "name" : "'Operand 2'" }
4255 "capabilities" : [ "IntegerFunctions2INTEL" ],
4259 "opname" : "OpUAddSatINTEL",
4262 { "kind" : "IdResultType" },
4263 { "kind" : "IdResult" },
4264 { "kind" : "IdRef", "name" : "'Operand 1'" },
4265 { "kind" : "IdRef", "name" : "'Operand 2'" }
4267 "capabilities" : [ "IntegerFunctions2INTEL" ],
4271 "opname" : "OpIAverageINTEL",
4274 { "kind" : "IdResultType" },
4275 { "kind" : "IdResult" },
4276 { "kind" : "IdRef", "name" : "'Operand 1'" },
4277 { "kind" : "IdRef", "name" : "'Operand 2'" }
4279 "capabilities" : [ "IntegerFunctions2INTEL" ],
4283 "opname" : "OpUAverageINTEL",
4286 { "kind" : "IdResultType" },
4287 { "kind" : "IdResult" },
4288 { "kind" : "IdRef", "name" : "'Operand 1'" },
4289 { "kind" : "IdRef", "name" : "'Operand 2'" }
4291 "capabilities" : [ "IntegerFunctions2INTEL" ],
4295 "opname" : "OpIAverageRoundedINTEL",
4298 { "kind" : "IdResultType" },
4299 { "kind" : "IdResult" },
4300 { "kind" : "IdRef", "name" : "'Operand 1'" },
4301 { "kind" : "IdRef", "name" : "'Operand 2'" }
4303 "capabilities" : [ "IntegerFunctions2INTEL" ],
4307 "opname" : "OpUAverageRoundedINTEL",
4310 { "kind" : "IdResultType" },
4311 { "kind" : "IdResult" },
4312 { "kind" : "IdRef", "name" : "'Operand 1'" },
4313 { "kind" : "IdRef", "name" : "'Operand 2'" }
4315 "capabilities" : [ "IntegerFunctions2INTEL" ],
4319 "opname" : "OpISubSatINTEL",
4322 { "kind" : "IdResultType" },
4323 { "kind" : "IdResult" },
4324 { "kind" : "IdRef", "name" : "'Operand 1'" },
4325 { "kind" : "IdRef", "name" : "'Operand 2'" }
4327 "capabilities" : [ "IntegerFunctions2INTEL" ],
4331 "opname" : "OpUSubSatINTEL",
4334 { "kind" : "IdResultType" },
4335 { "kind" : "IdResult" },
4336 { "kind" : "IdRef", "name" : "'Operand 1'" },
4337 { "kind" : "IdRef", "name" : "'Operand 2'" }
4339 "capabilities" : [ "IntegerFunctions2INTEL" ],
4343 "opname" : "OpIMul32x16INTEL",
4346 { "kind" : "IdResultType" },
4347 { "kind" : "IdResult" },
4348 { "kind" : "IdRef", "name" : "'Operand 1'" },
4349 { "kind" : "IdRef", "name" : "'Operand 2'" }
4351 "capabilities" : [ "IntegerFunctions2INTEL" ],
4355 "opname" : "OpUMul32x16INTEL",
4358 { "kind" : "IdResultType" },
4359 { "kind" : "IdResult" },
4360 { "kind" : "IdRef", "name" : "'Operand 1'" },
4361 { "kind" : "IdRef", "name" : "'Operand 2'" }
4363 "capabilities" : [ "IntegerFunctions2INTEL" ],
4367 "opname" : "OpDecorateString",
4370 { "kind" : "IdRef", "name" : "'Target'" },
4371 { "kind" : "Decoration" }
4373 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4377 "opname" : "OpDecorateStringGOOGLE",
4380 { "kind" : "IdRef", "name" : "'Target'" },
4381 { "kind" : "Decoration" }
4383 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4387 "opname" : "OpMemberDecorateString",
4390 { "kind" : "IdRef", "name" : "'Struct Type'" },
4391 { "kind" : "LiteralInteger", "name" : "'Member'" },
4392 { "kind" : "Decoration" }
4394 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4398 "opname" : "OpMemberDecorateStringGOOGLE",
4401 { "kind" : "IdRef", "name" : "'Struct Type'" },
4402 { "kind" : "LiteralInteger", "name" : "'Member'" },
4403 { "kind" : "Decoration" }
4405 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4409 "opname" : "OpVmeImageINTEL",
4412 { "kind" : "IdResultType" },
4413 { "kind" : "IdResult" },
4414 { "kind" : "IdRef", "name" : "'Image Type'" },
4415 { "kind" : "IdRef", "name" : "'Sampler'" }
4417 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4421 "opname" : "OpTypeVmeImageINTEL",
4424 { "kind" : "IdResult" },
4425 { "kind" : "IdRef", "name" : "'Image Type'" }
4427 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4431 "opname" : "OpTypeAvcImePayloadINTEL",
4434 { "kind" : "IdResult" }
4436 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4440 "opname" : "OpTypeAvcRefPayloadINTEL",
4443 { "kind" : "IdResult" }
4445 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4449 "opname" : "OpTypeAvcSicPayloadINTEL",
4452 { "kind" : "IdResult" }
4454 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4458 "opname" : "OpTypeAvcMcePayloadINTEL",
4461 { "kind" : "IdResult" }
4463 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4467 "opname" : "OpTypeAvcMceResultINTEL",
4470 { "kind" : "IdResult" }
4472 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4476 "opname" : "OpTypeAvcImeResultINTEL",
4479 { "kind" : "IdResult" }
4481 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4485 "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
4488 { "kind" : "IdResult" }
4490 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4494 "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
4497 { "kind" : "IdResult" }
4499 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4503 "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
4506 { "kind" : "IdResult" }
4508 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4512 "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
4515 { "kind" : "IdResult" }
4517 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4521 "opname" : "OpTypeAvcRefResultINTEL",
4524 { "kind" : "IdResult" }
4526 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4530 "opname" : "OpTypeAvcSicResultINTEL",
4533 { "kind" : "IdResult" }
4535 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4539 "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
4542 { "kind" : "IdResultType" },
4543 { "kind" : "IdResult" },
4544 { "kind" : "IdRef", "name" : "'Slice Type'" },
4545 { "kind" : "IdRef", "name" : "'Qp'" }
4547 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4551 "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
4554 { "kind" : "IdResultType" },
4555 { "kind" : "IdResult" },
4556 { "kind" : "IdRef", "name" : "'Reference Base Penalty'" },
4557 { "kind" : "IdRef", "name" : "'Payload'" }
4559 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4563 "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
4566 { "kind" : "IdResultType" },
4567 { "kind" : "IdResult" },
4568 { "kind" : "IdRef", "name" : "'Slice Type'" },
4569 { "kind" : "IdRef", "name" : "'Qp'" }
4571 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4575 "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
4578 { "kind" : "IdResultType" },
4579 { "kind" : "IdResult" },
4580 { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
4581 { "kind" : "IdRef", "name" : "'Payload'" }
4583 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4587 "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
4590 { "kind" : "IdResultType" },
4591 { "kind" : "IdResult" },
4592 { "kind" : "IdRef", "name" : "'Slice Type'" },
4593 { "kind" : "IdRef", "name" : "'Qp'" }
4595 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4599 "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
4602 { "kind" : "IdResultType" },
4603 { "kind" : "IdResult" },
4604 { "kind" : "IdRef", "name" : "'Direction Cost'" },
4605 { "kind" : "IdRef", "name" : "'Payload'" }
4607 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4611 "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
4614 { "kind" : "IdResultType" },
4615 { "kind" : "IdResult" },
4616 { "kind" : "IdRef", "name" : "'Slice Type'" },
4617 { "kind" : "IdRef", "name" : "'Qp'" }
4619 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
4623 "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
4626 { "kind" : "IdResultType" },
4627 { "kind" : "IdResult" },
4628 { "kind" : "IdRef", "name" : "'Slice Type'" },
4629 { "kind" : "IdRef", "name" : "'Qp'" }
4631 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4635 "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
4638 { "kind" : "IdResultType" },
4639 { "kind" : "IdResult" }
4641 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4645 "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
4648 { "kind" : "IdResultType" },
4649 { "kind" : "IdResult" }
4651 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4655 "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
4658 { "kind" : "IdResultType" },
4659 { "kind" : "IdResult" }
4661 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4665 "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
4668 { "kind" : "IdResultType" },
4669 { "kind" : "IdResult" },
4670 { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" },
4671 { "kind" : "IdRef", "name" : "'Packed Cost Table'" },
4672 { "kind" : "IdRef", "name" : "'Cost Precision'" },
4673 { "kind" : "IdRef", "name" : "'Payload'" }
4675 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4679 "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
4682 { "kind" : "IdResultType" },
4683 { "kind" : "IdResult" },
4684 { "kind" : "IdRef", "name" : "'Slice Type'" },
4685 { "kind" : "IdRef", "name" : "'Qp'" }
4687 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
4691 "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
4694 { "kind" : "IdResultType" },
4695 { "kind" : "IdResult" }
4697 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
4701 "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
4704 { "kind" : "IdResultType" },
4705 { "kind" : "IdResult" }
4707 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
4711 "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
4714 { "kind" : "IdResultType" },
4715 { "kind" : "IdResult" },
4716 { "kind" : "IdRef", "name" : "'Payload'" }
4718 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4722 "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
4725 { "kind" : "IdResultType" },
4726 { "kind" : "IdResult" },
4727 { "kind" : "IdRef", "name" : "'Source Field Polarity'" },
4728 { "kind" : "IdRef", "name" : "'Payload'" }
4730 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4734 "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
4737 { "kind" : "IdResultType" },
4738 { "kind" : "IdResult" },
4739 { "kind" : "IdRef", "name" : "'Reference Field Polarity'" },
4740 { "kind" : "IdRef", "name" : "'Payload'" }
4742 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4746 "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
4749 { "kind" : "IdResultType" },
4750 { "kind" : "IdResult" },
4751 { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" },
4752 { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" },
4753 { "kind" : "IdRef", "name" : "'Payload'" }
4755 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4759 "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
4762 { "kind" : "IdResultType" },
4763 { "kind" : "IdResult" },
4764 { "kind" : "IdRef", "name" : "'Payload'" }
4766 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4770 "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
4773 { "kind" : "IdResultType" },
4774 { "kind" : "IdResult" },
4775 { "kind" : "IdRef", "name" : "'Payload'" }
4777 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4781 "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
4784 { "kind" : "IdResultType" },
4785 { "kind" : "IdResult" },
4786 { "kind" : "IdRef", "name" : "'Payload'" }
4788 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4792 "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
4795 { "kind" : "IdResultType" },
4796 { "kind" : "IdResult" },
4797 { "kind" : "IdRef", "name" : "'Payload'" }
4799 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4803 "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
4806 { "kind" : "IdResultType" },
4807 { "kind" : "IdResult" },
4808 { "kind" : "IdRef", "name" : "'Payload'" }
4810 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4814 "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
4817 { "kind" : "IdResultType" },
4818 { "kind" : "IdResult" },
4819 { "kind" : "IdRef", "name" : "'Payload'" }
4821 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4825 "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
4828 { "kind" : "IdResultType" },
4829 { "kind" : "IdResult" },
4830 { "kind" : "IdRef", "name" : "'Payload'" }
4832 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4836 "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
4839 { "kind" : "IdResultType" },
4840 { "kind" : "IdResult" },
4841 { "kind" : "IdRef", "name" : "'Payload'" }
4843 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4847 "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
4850 { "kind" : "IdResultType" },
4851 { "kind" : "IdResult" },
4852 { "kind" : "IdRef", "name" : "'Payload'" }
4854 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4858 "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
4861 { "kind" : "IdResultType" },
4862 { "kind" : "IdResult" },
4863 { "kind" : "IdRef", "name" : "'Payload'" }
4865 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4869 "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
4872 { "kind" : "IdResultType" },
4873 { "kind" : "IdResult" },
4874 { "kind" : "IdRef", "name" : "'Payload'" }
4876 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4880 "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
4883 { "kind" : "IdResultType" },
4884 { "kind" : "IdResult" },
4885 { "kind" : "IdRef", "name" : "'Payload'" }
4887 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4891 "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
4894 { "kind" : "IdResultType" },
4895 { "kind" : "IdResult" },
4896 { "kind" : "IdRef", "name" : "'Payload'" }
4898 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4902 "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
4905 { "kind" : "IdResultType" },
4906 { "kind" : "IdResult" },
4907 { "kind" : "IdRef", "name" : "'Payload'" }
4909 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4913 "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
4916 { "kind" : "IdResultType" },
4917 { "kind" : "IdResult" },
4918 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
4919 { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" },
4920 { "kind" : "IdRef", "name" : "'Payload'" }
4922 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4926 "opname" : "OpSubgroupAvcImeInitializeINTEL",
4929 { "kind" : "IdResultType" },
4930 { "kind" : "IdResult" },
4931 { "kind" : "IdRef", "name" : "'Src Coord'" },
4932 { "kind" : "IdRef", "name" : "'Partition Mask'" },
4933 { "kind" : "IdRef", "name" : "'SAD Adjustment'" }
4935 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4939 "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
4942 { "kind" : "IdResultType" },
4943 { "kind" : "IdResult" },
4944 { "kind" : "IdRef", "name" : "'Ref Offset'" },
4945 { "kind" : "IdRef", "name" : "'Search Window Config'" },
4946 { "kind" : "IdRef", "name" : "'Payload'" }
4948 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4952 "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
4955 { "kind" : "IdResultType" },
4956 { "kind" : "IdResult" },
4957 { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" },
4958 { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" },
4959 { "kind" : "IdRef", "name" : "'id> Search Window Config'" },
4960 { "kind" : "IdRef", "name" : "'Payload'" }
4962 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4966 "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
4969 { "kind" : "IdResultType" },
4970 { "kind" : "IdResult" },
4971 { "kind" : "IdRef", "name" : "'Search Window Config'" },
4972 { "kind" : "IdRef", "name" : "'Dual Ref'" }
4974 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4978 "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
4981 { "kind" : "IdResultType" },
4982 { "kind" : "IdResult" },
4983 { "kind" : "IdRef", "name" : "'Ref Offset'" },
4984 { "kind" : "IdRef", "name" : "'Src Coord'" },
4985 { "kind" : "IdRef", "name" : "'Ref Window Size'" },
4986 { "kind" : "IdRef", "name" : "'Image Size'" }
4988 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4992 "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
4995 { "kind" : "IdResultType" },
4996 { "kind" : "IdResult" },
4997 { "kind" : "IdRef", "name" : "'Payload'" }
4999 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5003 "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
5006 { "kind" : "IdResultType" },
5007 { "kind" : "IdResult" },
5008 { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" },
5009 { "kind" : "IdRef", "name" : "'Payload'" }
5011 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5015 "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
5018 { "kind" : "IdResultType" },
5019 { "kind" : "IdResult" },
5020 { "kind" : "IdRef", "name" : "'Payload'" }
5022 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5026 "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
5029 { "kind" : "IdResultType" },
5030 { "kind" : "IdResult" },
5031 { "kind" : "IdRef", "name" : "'Threshold'" },
5032 { "kind" : "IdRef", "name" : "'Payload'" }
5034 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5038 "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
5041 { "kind" : "IdResultType" },
5042 { "kind" : "IdResult" },
5043 { "kind" : "IdRef", "name" : "'Packed Sad Weights'" },
5044 { "kind" : "IdRef", "name" : "'Payload'" }
5046 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5050 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
5053 { "kind" : "IdResultType" },
5054 { "kind" : "IdResult" },
5055 { "kind" : "IdRef", "name" : "'Src Image'" },
5056 { "kind" : "IdRef", "name" : "'Ref Image'" },
5057 { "kind" : "IdRef", "name" : "'Payload'" }
5059 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5063 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
5066 { "kind" : "IdResultType" },
5067 { "kind" : "IdResult" },
5068 { "kind" : "IdRef", "name" : "'Src Image'" },
5069 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5070 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5071 { "kind" : "IdRef", "name" : "'Payload'" }
5073 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5077 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
5080 { "kind" : "IdResultType" },
5081 { "kind" : "IdResult" },
5082 { "kind" : "IdRef", "name" : "'Src Image'" },
5083 { "kind" : "IdRef", "name" : "'Ref Image'" },
5084 { "kind" : "IdRef", "name" : "'Payload'" },
5085 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5087 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5091 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
5094 { "kind" : "IdResultType" },
5095 { "kind" : "IdResult" },
5096 { "kind" : "IdRef", "name" : "'Src Image'" },
5097 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5098 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5099 { "kind" : "IdRef", "name" : "'Payload'" },
5100 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5102 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5106 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
5109 { "kind" : "IdResultType" },
5110 { "kind" : "IdResult" },
5111 { "kind" : "IdRef", "name" : "'Src Image'" },
5112 { "kind" : "IdRef", "name" : "'Ref Image'" },
5113 { "kind" : "IdRef", "name" : "'Payload'" }
5115 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5119 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
5122 { "kind" : "IdResultType" },
5123 { "kind" : "IdResult" },
5124 { "kind" : "IdRef", "name" : "'Src Image'" },
5125 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5126 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5127 { "kind" : "IdRef", "name" : "'Payload'" }
5129 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5133 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
5136 { "kind" : "IdResultType" },
5137 { "kind" : "IdResult" },
5138 { "kind" : "IdRef", "name" : "'Src Image'" },
5139 { "kind" : "IdRef", "name" : "'Ref Image'" },
5140 { "kind" : "IdRef", "name" : "'Payload'" },
5141 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5143 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5147 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
5150 { "kind" : "IdResultType" },
5151 { "kind" : "IdResult" },
5152 { "kind" : "IdRef", "name" : "'Src Image'" },
5153 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5154 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5155 { "kind" : "IdRef", "name" : "'Payload'" },
5156 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5158 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5162 "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
5165 { "kind" : "IdResultType" },
5166 { "kind" : "IdResult" },
5167 { "kind" : "IdRef", "name" : "'Payload'" }
5169 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5173 "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
5176 { "kind" : "IdResultType" },
5177 { "kind" : "IdResult" },
5178 { "kind" : "IdRef", "name" : "'Payload'" }
5180 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5184 "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
5187 { "kind" : "IdResultType" },
5188 { "kind" : "IdResult" },
5189 { "kind" : "IdRef", "name" : "'Payload'" }
5191 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5195 "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
5198 { "kind" : "IdResultType" },
5199 { "kind" : "IdResult" },
5200 { "kind" : "IdRef", "name" : "'Payload'" }
5202 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5206 "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
5209 { "kind" : "IdResultType" },
5210 { "kind" : "IdResult" },
5211 { "kind" : "IdRef", "name" : "'Payload'" }
5213 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5217 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
5220 { "kind" : "IdResultType" },
5221 { "kind" : "IdResult" },
5222 { "kind" : "IdRef", "name" : "'Payload'" },
5223 { "kind" : "IdRef", "name" : "'Major Shape'" }
5225 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5229 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
5232 { "kind" : "IdResultType" },
5233 { "kind" : "IdResult" },
5234 { "kind" : "IdRef", "name" : "'Payload'" },
5235 { "kind" : "IdRef", "name" : "'Major Shape'" }
5237 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5241 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
5244 { "kind" : "IdResultType" },
5245 { "kind" : "IdResult" },
5246 { "kind" : "IdRef", "name" : "'Payload'" },
5247 { "kind" : "IdRef", "name" : "'Major Shape'" }
5249 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5253 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
5256 { "kind" : "IdResultType" },
5257 { "kind" : "IdResult" },
5258 { "kind" : "IdRef", "name" : "'Payload'" },
5259 { "kind" : "IdRef", "name" : "'Major Shape'" },
5260 { "kind" : "IdRef", "name" : "'Direction'" }
5262 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5266 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
5269 { "kind" : "IdResultType" },
5270 { "kind" : "IdResult" },
5271 { "kind" : "IdRef", "name" : "'Payload'" },
5272 { "kind" : "IdRef", "name" : "'Major Shape'" },
5273 { "kind" : "IdRef", "name" : "'Direction'" }
5275 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5279 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
5282 { "kind" : "IdResultType" },
5283 { "kind" : "IdResult" },
5284 { "kind" : "IdRef", "name" : "'Payload'" },
5285 { "kind" : "IdRef", "name" : "'Major Shape'" },
5286 { "kind" : "IdRef", "name" : "'Direction'" }
5288 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5292 "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
5295 { "kind" : "IdResultType" },
5296 { "kind" : "IdResult" },
5297 { "kind" : "IdRef", "name" : "'Image Select'" },
5298 { "kind" : "IdRef", "name" : "'Payload'" }
5300 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5304 "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
5307 { "kind" : "IdResultType" },
5308 { "kind" : "IdResult" },
5309 { "kind" : "IdRef", "name" : "'Payload'" }
5311 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5315 "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
5318 { "kind" : "IdResultType" },
5319 { "kind" : "IdResult" },
5320 { "kind" : "IdRef", "name" : "'Payload'" }
5322 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5326 "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
5329 { "kind" : "IdResultType" },
5330 { "kind" : "IdResult" },
5331 { "kind" : "IdRef", "name" : "'Payload'" }
5333 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5337 "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
5340 { "kind" : "IdResultType" },
5341 { "kind" : "IdResult" },
5342 { "kind" : "IdRef", "name" : "'Payload'" }
5344 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5348 "opname" : "OpSubgroupAvcFmeInitializeINTEL",
5351 { "kind" : "IdResultType" },
5352 { "kind" : "IdResult" },
5353 { "kind" : "IdRef", "name" : "'Src Coord'" },
5354 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
5355 { "kind" : "IdRef", "name" : "'Major Shapes'" },
5356 { "kind" : "IdRef", "name" : "'Minor Shapes'" },
5357 { "kind" : "IdRef", "name" : "'Direction'" },
5358 { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
5359 { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
5361 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5365 "opname" : "OpSubgroupAvcBmeInitializeINTEL",
5368 { "kind" : "IdResultType" },
5369 { "kind" : "IdResult" },
5370 { "kind" : "IdRef", "name" : "'Src Coord'" },
5371 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
5372 { "kind" : "IdRef", "name" : "'Major Shapes'" },
5373 { "kind" : "IdRef", "name" : "'Minor Shapes'" },
5374 { "kind" : "IdRef", "name" : "'Direction'" },
5375 { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
5376 { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
5377 { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
5379 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5383 "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
5386 { "kind" : "IdResultType" },
5387 { "kind" : "IdResult" },
5388 { "kind" : "IdRef", "name" : "'Payload'" }
5390 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5394 "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
5397 { "kind" : "IdResultType" },
5398 { "kind" : "IdResult" },
5399 { "kind" : "IdRef", "name" : "'Payload'" }
5401 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5405 "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
5408 { "kind" : "IdResultType" },
5409 { "kind" : "IdResult" },
5410 { "kind" : "IdRef", "name" : "'Payload'" }
5412 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5416 "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
5419 { "kind" : "IdResultType" },
5420 { "kind" : "IdResult" },
5421 { "kind" : "IdRef", "name" : "'Src Image'" },
5422 { "kind" : "IdRef", "name" : "'Ref Image'" },
5423 { "kind" : "IdRef", "name" : "'Payload'" }
5425 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5429 "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
5432 { "kind" : "IdResultType" },
5433 { "kind" : "IdResult" },
5434 { "kind" : "IdRef", "name" : "'Src Image'" },
5435 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5436 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5437 { "kind" : "IdRef", "name" : "'Payload'" }
5439 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5443 "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
5446 { "kind" : "IdResultType" },
5447 { "kind" : "IdResult" },
5448 { "kind" : "IdRef", "name" : "'Src Image'" },
5449 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5450 { "kind" : "IdRef", "name" : "'Payload'" }
5452 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5456 "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
5459 { "kind" : "IdResultType" },
5460 { "kind" : "IdResult" },
5461 { "kind" : "IdRef", "name" : "'Src Image'" },
5462 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5463 { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
5464 { "kind" : "IdRef", "name" : "'Payload'" }
5466 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5470 "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
5473 { "kind" : "IdResultType" },
5474 { "kind" : "IdResult" },
5475 { "kind" : "IdRef", "name" : "'Payload'" }
5477 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5481 "opname" : "OpSubgroupAvcSicInitializeINTEL",
5484 { "kind" : "IdResultType" },
5485 { "kind" : "IdResult" },
5486 { "kind" : "IdRef", "name" : "'Src Coord'" }
5488 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5492 "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
5495 { "kind" : "IdResultType" },
5496 { "kind" : "IdResult" },
5497 { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
5498 { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" },
5499 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
5500 { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
5501 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
5502 { "kind" : "IdRef", "name" : "'Payload'" }
5504 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5508 "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
5511 { "kind" : "IdResultType" },
5512 { "kind" : "IdResult" },
5513 { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
5514 { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
5515 { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
5516 { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
5517 { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
5518 { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
5519 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
5520 { "kind" : "IdRef", "name" : "'Payload'" }
5522 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5526 "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
5529 { "kind" : "IdResultType" },
5530 { "kind" : "IdResult" },
5531 { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
5532 { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
5533 { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
5534 { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
5535 { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
5536 { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
5537 { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" },
5538 { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" },
5539 { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" },
5540 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
5541 { "kind" : "IdRef", "name" : "'Payload'" }
5543 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5547 "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
5550 { "kind" : "IdResultType" },
5551 { "kind" : "IdResult" },
5552 { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
5553 { "kind" : "IdRef", "name" : "'Direction'" }
5555 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5559 "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
5562 { "kind" : "IdResultType" },
5563 { "kind" : "IdResult" },
5564 { "kind" : "IdRef", "name" : "'Payload'" }
5566 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5570 "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
5573 { "kind" : "IdResultType" },
5574 { "kind" : "IdResult" },
5575 { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
5576 { "kind" : "IdRef", "name" : "'Payload'" }
5578 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5582 "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
5585 { "kind" : "IdResultType" },
5586 { "kind" : "IdResult" },
5587 { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" },
5588 { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" },
5589 { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" },
5590 { "kind" : "IdRef", "name" : "'Payload'" }
5592 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5596 "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
5599 { "kind" : "IdResultType" },
5600 { "kind" : "IdResult" },
5601 { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" },
5602 { "kind" : "IdRef", "name" : "'Payload'" }
5604 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5608 "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
5611 { "kind" : "IdResultType" },
5612 { "kind" : "IdResult" },
5613 { "kind" : "IdRef", "name" : "'Payload'" }
5615 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5619 "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
5622 { "kind" : "IdResultType" },
5623 { "kind" : "IdResult" },
5624 { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" },
5625 { "kind" : "IdRef", "name" : "'Payload'" }
5627 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5631 "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
5634 { "kind" : "IdResultType" },
5635 { "kind" : "IdResult" },
5636 { "kind" : "IdRef", "name" : "'Block Based Skip Type'" },
5637 { "kind" : "IdRef", "name" : "'Payload'" }
5639 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5643 "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
5646 { "kind" : "IdResultType" },
5647 { "kind" : "IdResult" },
5648 { "kind" : "IdRef", "name" : "'Src Image'" },
5649 { "kind" : "IdRef", "name" : "'Payload'" }
5651 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5655 "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
5658 { "kind" : "IdResultType" },
5659 { "kind" : "IdResult" },
5660 { "kind" : "IdRef", "name" : "'Src Image'" },
5661 { "kind" : "IdRef", "name" : "'Ref Image'" },
5662 { "kind" : "IdRef", "name" : "'Payload'" }
5664 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5668 "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
5671 { "kind" : "IdResultType" },
5672 { "kind" : "IdResult" },
5673 { "kind" : "IdRef", "name" : "'Src Image'" },
5674 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5675 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5676 { "kind" : "IdRef", "name" : "'Payload'" }
5678 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5682 "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
5685 { "kind" : "IdResultType" },
5686 { "kind" : "IdResult" },
5687 { "kind" : "IdRef", "name" : "'Src Image'" },
5688 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5689 { "kind" : "IdRef", "name" : "'Payload'" }
5691 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5695 "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
5698 { "kind" : "IdResultType" },
5699 { "kind" : "IdResult" },
5700 { "kind" : "IdRef", "name" : "'Src Image'" },
5701 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5702 { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
5703 { "kind" : "IdRef", "name" : "'Payload'" }
5705 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5709 "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
5712 { "kind" : "IdResultType" },
5713 { "kind" : "IdResult" },
5714 { "kind" : "IdRef", "name" : "'Payload'" }
5716 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5720 "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
5723 { "kind" : "IdResultType" },
5724 { "kind" : "IdResult" },
5725 { "kind" : "IdRef", "name" : "'Payload'" }
5727 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5731 "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
5734 { "kind" : "IdResultType" },
5735 { "kind" : "IdResult" },
5736 { "kind" : "IdRef", "name" : "'Payload'" }
5738 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5742 "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
5745 { "kind" : "IdResultType" },
5746 { "kind" : "IdResult" },
5747 { "kind" : "IdRef", "name" : "'Payload'" }
5749 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5753 "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
5756 { "kind" : "IdResultType" },
5757 { "kind" : "IdResult" },
5758 { "kind" : "IdRef", "name" : "'Payload'" }
5760 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5764 "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
5767 { "kind" : "IdResultType" },
5768 { "kind" : "IdResult" },
5769 { "kind" : "IdRef", "name" : "'Payload'" }
5771 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5775 "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
5778 { "kind" : "IdResultType" },
5779 { "kind" : "IdResult" },
5780 { "kind" : "IdRef", "name" : "'Payload'" }
5782 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5786 "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
5789 { "kind" : "IdResultType" },
5790 { "kind" : "IdResult" },
5791 { "kind" : "IdRef", "name" : "'Payload'" }
5793 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5797 "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
5800 { "kind" : "IdResultType" },
5801 { "kind" : "IdResult" },
5802 { "kind" : "IdRef", "name" : "'Payload'" }
5804 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5810 "category" : "BitEnum",
5811 "kind" : "ImageOperands",
5814 "enumerant" : "None",
5818 "enumerant" : "Bias",
5820 "capabilities" : [ "Shader" ],
5822 { "kind" : "IdRef" }
5826 "enumerant" : "Lod",
5829 { "kind" : "IdRef" }
5833 "enumerant" : "Grad",
5836 { "kind" : "IdRef" },
5837 { "kind" : "IdRef" }
5841 "enumerant" : "ConstOffset",
5844 { "kind" : "IdRef" }
5848 "enumerant" : "Offset",
5850 "capabilities" : [ "ImageGatherExtended" ],
5852 { "kind" : "IdRef" }
5856 "enumerant" : "ConstOffsets",
5858 "capabilities" : [ "ImageGatherExtended" ],
5860 { "kind" : "IdRef" }
5864 "enumerant" : "Sample",
5867 { "kind" : "IdRef" }
5871 "enumerant" : "MinLod",
5873 "capabilities" : [ "MinLod" ],
5875 { "kind" : "IdRef" }
5879 "enumerant" : "MakeTexelAvailableKHR",
5881 "capabilities" : [ "VulkanMemoryModelKHR" ],
5883 { "kind" : "IdScope" }
5888 "enumerant" : "MakeTexelVisibleKHR",
5890 "capabilities" : [ "VulkanMemoryModelKHR" ],
5892 { "kind" : "IdScope" }
5897 "enumerant" : "NonPrivateTexelKHR",
5899 "capabilities" : [ "VulkanMemoryModelKHR" ],
5903 "enumerant" : "VolatileTexelKHR",
5905 "capabilities" : [ "VulkanMemoryModelKHR" ],
5909 "enumerant" : "SignExtend",
5914 "enumerant" : "ZeroExtend",
5921 "category" : "BitEnum",
5922 "kind" : "FPFastMathMode",
5925 "enumerant" : "None",
5929 "enumerant" : "NotNaN",
5931 "capabilities" : [ "Kernel" ]
5934 "enumerant" : "NotInf",
5936 "capabilities" : [ "Kernel" ]
5939 "enumerant" : "NSZ",
5941 "capabilities" : [ "Kernel" ]
5944 "enumerant" : "AllowRecip",
5946 "capabilities" : [ "Kernel" ]
5949 "enumerant" : "Fast",
5951 "capabilities" : [ "Kernel" ]
5956 "category" : "BitEnum",
5957 "kind" : "SelectionControl",
5960 "enumerant" : "None",
5964 "enumerant" : "Flatten",
5968 "enumerant" : "DontFlatten",
5974 "category" : "BitEnum",
5975 "kind" : "LoopControl",
5978 "enumerant" : "None",
5982 "enumerant" : "Unroll",
5986 "enumerant" : "DontUnroll",
5990 "enumerant" : "DependencyInfinite",
5995 "enumerant" : "DependencyLength",
5998 { "kind" : "LiteralInteger" }
6003 "enumerant" : "MinIterations",
6006 { "kind" : "LiteralInteger" }
6011 "enumerant" : "MaxIterations",
6014 { "kind" : "LiteralInteger" }
6019 "enumerant" : "IterationMultiple",
6022 { "kind" : "LiteralInteger" }
6027 "enumerant" : "PeelCount",
6030 { "kind" : "LiteralInteger" }
6035 "enumerant" : "PartialCount",
6038 { "kind" : "LiteralInteger" }
6045 "category" : "BitEnum",
6046 "kind" : "FunctionControl",
6049 "enumerant" : "None",
6053 "enumerant" : "Inline",
6057 "enumerant" : "DontInline",
6061 "enumerant" : "Pure",
6065 "enumerant" : "Const",
6071 "category" : "BitEnum",
6072 "kind" : "MemorySemantics",
6075 "enumerant" : "Relaxed",
6079 "enumerant" : "None",
6083 "enumerant" : "Acquire",
6087 "enumerant" : "Release",
6091 "enumerant" : "AcquireRelease",
6095 "enumerant" : "SequentiallyConsistent",
6099 "enumerant" : "UniformMemory",
6101 "capabilities" : [ "Shader" ]
6104 "enumerant" : "SubgroupMemory",
6108 "enumerant" : "WorkgroupMemory",
6112 "enumerant" : "CrossWorkgroupMemory",
6116 "enumerant" : "AtomicCounterMemory",
6118 "capabilities" : [ "AtomicStorage" ]
6121 "enumerant" : "ImageMemory",
6125 "enumerant" : "OutputMemoryKHR",
6127 "capabilities" : [ "VulkanMemoryModelKHR" ],
6131 "enumerant" : "MakeAvailableKHR",
6133 "capabilities" : [ "VulkanMemoryModelKHR" ],
6137 "enumerant" : "MakeVisibleKHR",
6139 "capabilities" : [ "VulkanMemoryModelKHR" ],
6143 "enumerant" : "Volatile",
6145 "capabilities" : [ "VulkanMemoryModelKHR" ],
6151 "category" : "BitEnum",
6152 "kind" : "MemoryAccess",
6155 "enumerant" : "None",
6159 "enumerant" : "Volatile",
6163 "enumerant" : "Aligned",
6166 { "kind" : "LiteralInteger" }
6170 "enumerant" : "Nontemporal",
6174 "enumerant" : "MakePointerAvailableKHR",
6177 { "kind" : "IdScope" }
6179 "capabilities" : [ "VulkanMemoryModelKHR" ],
6183 "enumerant" : "MakePointerVisibleKHR",
6186 { "kind" : "IdScope" }
6188 "capabilities" : [ "VulkanMemoryModelKHR" ],
6192 "enumerant" : "NonPrivatePointerKHR",
6194 "capabilities" : [ "VulkanMemoryModelKHR" ],
6200 "category" : "BitEnum",
6201 "kind" : "KernelProfilingInfo",
6204 "enumerant" : "None",
6208 "enumerant" : "CmdExecTime",
6210 "capabilities" : [ "Kernel" ]
6215 "category" : "ValueEnum",
6216 "kind" : "SourceLanguage",
6219 "enumerant" : "Unknown",
6223 "enumerant" : "ESSL",
6227 "enumerant" : "GLSL",
6231 "enumerant" : "OpenCL_C",
6235 "enumerant" : "OpenCL_CPP",
6239 "enumerant" : "HLSL",
6245 "category" : "ValueEnum",
6246 "kind" : "ExecutionModel",
6249 "enumerant" : "Vertex",
6251 "capabilities" : [ "Shader" ]
6254 "enumerant" : "TessellationControl",
6256 "capabilities" : [ "Tessellation" ]
6259 "enumerant" : "TessellationEvaluation",
6261 "capabilities" : [ "Tessellation" ]
6264 "enumerant" : "Geometry",
6266 "capabilities" : [ "Geometry" ]
6269 "enumerant" : "Fragment",
6271 "capabilities" : [ "Shader" ]
6274 "enumerant" : "GLCompute",
6276 "capabilities" : [ "Shader" ]
6279 "enumerant" : "Kernel",
6281 "capabilities" : [ "Kernel" ]
6284 "enumerant" : "TaskNV",
6286 "capabilities" : [ "MeshShadingNV" ],
6290 "enumerant" : "MeshNV",
6292 "capabilities" : [ "MeshShadingNV" ],
6296 "enumerant" : "RayGenerationNV",
6298 "capabilities" : [ "RayTracingNV" ],
6302 "enumerant" : "IntersectionNV",
6304 "capabilities" : [ "RayTracingNV" ],
6308 "enumerant" : "AnyHitNV",
6310 "capabilities" : [ "RayTracingNV" ],
6314 "enumerant" : "ClosestHitNV",
6316 "capabilities" : [ "RayTracingNV" ],
6320 "enumerant" : "MissNV",
6322 "capabilities" : [ "RayTracingNV" ],
6326 "enumerant" : "CallableNV",
6328 "capabilities" : [ "RayTracingNV" ],
6334 "category" : "ValueEnum",
6335 "kind" : "AddressingModel",
6338 "enumerant" : "Logical",
6342 "enumerant" : "Physical32",
6344 "capabilities" : [ "Addresses" ]
6347 "enumerant" : "Physical64",
6349 "capabilities" : [ "Addresses" ]
6352 "enumerant" : "PhysicalStorageBuffer64EXT",
6354 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
6355 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
6361 "category" : "ValueEnum",
6362 "kind" : "MemoryModel",
6365 "enumerant" : "Simple",
6367 "capabilities" : [ "Shader" ]
6370 "enumerant" : "GLSL450",
6372 "capabilities" : [ "Shader" ]
6375 "enumerant" : "OpenCL",
6377 "capabilities" : [ "Kernel" ]
6380 "enumerant" : "VulkanKHR",
6382 "capabilities" : [ "VulkanMemoryModelKHR" ],
6388 "category" : "ValueEnum",
6389 "kind" : "ExecutionMode",
6392 "enumerant" : "Invocations",
6394 "capabilities" : [ "Geometry" ],
6396 { "kind" : "LiteralInteger", "name" : "'Number of <<Invocation,invocations>>'" }
6400 "enumerant" : "SpacingEqual",
6402 "capabilities" : [ "Tessellation" ]
6405 "enumerant" : "SpacingFractionalEven",
6407 "capabilities" : [ "Tessellation" ]
6410 "enumerant" : "SpacingFractionalOdd",
6412 "capabilities" : [ "Tessellation" ]
6415 "enumerant" : "VertexOrderCw",
6417 "capabilities" : [ "Tessellation" ]
6420 "enumerant" : "VertexOrderCcw",
6422 "capabilities" : [ "Tessellation" ]
6425 "enumerant" : "PixelCenterInteger",
6427 "capabilities" : [ "Shader" ]
6430 "enumerant" : "OriginUpperLeft",
6432 "capabilities" : [ "Shader" ]
6435 "enumerant" : "OriginLowerLeft",
6437 "capabilities" : [ "Shader" ]
6440 "enumerant" : "EarlyFragmentTests",
6442 "capabilities" : [ "Shader" ]
6445 "enumerant" : "PointMode",
6447 "capabilities" : [ "Tessellation" ]
6450 "enumerant" : "Xfb",
6452 "capabilities" : [ "TransformFeedback" ]
6455 "enumerant" : "DepthReplacing",
6457 "capabilities" : [ "Shader" ]
6460 "enumerant" : "DepthGreater",
6462 "capabilities" : [ "Shader" ]
6465 "enumerant" : "DepthLess",
6467 "capabilities" : [ "Shader" ]
6470 "enumerant" : "DepthUnchanged",
6472 "capabilities" : [ "Shader" ]
6475 "enumerant" : "LocalSize",
6478 { "kind" : "LiteralInteger", "name" : "'x size'" },
6479 { "kind" : "LiteralInteger", "name" : "'y size'" },
6480 { "kind" : "LiteralInteger", "name" : "'z size'" }
6484 "enumerant" : "LocalSizeHint",
6486 "capabilities" : [ "Kernel" ],
6488 { "kind" : "LiteralInteger", "name" : "'x size'" },
6489 { "kind" : "LiteralInteger", "name" : "'y size'" },
6490 { "kind" : "LiteralInteger", "name" : "'z size'" }
6494 "enumerant" : "InputPoints",
6496 "capabilities" : [ "Geometry" ]
6499 "enumerant" : "InputLines",
6501 "capabilities" : [ "Geometry" ]
6504 "enumerant" : "InputLinesAdjacency",
6506 "capabilities" : [ "Geometry" ]
6509 "enumerant" : "Triangles",
6511 "capabilities" : [ "Geometry", "Tessellation" ]
6514 "enumerant" : "InputTrianglesAdjacency",
6516 "capabilities" : [ "Geometry" ]
6519 "enumerant" : "Quads",
6521 "capabilities" : [ "Tessellation" ]
6524 "enumerant" : "Isolines",
6526 "capabilities" : [ "Tessellation" ]
6529 "enumerant" : "OutputVertices",
6531 "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV" ],
6533 { "kind" : "LiteralInteger", "name" : "'Vertex count'" }
6537 "enumerant" : "OutputPoints",
6539 "capabilities" : [ "Geometry", "MeshShadingNV" ]
6542 "enumerant" : "OutputLineStrip",
6544 "capabilities" : [ "Geometry" ]
6547 "enumerant" : "OutputTriangleStrip",
6549 "capabilities" : [ "Geometry" ]
6552 "enumerant" : "VecTypeHint",
6554 "capabilities" : [ "Kernel" ],
6556 { "kind" : "LiteralInteger", "name" : "'Vector type'" }
6560 "enumerant" : "ContractionOff",
6562 "capabilities" : [ "Kernel" ]
6565 "enumerant" : "Initializer",
6567 "capabilities" : [ "Kernel" ],
6571 "enumerant" : "Finalizer",
6573 "capabilities" : [ "Kernel" ],
6577 "enumerant" : "SubgroupSize",
6579 "capabilities" : [ "SubgroupDispatch" ],
6581 { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
6586 "enumerant" : "SubgroupsPerWorkgroup",
6588 "capabilities" : [ "SubgroupDispatch" ],
6590 { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
6595 "enumerant" : "SubgroupsPerWorkgroupId",
6597 "capabilities" : [ "SubgroupDispatch" ],
6599 { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
6604 "enumerant" : "LocalSizeId",
6607 { "kind" : "IdRef", "name" : "'x size'" },
6608 { "kind" : "IdRef", "name" : "'y size'" },
6609 { "kind" : "IdRef", "name" : "'z size'" }
6614 "enumerant" : "LocalSizeHintId",
6616 "capabilities" : [ "Kernel" ],
6618 { "kind" : "IdRef", "name" : "'Local Size Hint'" }
6623 "enumerant" : "PostDepthCoverage",
6625 "capabilities" : [ "SampleMaskPostDepthCoverage" ],
6626 "extensions" : [ "SPV_KHR_post_depth_coverage" ],
6630 "enumerant" : "DenormPreserve",
6632 "capabilities" : [ "DenormPreserve" ],
6633 "extensions" : [ "SPV_KHR_float_controls" ],
6635 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6640 "enumerant" : "DenormFlushToZero",
6642 "capabilities" : [ "DenormFlushToZero" ],
6643 "extensions" : [ "SPV_KHR_float_controls" ],
6645 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6650 "enumerant" : "SignedZeroInfNanPreserve",
6652 "capabilities" : [ "SignedZeroInfNanPreserve" ],
6653 "extensions" : [ "SPV_KHR_float_controls" ],
6655 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6660 "enumerant" : "RoundingModeRTE",
6662 "capabilities" : [ "RoundingModeRTE" ],
6663 "extensions" : [ "SPV_KHR_float_controls" ],
6665 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6670 "enumerant" : "RoundingModeRTZ",
6672 "capabilities" : [ "RoundingModeRTZ" ],
6673 "extensions" : [ "SPV_KHR_float_controls" ],
6675 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6680 "enumerant" : "StencilRefReplacingEXT",
6682 "capabilities" : [ "StencilExportEXT" ],
6683 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
6687 "enumerant" : "OutputLinesNV",
6689 "capabilities" : [ "MeshShadingNV" ],
6690 "extensions" : [ "SPV_NV_mesh_shader" ],
6694 "enumerant" : "OutputPrimitivesNV",
6696 "capabilities" : [ "MeshShadingNV" ],
6698 { "kind" : "LiteralInteger", "name" : "'Primitive count'" }
6700 "extensions" : [ "SPV_NV_mesh_shader" ],
6704 "enumerant" : "DerivativeGroupQuadsNV",
6706 "capabilities" : [ "ComputeDerivativeGroupQuadsNV" ],
6707 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
6711 "enumerant" : "DerivativeGroupLinearNV",
6713 "capabilities" : [ "ComputeDerivativeGroupLinearNV" ],
6714 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
6718 "enumerant" : "OutputTrianglesNV",
6720 "capabilities" : [ "MeshShadingNV" ],
6721 "extensions" : [ "SPV_NV_mesh_shader" ],
6725 "enumerant" : "PixelInterlockOrderedEXT",
6727 "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
6728 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6732 "enumerant" : "PixelInterlockUnorderedEXT",
6734 "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
6735 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6739 "enumerant" : "SampleInterlockOrderedEXT",
6741 "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
6742 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6746 "enumerant" : "SampleInterlockUnorderedEXT",
6748 "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
6749 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6753 "enumerant" : "ShadingRateInterlockOrderedEXT",
6755 "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
6756 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6760 "enumerant" : "ShadingRateInterlockUnorderedEXT",
6762 "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
6763 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6769 "category" : "ValueEnum",
6770 "kind" : "StorageClass",
6773 "enumerant" : "UniformConstant",
6777 "enumerant" : "Input",
6781 "enumerant" : "Uniform",
6783 "capabilities" : [ "Shader" ]
6786 "enumerant" : "Output",
6788 "capabilities" : [ "Shader" ]
6791 "enumerant" : "Workgroup",
6795 "enumerant" : "CrossWorkgroup",
6799 "enumerant" : "Private",
6801 "capabilities" : [ "Shader" ]
6804 "enumerant" : "Function",
6808 "enumerant" : "Generic",
6810 "capabilities" : [ "GenericPointer" ]
6813 "enumerant" : "PushConstant",
6815 "capabilities" : [ "Shader" ]
6818 "enumerant" : "AtomicCounter",
6820 "capabilities" : [ "AtomicStorage" ]
6823 "enumerant" : "Image",
6827 "enumerant" : "StorageBuffer",
6830 "SPV_KHR_storage_buffer_storage_class",
6831 "SPV_KHR_variable_pointers"
6833 "capabilities" : [ "Shader" ],
6837 "enumerant" : "CallableDataNV",
6839 "extensions" : [ "SPV_NV_ray_tracing" ],
6840 "capabilities" : [ "RayTracingNV" ],
6844 "enumerant" : "IncomingCallableDataNV",
6846 "extensions" : [ "SPV_NV_ray_tracing" ],
6847 "capabilities" : [ "RayTracingNV" ],
6851 "enumerant" : "RayPayloadNV",
6853 "extensions" : [ "SPV_NV_ray_tracing" ],
6854 "capabilities" : [ "RayTracingNV" ],
6858 "enumerant" : "HitAttributeNV",
6860 "extensions" : [ "SPV_NV_ray_tracing" ],
6861 "capabilities" : [ "RayTracingNV" ],
6865 "enumerant" : "IncomingRayPayloadNV",
6867 "extensions" : [ "SPV_NV_ray_tracing" ],
6868 "capabilities" : [ "RayTracingNV" ],
6872 "enumerant" : "ShaderRecordBufferNV",
6874 "extensions" : [ "SPV_NV_ray_tracing" ],
6875 "capabilities" : [ "RayTracingNV" ],
6879 "enumerant" : "PhysicalStorageBufferEXT",
6881 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
6882 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
6888 "category" : "ValueEnum",
6894 "capabilities" : [ "Sampled1D", "Image1D" ]
6899 "capabilities" : [ "Shader", "Kernel", "ImageMSArray" ]
6906 "enumerant" : "Cube",
6908 "capabilities" : [ "Shader", "ImageCubeArray" ]
6911 "enumerant" : "Rect",
6913 "capabilities" : [ "SampledRect", "ImageRect" ]
6916 "enumerant" : "Buffer",
6918 "capabilities" : [ "SampledBuffer", "ImageBuffer" ]
6921 "enumerant" : "SubpassData",
6923 "capabilities" : [ "InputAttachment" ]
6928 "category" : "ValueEnum",
6929 "kind" : "SamplerAddressingMode",
6932 "enumerant" : "None",
6934 "capabilities" : [ "Kernel" ]
6937 "enumerant" : "ClampToEdge",
6939 "capabilities" : [ "Kernel" ]
6942 "enumerant" : "Clamp",
6944 "capabilities" : [ "Kernel" ]
6947 "enumerant" : "Repeat",
6949 "capabilities" : [ "Kernel" ]
6952 "enumerant" : "RepeatMirrored",
6954 "capabilities" : [ "Kernel" ]
6959 "category" : "ValueEnum",
6960 "kind" : "SamplerFilterMode",
6963 "enumerant" : "Nearest",
6965 "capabilities" : [ "Kernel" ]
6968 "enumerant" : "Linear",
6970 "capabilities" : [ "Kernel" ]
6975 "category" : "ValueEnum",
6976 "kind" : "ImageFormat",
6979 "enumerant" : "Unknown",
6983 "enumerant" : "Rgba32f",
6985 "capabilities" : [ "Shader" ]
6988 "enumerant" : "Rgba16f",
6990 "capabilities" : [ "Shader" ]
6993 "enumerant" : "R32f",
6995 "capabilities" : [ "Shader" ]
6998 "enumerant" : "Rgba8",
7000 "capabilities" : [ "Shader" ]
7003 "enumerant" : "Rgba8Snorm",
7005 "capabilities" : [ "Shader" ]
7008 "enumerant" : "Rg32f",
7010 "capabilities" : [ "StorageImageExtendedFormats" ]
7013 "enumerant" : "Rg16f",
7015 "capabilities" : [ "StorageImageExtendedFormats" ]
7018 "enumerant" : "R11fG11fB10f",
7020 "capabilities" : [ "StorageImageExtendedFormats" ]
7023 "enumerant" : "R16f",
7025 "capabilities" : [ "StorageImageExtendedFormats" ]
7028 "enumerant" : "Rgba16",
7030 "capabilities" : [ "StorageImageExtendedFormats" ]
7033 "enumerant" : "Rgb10A2",
7035 "capabilities" : [ "StorageImageExtendedFormats" ]
7038 "enumerant" : "Rg16",
7040 "capabilities" : [ "StorageImageExtendedFormats" ]
7043 "enumerant" : "Rg8",
7045 "capabilities" : [ "StorageImageExtendedFormats" ]
7048 "enumerant" : "R16",
7050 "capabilities" : [ "StorageImageExtendedFormats" ]
7055 "capabilities" : [ "StorageImageExtendedFormats" ]
7058 "enumerant" : "Rgba16Snorm",
7060 "capabilities" : [ "StorageImageExtendedFormats" ]
7063 "enumerant" : "Rg16Snorm",
7065 "capabilities" : [ "StorageImageExtendedFormats" ]
7068 "enumerant" : "Rg8Snorm",
7070 "capabilities" : [ "StorageImageExtendedFormats" ]
7073 "enumerant" : "R16Snorm",
7075 "capabilities" : [ "StorageImageExtendedFormats" ]
7078 "enumerant" : "R8Snorm",
7080 "capabilities" : [ "StorageImageExtendedFormats" ]
7083 "enumerant" : "Rgba32i",
7085 "capabilities" : [ "Shader" ]
7088 "enumerant" : "Rgba16i",
7090 "capabilities" : [ "Shader" ]
7093 "enumerant" : "Rgba8i",
7095 "capabilities" : [ "Shader" ]
7098 "enumerant" : "R32i",
7100 "capabilities" : [ "Shader" ]
7103 "enumerant" : "Rg32i",
7105 "capabilities" : [ "StorageImageExtendedFormats" ]
7108 "enumerant" : "Rg16i",
7110 "capabilities" : [ "StorageImageExtendedFormats" ]
7113 "enumerant" : "Rg8i",
7115 "capabilities" : [ "StorageImageExtendedFormats" ]
7118 "enumerant" : "R16i",
7120 "capabilities" : [ "StorageImageExtendedFormats" ]
7123 "enumerant" : "R8i",
7125 "capabilities" : [ "StorageImageExtendedFormats" ]
7128 "enumerant" : "Rgba32ui",
7130 "capabilities" : [ "Shader" ]
7133 "enumerant" : "Rgba16ui",
7135 "capabilities" : [ "Shader" ]
7138 "enumerant" : "Rgba8ui",
7140 "capabilities" : [ "Shader" ]
7143 "enumerant" : "R32ui",
7145 "capabilities" : [ "Shader" ]
7148 "enumerant" : "Rgb10a2ui",
7150 "capabilities" : [ "StorageImageExtendedFormats" ]
7153 "enumerant" : "Rg32ui",
7155 "capabilities" : [ "StorageImageExtendedFormats" ]
7158 "enumerant" : "Rg16ui",
7160 "capabilities" : [ "StorageImageExtendedFormats" ]
7163 "enumerant" : "Rg8ui",
7165 "capabilities" : [ "StorageImageExtendedFormats" ]
7168 "enumerant" : "R16ui",
7170 "capabilities" : [ "StorageImageExtendedFormats" ]
7173 "enumerant" : "R8ui",
7175 "capabilities" : [ "StorageImageExtendedFormats" ]
7180 "category" : "ValueEnum",
7181 "kind" : "ImageChannelOrder",
7186 "capabilities" : [ "Kernel" ]
7191 "capabilities" : [ "Kernel" ]
7196 "capabilities" : [ "Kernel" ]
7201 "capabilities" : [ "Kernel" ]
7204 "enumerant" : "RGB",
7206 "capabilities" : [ "Kernel" ]
7209 "enumerant" : "RGBA",
7211 "capabilities" : [ "Kernel" ]
7214 "enumerant" : "BGRA",
7216 "capabilities" : [ "Kernel" ]
7219 "enumerant" : "ARGB",
7221 "capabilities" : [ "Kernel" ]
7224 "enumerant" : "Intensity",
7226 "capabilities" : [ "Kernel" ]
7229 "enumerant" : "Luminance",
7231 "capabilities" : [ "Kernel" ]
7236 "capabilities" : [ "Kernel" ]
7239 "enumerant" : "RGx",
7241 "capabilities" : [ "Kernel" ]
7244 "enumerant" : "RGBx",
7246 "capabilities" : [ "Kernel" ]
7249 "enumerant" : "Depth",
7251 "capabilities" : [ "Kernel" ]
7254 "enumerant" : "DepthStencil",
7256 "capabilities" : [ "Kernel" ]
7259 "enumerant" : "sRGB",
7261 "capabilities" : [ "Kernel" ]
7264 "enumerant" : "sRGBx",
7266 "capabilities" : [ "Kernel" ]
7269 "enumerant" : "sRGBA",
7271 "capabilities" : [ "Kernel" ]
7274 "enumerant" : "sBGRA",
7276 "capabilities" : [ "Kernel" ]
7279 "enumerant" : "ABGR",
7281 "capabilities" : [ "Kernel" ]
7286 "category" : "ValueEnum",
7287 "kind" : "ImageChannelDataType",
7290 "enumerant" : "SnormInt8",
7292 "capabilities" : [ "Kernel" ]
7295 "enumerant" : "SnormInt16",
7297 "capabilities" : [ "Kernel" ]
7300 "enumerant" : "UnormInt8",
7302 "capabilities" : [ "Kernel" ]
7305 "enumerant" : "UnormInt16",
7307 "capabilities" : [ "Kernel" ]
7310 "enumerant" : "UnormShort565",
7312 "capabilities" : [ "Kernel" ]
7315 "enumerant" : "UnormShort555",
7317 "capabilities" : [ "Kernel" ]
7320 "enumerant" : "UnormInt101010",
7322 "capabilities" : [ "Kernel" ]
7325 "enumerant" : "SignedInt8",
7327 "capabilities" : [ "Kernel" ]
7330 "enumerant" : "SignedInt16",
7332 "capabilities" : [ "Kernel" ]
7335 "enumerant" : "SignedInt32",
7337 "capabilities" : [ "Kernel" ]
7340 "enumerant" : "UnsignedInt8",
7342 "capabilities" : [ "Kernel" ]
7345 "enumerant" : "UnsignedInt16",
7347 "capabilities" : [ "Kernel" ]
7350 "enumerant" : "UnsignedInt32",
7352 "capabilities" : [ "Kernel" ]
7355 "enumerant" : "HalfFloat",
7357 "capabilities" : [ "Kernel" ]
7360 "enumerant" : "Float",
7362 "capabilities" : [ "Kernel" ]
7365 "enumerant" : "UnormInt24",
7367 "capabilities" : [ "Kernel" ]
7370 "enumerant" : "UnormInt101010_2",
7372 "capabilities" : [ "Kernel" ]
7377 "category" : "ValueEnum",
7378 "kind" : "FPRoundingMode",
7381 "enumerant" : "RTE",
7385 "enumerant" : "RTZ",
7389 "enumerant" : "RTP",
7393 "enumerant" : "RTN",
7399 "category" : "ValueEnum",
7400 "kind" : "LinkageType",
7403 "enumerant" : "Export",
7405 "capabilities" : [ "Linkage" ]
7408 "enumerant" : "Import",
7410 "capabilities" : [ "Linkage" ]
7415 "category" : "ValueEnum",
7416 "kind" : "AccessQualifier",
7419 "enumerant" : "ReadOnly",
7421 "capabilities" : [ "Kernel" ]
7424 "enumerant" : "WriteOnly",
7426 "capabilities" : [ "Kernel" ]
7429 "enumerant" : "ReadWrite",
7431 "capabilities" : [ "Kernel" ]
7436 "category" : "ValueEnum",
7437 "kind" : "FunctionParameterAttribute",
7440 "enumerant" : "Zext",
7442 "capabilities" : [ "Kernel" ]
7445 "enumerant" : "Sext",
7447 "capabilities" : [ "Kernel" ]
7450 "enumerant" : "ByVal",
7452 "capabilities" : [ "Kernel" ]
7455 "enumerant" : "Sret",
7457 "capabilities" : [ "Kernel" ]
7460 "enumerant" : "NoAlias",
7462 "capabilities" : [ "Kernel" ]
7465 "enumerant" : "NoCapture",
7467 "capabilities" : [ "Kernel" ]
7470 "enumerant" : "NoWrite",
7472 "capabilities" : [ "Kernel" ]
7475 "enumerant" : "NoReadWrite",
7477 "capabilities" : [ "Kernel" ]
7482 "category" : "ValueEnum",
7483 "kind" : "Decoration",
7486 "enumerant" : "RelaxedPrecision",
7488 "capabilities" : [ "Shader" ]
7491 "enumerant" : "SpecId",
7493 "capabilities" : [ "Shader", "Kernel" ],
7495 { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
7499 "enumerant" : "Block",
7501 "capabilities" : [ "Shader" ]
7504 "enumerant" : "BufferBlock",
7506 "capabilities" : [ "Shader" ],
7507 "lastVersion" : "1.3"
7510 "enumerant" : "RowMajor",
7512 "capabilities" : [ "Matrix" ]
7515 "enumerant" : "ColMajor",
7517 "capabilities" : [ "Matrix" ]
7520 "enumerant" : "ArrayStride",
7522 "capabilities" : [ "Shader" ],
7524 { "kind" : "LiteralInteger", "name" : "'Array Stride'" }
7528 "enumerant" : "MatrixStride",
7530 "capabilities" : [ "Matrix" ],
7532 { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" }
7536 "enumerant" : "GLSLShared",
7538 "capabilities" : [ "Shader" ]
7541 "enumerant" : "GLSLPacked",
7543 "capabilities" : [ "Shader" ]
7546 "enumerant" : "CPacked",
7548 "capabilities" : [ "Kernel" ]
7551 "enumerant" : "BuiltIn",
7554 { "kind" : "BuiltIn" }
7558 "enumerant" : "NoPerspective",
7560 "capabilities" : [ "Shader" ]
7563 "enumerant" : "Flat",
7565 "capabilities" : [ "Shader" ]
7568 "enumerant" : "Patch",
7570 "capabilities" : [ "Tessellation" ]
7573 "enumerant" : "Centroid",
7575 "capabilities" : [ "Shader" ]
7578 "enumerant" : "Sample",
7580 "capabilities" : [ "SampleRateShading" ]
7583 "enumerant" : "Invariant",
7585 "capabilities" : [ "Shader" ]
7588 "enumerant" : "Restrict",
7592 "enumerant" : "Aliased",
7596 "enumerant" : "Volatile",
7600 "enumerant" : "Constant",
7602 "capabilities" : [ "Kernel" ]
7605 "enumerant" : "Coherent",
7609 "enumerant" : "NonWritable",
7613 "enumerant" : "NonReadable",
7617 "enumerant" : "Uniform",
7619 "capabilities" : [ "Shader" ]
7622 "enumerant" : "UniformId",
7624 "capabilities" : [ "Shader" ],
7626 { "kind" : "IdScope", "name" : "'Execution'" }
7631 "enumerant" : "SaturatedConversion",
7633 "capabilities" : [ "Kernel" ]
7636 "enumerant" : "Stream",
7638 "capabilities" : [ "GeometryStreams" ],
7640 { "kind" : "LiteralInteger", "name" : "'Stream Number'" }
7644 "enumerant" : "Location",
7646 "capabilities" : [ "Shader" ],
7648 { "kind" : "LiteralInteger", "name" : "'Location'" }
7652 "enumerant" : "Component",
7654 "capabilities" : [ "Shader" ],
7656 { "kind" : "LiteralInteger", "name" : "'Component'" }
7660 "enumerant" : "Index",
7662 "capabilities" : [ "Shader" ],
7664 { "kind" : "LiteralInteger", "name" : "'Index'" }
7668 "enumerant" : "Binding",
7670 "capabilities" : [ "Shader" ],
7672 { "kind" : "LiteralInteger", "name" : "'Binding Point'" }
7676 "enumerant" : "DescriptorSet",
7678 "capabilities" : [ "Shader" ],
7680 { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" }
7684 "enumerant" : "Offset",
7686 "capabilities" : [ "Shader" ],
7688 { "kind" : "LiteralInteger", "name" : "'Byte Offset'" }
7692 "enumerant" : "XfbBuffer",
7694 "capabilities" : [ "TransformFeedback" ],
7696 { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" }
7700 "enumerant" : "XfbStride",
7702 "capabilities" : [ "TransformFeedback" ],
7704 { "kind" : "LiteralInteger", "name" : "'XFB Stride'" }
7708 "enumerant" : "FuncParamAttr",
7710 "capabilities" : [ "Kernel" ],
7712 { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" }
7716 "enumerant" : "FPRoundingMode",
7719 { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" }
7723 "enumerant" : "FPFastMathMode",
7725 "capabilities" : [ "Kernel" ],
7727 { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" }
7731 "enumerant" : "LinkageAttributes",
7733 "capabilities" : [ "Linkage" ],
7735 { "kind" : "LiteralString", "name" : "'Name'" },
7736 { "kind" : "LinkageType", "name" : "'Linkage Type'" }
7740 "enumerant" : "NoContraction",
7742 "capabilities" : [ "Shader" ]
7745 "enumerant" : "InputAttachmentIndex",
7747 "capabilities" : [ "InputAttachment" ],
7749 { "kind" : "LiteralInteger", "name" : "'Attachment Index'" }
7753 "enumerant" : "Alignment",
7755 "capabilities" : [ "Kernel" ],
7757 { "kind" : "LiteralInteger", "name" : "'Alignment'" }
7761 "enumerant" : "MaxByteOffset",
7763 "capabilities" : [ "Addresses" ],
7765 { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
7770 "enumerant" : "AlignmentId",
7772 "capabilities" : [ "Kernel" ],
7774 { "kind" : "IdRef", "name" : "'Alignment'" }
7779 "enumerant" : "MaxByteOffsetId",
7781 "capabilities" : [ "Addresses" ],
7783 { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
7788 "enumerant" : "NoSignedWrap",
7790 "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
7794 "enumerant" : "NoUnsignedWrap",
7796 "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
7800 "enumerant" : "ExplicitInterpAMD",
7802 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
7806 "enumerant" : "OverrideCoverageNV",
7808 "capabilities" : [ "SampleMaskOverrideCoverageNV" ],
7809 "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
7813 "enumerant" : "PassthroughNV",
7815 "capabilities" : [ "GeometryShaderPassthroughNV" ],
7816 "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
7820 "enumerant" : "ViewportRelativeNV",
7822 "capabilities" : [ "ShaderViewportMaskNV" ],
7826 "enumerant" : "SecondaryViewportRelativeNV",
7828 "capabilities" : [ "ShaderStereoViewNV" ],
7829 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
7832 { "kind" : "LiteralInteger", "name" : "'Offset'" }
7836 "enumerant" : "PerPrimitiveNV",
7838 "capabilities" : [ "MeshShadingNV" ],
7839 "extensions" : [ "SPV_NV_mesh_shader" ],
7843 "enumerant" : "PerViewNV",
7845 "capabilities" : [ "MeshShadingNV" ],
7846 "extensions" : [ "SPV_NV_mesh_shader" ],
7850 "enumerant" : "PerTaskNV",
7852 "capabilities" : [ "MeshShadingNV" ],
7853 "extensions" : [ "SPV_NV_mesh_shader" ],
7857 "enumerant" : "PerVertexNV",
7859 "capabilities" : [ "FragmentBarycentricNV" ],
7860 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
7864 "enumerant" : "NonUniformEXT",
7866 "capabilities" : [ "ShaderNonUniformEXT" ]
7869 "enumerant" : "RestrictPointerEXT",
7871 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
7872 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
7876 "enumerant" : "AliasedPointerEXT",
7878 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
7879 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
7883 "enumerant" : "CounterBuffer",
7886 { "kind" : "IdRef", "name" : "'Counter Buffer'" }
7891 "enumerant" : "HlslCounterBufferGOOGLE",
7894 { "kind" : "IdRef", "name" : "'Counter Buffer'" }
7896 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
7900 "enumerant" : "UserSemantic",
7903 { "kind" : "LiteralString", "name" : "'Semantic'" }
7908 "enumerant" : "HlslSemanticGOOGLE",
7911 { "kind" : "LiteralString", "name" : "'Semantic'" }
7913 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
7917 "enumerant" : "UserTypeGOOGLE",
7920 { "kind" : "LiteralString", "name" : "'User Type'" }
7922 "extensions" : [ "SPV_GOOGLE_user_type" ],
7928 "category" : "ValueEnum",
7932 "enumerant" : "Position",
7934 "capabilities" : [ "Shader" ]
7937 "enumerant" : "PointSize",
7939 "capabilities" : [ "Shader" ]
7942 "enumerant" : "ClipDistance",
7944 "capabilities" : [ "ClipDistance" ]
7947 "enumerant" : "CullDistance",
7949 "capabilities" : [ "CullDistance" ]
7952 "enumerant" : "VertexId",
7954 "capabilities" : [ "Shader" ]
7957 "enumerant" : "InstanceId",
7959 "capabilities" : [ "Shader" ]
7962 "enumerant" : "PrimitiveId",
7964 "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV" ]
7967 "enumerant" : "InvocationId",
7969 "capabilities" : [ "Geometry", "Tessellation" ]
7972 "enumerant" : "Layer",
7974 "capabilities" : [ "Geometry" ]
7977 "enumerant" : "ViewportIndex",
7979 "capabilities" : [ "MultiViewport" ]
7982 "enumerant" : "TessLevelOuter",
7984 "capabilities" : [ "Tessellation" ]
7987 "enumerant" : "TessLevelInner",
7989 "capabilities" : [ "Tessellation" ]
7992 "enumerant" : "TessCoord",
7994 "capabilities" : [ "Tessellation" ]
7997 "enumerant" : "PatchVertices",
7999 "capabilities" : [ "Tessellation" ]
8002 "enumerant" : "FragCoord",
8004 "capabilities" : [ "Shader" ]
8007 "enumerant" : "PointCoord",
8009 "capabilities" : [ "Shader" ]
8012 "enumerant" : "FrontFacing",
8014 "capabilities" : [ "Shader" ]
8017 "enumerant" : "SampleId",
8019 "capabilities" : [ "SampleRateShading" ]
8022 "enumerant" : "SamplePosition",
8024 "capabilities" : [ "SampleRateShading" ]
8027 "enumerant" : "SampleMask",
8029 "capabilities" : [ "Shader" ]
8032 "enumerant" : "FragDepth",
8034 "capabilities" : [ "Shader" ]
8037 "enumerant" : "HelperInvocation",
8039 "capabilities" : [ "Shader" ]
8042 "enumerant" : "NumWorkgroups",
8046 "enumerant" : "WorkgroupSize",
8050 "enumerant" : "WorkgroupId",
8054 "enumerant" : "LocalInvocationId",
8058 "enumerant" : "GlobalInvocationId",
8062 "enumerant" : "LocalInvocationIndex",
8066 "enumerant" : "WorkDim",
8068 "capabilities" : [ "Kernel" ]
8071 "enumerant" : "GlobalSize",
8073 "capabilities" : [ "Kernel" ]
8076 "enumerant" : "EnqueuedWorkgroupSize",
8078 "capabilities" : [ "Kernel" ]
8081 "enumerant" : "GlobalOffset",
8083 "capabilities" : [ "Kernel" ]
8086 "enumerant" : "GlobalLinearId",
8088 "capabilities" : [ "Kernel" ]
8091 "enumerant" : "SubgroupSize",
8093 "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
8096 "enumerant" : "SubgroupMaxSize",
8098 "capabilities" : [ "Kernel" ]
8101 "enumerant" : "NumSubgroups",
8103 "capabilities" : [ "Kernel", "GroupNonUniform" ]
8106 "enumerant" : "NumEnqueuedSubgroups",
8108 "capabilities" : [ "Kernel" ]
8111 "enumerant" : "SubgroupId",
8113 "capabilities" : [ "Kernel", "GroupNonUniform" ]
8116 "enumerant" : "SubgroupLocalInvocationId",
8118 "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
8121 "enumerant" : "VertexIndex",
8123 "capabilities" : [ "Shader" ]
8126 "enumerant" : "InstanceIndex",
8128 "capabilities" : [ "Shader" ]
8131 "enumerant" : "SubgroupEqMask",
8133 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8137 "enumerant" : "SubgroupGeMask",
8139 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8143 "enumerant" : "SubgroupGtMask",
8145 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8149 "enumerant" : "SubgroupLeMask",
8151 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8155 "enumerant" : "SubgroupLtMask",
8157 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8161 "enumerant" : "SubgroupEqMaskKHR",
8163 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8164 "extensions" : [ "SPV_KHR_shader_ballot" ],
8168 "enumerant" : "SubgroupGeMaskKHR",
8170 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8171 "extensions" : [ "SPV_KHR_shader_ballot" ],
8175 "enumerant" : "SubgroupGtMaskKHR",
8177 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8178 "extensions" : [ "SPV_KHR_shader_ballot" ],
8182 "enumerant" : "SubgroupLeMaskKHR",
8184 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8185 "extensions" : [ "SPV_KHR_shader_ballot" ],
8189 "enumerant" : "SubgroupLtMaskKHR",
8191 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8192 "extensions" : [ "SPV_KHR_shader_ballot" ],
8196 "enumerant" : "BaseVertex",
8198 "capabilities" : [ "DrawParameters" ],
8199 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
8203 "enumerant" : "BaseInstance",
8205 "capabilities" : [ "DrawParameters" ],
8206 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
8210 "enumerant" : "DrawIndex",
8212 "capabilities" : [ "DrawParameters", "MeshShadingNV" ],
8213 "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader" ],
8217 "enumerant" : "DeviceIndex",
8219 "capabilities" : [ "DeviceGroup" ],
8220 "extensions" : [ "SPV_KHR_device_group" ],
8224 "enumerant" : "ViewIndex",
8226 "capabilities" : [ "MultiView" ],
8227 "extensions" : [ "SPV_KHR_multiview" ],
8231 "enumerant" : "BaryCoordNoPerspAMD",
8233 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8237 "enumerant" : "BaryCoordNoPerspCentroidAMD",
8239 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8243 "enumerant" : "BaryCoordNoPerspSampleAMD",
8245 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8249 "enumerant" : "BaryCoordSmoothAMD",
8251 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8255 "enumerant" : "BaryCoordSmoothCentroidAMD",
8257 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8261 "enumerant" : "BaryCoordSmoothSampleAMD",
8263 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8267 "enumerant" : "BaryCoordPullModelAMD",
8269 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8273 "enumerant" : "FragStencilRefEXT",
8275 "capabilities" : [ "StencilExportEXT" ],
8276 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
8280 "enumerant" : "ViewportMaskNV",
8282 "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ],
8283 "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ],
8287 "enumerant" : "SecondaryPositionNV",
8289 "capabilities" : [ "ShaderStereoViewNV" ],
8290 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
8294 "enumerant" : "SecondaryViewportMaskNV",
8296 "capabilities" : [ "ShaderStereoViewNV" ],
8297 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
8301 "enumerant" : "PositionPerViewNV",
8303 "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
8304 "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
8308 "enumerant" : "ViewportMaskPerViewNV",
8310 "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
8311 "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
8315 "enumerant" : "FullyCoveredEXT",
8317 "capabilities" : [ "FragmentFullyCoveredEXT" ],
8318 "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
8322 "enumerant" : "TaskCountNV",
8324 "capabilities" : [ "MeshShadingNV" ],
8325 "extensions" : [ "SPV_NV_mesh_shader" ],
8329 "enumerant" : "PrimitiveCountNV",
8331 "capabilities" : [ "MeshShadingNV" ],
8332 "extensions" : [ "SPV_NV_mesh_shader" ],
8336 "enumerant" : "PrimitiveIndicesNV",
8338 "capabilities" : [ "MeshShadingNV" ],
8339 "extensions" : [ "SPV_NV_mesh_shader" ],
8343 "enumerant" : "ClipDistancePerViewNV",
8345 "capabilities" : [ "MeshShadingNV" ],
8346 "extensions" : [ "SPV_NV_mesh_shader" ],
8350 "enumerant" : "CullDistancePerViewNV",
8352 "capabilities" : [ "MeshShadingNV" ],
8353 "extensions" : [ "SPV_NV_mesh_shader" ],
8357 "enumerant" : "LayerPerViewNV",
8359 "capabilities" : [ "MeshShadingNV" ],
8360 "extensions" : [ "SPV_NV_mesh_shader" ],
8364 "enumerant" : "MeshViewCountNV",
8366 "capabilities" : [ "MeshShadingNV" ],
8367 "extensions" : [ "SPV_NV_mesh_shader" ],
8371 "enumerant" : "MeshViewIndicesNV",
8373 "capabilities" : [ "MeshShadingNV" ],
8374 "extensions" : [ "SPV_NV_mesh_shader" ],
8378 "enumerant" : "BaryCoordNV",
8380 "capabilities" : [ "FragmentBarycentricNV" ],
8381 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
8385 "enumerant" : "BaryCoordNoPerspNV",
8387 "capabilities" : [ "FragmentBarycentricNV" ],
8388 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
8392 "enumerant" : "FragSizeEXT",
8394 "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
8395 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
8399 "enumerant" : "FragmentSizeNV",
8401 "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
8402 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
8406 "enumerant" : "FragInvocationCountEXT",
8408 "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
8409 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
8413 "enumerant" : "InvocationsPerPixelNV",
8415 "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
8416 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
8420 "enumerant" : "LaunchIdNV",
8422 "capabilities" : [ "RayTracingNV" ],
8423 "extensions" : [ "SPV_NV_ray_tracing" ],
8427 "enumerant" : "LaunchSizeNV",
8429 "capabilities" : [ "RayTracingNV" ],
8430 "extensions" : [ "SPV_NV_ray_tracing" ],
8434 "enumerant" : "WorldRayOriginNV",
8436 "capabilities" : [ "RayTracingNV" ],
8437 "extensions" : [ "SPV_NV_ray_tracing" ],
8441 "enumerant" : "WorldRayDirectionNV",
8443 "capabilities" : [ "RayTracingNV" ],
8444 "extensions" : [ "SPV_NV_ray_tracing" ],
8448 "enumerant" : "ObjectRayOriginNV",
8450 "capabilities" : [ "RayTracingNV" ],
8451 "extensions" : [ "SPV_NV_ray_tracing" ],
8455 "enumerant" : "ObjectRayDirectionNV",
8457 "capabilities" : [ "RayTracingNV" ],
8458 "extensions" : [ "SPV_NV_ray_tracing" ],
8462 "enumerant" : "RayTminNV",
8464 "capabilities" : [ "RayTracingNV" ],
8465 "extensions" : [ "SPV_NV_ray_tracing" ],
8469 "enumerant" : "RayTmaxNV",
8471 "capabilities" : [ "RayTracingNV" ],
8472 "extensions" : [ "SPV_NV_ray_tracing" ],
8476 "enumerant" : "InstanceCustomIndexNV",
8478 "capabilities" : [ "RayTracingNV" ],
8479 "extensions" : [ "SPV_NV_ray_tracing" ],
8483 "enumerant" : "ObjectToWorldNV",
8485 "capabilities" : [ "RayTracingNV" ],
8486 "extensions" : [ "SPV_NV_ray_tracing" ],
8490 "enumerant" : "WorldToObjectNV",
8492 "capabilities" : [ "RayTracingNV" ],
8493 "extensions" : [ "SPV_NV_ray_tracing" ],
8497 "enumerant" : "HitTNV",
8499 "capabilities" : [ "RayTracingNV" ],
8500 "extensions" : [ "SPV_NV_ray_tracing" ],
8504 "enumerant" : "HitKindNV",
8506 "capabilities" : [ "RayTracingNV" ],
8507 "extensions" : [ "SPV_NV_ray_tracing" ],
8511 "enumerant" : "IncomingRayFlagsNV",
8513 "capabilities" : [ "RayTracingNV" ],
8514 "extensions" : [ "SPV_NV_ray_tracing" ],
8518 "enumerant" : "WarpsPerSMNV",
8520 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8521 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
8525 "enumerant" : "SMCountNV",
8527 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8528 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
8532 "enumerant" : "WarpIDNV",
8534 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8535 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
8539 "enumerant" : "SMIDNV",
8541 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8542 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
8548 "category" : "ValueEnum",
8552 "enumerant" : "CrossDevice",
8556 "enumerant" : "Device",
8560 "enumerant" : "Workgroup",
8564 "enumerant" : "Subgroup",
8568 "enumerant" : "Invocation",
8572 "enumerant" : "QueueFamilyKHR",
8574 "capabilities" : [ "VulkanMemoryModelKHR" ],
8580 "category" : "ValueEnum",
8581 "kind" : "GroupOperation",
8584 "enumerant" : "Reduce",
8586 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
8589 "enumerant" : "InclusiveScan",
8591 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
8594 "enumerant" : "ExclusiveScan",
8596 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
8599 "enumerant" : "ClusteredReduce",
8601 "capabilities" : [ "GroupNonUniformClustered" ],
8605 "enumerant" : "PartitionedReduceNV",
8607 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
8608 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
8612 "enumerant" : "PartitionedInclusiveScanNV",
8614 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
8615 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
8619 "enumerant" : "PartitionedExclusiveScanNV",
8621 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
8622 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
8628 "category" : "ValueEnum",
8629 "kind" : "KernelEnqueueFlags",
8632 "enumerant" : "NoWait",
8634 "capabilities" : [ "Kernel" ]
8637 "enumerant" : "WaitKernel",
8639 "capabilities" : [ "Kernel" ]
8642 "enumerant" : "WaitWorkGroup",
8644 "capabilities" : [ "Kernel" ]
8649 "category" : "ValueEnum",
8650 "kind" : "Capability",
8653 "enumerant" : "Matrix",
8657 "enumerant" : "Shader",
8659 "capabilities" : [ "Matrix" ]
8662 "enumerant" : "Geometry",
8664 "capabilities" : [ "Shader" ]
8667 "enumerant" : "Tessellation",
8669 "capabilities" : [ "Shader" ]
8672 "enumerant" : "Addresses",
8676 "enumerant" : "Linkage",
8680 "enumerant" : "Kernel",
8684 "enumerant" : "Vector16",
8686 "capabilities" : [ "Kernel" ]
8689 "enumerant" : "Float16Buffer",
8691 "capabilities" : [ "Kernel" ]
8694 "enumerant" : "Float16",
8698 "enumerant" : "Float64",
8702 "enumerant" : "Int64",
8706 "enumerant" : "Int64Atomics",
8708 "capabilities" : [ "Int64" ]
8711 "enumerant" : "ImageBasic",
8713 "capabilities" : [ "Kernel" ]
8716 "enumerant" : "ImageReadWrite",
8718 "capabilities" : [ "ImageBasic" ]
8721 "enumerant" : "ImageMipmap",
8723 "capabilities" : [ "ImageBasic" ]
8726 "enumerant" : "Pipes",
8728 "capabilities" : [ "Kernel" ]
8731 "enumerant" : "Groups",
8733 "extensions" : [ "SPV_AMD_shader_ballot" ]
8736 "enumerant" : "DeviceEnqueue",
8738 "capabilities" : [ "Kernel" ]
8741 "enumerant" : "LiteralSampler",
8743 "capabilities" : [ "Kernel" ]
8746 "enumerant" : "AtomicStorage",
8748 "capabilities" : [ "Shader" ]
8751 "enumerant" : "Int16",
8755 "enumerant" : "TessellationPointSize",
8757 "capabilities" : [ "Tessellation" ]
8760 "enumerant" : "GeometryPointSize",
8762 "capabilities" : [ "Geometry" ]
8765 "enumerant" : "ImageGatherExtended",
8767 "capabilities" : [ "Shader" ]
8770 "enumerant" : "StorageImageMultisample",
8772 "capabilities" : [ "Shader" ]
8775 "enumerant" : "UniformBufferArrayDynamicIndexing",
8777 "capabilities" : [ "Shader" ]
8780 "enumerant" : "SampledImageArrayDynamicIndexing",
8782 "capabilities" : [ "Shader" ]
8785 "enumerant" : "StorageBufferArrayDynamicIndexing",
8787 "capabilities" : [ "Shader" ]
8790 "enumerant" : "StorageImageArrayDynamicIndexing",
8792 "capabilities" : [ "Shader" ]
8795 "enumerant" : "ClipDistance",
8797 "capabilities" : [ "Shader" ]
8800 "enumerant" : "CullDistance",
8802 "capabilities" : [ "Shader" ]
8805 "enumerant" : "ImageCubeArray",
8807 "capabilities" : [ "SampledCubeArray" ]
8810 "enumerant" : "SampleRateShading",
8812 "capabilities" : [ "Shader" ]
8815 "enumerant" : "ImageRect",
8817 "capabilities" : [ "SampledRect" ]
8820 "enumerant" : "SampledRect",
8822 "capabilities" : [ "Shader" ]
8825 "enumerant" : "GenericPointer",
8827 "capabilities" : [ "Addresses" ]
8830 "enumerant" : "Int8",
8834 "enumerant" : "InputAttachment",
8836 "capabilities" : [ "Shader" ]
8839 "enumerant" : "SparseResidency",
8841 "capabilities" : [ "Shader" ]
8844 "enumerant" : "MinLod",
8846 "capabilities" : [ "Shader" ]
8849 "enumerant" : "Sampled1D",
8853 "enumerant" : "Image1D",
8855 "capabilities" : [ "Sampled1D" ]
8858 "enumerant" : "SampledCubeArray",
8860 "capabilities" : [ "Shader" ]
8863 "enumerant" : "SampledBuffer",
8867 "enumerant" : "ImageBuffer",
8869 "capabilities" : [ "SampledBuffer" ]
8872 "enumerant" : "ImageMSArray",
8874 "capabilities" : [ "Shader" ]
8877 "enumerant" : "StorageImageExtendedFormats",
8879 "capabilities" : [ "Shader" ]
8882 "enumerant" : "ImageQuery",
8884 "capabilities" : [ "Shader" ]
8887 "enumerant" : "DerivativeControl",
8889 "capabilities" : [ "Shader" ]
8892 "enumerant" : "InterpolationFunction",
8894 "capabilities" : [ "Shader" ]
8897 "enumerant" : "TransformFeedback",
8899 "capabilities" : [ "Shader" ]
8902 "enumerant" : "GeometryStreams",
8904 "capabilities" : [ "Geometry" ]
8907 "enumerant" : "StorageImageReadWithoutFormat",
8909 "capabilities" : [ "Shader" ]
8912 "enumerant" : "StorageImageWriteWithoutFormat",
8914 "capabilities" : [ "Shader" ]
8917 "enumerant" : "MultiViewport",
8919 "capabilities" : [ "Geometry" ]
8922 "enumerant" : "SubgroupDispatch",
8924 "capabilities" : [ "DeviceEnqueue" ],
8928 "enumerant" : "NamedBarrier",
8930 "capabilities" : [ "Kernel" ],
8934 "enumerant" : "PipeStorage",
8936 "capabilities" : [ "Pipes" ],
8940 "enumerant" : "GroupNonUniform",
8945 "enumerant" : "GroupNonUniformVote",
8947 "capabilities" : [ "GroupNonUniform" ],
8951 "enumerant" : "GroupNonUniformArithmetic",
8953 "capabilities" : [ "GroupNonUniform" ],
8957 "enumerant" : "GroupNonUniformBallot",
8959 "capabilities" : [ "GroupNonUniform" ],
8963 "enumerant" : "GroupNonUniformShuffle",
8965 "capabilities" : [ "GroupNonUniform" ],
8969 "enumerant" : "GroupNonUniformShuffleRelative",
8971 "capabilities" : [ "GroupNonUniform" ],
8975 "enumerant" : "GroupNonUniformClustered",
8977 "capabilities" : [ "GroupNonUniform" ],
8981 "enumerant" : "GroupNonUniformQuad",
8983 "capabilities" : [ "GroupNonUniform" ],
8987 "enumerant" : "SubgroupBallotKHR",
8989 "extensions" : [ "SPV_KHR_shader_ballot" ],
8993 "enumerant" : "DrawParameters",
8995 "capabilities" : [ "Shader" ],
8996 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
9000 "enumerant" : "SubgroupVoteKHR",
9002 "extensions" : [ "SPV_KHR_subgroup_vote" ],
9006 "enumerant" : "StorageBuffer16BitAccess",
9008 "extensions" : [ "SPV_KHR_16bit_storage" ],
9012 "enumerant" : "StorageUniformBufferBlock16",
9014 "extensions" : [ "SPV_KHR_16bit_storage" ],
9018 "enumerant" : "UniformAndStorageBuffer16BitAccess",
9021 "StorageBuffer16BitAccess",
9022 "StorageUniformBufferBlock16"
9024 "extensions" : [ "SPV_KHR_16bit_storage" ],
9028 "enumerant" : "StorageUniform16",
9031 "StorageBuffer16BitAccess",
9032 "StorageUniformBufferBlock16"
9034 "extensions" : [ "SPV_KHR_16bit_storage" ],
9038 "enumerant" : "StoragePushConstant16",
9040 "extensions" : [ "SPV_KHR_16bit_storage" ],
9044 "enumerant" : "StorageInputOutput16",
9046 "extensions" : [ "SPV_KHR_16bit_storage" ],
9050 "enumerant" : "DeviceGroup",
9052 "extensions" : [ "SPV_KHR_device_group" ],
9056 "enumerant" : "MultiView",
9058 "capabilities" : [ "Shader" ],
9059 "extensions" : [ "SPV_KHR_multiview" ],
9063 "enumerant" : "VariablePointersStorageBuffer",
9065 "capabilities" : [ "Shader" ],
9066 "extensions" : [ "SPV_KHR_variable_pointers" ],
9070 "enumerant" : "VariablePointers",
9072 "capabilities" : [ "VariablePointersStorageBuffer" ],
9073 "extensions" : [ "SPV_KHR_variable_pointers" ],
9077 "enumerant" : "AtomicStorageOps",
9079 "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ],
9083 "enumerant" : "SampleMaskPostDepthCoverage",
9085 "extensions" : [ "SPV_KHR_post_depth_coverage" ],
9089 "enumerant" : "StorageBuffer8BitAccess",
9091 "extensions" : [ "SPV_KHR_8bit_storage" ],
9095 "enumerant" : "UniformAndStorageBuffer8BitAccess",
9097 "capabilities" : [ "StorageBuffer8BitAccess" ],
9098 "extensions" : [ "SPV_KHR_8bit_storage" ],
9102 "enumerant" : "StoragePushConstant8",
9104 "extensions" : [ "SPV_KHR_8bit_storage" ],
9108 "enumerant" : "DenormPreserve",
9110 "extensions" : [ "SPV_KHR_float_controls" ],
9114 "enumerant" : "DenormFlushToZero",
9116 "extensions" : [ "SPV_KHR_float_controls" ],
9120 "enumerant" : "SignedZeroInfNanPreserve",
9122 "extensions" : [ "SPV_KHR_float_controls" ],
9126 "enumerant" : "RoundingModeRTE",
9128 "extensions" : [ "SPV_KHR_float_controls" ],
9132 "enumerant" : "RoundingModeRTZ",
9134 "extensions" : [ "SPV_KHR_float_controls" ],
9138 "enumerant" : "Float16ImageAMD",
9140 "capabilities" : [ "Shader" ],
9141 "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ],
9145 "enumerant" : "ImageGatherBiasLodAMD",
9147 "capabilities" : [ "Shader" ],
9148 "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ],
9152 "enumerant" : "FragmentMaskAMD",
9154 "capabilities" : [ "Shader" ],
9155 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
9159 "enumerant" : "StencilExportEXT",
9161 "capabilities" : [ "Shader" ],
9162 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
9166 "enumerant" : "ImageReadWriteLodAMD",
9168 "capabilities" : [ "Shader" ],
9169 "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
9173 "enumerant" : "SampleMaskOverrideCoverageNV",
9175 "capabilities" : [ "SampleRateShading" ],
9176 "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
9180 "enumerant" : "GeometryShaderPassthroughNV",
9182 "capabilities" : [ "Geometry" ],
9183 "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
9187 "enumerant" : "ShaderViewportIndexLayerEXT",
9189 "capabilities" : [ "MultiViewport" ],
9190 "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ],
9194 "enumerant" : "ShaderViewportIndexLayerNV",
9196 "capabilities" : [ "MultiViewport" ],
9197 "extensions" : [ "SPV_NV_viewport_array2" ],
9201 "enumerant" : "ShaderViewportMaskNV",
9203 "capabilities" : [ "ShaderViewportIndexLayerNV" ],
9204 "extensions" : [ "SPV_NV_viewport_array2" ],
9208 "enumerant" : "ShaderStereoViewNV",
9210 "capabilities" : [ "ShaderViewportMaskNV" ],
9211 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
9215 "enumerant" : "PerViewAttributesNV",
9217 "capabilities" : [ "MultiView" ],
9218 "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ],
9222 "enumerant" : "FragmentFullyCoveredEXT",
9224 "capabilities" : [ "Shader" ],
9225 "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
9229 "enumerant" : "MeshShadingNV",
9231 "capabilities" : [ "Shader" ],
9232 "extensions" : [ "SPV_NV_mesh_shader" ],
9236 "enumerant" : "ImageFootprintNV",
9238 "extensions" : [ "SPV_NV_shader_image_footprint" ],
9242 "enumerant" : "FragmentBarycentricNV",
9244 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
9248 "enumerant" : "ComputeDerivativeGroupQuadsNV",
9250 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
9254 "enumerant" : "FragmentDensityEXT",
9256 "capabilities" : [ "Shader" ],
9257 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
9261 "enumerant" : "ShadingRateNV",
9263 "capabilities" : [ "Shader" ],
9264 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
9268 "enumerant" : "GroupNonUniformPartitionedNV",
9270 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
9274 "enumerant" : "ShaderNonUniformEXT",
9276 "capabilities" : [ "Shader" ],
9277 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9281 "enumerant" : "RuntimeDescriptorArrayEXT",
9283 "capabilities" : [ "Shader" ],
9284 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9288 "enumerant" : "InputAttachmentArrayDynamicIndexingEXT",
9290 "capabilities" : [ "InputAttachment" ],
9291 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9295 "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT",
9297 "capabilities" : [ "SampledBuffer" ],
9298 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9302 "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT",
9304 "capabilities" : [ "ImageBuffer" ],
9305 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9309 "enumerant" : "UniformBufferArrayNonUniformIndexingEXT",
9311 "capabilities" : [ "ShaderNonUniformEXT" ],
9312 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9316 "enumerant" : "SampledImageArrayNonUniformIndexingEXT",
9318 "capabilities" : [ "ShaderNonUniformEXT" ],
9319 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9323 "enumerant" : "StorageBufferArrayNonUniformIndexingEXT",
9325 "capabilities" : [ "ShaderNonUniformEXT" ],
9326 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9330 "enumerant" : "StorageImageArrayNonUniformIndexingEXT",
9332 "capabilities" : [ "ShaderNonUniformEXT" ],
9333 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9337 "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT",
9339 "capabilities" : [ "InputAttachment", "ShaderNonUniformEXT" ],
9340 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9344 "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT",
9346 "capabilities" : [ "SampledBuffer", "ShaderNonUniformEXT" ],
9347 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9351 "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT",
9353 "capabilities" : [ "ImageBuffer", "ShaderNonUniformEXT" ],
9354 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9358 "enumerant" : "RayTracingNV",
9360 "capabilities" : [ "Shader" ],
9361 "extensions" : [ "SPV_NV_ray_tracing" ],
9365 "enumerant" : "VulkanMemoryModelKHR",
9367 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9371 "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
9373 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9377 "enumerant" : "PhysicalStorageBufferAddressesEXT",
9379 "capabilities" : [ "Shader" ],
9380 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9384 "enumerant" : "ComputeDerivativeGroupLinearNV",
9386 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
9390 "enumerant" : "CooperativeMatrixNV",
9392 "capabilities" : [ "Shader" ],
9393 "extensions" : [ "SPV_NV_cooperative_matrix" ],
9397 "enumerant" : "FragmentShaderSampleInterlockEXT",
9399 "capabilities" : [ "Shader" ],
9400 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9404 "enumerant" : "FragmentShaderShadingRateInterlockEXT",
9406 "capabilities" : [ "Shader" ],
9407 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9411 "enumerant" : "ShaderSMBuiltinsNV",
9413 "capabilities" : [ "Shader" ],
9414 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
9418 "enumerant" : "FragmentShaderPixelInterlockEXT",
9420 "capabilities" : [ "Shader" ],
9421 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9425 "enumerant" : "DemoteToHelperInvocationEXT",
9427 "capabilities" : [ "Shader" ],
9428 "extensions" : [ "SPV_EXT_demote_to_helper_invocation" ],
9432 "enumerant" : "SubgroupShuffleINTEL",
9434 "extensions" : [ "SPV_INTEL_subgroups" ],
9438 "enumerant" : "SubgroupBufferBlockIOINTEL",
9440 "extensions" : [ "SPV_INTEL_subgroups" ],
9444 "enumerant" : "SubgroupImageBlockIOINTEL",
9446 "extensions" : [ "SPV_INTEL_subgroups" ],
9450 "enumerant" : "SubgroupImageMediaBlockIOINTEL",
9452 "extensions" : [ "SPV_INTEL_media_block_io" ],
9456 "enumerant" : "IntegerFunctions2INTEL",
9458 "capabilities" : [ "Shader" ],
9459 "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
9463 "enumerant" : "SubgroupAvcMotionEstimationINTEL",
9465 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
9469 "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL",
9471 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
9475 "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL",
9477 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
9484 "kind" : "IdResultType",
9485 "doc" : "Reference to an <id> representing the result's type of the enclosing instruction"
9489 "kind" : "IdResult",
9490 "doc" : "Definition of an <id> representing the result of the enclosing instruction"
9494 "kind" : "IdMemorySemantics",
9495 "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the MemorySemantics operand kind"
9500 "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the Scope operand kind"
9505 "doc" : "Reference to an <id>"
9508 "category" : "Literal",
9509 "kind" : "LiteralInteger",
9510 "doc" : "An integer consuming one or more words"
9513 "category" : "Literal",
9514 "kind" : "LiteralString",
9515 "doc" : "A null-terminated stream of characters consuming an integral number of words"
9518 "category" : "Literal",
9519 "kind" : "LiteralContextDependentNumber",
9520 "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction"
9523 "category" : "Literal",
9524 "kind" : "LiteralExtInstInteger",
9525 "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)"
9528 "category" : "Literal",
9529 "kind" : "LiteralSpecConstantOpInteger",
9530 "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)"
9533 "category" : "Composite",
9534 "kind" : "PairLiteralIntegerIdRef",
9535 "bases" : [ "LiteralInteger", "IdRef" ]
9538 "category" : "Composite",
9539 "kind" : "PairIdRefLiteralInteger",
9540 "bases" : [ "IdRef", "LiteralInteger" ]
9543 "category" : "Composite",
9544 "kind" : "PairIdRefIdRef",
9545 "bases" : [ "IdRef", "IdRef" ]