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" : "OpSubgroupShuffleINTEL",
4051 { "kind" : "IdResultType" },
4052 { "kind" : "IdResult" },
4053 { "kind" : "IdRef", "name" : "'Data'" },
4054 { "kind" : "IdRef", "name" : "'InvocationId'" }
4056 "capabilities" : [ "SubgroupShuffleINTEL" ],
4060 "opname" : "OpSubgroupShuffleDownINTEL",
4063 { "kind" : "IdResultType" },
4064 { "kind" : "IdResult" },
4065 { "kind" : "IdRef", "name" : "'Current'" },
4066 { "kind" : "IdRef", "name" : "'Next'" },
4067 { "kind" : "IdRef", "name" : "'Delta'" }
4069 "capabilities" : [ "SubgroupShuffleINTEL" ],
4073 "opname" : "OpSubgroupShuffleUpINTEL",
4076 { "kind" : "IdResultType" },
4077 { "kind" : "IdResult" },
4078 { "kind" : "IdRef", "name" : "'Previous'" },
4079 { "kind" : "IdRef", "name" : "'Current'" },
4080 { "kind" : "IdRef", "name" : "'Delta'" }
4082 "capabilities" : [ "SubgroupShuffleINTEL" ],
4086 "opname" : "OpSubgroupShuffleXorINTEL",
4089 { "kind" : "IdResultType" },
4090 { "kind" : "IdResult" },
4091 { "kind" : "IdRef", "name" : "'Data'" },
4092 { "kind" : "IdRef", "name" : "'Value'" }
4094 "capabilities" : [ "SubgroupShuffleINTEL" ],
4098 "opname" : "OpSubgroupBlockReadINTEL",
4101 { "kind" : "IdResultType" },
4102 { "kind" : "IdResult" },
4103 { "kind" : "IdRef", "name" : "'Ptr'" }
4105 "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4109 "opname" : "OpSubgroupBlockWriteINTEL",
4112 { "kind" : "IdRef", "name" : "'Ptr'" },
4113 { "kind" : "IdRef", "name" : "'Data'" }
4115 "capabilities" : [ "SubgroupBufferBlockIOINTEL" ],
4119 "opname" : "OpSubgroupImageBlockReadINTEL",
4122 { "kind" : "IdResultType" },
4123 { "kind" : "IdResult" },
4124 { "kind" : "IdRef", "name" : "'Image'" },
4125 { "kind" : "IdRef", "name" : "'Coordinate'" }
4127 "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4131 "opname" : "OpSubgroupImageBlockWriteINTEL",
4134 { "kind" : "IdRef", "name" : "'Image'" },
4135 { "kind" : "IdRef", "name" : "'Coordinate'" },
4136 { "kind" : "IdRef", "name" : "'Data'" }
4138 "capabilities" : [ "SubgroupImageBlockIOINTEL" ],
4142 "opname" : "OpSubgroupImageMediaBlockReadINTEL",
4145 { "kind" : "IdResultType" },
4146 { "kind" : "IdResult" },
4147 { "kind" : "IdRef", "name" : "'Image'" },
4148 { "kind" : "IdRef", "name" : "'Coordinate'" },
4149 { "kind" : "IdRef", "name" : "'Width'" },
4150 { "kind" : "IdRef", "name" : "'Height'" }
4152 "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
4156 "opname" : "OpSubgroupImageMediaBlockWriteINTEL",
4159 { "kind" : "IdRef", "name" : "'Image'" },
4160 { "kind" : "IdRef", "name" : "'Coordinate'" },
4161 { "kind" : "IdRef", "name" : "'Width'" },
4162 { "kind" : "IdRef", "name" : "'Height'" },
4163 { "kind" : "IdRef", "name" : "'Data'" }
4165 "capabilities" : [ "SubgroupImageMediaBlockIOINTEL" ],
4169 "opname" : "OpUCountLeadingZerosINTEL",
4172 { "kind" : "IdResultType" },
4173 { "kind" : "IdResult" },
4174 { "kind" : "IdRef", "name" : "'Operand'" }
4176 "capabilities" : [ "IntegerFunctions2INTEL" ],
4180 "opname" : "OpUCountTrailingZerosINTEL",
4183 { "kind" : "IdResultType" },
4184 { "kind" : "IdResult" },
4185 { "kind" : "IdRef", "name" : "'Operand'" }
4187 "capabilities" : [ "IntegerFunctions2INTEL" ],
4191 "opname" : "OpAbsISubINTEL",
4194 { "kind" : "IdResultType" },
4195 { "kind" : "IdResult" },
4196 { "kind" : "IdRef", "name" : "'Operand 1'" },
4197 { "kind" : "IdRef", "name" : "'Operand 2'" }
4199 "capabilities" : [ "IntegerFunctions2INTEL" ],
4203 "opname" : "OpAbsUSubINTEL",
4206 { "kind" : "IdResultType" },
4207 { "kind" : "IdResult" },
4208 { "kind" : "IdRef", "name" : "'Operand 1'" },
4209 { "kind" : "IdRef", "name" : "'Operand 2'" }
4211 "capabilities" : [ "IntegerFunctions2INTEL" ],
4215 "opname" : "OpIAddSatINTEL",
4218 { "kind" : "IdResultType" },
4219 { "kind" : "IdResult" },
4220 { "kind" : "IdRef", "name" : "'Operand 1'" },
4221 { "kind" : "IdRef", "name" : "'Operand 2'" }
4223 "capabilities" : [ "IntegerFunctions2INTEL" ],
4227 "opname" : "OpUAddSatINTEL",
4230 { "kind" : "IdResultType" },
4231 { "kind" : "IdResult" },
4232 { "kind" : "IdRef", "name" : "'Operand 1'" },
4233 { "kind" : "IdRef", "name" : "'Operand 2'" }
4235 "capabilities" : [ "IntegerFunctions2INTEL" ],
4239 "opname" : "OpIAverageINTEL",
4242 { "kind" : "IdResultType" },
4243 { "kind" : "IdResult" },
4244 { "kind" : "IdRef", "name" : "'Operand 1'" },
4245 { "kind" : "IdRef", "name" : "'Operand 2'" }
4247 "capabilities" : [ "IntegerFunctions2INTEL" ],
4251 "opname" : "OpUAverageINTEL",
4254 { "kind" : "IdResultType" },
4255 { "kind" : "IdResult" },
4256 { "kind" : "IdRef", "name" : "'Operand 1'" },
4257 { "kind" : "IdRef", "name" : "'Operand 2'" }
4259 "capabilities" : [ "IntegerFunctions2INTEL" ],
4263 "opname" : "OpIAverageRoundedINTEL",
4266 { "kind" : "IdResultType" },
4267 { "kind" : "IdResult" },
4268 { "kind" : "IdRef", "name" : "'Operand 1'" },
4269 { "kind" : "IdRef", "name" : "'Operand 2'" }
4271 "capabilities" : [ "IntegerFunctions2INTEL" ],
4275 "opname" : "OpUAverageRoundedINTEL",
4278 { "kind" : "IdResultType" },
4279 { "kind" : "IdResult" },
4280 { "kind" : "IdRef", "name" : "'Operand 1'" },
4281 { "kind" : "IdRef", "name" : "'Operand 2'" }
4283 "capabilities" : [ "IntegerFunctions2INTEL" ],
4287 "opname" : "OpISubSatINTEL",
4290 { "kind" : "IdResultType" },
4291 { "kind" : "IdResult" },
4292 { "kind" : "IdRef", "name" : "'Operand 1'" },
4293 { "kind" : "IdRef", "name" : "'Operand 2'" }
4295 "capabilities" : [ "IntegerFunctions2INTEL" ],
4299 "opname" : "OpUSubSatINTEL",
4302 { "kind" : "IdResultType" },
4303 { "kind" : "IdResult" },
4304 { "kind" : "IdRef", "name" : "'Operand 1'" },
4305 { "kind" : "IdRef", "name" : "'Operand 2'" }
4307 "capabilities" : [ "IntegerFunctions2INTEL" ],
4311 "opname" : "OpIMul32x16INTEL",
4314 { "kind" : "IdResultType" },
4315 { "kind" : "IdResult" },
4316 { "kind" : "IdRef", "name" : "'Operand 1'" },
4317 { "kind" : "IdRef", "name" : "'Operand 2'" }
4319 "capabilities" : [ "IntegerFunctions2INTEL" ],
4323 "opname" : "OpUMul32x16INTEL",
4326 { "kind" : "IdResultType" },
4327 { "kind" : "IdResult" },
4328 { "kind" : "IdRef", "name" : "'Operand 1'" },
4329 { "kind" : "IdRef", "name" : "'Operand 2'" }
4331 "capabilities" : [ "IntegerFunctions2INTEL" ],
4335 "opname" : "OpDecorateString",
4338 { "kind" : "IdRef", "name" : "'Target'" },
4339 { "kind" : "Decoration" }
4341 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4345 "opname" : "OpDecorateStringGOOGLE",
4348 { "kind" : "IdRef", "name" : "'Target'" },
4349 { "kind" : "Decoration" }
4351 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4355 "opname" : "OpMemberDecorateString",
4358 { "kind" : "IdRef", "name" : "'Struct Type'" },
4359 { "kind" : "LiteralInteger", "name" : "'Member'" },
4360 { "kind" : "Decoration" }
4362 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4366 "opname" : "OpMemberDecorateStringGOOGLE",
4369 { "kind" : "IdRef", "name" : "'Struct Type'" },
4370 { "kind" : "LiteralInteger", "name" : "'Member'" },
4371 { "kind" : "Decoration" }
4373 "extensions" : [ "SPV_GOOGLE_decorate_string", "SPV_GOOGLE_hlsl_functionality1" ],
4377 "opname" : "OpVmeImageINTEL",
4380 { "kind" : "IdResultType" },
4381 { "kind" : "IdResult" },
4382 { "kind" : "IdRef", "name" : "'Image Type'" },
4383 { "kind" : "IdRef", "name" : "'Sampler'" }
4385 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4389 "opname" : "OpTypeVmeImageINTEL",
4392 { "kind" : "IdResult" },
4393 { "kind" : "IdRef", "name" : "'Image Type'" }
4395 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4399 "opname" : "OpTypeAvcImePayloadINTEL",
4402 { "kind" : "IdResult" }
4404 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4408 "opname" : "OpTypeAvcRefPayloadINTEL",
4411 { "kind" : "IdResult" }
4413 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4417 "opname" : "OpTypeAvcSicPayloadINTEL",
4420 { "kind" : "IdResult" }
4422 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4426 "opname" : "OpTypeAvcMcePayloadINTEL",
4429 { "kind" : "IdResult" }
4431 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4435 "opname" : "OpTypeAvcMceResultINTEL",
4438 { "kind" : "IdResult" }
4440 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4444 "opname" : "OpTypeAvcImeResultINTEL",
4447 { "kind" : "IdResult" }
4449 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4453 "opname" : "OpTypeAvcImeResultSingleReferenceStreamoutINTEL",
4456 { "kind" : "IdResult" }
4458 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4462 "opname" : "OpTypeAvcImeResultDualReferenceStreamoutINTEL",
4465 { "kind" : "IdResult" }
4467 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4471 "opname" : "OpTypeAvcImeSingleReferenceStreaminINTEL",
4474 { "kind" : "IdResult" }
4476 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4480 "opname" : "OpTypeAvcImeDualReferenceStreaminINTEL",
4483 { "kind" : "IdResult" }
4485 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4489 "opname" : "OpTypeAvcRefResultINTEL",
4492 { "kind" : "IdResult" }
4494 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4498 "opname" : "OpTypeAvcSicResultINTEL",
4501 { "kind" : "IdResult" }
4503 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4507 "opname" : "OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL",
4510 { "kind" : "IdResultType" },
4511 { "kind" : "IdResult" },
4512 { "kind" : "IdRef", "name" : "'Slice Type'" },
4513 { "kind" : "IdRef", "name" : "'Qp'" }
4515 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4519 "opname" : "OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL",
4522 { "kind" : "IdResultType" },
4523 { "kind" : "IdResult" },
4524 { "kind" : "IdRef", "name" : "'Reference Base Penalty'" },
4525 { "kind" : "IdRef", "name" : "'Payload'" }
4527 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4531 "opname" : "OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL",
4534 { "kind" : "IdResultType" },
4535 { "kind" : "IdResult" },
4536 { "kind" : "IdRef", "name" : "'Slice Type'" },
4537 { "kind" : "IdRef", "name" : "'Qp'" }
4539 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4543 "opname" : "OpSubgroupAvcMceSetInterShapePenaltyINTEL",
4546 { "kind" : "IdResultType" },
4547 { "kind" : "IdResult" },
4548 { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
4549 { "kind" : "IdRef", "name" : "'Payload'" }
4551 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4555 "opname" : "OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL",
4558 { "kind" : "IdResultType" },
4559 { "kind" : "IdResult" },
4560 { "kind" : "IdRef", "name" : "'Slice Type'" },
4561 { "kind" : "IdRef", "name" : "'Qp'" }
4563 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4567 "opname" : "OpSubgroupAvcMceSetInterDirectionPenaltyINTEL",
4570 { "kind" : "IdResultType" },
4571 { "kind" : "IdResult" },
4572 { "kind" : "IdRef", "name" : "'Direction Cost'" },
4573 { "kind" : "IdRef", "name" : "'Payload'" }
4575 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4579 "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL",
4582 { "kind" : "IdResultType" },
4583 { "kind" : "IdResult" },
4584 { "kind" : "IdRef", "name" : "'Slice Type'" },
4585 { "kind" : "IdRef", "name" : "'Qp'" }
4587 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
4591 "opname" : "OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL",
4594 { "kind" : "IdResultType" },
4595 { "kind" : "IdResult" },
4596 { "kind" : "IdRef", "name" : "'Slice Type'" },
4597 { "kind" : "IdRef", "name" : "'Qp'" }
4599 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4603 "opname" : "OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL",
4606 { "kind" : "IdResultType" },
4607 { "kind" : "IdResult" }
4609 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4613 "opname" : "OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL",
4616 { "kind" : "IdResultType" },
4617 { "kind" : "IdResult" }
4619 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4623 "opname" : "OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL",
4626 { "kind" : "IdResultType" },
4627 { "kind" : "IdResult" }
4629 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4633 "opname" : "OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL",
4636 { "kind" : "IdResultType" },
4637 { "kind" : "IdResult" },
4638 { "kind" : "IdRef", "name" : "'Packed Cost Center Delta'" },
4639 { "kind" : "IdRef", "name" : "'Packed Cost Table'" },
4640 { "kind" : "IdRef", "name" : "'Cost Precision'" },
4641 { "kind" : "IdRef", "name" : "'Payload'" }
4643 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4647 "opname" : "OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL",
4650 { "kind" : "IdResultType" },
4651 { "kind" : "IdResult" },
4652 { "kind" : "IdRef", "name" : "'Slice Type'" },
4653 { "kind" : "IdRef", "name" : "'Qp'" }
4655 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
4659 "opname" : "OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL",
4662 { "kind" : "IdResultType" },
4663 { "kind" : "IdResult" }
4665 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
4669 "opname" : "OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL",
4672 { "kind" : "IdResultType" },
4673 { "kind" : "IdResult" }
4675 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
4679 "opname" : "OpSubgroupAvcMceSetAcOnlyHaarINTEL",
4682 { "kind" : "IdResultType" },
4683 { "kind" : "IdResult" },
4684 { "kind" : "IdRef", "name" : "'Payload'" }
4686 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4690 "opname" : "OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL",
4693 { "kind" : "IdResultType" },
4694 { "kind" : "IdResult" },
4695 { "kind" : "IdRef", "name" : "'Source Field Polarity'" },
4696 { "kind" : "IdRef", "name" : "'Payload'" }
4698 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4702 "opname" : "OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL",
4705 { "kind" : "IdResultType" },
4706 { "kind" : "IdResult" },
4707 { "kind" : "IdRef", "name" : "'Reference Field Polarity'" },
4708 { "kind" : "IdRef", "name" : "'Payload'" }
4710 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4714 "opname" : "OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL",
4717 { "kind" : "IdResultType" },
4718 { "kind" : "IdResult" },
4719 { "kind" : "IdRef", "name" : "'Forward Reference Field Polarity'" },
4720 { "kind" : "IdRef", "name" : "'Backward Reference Field Polarity'" },
4721 { "kind" : "IdRef", "name" : "'Payload'" }
4723 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4727 "opname" : "OpSubgroupAvcMceConvertToImePayloadINTEL",
4730 { "kind" : "IdResultType" },
4731 { "kind" : "IdResult" },
4732 { "kind" : "IdRef", "name" : "'Payload'" }
4734 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4738 "opname" : "OpSubgroupAvcMceConvertToImeResultINTEL",
4741 { "kind" : "IdResultType" },
4742 { "kind" : "IdResult" },
4743 { "kind" : "IdRef", "name" : "'Payload'" }
4745 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4749 "opname" : "OpSubgroupAvcMceConvertToRefPayloadINTEL",
4752 { "kind" : "IdResultType" },
4753 { "kind" : "IdResult" },
4754 { "kind" : "IdRef", "name" : "'Payload'" }
4756 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4760 "opname" : "OpSubgroupAvcMceConvertToRefResultINTEL",
4763 { "kind" : "IdResultType" },
4764 { "kind" : "IdResult" },
4765 { "kind" : "IdRef", "name" : "'Payload'" }
4767 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4771 "opname" : "OpSubgroupAvcMceConvertToSicPayloadINTEL",
4774 { "kind" : "IdResultType" },
4775 { "kind" : "IdResult" },
4776 { "kind" : "IdRef", "name" : "'Payload'" }
4778 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4782 "opname" : "OpSubgroupAvcMceConvertToSicResultINTEL",
4785 { "kind" : "IdResultType" },
4786 { "kind" : "IdResult" },
4787 { "kind" : "IdRef", "name" : "'Payload'" }
4789 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4793 "opname" : "OpSubgroupAvcMceGetMotionVectorsINTEL",
4796 { "kind" : "IdResultType" },
4797 { "kind" : "IdResult" },
4798 { "kind" : "IdRef", "name" : "'Payload'" }
4800 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4804 "opname" : "OpSubgroupAvcMceGetInterDistortionsINTEL",
4807 { "kind" : "IdResultType" },
4808 { "kind" : "IdResult" },
4809 { "kind" : "IdRef", "name" : "'Payload'" }
4811 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4815 "opname" : "OpSubgroupAvcMceGetBestInterDistortionsINTEL",
4818 { "kind" : "IdResultType" },
4819 { "kind" : "IdResult" },
4820 { "kind" : "IdRef", "name" : "'Payload'" }
4822 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4826 "opname" : "OpSubgroupAvcMceGetInterMajorShapeINTEL",
4829 { "kind" : "IdResultType" },
4830 { "kind" : "IdResult" },
4831 { "kind" : "IdRef", "name" : "'Payload'" }
4833 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4837 "opname" : "OpSubgroupAvcMceGetInterMinorShapeINTEL",
4840 { "kind" : "IdResultType" },
4841 { "kind" : "IdResult" },
4842 { "kind" : "IdRef", "name" : "'Payload'" }
4844 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4848 "opname" : "OpSubgroupAvcMceGetInterDirectionsINTEL",
4851 { "kind" : "IdResultType" },
4852 { "kind" : "IdResult" },
4853 { "kind" : "IdRef", "name" : "'Payload'" }
4855 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4859 "opname" : "OpSubgroupAvcMceGetInterMotionVectorCountINTEL",
4862 { "kind" : "IdResultType" },
4863 { "kind" : "IdResult" },
4864 { "kind" : "IdRef", "name" : "'Payload'" }
4866 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4870 "opname" : "OpSubgroupAvcMceGetInterReferenceIdsINTEL",
4873 { "kind" : "IdResultType" },
4874 { "kind" : "IdResult" },
4875 { "kind" : "IdRef", "name" : "'Payload'" }
4877 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4881 "opname" : "OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL",
4884 { "kind" : "IdResultType" },
4885 { "kind" : "IdResult" },
4886 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
4887 { "kind" : "IdRef", "name" : "'Packed Reference Parameter Field Polarities'" },
4888 { "kind" : "IdRef", "name" : "'Payload'" }
4890 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4894 "opname" : "OpSubgroupAvcImeInitializeINTEL",
4897 { "kind" : "IdResultType" },
4898 { "kind" : "IdResult" },
4899 { "kind" : "IdRef", "name" : "'Src Coord'" },
4900 { "kind" : "IdRef", "name" : "'Partition Mask'" },
4901 { "kind" : "IdRef", "name" : "'SAD Adjustment'" }
4903 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4907 "opname" : "OpSubgroupAvcImeSetSingleReferenceINTEL",
4910 { "kind" : "IdResultType" },
4911 { "kind" : "IdResult" },
4912 { "kind" : "IdRef", "name" : "'Ref Offset'" },
4913 { "kind" : "IdRef", "name" : "'Search Window Config'" },
4914 { "kind" : "IdRef", "name" : "'Payload'" }
4916 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4920 "opname" : "OpSubgroupAvcImeSetDualReferenceINTEL",
4923 { "kind" : "IdResultType" },
4924 { "kind" : "IdResult" },
4925 { "kind" : "IdRef", "name" : "'Fwd Ref Offset'" },
4926 { "kind" : "IdRef", "name" : "'Bwd Ref Offset'" },
4927 { "kind" : "IdRef", "name" : "'id> Search Window Config'" },
4928 { "kind" : "IdRef", "name" : "'Payload'" }
4930 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4934 "opname" : "OpSubgroupAvcImeRefWindowSizeINTEL",
4937 { "kind" : "IdResultType" },
4938 { "kind" : "IdResult" },
4939 { "kind" : "IdRef", "name" : "'Search Window Config'" },
4940 { "kind" : "IdRef", "name" : "'Dual Ref'" }
4942 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4946 "opname" : "OpSubgroupAvcImeAdjustRefOffsetINTEL",
4949 { "kind" : "IdResultType" },
4950 { "kind" : "IdResult" },
4951 { "kind" : "IdRef", "name" : "'Ref Offset'" },
4952 { "kind" : "IdRef", "name" : "'Src Coord'" },
4953 { "kind" : "IdRef", "name" : "'Ref Window Size'" },
4954 { "kind" : "IdRef", "name" : "'Image Size'" }
4956 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4960 "opname" : "OpSubgroupAvcImeConvertToMcePayloadINTEL",
4963 { "kind" : "IdResultType" },
4964 { "kind" : "IdResult" },
4965 { "kind" : "IdRef", "name" : "'Payload'" }
4967 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4971 "opname" : "OpSubgroupAvcImeSetMaxMotionVectorCountINTEL",
4974 { "kind" : "IdResultType" },
4975 { "kind" : "IdResult" },
4976 { "kind" : "IdRef", "name" : "'Max Motion Vector Count'" },
4977 { "kind" : "IdRef", "name" : "'Payload'" }
4979 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4983 "opname" : "OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL",
4986 { "kind" : "IdResultType" },
4987 { "kind" : "IdResult" },
4988 { "kind" : "IdRef", "name" : "'Payload'" }
4990 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
4994 "opname" : "OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL",
4997 { "kind" : "IdResultType" },
4998 { "kind" : "IdResult" },
4999 { "kind" : "IdRef", "name" : "'Threshold'" },
5000 { "kind" : "IdRef", "name" : "'Payload'" }
5002 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5006 "opname" : "OpSubgroupAvcImeSetWeightedSadINTEL",
5009 { "kind" : "IdResultType" },
5010 { "kind" : "IdResult" },
5011 { "kind" : "IdRef", "name" : "'Packed Sad Weights'" },
5012 { "kind" : "IdRef", "name" : "'Payload'" }
5014 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5018 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL",
5021 { "kind" : "IdResultType" },
5022 { "kind" : "IdResult" },
5023 { "kind" : "IdRef", "name" : "'Src Image'" },
5024 { "kind" : "IdRef", "name" : "'Ref Image'" },
5025 { "kind" : "IdRef", "name" : "'Payload'" }
5027 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5031 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceINTEL",
5034 { "kind" : "IdResultType" },
5035 { "kind" : "IdResult" },
5036 { "kind" : "IdRef", "name" : "'Src Image'" },
5037 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5038 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5039 { "kind" : "IdRef", "name" : "'Payload'" }
5041 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5045 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL",
5048 { "kind" : "IdResultType" },
5049 { "kind" : "IdResult" },
5050 { "kind" : "IdRef", "name" : "'Src Image'" },
5051 { "kind" : "IdRef", "name" : "'Ref Image'" },
5052 { "kind" : "IdRef", "name" : "'Payload'" },
5053 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5055 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5059 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL",
5062 { "kind" : "IdResultType" },
5063 { "kind" : "IdResult" },
5064 { "kind" : "IdRef", "name" : "'Src Image'" },
5065 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5066 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5067 { "kind" : "IdRef", "name" : "'Payload'" },
5068 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5070 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5074 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL",
5077 { "kind" : "IdResultType" },
5078 { "kind" : "IdResult" },
5079 { "kind" : "IdRef", "name" : "'Src Image'" },
5080 { "kind" : "IdRef", "name" : "'Ref Image'" },
5081 { "kind" : "IdRef", "name" : "'Payload'" }
5083 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5087 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL",
5090 { "kind" : "IdResultType" },
5091 { "kind" : "IdResult" },
5092 { "kind" : "IdRef", "name" : "'Src Image'" },
5093 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5094 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5095 { "kind" : "IdRef", "name" : "'Payload'" }
5097 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5101 "opname" : "OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL",
5104 { "kind" : "IdResultType" },
5105 { "kind" : "IdResult" },
5106 { "kind" : "IdRef", "name" : "'Src Image'" },
5107 { "kind" : "IdRef", "name" : "'Ref Image'" },
5108 { "kind" : "IdRef", "name" : "'Payload'" },
5109 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5111 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5115 "opname" : "OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL",
5118 { "kind" : "IdResultType" },
5119 { "kind" : "IdResult" },
5120 { "kind" : "IdRef", "name" : "'Src Image'" },
5121 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5122 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5123 { "kind" : "IdRef", "name" : "'Payload'" },
5124 { "kind" : "IdRef", "name" : "'Streamin Components'" }
5126 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5130 "opname" : "OpSubgroupAvcImeConvertToMceResultINTEL",
5133 { "kind" : "IdResultType" },
5134 { "kind" : "IdResult" },
5135 { "kind" : "IdRef", "name" : "'Payload'" }
5137 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5141 "opname" : "OpSubgroupAvcImeGetSingleReferenceStreaminINTEL",
5144 { "kind" : "IdResultType" },
5145 { "kind" : "IdResult" },
5146 { "kind" : "IdRef", "name" : "'Payload'" }
5148 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5152 "opname" : "OpSubgroupAvcImeGetDualReferenceStreaminINTEL",
5155 { "kind" : "IdResultType" },
5156 { "kind" : "IdResult" },
5157 { "kind" : "IdRef", "name" : "'Payload'" }
5159 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5163 "opname" : "OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL",
5166 { "kind" : "IdResultType" },
5167 { "kind" : "IdResult" },
5168 { "kind" : "IdRef", "name" : "'Payload'" }
5170 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5174 "opname" : "OpSubgroupAvcImeStripDualReferenceStreamoutINTEL",
5177 { "kind" : "IdResultType" },
5178 { "kind" : "IdResult" },
5179 { "kind" : "IdRef", "name" : "'Payload'" }
5181 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5185 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL",
5188 { "kind" : "IdResultType" },
5189 { "kind" : "IdResult" },
5190 { "kind" : "IdRef", "name" : "'Payload'" },
5191 { "kind" : "IdRef", "name" : "'Major Shape'" }
5193 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5197 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL",
5200 { "kind" : "IdResultType" },
5201 { "kind" : "IdResult" },
5202 { "kind" : "IdRef", "name" : "'Payload'" },
5203 { "kind" : "IdRef", "name" : "'Major Shape'" }
5205 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5209 "opname" : "OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL",
5212 { "kind" : "IdResultType" },
5213 { "kind" : "IdResult" },
5214 { "kind" : "IdRef", "name" : "'Payload'" },
5215 { "kind" : "IdRef", "name" : "'Major Shape'" }
5217 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5221 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL",
5224 { "kind" : "IdResultType" },
5225 { "kind" : "IdResult" },
5226 { "kind" : "IdRef", "name" : "'Payload'" },
5227 { "kind" : "IdRef", "name" : "'Major Shape'" },
5228 { "kind" : "IdRef", "name" : "'Direction'" }
5230 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5234 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL",
5237 { "kind" : "IdResultType" },
5238 { "kind" : "IdResult" },
5239 { "kind" : "IdRef", "name" : "'Payload'" },
5240 { "kind" : "IdRef", "name" : "'Major Shape'" },
5241 { "kind" : "IdRef", "name" : "'Direction'" }
5243 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5247 "opname" : "OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL",
5250 { "kind" : "IdResultType" },
5251 { "kind" : "IdResult" },
5252 { "kind" : "IdRef", "name" : "'Payload'" },
5253 { "kind" : "IdRef", "name" : "'Major Shape'" },
5254 { "kind" : "IdRef", "name" : "'Direction'" }
5256 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5260 "opname" : "OpSubgroupAvcImeGetBorderReachedINTEL",
5263 { "kind" : "IdResultType" },
5264 { "kind" : "IdResult" },
5265 { "kind" : "IdRef", "name" : "'Image Select'" },
5266 { "kind" : "IdRef", "name" : "'Payload'" }
5268 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5272 "opname" : "OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL",
5275 { "kind" : "IdResultType" },
5276 { "kind" : "IdResult" },
5277 { "kind" : "IdRef", "name" : "'Payload'" }
5279 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5283 "opname" : "OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL",
5286 { "kind" : "IdResultType" },
5287 { "kind" : "IdResult" },
5288 { "kind" : "IdRef", "name" : "'Payload'" }
5290 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5294 "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL",
5297 { "kind" : "IdResultType" },
5298 { "kind" : "IdResult" },
5299 { "kind" : "IdRef", "name" : "'Payload'" }
5301 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5305 "opname" : "OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL",
5308 { "kind" : "IdResultType" },
5309 { "kind" : "IdResult" },
5310 { "kind" : "IdRef", "name" : "'Payload'" }
5312 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5316 "opname" : "OpSubgroupAvcFmeInitializeINTEL",
5319 { "kind" : "IdResultType" },
5320 { "kind" : "IdResult" },
5321 { "kind" : "IdRef", "name" : "'Src Coord'" },
5322 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
5323 { "kind" : "IdRef", "name" : "'Major Shapes'" },
5324 { "kind" : "IdRef", "name" : "'Minor Shapes'" },
5325 { "kind" : "IdRef", "name" : "'Direction'" },
5326 { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
5327 { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
5329 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5333 "opname" : "OpSubgroupAvcBmeInitializeINTEL",
5336 { "kind" : "IdResultType" },
5337 { "kind" : "IdResult" },
5338 { "kind" : "IdRef", "name" : "'Src Coord'" },
5339 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
5340 { "kind" : "IdRef", "name" : "'Major Shapes'" },
5341 { "kind" : "IdRef", "name" : "'Minor Shapes'" },
5342 { "kind" : "IdRef", "name" : "'Direction'" },
5343 { "kind" : "IdRef", "name" : "'Pixel Resolution'" },
5344 { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
5345 { "kind" : "IdRef", "name" : "'Sad Adjustment'" }
5347 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5351 "opname" : "OpSubgroupAvcRefConvertToMcePayloadINTEL",
5354 { "kind" : "IdResultType" },
5355 { "kind" : "IdResult" },
5356 { "kind" : "IdRef", "name" : "'Payload'" }
5358 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5362 "opname" : "OpSubgroupAvcRefSetBidirectionalMixDisableINTEL",
5365 { "kind" : "IdResultType" },
5366 { "kind" : "IdResult" },
5367 { "kind" : "IdRef", "name" : "'Payload'" }
5369 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5373 "opname" : "OpSubgroupAvcRefSetBilinearFilterEnableINTEL",
5376 { "kind" : "IdResultType" },
5377 { "kind" : "IdResult" },
5378 { "kind" : "IdRef", "name" : "'Payload'" }
5380 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5384 "opname" : "OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL",
5387 { "kind" : "IdResultType" },
5388 { "kind" : "IdResult" },
5389 { "kind" : "IdRef", "name" : "'Src Image'" },
5390 { "kind" : "IdRef", "name" : "'Ref Image'" },
5391 { "kind" : "IdRef", "name" : "'Payload'" }
5393 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5397 "opname" : "OpSubgroupAvcRefEvaluateWithDualReferenceINTEL",
5400 { "kind" : "IdResultType" },
5401 { "kind" : "IdResult" },
5402 { "kind" : "IdRef", "name" : "'Src Image'" },
5403 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5404 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5405 { "kind" : "IdRef", "name" : "'Payload'" }
5407 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5411 "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL",
5414 { "kind" : "IdResultType" },
5415 { "kind" : "IdResult" },
5416 { "kind" : "IdRef", "name" : "'Src Image'" },
5417 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5418 { "kind" : "IdRef", "name" : "'Payload'" }
5420 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5424 "opname" : "OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL",
5427 { "kind" : "IdResultType" },
5428 { "kind" : "IdResult" },
5429 { "kind" : "IdRef", "name" : "'Src Image'" },
5430 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5431 { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
5432 { "kind" : "IdRef", "name" : "'Payload'" }
5434 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5438 "opname" : "OpSubgroupAvcRefConvertToMceResultINTEL",
5441 { "kind" : "IdResultType" },
5442 { "kind" : "IdResult" },
5443 { "kind" : "IdRef", "name" : "'Payload'" }
5445 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5449 "opname" : "OpSubgroupAvcSicInitializeINTEL",
5452 { "kind" : "IdResultType" },
5453 { "kind" : "IdResult" },
5454 { "kind" : "IdRef", "name" : "'Src Coord'" }
5456 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5460 "opname" : "OpSubgroupAvcSicConfigureSkcINTEL",
5463 { "kind" : "IdResultType" },
5464 { "kind" : "IdResult" },
5465 { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
5466 { "kind" : "IdRef", "name" : "'Skip Motion Vector Mask'" },
5467 { "kind" : "IdRef", "name" : "'Motion Vectors'" },
5468 { "kind" : "IdRef", "name" : "'Bidirectional Weight'" },
5469 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
5470 { "kind" : "IdRef", "name" : "'Payload'" }
5472 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5476 "opname" : "OpSubgroupAvcSicConfigureIpeLumaINTEL",
5479 { "kind" : "IdResultType" },
5480 { "kind" : "IdResult" },
5481 { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
5482 { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
5483 { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
5484 { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
5485 { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
5486 { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
5487 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
5488 { "kind" : "IdRef", "name" : "'Payload'" }
5490 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5494 "opname" : "OpSubgroupAvcSicConfigureIpeLumaChromaINTEL",
5497 { "kind" : "IdResultType" },
5498 { "kind" : "IdResult" },
5499 { "kind" : "IdRef", "name" : "'Luma Intra Partition Mask'" },
5500 { "kind" : "IdRef", "name" : "'Intra Neighbour Availabilty'" },
5501 { "kind" : "IdRef", "name" : "'Left Edge Luma Pixels'" },
5502 { "kind" : "IdRef", "name" : "'Upper Left Corner Luma Pixel'" },
5503 { "kind" : "IdRef", "name" : "'Upper Edge Luma Pixels'" },
5504 { "kind" : "IdRef", "name" : "'Upper Right Edge Luma Pixels'" },
5505 { "kind" : "IdRef", "name" : "'Left Edge Chroma Pixels'" },
5506 { "kind" : "IdRef", "name" : "'Upper Left Corner Chroma Pixel'" },
5507 { "kind" : "IdRef", "name" : "'Upper Edge Chroma Pixels'" },
5508 { "kind" : "IdRef", "name" : "'Sad Adjustment'" },
5509 { "kind" : "IdRef", "name" : "'Payload'" }
5511 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5515 "opname" : "OpSubgroupAvcSicGetMotionVectorMaskINTEL",
5518 { "kind" : "IdResultType" },
5519 { "kind" : "IdResult" },
5520 { "kind" : "IdRef", "name" : "'Skip Block Partition Type'" },
5521 { "kind" : "IdRef", "name" : "'Direction'" }
5523 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5527 "opname" : "OpSubgroupAvcSicConvertToMcePayloadINTEL",
5530 { "kind" : "IdResultType" },
5531 { "kind" : "IdResult" },
5532 { "kind" : "IdRef", "name" : "'Payload'" }
5534 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5538 "opname" : "OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL",
5541 { "kind" : "IdResultType" },
5542 { "kind" : "IdResult" },
5543 { "kind" : "IdRef", "name" : "'Packed Shape Penalty'" },
5544 { "kind" : "IdRef", "name" : "'Payload'" }
5546 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5550 "opname" : "OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL",
5553 { "kind" : "IdResultType" },
5554 { "kind" : "IdResult" },
5555 { "kind" : "IdRef", "name" : "'Luma Mode Penalty'" },
5556 { "kind" : "IdRef", "name" : "'Luma Packed Neighbor Modes'" },
5557 { "kind" : "IdRef", "name" : "'Luma Packed Non Dc Penalty'" },
5558 { "kind" : "IdRef", "name" : "'Payload'" }
5560 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5564 "opname" : "OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL",
5567 { "kind" : "IdResultType" },
5568 { "kind" : "IdResult" },
5569 { "kind" : "IdRef", "name" : "'Chroma Mode Base Penalty'" },
5570 { "kind" : "IdRef", "name" : "'Payload'" }
5572 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5576 "opname" : "OpSubgroupAvcSicSetBilinearFilterEnableINTEL",
5579 { "kind" : "IdResultType" },
5580 { "kind" : "IdResult" },
5581 { "kind" : "IdRef", "name" : "'Payload'" }
5583 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5587 "opname" : "OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL",
5590 { "kind" : "IdResultType" },
5591 { "kind" : "IdResult" },
5592 { "kind" : "IdRef", "name" : "'Packed Sad Coefficients'" },
5593 { "kind" : "IdRef", "name" : "'Payload'" }
5595 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5599 "opname" : "OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL",
5602 { "kind" : "IdResultType" },
5603 { "kind" : "IdResult" },
5604 { "kind" : "IdRef", "name" : "'Block Based Skip Type'" },
5605 { "kind" : "IdRef", "name" : "'Payload'" }
5607 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5611 "opname" : "OpSubgroupAvcSicEvaluateIpeINTEL",
5614 { "kind" : "IdResultType" },
5615 { "kind" : "IdResult" },
5616 { "kind" : "IdRef", "name" : "'Src Image'" },
5617 { "kind" : "IdRef", "name" : "'Payload'" }
5619 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5623 "opname" : "OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL",
5626 { "kind" : "IdResultType" },
5627 { "kind" : "IdResult" },
5628 { "kind" : "IdRef", "name" : "'Src Image'" },
5629 { "kind" : "IdRef", "name" : "'Ref Image'" },
5630 { "kind" : "IdRef", "name" : "'Payload'" }
5632 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5636 "opname" : "OpSubgroupAvcSicEvaluateWithDualReferenceINTEL",
5639 { "kind" : "IdResultType" },
5640 { "kind" : "IdResult" },
5641 { "kind" : "IdRef", "name" : "'Src Image'" },
5642 { "kind" : "IdRef", "name" : "'Fwd Ref Image'" },
5643 { "kind" : "IdRef", "name" : "'Bwd Ref Image'" },
5644 { "kind" : "IdRef", "name" : "'Payload'" }
5646 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5650 "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL",
5653 { "kind" : "IdResultType" },
5654 { "kind" : "IdResult" },
5655 { "kind" : "IdRef", "name" : "'Src Image'" },
5656 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5657 { "kind" : "IdRef", "name" : "'Payload'" }
5659 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5663 "opname" : "OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL",
5666 { "kind" : "IdResultType" },
5667 { "kind" : "IdResult" },
5668 { "kind" : "IdRef", "name" : "'Src Image'" },
5669 { "kind" : "IdRef", "name" : "'Packed Reference Ids'" },
5670 { "kind" : "IdRef", "name" : "'Packed Reference Field Polarities'" },
5671 { "kind" : "IdRef", "name" : "'Payload'" }
5673 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5677 "opname" : "OpSubgroupAvcSicConvertToMceResultINTEL",
5680 { "kind" : "IdResultType" },
5681 { "kind" : "IdResult" },
5682 { "kind" : "IdRef", "name" : "'Payload'" }
5684 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5688 "opname" : "OpSubgroupAvcSicGetIpeLumaShapeINTEL",
5691 { "kind" : "IdResultType" },
5692 { "kind" : "IdResult" },
5693 { "kind" : "IdRef", "name" : "'Payload'" }
5695 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5699 "opname" : "OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL",
5702 { "kind" : "IdResultType" },
5703 { "kind" : "IdResult" },
5704 { "kind" : "IdRef", "name" : "'Payload'" }
5706 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5710 "opname" : "OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL",
5713 { "kind" : "IdResultType" },
5714 { "kind" : "IdResult" },
5715 { "kind" : "IdRef", "name" : "'Payload'" }
5717 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5721 "opname" : "OpSubgroupAvcSicGetPackedIpeLumaModesINTEL",
5724 { "kind" : "IdResultType" },
5725 { "kind" : "IdResult" },
5726 { "kind" : "IdRef", "name" : "'Payload'" }
5728 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5732 "opname" : "OpSubgroupAvcSicGetIpeChromaModeINTEL",
5735 { "kind" : "IdResultType" },
5736 { "kind" : "IdResult" },
5737 { "kind" : "IdRef", "name" : "'Payload'" }
5739 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationChromaINTEL" ],
5743 "opname" : "OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL",
5746 { "kind" : "IdResultType" },
5747 { "kind" : "IdResult" },
5748 { "kind" : "IdRef", "name" : "'Payload'" }
5750 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5754 "opname" : "OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL",
5757 { "kind" : "IdResultType" },
5758 { "kind" : "IdResult" },
5759 { "kind" : "IdRef", "name" : "'Payload'" }
5761 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL", "SubgroupAvcMotionEstimationIntraINTEL" ],
5765 "opname" : "OpSubgroupAvcSicGetInterRawSadsINTEL",
5768 { "kind" : "IdResultType" },
5769 { "kind" : "IdResult" },
5770 { "kind" : "IdRef", "name" : "'Payload'" }
5772 "capabilities" : [ "SubgroupAvcMotionEstimationINTEL" ],
5776 "opname" : "OpBeginInvocationInterlockEXT",
5778 "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
5779 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
5783 "opname" : "OpEndInvocationInterlockEXT",
5785 "capabilities" : [ "FragmentShaderSampleInterlockEXT", "FragmentShaderPixelInterlockEXT", "FragmentShaderShadingRateInterlockEXT" ],
5786 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
5792 "category" : "BitEnum",
5793 "kind" : "ImageOperands",
5796 "enumerant" : "None",
5800 "enumerant" : "Bias",
5802 "capabilities" : [ "Shader" ],
5804 { "kind" : "IdRef" }
5808 "enumerant" : "Lod",
5811 { "kind" : "IdRef" }
5815 "enumerant" : "Grad",
5818 { "kind" : "IdRef" },
5819 { "kind" : "IdRef" }
5823 "enumerant" : "ConstOffset",
5826 { "kind" : "IdRef" }
5830 "enumerant" : "Offset",
5832 "capabilities" : [ "ImageGatherExtended" ],
5834 { "kind" : "IdRef" }
5838 "enumerant" : "ConstOffsets",
5840 "capabilities" : [ "ImageGatherExtended" ],
5842 { "kind" : "IdRef" }
5846 "enumerant" : "Sample",
5849 { "kind" : "IdRef" }
5853 "enumerant" : "MinLod",
5855 "capabilities" : [ "MinLod" ],
5857 { "kind" : "IdRef" }
5861 "enumerant" : "MakeTexelAvailableKHR",
5863 "capabilities" : [ "VulkanMemoryModelKHR" ],
5865 { "kind" : "IdScope" }
5869 "enumerant" : "MakeTexelVisibleKHR",
5871 "capabilities" : [ "VulkanMemoryModelKHR" ],
5873 { "kind" : "IdScope" }
5877 "enumerant" : "NonPrivateTexelKHR",
5879 "capabilities" : [ "VulkanMemoryModelKHR" ]
5882 "enumerant" : "VolatileTexelKHR",
5884 "capabilities" : [ "VulkanMemoryModelKHR" ]
5887 "enumerant" : "SignExtend",
5892 "enumerant" : "ZeroExtend",
5899 "category" : "BitEnum",
5900 "kind" : "FPFastMathMode",
5903 "enumerant" : "None",
5907 "enumerant" : "NotNaN",
5909 "capabilities" : [ "Kernel" ]
5912 "enumerant" : "NotInf",
5914 "capabilities" : [ "Kernel" ]
5917 "enumerant" : "NSZ",
5919 "capabilities" : [ "Kernel" ]
5922 "enumerant" : "AllowRecip",
5924 "capabilities" : [ "Kernel" ]
5927 "enumerant" : "Fast",
5929 "capabilities" : [ "Kernel" ]
5934 "category" : "BitEnum",
5935 "kind" : "SelectionControl",
5938 "enumerant" : "None",
5942 "enumerant" : "Flatten",
5946 "enumerant" : "DontFlatten",
5952 "category" : "BitEnum",
5953 "kind" : "LoopControl",
5956 "enumerant" : "None",
5960 "enumerant" : "Unroll",
5964 "enumerant" : "DontUnroll",
5968 "enumerant" : "DependencyInfinite",
5973 "enumerant" : "DependencyLength",
5976 { "kind" : "LiteralInteger" }
5981 "enumerant" : "MinIterations",
5984 { "kind" : "LiteralInteger" }
5989 "enumerant" : "MaxIterations",
5992 { "kind" : "LiteralInteger" }
5997 "enumerant" : "IterationMultiple",
6000 { "kind" : "LiteralInteger" }
6005 "enumerant" : "PeelCount",
6008 { "kind" : "LiteralInteger" }
6013 "enumerant" : "PartialCount",
6016 { "kind" : "LiteralInteger" }
6023 "category" : "BitEnum",
6024 "kind" : "FunctionControl",
6027 "enumerant" : "None",
6031 "enumerant" : "Inline",
6035 "enumerant" : "DontInline",
6039 "enumerant" : "Pure",
6043 "enumerant" : "Const",
6049 "category" : "BitEnum",
6050 "kind" : "MemorySemantics",
6053 "enumerant" : "Relaxed",
6057 "enumerant" : "None",
6061 "enumerant" : "Acquire",
6065 "enumerant" : "Release",
6069 "enumerant" : "AcquireRelease",
6073 "enumerant" : "SequentiallyConsistent",
6077 "enumerant" : "UniformMemory",
6079 "capabilities" : [ "Shader" ]
6082 "enumerant" : "SubgroupMemory",
6086 "enumerant" : "WorkgroupMemory",
6090 "enumerant" : "CrossWorkgroupMemory",
6094 "enumerant" : "AtomicCounterMemory",
6096 "capabilities" : [ "AtomicStorage" ]
6099 "enumerant" : "ImageMemory",
6103 "enumerant" : "OutputMemoryKHR",
6105 "capabilities" : [ "VulkanMemoryModelKHR" ]
6108 "enumerant" : "MakeAvailableKHR",
6110 "capabilities" : [ "VulkanMemoryModelKHR" ]
6113 "enumerant" : "MakeVisibleKHR",
6115 "capabilities" : [ "VulkanMemoryModelKHR" ]
6120 "category" : "BitEnum",
6121 "kind" : "MemoryAccess",
6124 "enumerant" : "None",
6128 "enumerant" : "Volatile",
6132 "enumerant" : "Aligned",
6135 { "kind" : "LiteralInteger" }
6139 "enumerant" : "Nontemporal",
6143 "enumerant" : "MakePointerAvailableKHR",
6146 { "kind" : "IdScope" }
6148 "capabilities" : [ "VulkanMemoryModelKHR" ]
6151 "enumerant" : "MakePointerVisibleKHR",
6154 { "kind" : "IdScope" }
6156 "capabilities" : [ "VulkanMemoryModelKHR" ]
6159 "enumerant" : "NonPrivatePointerKHR",
6161 "capabilities" : [ "VulkanMemoryModelKHR" ]
6166 "category" : "BitEnum",
6167 "kind" : "KernelProfilingInfo",
6170 "enumerant" : "None",
6174 "enumerant" : "CmdExecTime",
6176 "capabilities" : [ "Kernel" ]
6181 "category" : "ValueEnum",
6182 "kind" : "SourceLanguage",
6185 "enumerant" : "Unknown",
6189 "enumerant" : "ESSL",
6193 "enumerant" : "GLSL",
6197 "enumerant" : "OpenCL_C",
6201 "enumerant" : "OpenCL_CPP",
6205 "enumerant" : "HLSL",
6211 "category" : "ValueEnum",
6212 "kind" : "ExecutionModel",
6215 "enumerant" : "Vertex",
6217 "capabilities" : [ "Shader" ]
6220 "enumerant" : "TessellationControl",
6222 "capabilities" : [ "Tessellation" ]
6225 "enumerant" : "TessellationEvaluation",
6227 "capabilities" : [ "Tessellation" ]
6230 "enumerant" : "Geometry",
6232 "capabilities" : [ "Geometry" ]
6235 "enumerant" : "Fragment",
6237 "capabilities" : [ "Shader" ]
6240 "enumerant" : "GLCompute",
6242 "capabilities" : [ "Shader" ]
6245 "enumerant" : "Kernel",
6247 "capabilities" : [ "Kernel" ]
6250 "enumerant" : "TaskNV",
6252 "capabilities" : [ "MeshShadingNV" ]
6255 "enumerant" : "MeshNV",
6257 "capabilities" : [ "MeshShadingNV" ]
6260 "enumerant" : "RayGenerationNV",
6262 "capabilities" : [ "RayTracingNV" ]
6265 "enumerant" : "IntersectionNV",
6267 "capabilities" : [ "RayTracingNV" ]
6270 "enumerant" : "AnyHitNV",
6272 "capabilities" : [ "RayTracingNV" ]
6275 "enumerant" : "ClosestHitNV",
6277 "capabilities" : [ "RayTracingNV" ]
6280 "enumerant" : "MissNV",
6282 "capabilities" : [ "RayTracingNV" ]
6285 "enumerant" : "CallableNV",
6287 "capabilities" : [ "RayTracingNV" ]
6292 "category" : "ValueEnum",
6293 "kind" : "AddressingModel",
6296 "enumerant" : "Logical",
6300 "enumerant" : "Physical32",
6302 "capabilities" : [ "Addresses" ]
6305 "enumerant" : "Physical64",
6307 "capabilities" : [ "Addresses" ]
6310 "enumerant" : "PhysicalStorageBuffer64EXT",
6312 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
6313 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ]
6318 "category" : "ValueEnum",
6319 "kind" : "MemoryModel",
6322 "enumerant" : "Simple",
6324 "capabilities" : [ "Shader" ]
6327 "enumerant" : "GLSL450",
6329 "capabilities" : [ "Shader" ]
6332 "enumerant" : "OpenCL",
6334 "capabilities" : [ "Kernel" ]
6337 "enumerant" : "VulkanKHR",
6339 "capabilities" : [ "VulkanMemoryModelKHR" ]
6344 "category" : "ValueEnum",
6345 "kind" : "ExecutionMode",
6348 "enumerant" : "Invocations",
6350 "capabilities" : [ "Geometry" ],
6352 { "kind" : "LiteralInteger", "name" : "'Number of <<Invocation,invocations>>'" }
6356 "enumerant" : "SpacingEqual",
6358 "capabilities" : [ "Tessellation" ]
6361 "enumerant" : "SpacingFractionalEven",
6363 "capabilities" : [ "Tessellation" ]
6366 "enumerant" : "SpacingFractionalOdd",
6368 "capabilities" : [ "Tessellation" ]
6371 "enumerant" : "VertexOrderCw",
6373 "capabilities" : [ "Tessellation" ]
6376 "enumerant" : "VertexOrderCcw",
6378 "capabilities" : [ "Tessellation" ]
6381 "enumerant" : "PixelCenterInteger",
6383 "capabilities" : [ "Shader" ]
6386 "enumerant" : "OriginUpperLeft",
6388 "capabilities" : [ "Shader" ]
6391 "enumerant" : "OriginLowerLeft",
6393 "capabilities" : [ "Shader" ]
6396 "enumerant" : "EarlyFragmentTests",
6398 "capabilities" : [ "Shader" ]
6401 "enumerant" : "PointMode",
6403 "capabilities" : [ "Tessellation" ]
6406 "enumerant" : "Xfb",
6408 "capabilities" : [ "TransformFeedback" ]
6411 "enumerant" : "DepthReplacing",
6413 "capabilities" : [ "Shader" ]
6416 "enumerant" : "DepthGreater",
6418 "capabilities" : [ "Shader" ]
6421 "enumerant" : "DepthLess",
6423 "capabilities" : [ "Shader" ]
6426 "enumerant" : "DepthUnchanged",
6428 "capabilities" : [ "Shader" ]
6431 "enumerant" : "LocalSize",
6434 { "kind" : "LiteralInteger", "name" : "'x size'" },
6435 { "kind" : "LiteralInteger", "name" : "'y size'" },
6436 { "kind" : "LiteralInteger", "name" : "'z size'" }
6440 "enumerant" : "LocalSizeHint",
6442 "capabilities" : [ "Kernel" ],
6444 { "kind" : "LiteralInteger", "name" : "'x size'" },
6445 { "kind" : "LiteralInteger", "name" : "'y size'" },
6446 { "kind" : "LiteralInteger", "name" : "'z size'" }
6450 "enumerant" : "InputPoints",
6452 "capabilities" : [ "Geometry" ]
6455 "enumerant" : "InputLines",
6457 "capabilities" : [ "Geometry" ]
6460 "enumerant" : "InputLinesAdjacency",
6462 "capabilities" : [ "Geometry" ]
6465 "enumerant" : "Triangles",
6467 "capabilities" : [ "Geometry", "Tessellation" ]
6470 "enumerant" : "InputTrianglesAdjacency",
6472 "capabilities" : [ "Geometry" ]
6475 "enumerant" : "Quads",
6477 "capabilities" : [ "Tessellation" ]
6480 "enumerant" : "Isolines",
6482 "capabilities" : [ "Tessellation" ]
6485 "enumerant" : "OutputVertices",
6487 "capabilities" : [ "Geometry", "Tessellation", "MeshShadingNV" ],
6489 { "kind" : "LiteralInteger", "name" : "'Vertex count'" }
6493 "enumerant" : "OutputPoints",
6495 "capabilities" : [ "Geometry", "MeshShadingNV" ]
6498 "enumerant" : "OutputLineStrip",
6500 "capabilities" : [ "Geometry" ]
6503 "enumerant" : "OutputTriangleStrip",
6505 "capabilities" : [ "Geometry" ]
6508 "enumerant" : "VecTypeHint",
6510 "capabilities" : [ "Kernel" ],
6512 { "kind" : "LiteralInteger", "name" : "'Vector type'" }
6516 "enumerant" : "ContractionOff",
6518 "capabilities" : [ "Kernel" ]
6521 "enumerant" : "Initializer",
6523 "capabilities" : [ "Kernel" ],
6527 "enumerant" : "Finalizer",
6529 "capabilities" : [ "Kernel" ],
6533 "enumerant" : "SubgroupSize",
6535 "capabilities" : [ "SubgroupDispatch" ],
6537 { "kind" : "LiteralInteger", "name" : "'Subgroup Size'" }
6542 "enumerant" : "SubgroupsPerWorkgroup",
6544 "capabilities" : [ "SubgroupDispatch" ],
6546 { "kind" : "LiteralInteger", "name" : "'Subgroups Per Workgroup'" }
6551 "enumerant" : "SubgroupsPerWorkgroupId",
6553 "capabilities" : [ "SubgroupDispatch" ],
6555 { "kind" : "IdRef", "name" : "'Subgroups Per Workgroup'" }
6560 "enumerant" : "LocalSizeId",
6563 { "kind" : "IdRef", "name" : "'x size'" },
6564 { "kind" : "IdRef", "name" : "'y size'" },
6565 { "kind" : "IdRef", "name" : "'z size'" }
6570 "enumerant" : "LocalSizeHintId",
6572 "capabilities" : [ "Kernel" ],
6574 { "kind" : "IdRef", "name" : "'Local Size Hint'" }
6579 "enumerant" : "PostDepthCoverage",
6581 "capabilities" : [ "SampleMaskPostDepthCoverage" ],
6582 "extensions" : [ "SPV_KHR_post_depth_coverage" ],
6586 "enumerant" : "DenormPreserve",
6588 "capabilities" : [ "DenormPreserve" ],
6589 "extensions" : [ "SPV_KHR_float_controls" ],
6591 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6596 "enumerant" : "DenormFlushToZero",
6598 "capabilities" : [ "DenormFlushToZero" ],
6599 "extensions" : [ "SPV_KHR_float_controls" ],
6601 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6606 "enumerant" : "SignedZeroInfNanPreserve",
6608 "capabilities" : [ "SignedZeroInfNanPreserve" ],
6609 "extensions" : [ "SPV_KHR_float_controls" ],
6611 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6616 "enumerant" : "RoundingModeRTE",
6618 "capabilities" : [ "RoundingModeRTE" ],
6619 "extensions" : [ "SPV_KHR_float_controls" ],
6621 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6626 "enumerant" : "RoundingModeRTZ",
6628 "capabilities" : [ "RoundingModeRTZ" ],
6629 "extensions" : [ "SPV_KHR_float_controls" ],
6631 { "kind" : "LiteralInteger", "name" : "'Target Width'" }
6636 "enumerant" : "StencilRefReplacingEXT",
6638 "capabilities" : [ "StencilExportEXT" ],
6639 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
6643 "enumerant" : "OutputLinesNV",
6645 "capabilities" : [ "MeshShadingNV" ],
6646 "extensions" : [ "SPV_NV_mesh_shader" ],
6650 "enumerant" : "OutputPrimitivesNV",
6652 "capabilities" : [ "MeshShadingNV" ],
6654 { "kind" : "LiteralInteger", "name" : "'Primitive count'" }
6656 "extensions" : [ "SPV_NV_mesh_shader" ],
6660 "enumerant" : "DerivativeGroupQuadsNV",
6662 "capabilities" : [ "ComputeDerivativeGroupQuadsNV" ],
6663 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
6667 "enumerant" : "DerivativeGroupLinearNV",
6669 "capabilities" : [ "ComputeDerivativeGroupLinearNV" ],
6670 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
6674 "enumerant" : "OutputTrianglesNV",
6676 "capabilities" : [ "MeshShadingNV" ],
6677 "extensions" : [ "SPV_NV_mesh_shader" ],
6681 "enumerant" : "PixelInterlockOrderedEXT",
6683 "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
6684 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6688 "enumerant" : "PixelInterlockUnorderedEXT",
6690 "capabilities" : [ "FragmentShaderPixelInterlockEXT" ],
6691 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6695 "enumerant" : "SampleInterlockOrderedEXT",
6697 "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
6698 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6702 "enumerant" : "SampleInterlockUnorderedEXT",
6704 "capabilities" : [ "FragmentShaderSampleInterlockEXT" ],
6705 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6709 "enumerant" : "ShadingRateInterlockOrderedEXT",
6711 "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
6712 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6716 "enumerant" : "ShadingRateInterlockUnorderedEXT",
6718 "capabilities" : [ "FragmentShaderShadingRateInterlockEXT" ],
6719 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
6725 "category" : "ValueEnum",
6726 "kind" : "StorageClass",
6729 "enumerant" : "UniformConstant",
6733 "enumerant" : "Input",
6737 "enumerant" : "Uniform",
6739 "capabilities" : [ "Shader" ]
6742 "enumerant" : "Output",
6744 "capabilities" : [ "Shader" ]
6747 "enumerant" : "Workgroup",
6751 "enumerant" : "CrossWorkgroup",
6755 "enumerant" : "Private",
6757 "capabilities" : [ "Shader" ]
6760 "enumerant" : "Function",
6764 "enumerant" : "Generic",
6766 "capabilities" : [ "GenericPointer" ]
6769 "enumerant" : "PushConstant",
6771 "capabilities" : [ "Shader" ]
6774 "enumerant" : "AtomicCounter",
6776 "capabilities" : [ "AtomicStorage" ]
6779 "enumerant" : "Image",
6783 "enumerant" : "StorageBuffer",
6786 "SPV_KHR_storage_buffer_storage_class",
6787 "SPV_KHR_variable_pointers"
6789 "capabilities" : [ "Shader" ],
6793 "enumerant" : "CallableDataNV",
6795 "extensions" : [ "SPV_NV_ray_tracing" ],
6796 "capabilities" : [ "RayTracingNV" ]
6799 "enumerant" : "IncomingCallableDataNV",
6801 "extensions" : [ "SPV_NV_ray_tracing" ],
6802 "capabilities" : [ "RayTracingNV" ]
6805 "enumerant" : "RayPayloadNV",
6807 "extensions" : [ "SPV_NV_ray_tracing" ],
6808 "capabilities" : [ "RayTracingNV" ]
6811 "enumerant" : "HitAttributeNV",
6813 "extensions" : [ "SPV_NV_ray_tracing" ],
6814 "capabilities" : [ "RayTracingNV" ]
6817 "enumerant" : "IncomingRayPayloadNV",
6819 "extensions" : [ "SPV_NV_ray_tracing" ],
6820 "capabilities" : [ "RayTracingNV" ]
6823 "enumerant" : "ShaderRecordBufferNV",
6825 "extensions" : [ "SPV_NV_ray_tracing" ],
6826 "capabilities" : [ "RayTracingNV" ]
6829 "enumerant" : "PhysicalStorageBufferEXT",
6831 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
6832 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ]
6837 "category" : "ValueEnum",
6843 "capabilities" : [ "Sampled1D", "Image1D" ]
6848 "capabilities" : [ "Shader", "Kernel", "ImageMSArray" ]
6855 "enumerant" : "Cube",
6857 "capabilities" : [ "Shader", "ImageCubeArray" ]
6860 "enumerant" : "Rect",
6862 "capabilities" : [ "SampledRect", "ImageRect" ]
6865 "enumerant" : "Buffer",
6867 "capabilities" : [ "SampledBuffer", "ImageBuffer" ]
6870 "enumerant" : "SubpassData",
6872 "capabilities" : [ "InputAttachment" ]
6877 "category" : "ValueEnum",
6878 "kind" : "SamplerAddressingMode",
6881 "enumerant" : "None",
6883 "capabilities" : [ "Kernel" ]
6886 "enumerant" : "ClampToEdge",
6888 "capabilities" : [ "Kernel" ]
6891 "enumerant" : "Clamp",
6893 "capabilities" : [ "Kernel" ]
6896 "enumerant" : "Repeat",
6898 "capabilities" : [ "Kernel" ]
6901 "enumerant" : "RepeatMirrored",
6903 "capabilities" : [ "Kernel" ]
6908 "category" : "ValueEnum",
6909 "kind" : "SamplerFilterMode",
6912 "enumerant" : "Nearest",
6914 "capabilities" : [ "Kernel" ]
6917 "enumerant" : "Linear",
6919 "capabilities" : [ "Kernel" ]
6924 "category" : "ValueEnum",
6925 "kind" : "ImageFormat",
6928 "enumerant" : "Unknown",
6932 "enumerant" : "Rgba32f",
6934 "capabilities" : [ "Shader" ]
6937 "enumerant" : "Rgba16f",
6939 "capabilities" : [ "Shader" ]
6942 "enumerant" : "R32f",
6944 "capabilities" : [ "Shader" ]
6947 "enumerant" : "Rgba8",
6949 "capabilities" : [ "Shader" ]
6952 "enumerant" : "Rgba8Snorm",
6954 "capabilities" : [ "Shader" ]
6957 "enumerant" : "Rg32f",
6959 "capabilities" : [ "StorageImageExtendedFormats" ]
6962 "enumerant" : "Rg16f",
6964 "capabilities" : [ "StorageImageExtendedFormats" ]
6967 "enumerant" : "R11fG11fB10f",
6969 "capabilities" : [ "StorageImageExtendedFormats" ]
6972 "enumerant" : "R16f",
6974 "capabilities" : [ "StorageImageExtendedFormats" ]
6977 "enumerant" : "Rgba16",
6979 "capabilities" : [ "StorageImageExtendedFormats" ]
6982 "enumerant" : "Rgb10A2",
6984 "capabilities" : [ "StorageImageExtendedFormats" ]
6987 "enumerant" : "Rg16",
6989 "capabilities" : [ "StorageImageExtendedFormats" ]
6992 "enumerant" : "Rg8",
6994 "capabilities" : [ "StorageImageExtendedFormats" ]
6997 "enumerant" : "R16",
6999 "capabilities" : [ "StorageImageExtendedFormats" ]
7004 "capabilities" : [ "StorageImageExtendedFormats" ]
7007 "enumerant" : "Rgba16Snorm",
7009 "capabilities" : [ "StorageImageExtendedFormats" ]
7012 "enumerant" : "Rg16Snorm",
7014 "capabilities" : [ "StorageImageExtendedFormats" ]
7017 "enumerant" : "Rg8Snorm",
7019 "capabilities" : [ "StorageImageExtendedFormats" ]
7022 "enumerant" : "R16Snorm",
7024 "capabilities" : [ "StorageImageExtendedFormats" ]
7027 "enumerant" : "R8Snorm",
7029 "capabilities" : [ "StorageImageExtendedFormats" ]
7032 "enumerant" : "Rgba32i",
7034 "capabilities" : [ "Shader" ]
7037 "enumerant" : "Rgba16i",
7039 "capabilities" : [ "Shader" ]
7042 "enumerant" : "Rgba8i",
7044 "capabilities" : [ "Shader" ]
7047 "enumerant" : "R32i",
7049 "capabilities" : [ "Shader" ]
7052 "enumerant" : "Rg32i",
7054 "capabilities" : [ "StorageImageExtendedFormats" ]
7057 "enumerant" : "Rg16i",
7059 "capabilities" : [ "StorageImageExtendedFormats" ]
7062 "enumerant" : "Rg8i",
7064 "capabilities" : [ "StorageImageExtendedFormats" ]
7067 "enumerant" : "R16i",
7069 "capabilities" : [ "StorageImageExtendedFormats" ]
7072 "enumerant" : "R8i",
7074 "capabilities" : [ "StorageImageExtendedFormats" ]
7077 "enumerant" : "Rgba32ui",
7079 "capabilities" : [ "Shader" ]
7082 "enumerant" : "Rgba16ui",
7084 "capabilities" : [ "Shader" ]
7087 "enumerant" : "Rgba8ui",
7089 "capabilities" : [ "Shader" ]
7092 "enumerant" : "R32ui",
7094 "capabilities" : [ "Shader" ]
7097 "enumerant" : "Rgb10a2ui",
7099 "capabilities" : [ "StorageImageExtendedFormats" ]
7102 "enumerant" : "Rg32ui",
7104 "capabilities" : [ "StorageImageExtendedFormats" ]
7107 "enumerant" : "Rg16ui",
7109 "capabilities" : [ "StorageImageExtendedFormats" ]
7112 "enumerant" : "Rg8ui",
7114 "capabilities" : [ "StorageImageExtendedFormats" ]
7117 "enumerant" : "R16ui",
7119 "capabilities" : [ "StorageImageExtendedFormats" ]
7122 "enumerant" : "R8ui",
7124 "capabilities" : [ "StorageImageExtendedFormats" ]
7129 "category" : "ValueEnum",
7130 "kind" : "ImageChannelOrder",
7135 "capabilities" : [ "Kernel" ]
7140 "capabilities" : [ "Kernel" ]
7145 "capabilities" : [ "Kernel" ]
7150 "capabilities" : [ "Kernel" ]
7153 "enumerant" : "RGB",
7155 "capabilities" : [ "Kernel" ]
7158 "enumerant" : "RGBA",
7160 "capabilities" : [ "Kernel" ]
7163 "enumerant" : "BGRA",
7165 "capabilities" : [ "Kernel" ]
7168 "enumerant" : "ARGB",
7170 "capabilities" : [ "Kernel" ]
7173 "enumerant" : "Intensity",
7175 "capabilities" : [ "Kernel" ]
7178 "enumerant" : "Luminance",
7180 "capabilities" : [ "Kernel" ]
7185 "capabilities" : [ "Kernel" ]
7188 "enumerant" : "RGx",
7190 "capabilities" : [ "Kernel" ]
7193 "enumerant" : "RGBx",
7195 "capabilities" : [ "Kernel" ]
7198 "enumerant" : "Depth",
7200 "capabilities" : [ "Kernel" ]
7203 "enumerant" : "DepthStencil",
7205 "capabilities" : [ "Kernel" ]
7208 "enumerant" : "sRGB",
7210 "capabilities" : [ "Kernel" ]
7213 "enumerant" : "sRGBx",
7215 "capabilities" : [ "Kernel" ]
7218 "enumerant" : "sRGBA",
7220 "capabilities" : [ "Kernel" ]
7223 "enumerant" : "sBGRA",
7225 "capabilities" : [ "Kernel" ]
7228 "enumerant" : "ABGR",
7230 "capabilities" : [ "Kernel" ]
7235 "category" : "ValueEnum",
7236 "kind" : "ImageChannelDataType",
7239 "enumerant" : "SnormInt8",
7241 "capabilities" : [ "Kernel" ]
7244 "enumerant" : "SnormInt16",
7246 "capabilities" : [ "Kernel" ]
7249 "enumerant" : "UnormInt8",
7251 "capabilities" : [ "Kernel" ]
7254 "enumerant" : "UnormInt16",
7256 "capabilities" : [ "Kernel" ]
7259 "enumerant" : "UnormShort565",
7261 "capabilities" : [ "Kernel" ]
7264 "enumerant" : "UnormShort555",
7266 "capabilities" : [ "Kernel" ]
7269 "enumerant" : "UnormInt101010",
7271 "capabilities" : [ "Kernel" ]
7274 "enumerant" : "SignedInt8",
7276 "capabilities" : [ "Kernel" ]
7279 "enumerant" : "SignedInt16",
7281 "capabilities" : [ "Kernel" ]
7284 "enumerant" : "SignedInt32",
7286 "capabilities" : [ "Kernel" ]
7289 "enumerant" : "UnsignedInt8",
7291 "capabilities" : [ "Kernel" ]
7294 "enumerant" : "UnsignedInt16",
7296 "capabilities" : [ "Kernel" ]
7299 "enumerant" : "UnsignedInt32",
7301 "capabilities" : [ "Kernel" ]
7304 "enumerant" : "HalfFloat",
7306 "capabilities" : [ "Kernel" ]
7309 "enumerant" : "Float",
7311 "capabilities" : [ "Kernel" ]
7314 "enumerant" : "UnormInt24",
7316 "capabilities" : [ "Kernel" ]
7319 "enumerant" : "UnormInt101010_2",
7321 "capabilities" : [ "Kernel" ]
7326 "category" : "ValueEnum",
7327 "kind" : "FPRoundingMode",
7330 "enumerant" : "RTE",
7334 "enumerant" : "RTZ",
7338 "enumerant" : "RTP",
7342 "enumerant" : "RTN",
7348 "category" : "ValueEnum",
7349 "kind" : "LinkageType",
7352 "enumerant" : "Export",
7354 "capabilities" : [ "Linkage" ]
7357 "enumerant" : "Import",
7359 "capabilities" : [ "Linkage" ]
7364 "category" : "ValueEnum",
7365 "kind" : "AccessQualifier",
7368 "enumerant" : "ReadOnly",
7370 "capabilities" : [ "Kernel" ]
7373 "enumerant" : "WriteOnly",
7375 "capabilities" : [ "Kernel" ]
7378 "enumerant" : "ReadWrite",
7380 "capabilities" : [ "Kernel" ]
7385 "category" : "ValueEnum",
7386 "kind" : "FunctionParameterAttribute",
7389 "enumerant" : "Zext",
7391 "capabilities" : [ "Kernel" ]
7394 "enumerant" : "Sext",
7396 "capabilities" : [ "Kernel" ]
7399 "enumerant" : "ByVal",
7401 "capabilities" : [ "Kernel" ]
7404 "enumerant" : "Sret",
7406 "capabilities" : [ "Kernel" ]
7409 "enumerant" : "NoAlias",
7411 "capabilities" : [ "Kernel" ]
7414 "enumerant" : "NoCapture",
7416 "capabilities" : [ "Kernel" ]
7419 "enumerant" : "NoWrite",
7421 "capabilities" : [ "Kernel" ]
7424 "enumerant" : "NoReadWrite",
7426 "capabilities" : [ "Kernel" ]
7431 "category" : "ValueEnum",
7432 "kind" : "Decoration",
7435 "enumerant" : "RelaxedPrecision",
7437 "capabilities" : [ "Shader" ]
7440 "enumerant" : "SpecId",
7442 "capabilities" : [ "Shader", "Kernel" ],
7444 { "kind" : "LiteralInteger", "name" : "'Specialization Constant ID'" }
7448 "enumerant" : "Block",
7450 "capabilities" : [ "Shader" ]
7453 "enumerant" : "BufferBlock",
7455 "capabilities" : [ "Shader" ],
7456 "lastVersion" : "1.3"
7459 "enumerant" : "RowMajor",
7461 "capabilities" : [ "Matrix" ]
7464 "enumerant" : "ColMajor",
7466 "capabilities" : [ "Matrix" ]
7469 "enumerant" : "ArrayStride",
7471 "capabilities" : [ "Shader" ],
7473 { "kind" : "LiteralInteger", "name" : "'Array Stride'" }
7477 "enumerant" : "MatrixStride",
7479 "capabilities" : [ "Matrix" ],
7481 { "kind" : "LiteralInteger", "name" : "'Matrix Stride'" }
7485 "enumerant" : "GLSLShared",
7487 "capabilities" : [ "Shader" ]
7490 "enumerant" : "GLSLPacked",
7492 "capabilities" : [ "Shader" ]
7495 "enumerant" : "CPacked",
7497 "capabilities" : [ "Kernel" ]
7500 "enumerant" : "BuiltIn",
7503 { "kind" : "BuiltIn" }
7507 "enumerant" : "NoPerspective",
7509 "capabilities" : [ "Shader" ]
7512 "enumerant" : "Flat",
7514 "capabilities" : [ "Shader" ]
7517 "enumerant" : "Patch",
7519 "capabilities" : [ "Tessellation" ]
7522 "enumerant" : "Centroid",
7524 "capabilities" : [ "Shader" ]
7527 "enumerant" : "Sample",
7529 "capabilities" : [ "SampleRateShading" ]
7532 "enumerant" : "Invariant",
7534 "capabilities" : [ "Shader" ]
7537 "enumerant" : "Restrict",
7541 "enumerant" : "Aliased",
7545 "enumerant" : "Volatile",
7549 "enumerant" : "Constant",
7551 "capabilities" : [ "Kernel" ]
7554 "enumerant" : "Coherent",
7558 "enumerant" : "NonWritable",
7562 "enumerant" : "NonReadable",
7566 "enumerant" : "Uniform",
7568 "capabilities" : [ "Shader" ]
7571 "enumerant" : "UniformId",
7573 "capabilities" : [ "Shader" ],
7575 { "kind" : "IdScope", "name" : "'Execution'" }
7580 "enumerant" : "SaturatedConversion",
7582 "capabilities" : [ "Kernel" ]
7585 "enumerant" : "Stream",
7587 "capabilities" : [ "GeometryStreams" ],
7589 { "kind" : "LiteralInteger", "name" : "'Stream Number'" }
7593 "enumerant" : "Location",
7595 "capabilities" : [ "Shader" ],
7597 { "kind" : "LiteralInteger", "name" : "'Location'" }
7601 "enumerant" : "Component",
7603 "capabilities" : [ "Shader" ],
7605 { "kind" : "LiteralInteger", "name" : "'Component'" }
7609 "enumerant" : "Index",
7611 "capabilities" : [ "Shader" ],
7613 { "kind" : "LiteralInteger", "name" : "'Index'" }
7617 "enumerant" : "Binding",
7619 "capabilities" : [ "Shader" ],
7621 { "kind" : "LiteralInteger", "name" : "'Binding Point'" }
7625 "enumerant" : "DescriptorSet",
7627 "capabilities" : [ "Shader" ],
7629 { "kind" : "LiteralInteger", "name" : "'Descriptor Set'" }
7633 "enumerant" : "Offset",
7635 "capabilities" : [ "Shader" ],
7637 { "kind" : "LiteralInteger", "name" : "'Byte Offset'" }
7641 "enumerant" : "XfbBuffer",
7643 "capabilities" : [ "TransformFeedback" ],
7645 { "kind" : "LiteralInteger", "name" : "'XFB Buffer Number'" }
7649 "enumerant" : "XfbStride",
7651 "capabilities" : [ "TransformFeedback" ],
7653 { "kind" : "LiteralInteger", "name" : "'XFB Stride'" }
7657 "enumerant" : "FuncParamAttr",
7659 "capabilities" : [ "Kernel" ],
7661 { "kind" : "FunctionParameterAttribute", "name" : "'Function Parameter Attribute'" }
7665 "enumerant" : "FPRoundingMode",
7668 { "kind" : "FPRoundingMode", "name" : "'Floating-Point Rounding Mode'" }
7672 "enumerant" : "FPFastMathMode",
7674 "capabilities" : [ "Kernel" ],
7676 { "kind" : "FPFastMathMode", "name" : "'Fast-Math Mode'" }
7680 "enumerant" : "LinkageAttributes",
7682 "capabilities" : [ "Linkage" ],
7684 { "kind" : "LiteralString", "name" : "'Name'" },
7685 { "kind" : "LinkageType", "name" : "'Linkage Type'" }
7689 "enumerant" : "NoContraction",
7691 "capabilities" : [ "Shader" ]
7694 "enumerant" : "InputAttachmentIndex",
7696 "capabilities" : [ "InputAttachment" ],
7698 { "kind" : "LiteralInteger", "name" : "'Attachment Index'" }
7702 "enumerant" : "Alignment",
7704 "capabilities" : [ "Kernel" ],
7706 { "kind" : "LiteralInteger", "name" : "'Alignment'" }
7710 "enumerant" : "MaxByteOffset",
7712 "capabilities" : [ "Addresses" ],
7714 { "kind" : "LiteralInteger", "name" : "'Max Byte Offset'" }
7719 "enumerant" : "AlignmentId",
7721 "capabilities" : [ "Kernel" ],
7723 { "kind" : "IdRef", "name" : "'Alignment'" }
7728 "enumerant" : "MaxByteOffsetId",
7730 "capabilities" : [ "Addresses" ],
7732 { "kind" : "IdRef", "name" : "'Max Byte Offset'" }
7737 "enumerant" : "NoSignedWrap",
7739 "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
7743 "enumerant" : "NoUnsignedWrap",
7745 "extensions" : [ "SPV_KHR_no_integer_wrap_decoration" ],
7749 "enumerant" : "ExplicitInterpAMD",
7751 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
7755 "enumerant" : "OverrideCoverageNV",
7757 "capabilities" : [ "SampleMaskOverrideCoverageNV" ],
7758 "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
7762 "enumerant" : "PassthroughNV",
7764 "capabilities" : [ "GeometryShaderPassthroughNV" ],
7765 "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
7769 "enumerant" : "ViewportRelativeNV",
7771 "capabilities" : [ "ShaderViewportMaskNV" ],
7775 "enumerant" : "SecondaryViewportRelativeNV",
7777 "capabilities" : [ "ShaderStereoViewNV" ],
7778 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
7781 { "kind" : "LiteralInteger", "name" : "'Offset'" }
7785 "enumerant" : "PerPrimitiveNV",
7787 "capabilities" : [ "MeshShadingNV" ],
7788 "extensions" : [ "SPV_NV_mesh_shader" ],
7792 "enumerant" : "PerViewNV",
7794 "capabilities" : [ "MeshShadingNV" ],
7795 "extensions" : [ "SPV_NV_mesh_shader" ],
7799 "enumerant" : "PerTaskNV",
7801 "capabilities" : [ "MeshShadingNV" ],
7802 "extensions" : [ "SPV_NV_mesh_shader" ],
7806 "enumerant" : "PerVertexNV",
7808 "capabilities" : [ "FragmentBarycentricNV" ],
7809 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
7813 "enumerant" : "NonUniformEXT",
7815 "capabilities" : [ "ShaderNonUniformEXT" ]
7818 "enumerant" : "CounterBuffer",
7821 { "kind" : "IdRef", "name" : "'Counter Buffer'" }
7826 "enumerant" : "HlslCounterBufferGOOGLE",
7829 { "kind" : "IdRef", "name" : "'Counter Buffer'" }
7831 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
7835 "enumerant" : "UserSemantic",
7838 { "kind" : "LiteralString", "name" : "'Semantic'" }
7843 "enumerant" : "HlslSemanticGOOGLE",
7846 { "kind" : "LiteralString", "name" : "'Semantic'" }
7848 "extensions" : [ "SPV_GOOGLE_hlsl_functionality1" ],
7852 "enumerant" : "RestrictPointerEXT",
7854 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
7855 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
7859 "enumerant" : "AliasedPointerEXT",
7861 "capabilities" : [ "PhysicalStorageBufferAddressesEXT" ],
7862 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
7868 "category" : "ValueEnum",
7872 "enumerant" : "Position",
7874 "capabilities" : [ "Shader" ]
7877 "enumerant" : "PointSize",
7879 "capabilities" : [ "Shader" ]
7882 "enumerant" : "ClipDistance",
7884 "capabilities" : [ "ClipDistance" ]
7887 "enumerant" : "CullDistance",
7889 "capabilities" : [ "CullDistance" ]
7892 "enumerant" : "VertexId",
7894 "capabilities" : [ "Shader" ]
7897 "enumerant" : "InstanceId",
7899 "capabilities" : [ "Shader" ]
7902 "enumerant" : "PrimitiveId",
7904 "capabilities" : [ "Geometry", "Tessellation", "RayTracingNV" ]
7907 "enumerant" : "InvocationId",
7909 "capabilities" : [ "Geometry", "Tessellation" ]
7912 "enumerant" : "Layer",
7914 "capabilities" : [ "Geometry" ]
7917 "enumerant" : "ViewportIndex",
7919 "capabilities" : [ "MultiViewport" ]
7922 "enumerant" : "TessLevelOuter",
7924 "capabilities" : [ "Tessellation" ]
7927 "enumerant" : "TessLevelInner",
7929 "capabilities" : [ "Tessellation" ]
7932 "enumerant" : "TessCoord",
7934 "capabilities" : [ "Tessellation" ]
7937 "enumerant" : "PatchVertices",
7939 "capabilities" : [ "Tessellation" ]
7942 "enumerant" : "FragCoord",
7944 "capabilities" : [ "Shader" ]
7947 "enumerant" : "PointCoord",
7949 "capabilities" : [ "Shader" ]
7952 "enumerant" : "FrontFacing",
7954 "capabilities" : [ "Shader" ]
7957 "enumerant" : "SampleId",
7959 "capabilities" : [ "SampleRateShading" ]
7962 "enumerant" : "SamplePosition",
7964 "capabilities" : [ "SampleRateShading" ]
7967 "enumerant" : "SampleMask",
7969 "capabilities" : [ "Shader" ]
7972 "enumerant" : "FragDepth",
7974 "capabilities" : [ "Shader" ]
7977 "enumerant" : "HelperInvocation",
7979 "capabilities" : [ "Shader" ]
7982 "enumerant" : "NumWorkgroups",
7986 "enumerant" : "WorkgroupSize",
7990 "enumerant" : "WorkgroupId",
7994 "enumerant" : "LocalInvocationId",
7998 "enumerant" : "GlobalInvocationId",
8002 "enumerant" : "LocalInvocationIndex",
8006 "enumerant" : "WorkDim",
8008 "capabilities" : [ "Kernel" ]
8011 "enumerant" : "GlobalSize",
8013 "capabilities" : [ "Kernel" ]
8016 "enumerant" : "EnqueuedWorkgroupSize",
8018 "capabilities" : [ "Kernel" ]
8021 "enumerant" : "GlobalOffset",
8023 "capabilities" : [ "Kernel" ]
8026 "enumerant" : "GlobalLinearId",
8028 "capabilities" : [ "Kernel" ]
8031 "enumerant" : "SubgroupSize",
8033 "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
8036 "enumerant" : "SubgroupMaxSize",
8038 "capabilities" : [ "Kernel" ]
8041 "enumerant" : "NumSubgroups",
8043 "capabilities" : [ "Kernel", "GroupNonUniform" ]
8046 "enumerant" : "NumEnqueuedSubgroups",
8048 "capabilities" : [ "Kernel" ]
8051 "enumerant" : "SubgroupId",
8053 "capabilities" : [ "Kernel", "GroupNonUniform" ]
8056 "enumerant" : "SubgroupLocalInvocationId",
8058 "capabilities" : [ "Kernel", "GroupNonUniform", "SubgroupBallotKHR" ]
8061 "enumerant" : "VertexIndex",
8063 "capabilities" : [ "Shader" ]
8066 "enumerant" : "InstanceIndex",
8068 "capabilities" : [ "Shader" ]
8071 "enumerant" : "SubgroupEqMask",
8073 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8077 "enumerant" : "SubgroupGeMask",
8079 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8083 "enumerant" : "SubgroupGtMask",
8085 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8089 "enumerant" : "SubgroupLeMask",
8091 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8095 "enumerant" : "SubgroupLtMask",
8097 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8101 "enumerant" : "SubgroupEqMaskKHR",
8103 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8104 "extensions" : [ "SPV_KHR_shader_ballot" ],
8108 "enumerant" : "SubgroupGeMaskKHR",
8110 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8111 "extensions" : [ "SPV_KHR_shader_ballot" ],
8115 "enumerant" : "SubgroupGtMaskKHR",
8117 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8118 "extensions" : [ "SPV_KHR_shader_ballot" ],
8122 "enumerant" : "SubgroupLeMaskKHR",
8124 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8125 "extensions" : [ "SPV_KHR_shader_ballot" ],
8129 "enumerant" : "SubgroupLtMaskKHR",
8131 "capabilities" : [ "SubgroupBallotKHR", "GroupNonUniformBallot" ],
8132 "extensions" : [ "SPV_KHR_shader_ballot" ],
8136 "enumerant" : "BaseVertex",
8138 "capabilities" : [ "DrawParameters" ],
8139 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
8143 "enumerant" : "BaseInstance",
8145 "capabilities" : [ "DrawParameters" ],
8146 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
8150 "enumerant" : "DrawIndex",
8152 "capabilities" : [ "DrawParameters", "MeshShadingNV" ],
8153 "extensions" : [ "SPV_KHR_shader_draw_parameters", "SPV_NV_mesh_shader" ],
8157 "enumerant" : "DeviceIndex",
8159 "capabilities" : [ "DeviceGroup" ],
8160 "extensions" : [ "SPV_KHR_device_group" ],
8164 "enumerant" : "ViewIndex",
8166 "capabilities" : [ "MultiView" ],
8167 "extensions" : [ "SPV_KHR_multiview" ],
8171 "enumerant" : "BaryCoordNoPerspAMD",
8173 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8177 "enumerant" : "BaryCoordNoPerspCentroidAMD",
8179 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8183 "enumerant" : "BaryCoordNoPerspSampleAMD",
8185 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8189 "enumerant" : "BaryCoordSmoothAMD",
8191 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8195 "enumerant" : "BaryCoordSmoothCentroidAMD",
8197 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8201 "enumerant" : "BaryCoordSmoothSampleAMD",
8203 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8207 "enumerant" : "BaryCoordPullModelAMD",
8209 "extensions" : [ "SPV_AMD_shader_explicit_vertex_parameter" ],
8213 "enumerant" : "FragStencilRefEXT",
8215 "capabilities" : [ "StencilExportEXT" ],
8216 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
8220 "enumerant" : "ViewportMaskNV",
8222 "capabilities" : [ "ShaderViewportMaskNV", "MeshShadingNV" ],
8223 "extensions" : [ "SPV_NV_viewport_array2", "SPV_NV_mesh_shader" ],
8227 "enumerant" : "SecondaryPositionNV",
8229 "capabilities" : [ "ShaderStereoViewNV" ],
8230 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
8234 "enumerant" : "SecondaryViewportMaskNV",
8236 "capabilities" : [ "ShaderStereoViewNV" ],
8237 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
8241 "enumerant" : "PositionPerViewNV",
8243 "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
8244 "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
8248 "enumerant" : "ViewportMaskPerViewNV",
8250 "capabilities" : [ "PerViewAttributesNV", "MeshShadingNV" ],
8251 "extensions" : [ "SPV_NVX_multiview_per_view_attributes", "SPV_NV_mesh_shader" ],
8255 "enumerant" : "FullyCoveredEXT",
8257 "capabilities" : [ "FragmentFullyCoveredEXT" ],
8258 "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
8262 "enumerant" : "TaskCountNV",
8264 "capabilities" : [ "MeshShadingNV" ],
8265 "extensions" : [ "SPV_NV_mesh_shader" ],
8269 "enumerant" : "PrimitiveCountNV",
8271 "capabilities" : [ "MeshShadingNV" ],
8272 "extensions" : [ "SPV_NV_mesh_shader" ],
8276 "enumerant" : "PrimitiveIndicesNV",
8278 "capabilities" : [ "MeshShadingNV" ],
8279 "extensions" : [ "SPV_NV_mesh_shader" ],
8283 "enumerant" : "ClipDistancePerViewNV",
8285 "capabilities" : [ "MeshShadingNV" ],
8286 "extensions" : [ "SPV_NV_mesh_shader" ],
8290 "enumerant" : "CullDistancePerViewNV",
8292 "capabilities" : [ "MeshShadingNV" ],
8293 "extensions" : [ "SPV_NV_mesh_shader" ],
8297 "enumerant" : "LayerPerViewNV",
8299 "capabilities" : [ "MeshShadingNV" ],
8300 "extensions" : [ "SPV_NV_mesh_shader" ],
8304 "enumerant" : "MeshViewCountNV",
8306 "capabilities" : [ "MeshShadingNV" ],
8307 "extensions" : [ "SPV_NV_mesh_shader" ],
8311 "enumerant" : "MeshViewIndicesNV",
8313 "capabilities" : [ "MeshShadingNV" ],
8314 "extensions" : [ "SPV_NV_mesh_shader" ],
8318 "enumerant" : "BaryCoordNV",
8320 "capabilities" : [ "FragmentBarycentricNV" ],
8321 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
8325 "enumerant" : "BaryCoordNoPerspNV",
8327 "capabilities" : [ "FragmentBarycentricNV" ],
8328 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
8332 "enumerant" : "FragSizeEXT",
8334 "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
8335 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
8339 "enumerant" : "FragmentSizeNV",
8341 "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
8342 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
8346 "enumerant" : "FragInvocationCountEXT",
8348 "capabilities" : [ "FragmentDensityEXT", "ShadingRateNV" ],
8349 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
8353 "enumerant" : "InvocationsPerPixelNV",
8355 "capabilities" : [ "ShadingRateNV", "FragmentDensityEXT" ],
8356 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
8360 "enumerant" : "LaunchIdNV",
8362 "capabilities" : [ "RayTracingNV" ],
8363 "extensions" : [ "SPV_NV_ray_tracing" ]
8366 "enumerant" : "LaunchSizeNV",
8368 "capabilities" : [ "RayTracingNV" ],
8369 "extensions" : [ "SPV_NV_ray_tracing" ]
8372 "enumerant" : "WorldRayOriginNV",
8374 "capabilities" : [ "RayTracingNV" ],
8375 "extensions" : [ "SPV_NV_ray_tracing" ]
8378 "enumerant" : "WorldRayDirectionNV",
8380 "capabilities" : [ "RayTracingNV" ],
8381 "extensions" : [ "SPV_NV_ray_tracing" ]
8384 "enumerant" : "ObjectRayOriginNV",
8386 "capabilities" : [ "RayTracingNV" ],
8387 "extensions" : [ "SPV_NV_ray_tracing" ]
8390 "enumerant" : "ObjectRayDirectionNV",
8392 "capabilities" : [ "RayTracingNV" ],
8393 "extensions" : [ "SPV_NV_ray_tracing" ]
8396 "enumerant" : "RayTminNV",
8398 "capabilities" : [ "RayTracingNV" ],
8399 "extensions" : [ "SPV_NV_ray_tracing" ]
8402 "enumerant" : "RayTmaxNV",
8404 "capabilities" : [ "RayTracingNV" ],
8405 "extensions" : [ "SPV_NV_ray_tracing" ]
8408 "enumerant" : "InstanceCustomIndexNV",
8410 "capabilities" : [ "RayTracingNV" ],
8411 "extensions" : [ "SPV_NV_ray_tracing" ]
8414 "enumerant" : "ObjectToWorldNV",
8416 "capabilities" : [ "RayTracingNV" ],
8417 "extensions" : [ "SPV_NV_ray_tracing" ]
8420 "enumerant" : "WorldToObjectNV",
8422 "capabilities" : [ "RayTracingNV" ],
8423 "extensions" : [ "SPV_NV_ray_tracing" ]
8426 "enumerant" : "HitTNV",
8428 "capabilities" : [ "RayTracingNV" ],
8429 "extensions" : [ "SPV_NV_ray_tracing" ]
8432 "enumerant" : "HitKindNV",
8434 "capabilities" : [ "RayTracingNV" ],
8435 "extensions" : [ "SPV_NV_ray_tracing" ]
8438 "enumerant" : "IncomingRayFlagsNV",
8440 "capabilities" : [ "RayTracingNV" ],
8441 "extensions" : [ "SPV_NV_ray_tracing" ]
8444 "enumerant" : "WarpsPerSMNV",
8446 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8447 "extensions" : [ "SPV_NV_shader_sm_builtins" ]
8450 "enumerant" : "SMCountNV",
8452 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8453 "extensions" : [ "SPV_NV_shader_sm_builtins" ]
8456 "enumerant" : "WarpIDNV",
8458 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8459 "extensions" : [ "SPV_NV_shader_sm_builtins" ]
8462 "enumerant" : "SMIDNV",
8464 "capabilities" : [ "ShaderSMBuiltinsNV" ],
8465 "extensions" : [ "SPV_NV_shader_sm_builtins" ]
8470 "category" : "ValueEnum",
8474 "enumerant" : "CrossDevice",
8478 "enumerant" : "Device",
8482 "enumerant" : "Workgroup",
8486 "enumerant" : "Subgroup",
8490 "enumerant" : "Invocation",
8494 "enumerant" : "QueueFamilyKHR",
8496 "capabilities" : [ "VulkanMemoryModelKHR" ]
8501 "category" : "ValueEnum",
8502 "kind" : "GroupOperation",
8505 "enumerant" : "Reduce",
8507 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
8510 "enumerant" : "InclusiveScan",
8512 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
8515 "enumerant" : "ExclusiveScan",
8517 "capabilities" : [ "Kernel", "GroupNonUniformArithmetic", "GroupNonUniformBallot" ]
8520 "enumerant" : "ClusteredReduce",
8522 "capabilities" : [ "GroupNonUniformClustered" ],
8526 "enumerant" : "PartitionedReduceNV",
8528 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
8529 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
8533 "enumerant" : "PartitionedInclusiveScanNV",
8535 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
8536 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
8540 "enumerant" : "PartitionedExclusiveScanNV",
8542 "capabilities" : [ "GroupNonUniformPartitionedNV" ],
8543 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
8549 "category" : "ValueEnum",
8550 "kind" : "KernelEnqueueFlags",
8553 "enumerant" : "NoWait",
8555 "capabilities" : [ "Kernel" ]
8558 "enumerant" : "WaitKernel",
8560 "capabilities" : [ "Kernel" ]
8563 "enumerant" : "WaitWorkGroup",
8565 "capabilities" : [ "Kernel" ]
8570 "category" : "ValueEnum",
8571 "kind" : "Capability",
8574 "enumerant" : "Matrix",
8578 "enumerant" : "Shader",
8580 "capabilities" : [ "Matrix" ]
8583 "enumerant" : "Geometry",
8585 "capabilities" : [ "Shader" ]
8588 "enumerant" : "Tessellation",
8590 "capabilities" : [ "Shader" ]
8593 "enumerant" : "Addresses",
8597 "enumerant" : "Linkage",
8601 "enumerant" : "Kernel",
8605 "enumerant" : "Vector16",
8607 "capabilities" : [ "Kernel" ]
8610 "enumerant" : "Float16Buffer",
8612 "capabilities" : [ "Kernel" ]
8615 "enumerant" : "Float16",
8619 "enumerant" : "Float64",
8623 "enumerant" : "Int64",
8627 "enumerant" : "Int64Atomics",
8629 "capabilities" : [ "Int64" ]
8632 "enumerant" : "ImageBasic",
8634 "capabilities" : [ "Kernel" ]
8637 "enumerant" : "ImageReadWrite",
8639 "capabilities" : [ "ImageBasic" ]
8642 "enumerant" : "ImageMipmap",
8644 "capabilities" : [ "ImageBasic" ]
8647 "enumerant" : "Pipes",
8649 "capabilities" : [ "Kernel" ]
8652 "enumerant" : "Groups",
8654 "extensions" : [ "SPV_AMD_shader_ballot" ]
8657 "enumerant" : "DeviceEnqueue",
8659 "capabilities" : [ "Kernel" ]
8662 "enumerant" : "LiteralSampler",
8664 "capabilities" : [ "Kernel" ]
8667 "enumerant" : "AtomicStorage",
8669 "capabilities" : [ "Shader" ]
8672 "enumerant" : "Int16",
8676 "enumerant" : "TessellationPointSize",
8678 "capabilities" : [ "Tessellation" ]
8681 "enumerant" : "GeometryPointSize",
8683 "capabilities" : [ "Geometry" ]
8686 "enumerant" : "ImageGatherExtended",
8688 "capabilities" : [ "Shader" ]
8691 "enumerant" : "StorageImageMultisample",
8693 "capabilities" : [ "Shader" ]
8696 "enumerant" : "UniformBufferArrayDynamicIndexing",
8698 "capabilities" : [ "Shader" ]
8701 "enumerant" : "SampledImageArrayDynamicIndexing",
8703 "capabilities" : [ "Shader" ]
8706 "enumerant" : "StorageBufferArrayDynamicIndexing",
8708 "capabilities" : [ "Shader" ]
8711 "enumerant" : "StorageImageArrayDynamicIndexing",
8713 "capabilities" : [ "Shader" ]
8716 "enumerant" : "ClipDistance",
8718 "capabilities" : [ "Shader" ]
8721 "enumerant" : "CullDistance",
8723 "capabilities" : [ "Shader" ]
8726 "enumerant" : "ImageCubeArray",
8728 "capabilities" : [ "SampledCubeArray" ]
8731 "enumerant" : "SampleRateShading",
8733 "capabilities" : [ "Shader" ]
8736 "enumerant" : "ImageRect",
8738 "capabilities" : [ "SampledRect" ]
8741 "enumerant" : "SampledRect",
8743 "capabilities" : [ "Shader" ]
8746 "enumerant" : "GenericPointer",
8748 "capabilities" : [ "Addresses" ]
8751 "enumerant" : "Int8",
8755 "enumerant" : "InputAttachment",
8757 "capabilities" : [ "Shader" ]
8760 "enumerant" : "SparseResidency",
8762 "capabilities" : [ "Shader" ]
8765 "enumerant" : "MinLod",
8767 "capabilities" : [ "Shader" ]
8770 "enumerant" : "Sampled1D",
8774 "enumerant" : "Image1D",
8776 "capabilities" : [ "Sampled1D" ]
8779 "enumerant" : "SampledCubeArray",
8781 "capabilities" : [ "Shader" ]
8784 "enumerant" : "SampledBuffer",
8788 "enumerant" : "ImageBuffer",
8790 "capabilities" : [ "SampledBuffer" ]
8793 "enumerant" : "ImageMSArray",
8795 "capabilities" : [ "Shader" ]
8798 "enumerant" : "StorageImageExtendedFormats",
8800 "capabilities" : [ "Shader" ]
8803 "enumerant" : "ImageQuery",
8805 "capabilities" : [ "Shader" ]
8808 "enumerant" : "DerivativeControl",
8810 "capabilities" : [ "Shader" ]
8813 "enumerant" : "InterpolationFunction",
8815 "capabilities" : [ "Shader" ]
8818 "enumerant" : "TransformFeedback",
8820 "capabilities" : [ "Shader" ]
8823 "enumerant" : "GeometryStreams",
8825 "capabilities" : [ "Geometry" ]
8828 "enumerant" : "StorageImageReadWithoutFormat",
8830 "capabilities" : [ "Shader" ]
8833 "enumerant" : "StorageImageWriteWithoutFormat",
8835 "capabilities" : [ "Shader" ]
8838 "enumerant" : "MultiViewport",
8840 "capabilities" : [ "Geometry" ]
8843 "enumerant" : "SubgroupDispatch",
8845 "capabilities" : [ "DeviceEnqueue" ],
8849 "enumerant" : "NamedBarrier",
8851 "capabilities" : [ "Kernel" ],
8855 "enumerant" : "PipeStorage",
8857 "capabilities" : [ "Pipes" ],
8861 "enumerant" : "GroupNonUniform",
8866 "enumerant" : "GroupNonUniformVote",
8868 "capabilities" : [ "GroupNonUniform" ],
8872 "enumerant" : "GroupNonUniformArithmetic",
8874 "capabilities" : [ "GroupNonUniform" ],
8878 "enumerant" : "GroupNonUniformBallot",
8880 "capabilities" : [ "GroupNonUniform" ],
8884 "enumerant" : "GroupNonUniformShuffle",
8886 "capabilities" : [ "GroupNonUniform" ],
8890 "enumerant" : "GroupNonUniformShuffleRelative",
8892 "capabilities" : [ "GroupNonUniform" ],
8896 "enumerant" : "GroupNonUniformClustered",
8898 "capabilities" : [ "GroupNonUniform" ],
8902 "enumerant" : "GroupNonUniformQuad",
8904 "capabilities" : [ "GroupNonUniform" ],
8908 "enumerant" : "SubgroupBallotKHR",
8910 "extensions" : [ "SPV_KHR_shader_ballot" ],
8914 "enumerant" : "DrawParameters",
8916 "capabilities" : [ "Shader" ],
8917 "extensions" : [ "SPV_KHR_shader_draw_parameters" ],
8921 "enumerant" : "SubgroupVoteKHR",
8923 "extensions" : [ "SPV_KHR_subgroup_vote" ],
8927 "enumerant" : "StorageBuffer16BitAccess",
8929 "extensions" : [ "SPV_KHR_16bit_storage" ],
8933 "enumerant" : "StorageUniformBufferBlock16",
8935 "extensions" : [ "SPV_KHR_16bit_storage" ],
8939 "enumerant" : "UniformAndStorageBuffer16BitAccess",
8942 "StorageBuffer16BitAccess",
8943 "StorageUniformBufferBlock16"
8945 "extensions" : [ "SPV_KHR_16bit_storage" ],
8949 "enumerant" : "StorageUniform16",
8952 "StorageBuffer16BitAccess",
8953 "StorageUniformBufferBlock16"
8955 "extensions" : [ "SPV_KHR_16bit_storage" ],
8959 "enumerant" : "StoragePushConstant16",
8961 "extensions" : [ "SPV_KHR_16bit_storage" ],
8965 "enumerant" : "StorageInputOutput16",
8967 "extensions" : [ "SPV_KHR_16bit_storage" ],
8971 "enumerant" : "DeviceGroup",
8973 "extensions" : [ "SPV_KHR_device_group" ],
8977 "enumerant" : "MultiView",
8979 "capabilities" : [ "Shader" ],
8980 "extensions" : [ "SPV_KHR_multiview" ],
8984 "enumerant" : "VariablePointersStorageBuffer",
8986 "capabilities" : [ "Shader" ],
8987 "extensions" : [ "SPV_KHR_variable_pointers" ],
8991 "enumerant" : "VariablePointers",
8993 "capabilities" : [ "VariablePointersStorageBuffer" ],
8994 "extensions" : [ "SPV_KHR_variable_pointers" ],
8998 "enumerant" : "AtomicStorageOps",
9000 "extensions" : [ "SPV_KHR_shader_atomic_counter_ops" ],
9004 "enumerant" : "SampleMaskPostDepthCoverage",
9006 "extensions" : [ "SPV_KHR_post_depth_coverage" ],
9010 "enumerant" : "StorageBuffer8BitAccess",
9012 "extensions" : [ "SPV_KHR_8bit_storage" ],
9016 "enumerant" : "UniformAndStorageBuffer8BitAccess",
9018 "capabilities" : [ "StorageBuffer8BitAccess" ],
9019 "extensions" : [ "SPV_KHR_8bit_storage" ],
9023 "enumerant" : "StoragePushConstant8",
9025 "extensions" : [ "SPV_KHR_8bit_storage" ],
9029 "enumerant" : "DenormPreserve",
9031 "extensions" : [ "SPV_KHR_float_controls" ],
9035 "enumerant" : "DenormFlushToZero",
9037 "extensions" : [ "SPV_KHR_float_controls" ],
9041 "enumerant" : "SignedZeroInfNanPreserve",
9043 "extensions" : [ "SPV_KHR_float_controls" ],
9047 "enumerant" : "RoundingModeRTE",
9049 "extensions" : [ "SPV_KHR_float_controls" ],
9053 "enumerant" : "RoundingModeRTZ",
9055 "extensions" : [ "SPV_KHR_float_controls" ],
9059 "enumerant" : "Float16ImageAMD",
9061 "capabilities" : [ "Shader" ],
9062 "extensions" : [ "SPV_AMD_gpu_shader_half_float_fetch" ],
9066 "enumerant" : "ImageGatherBiasLodAMD",
9068 "capabilities" : [ "Shader" ],
9069 "extensions" : [ "SPV_AMD_texture_gather_bias_lod" ],
9073 "enumerant" : "FragmentMaskAMD",
9075 "capabilities" : [ "Shader" ],
9076 "extensions" : [ "SPV_AMD_shader_fragment_mask" ],
9080 "enumerant" : "StencilExportEXT",
9082 "capabilities" : [ "Shader" ],
9083 "extensions" : [ "SPV_EXT_shader_stencil_export" ],
9087 "enumerant" : "ImageReadWriteLodAMD",
9089 "capabilities" : [ "Shader" ],
9090 "extensions" : [ "SPV_AMD_shader_image_load_store_lod" ],
9094 "enumerant" : "SampleMaskOverrideCoverageNV",
9096 "capabilities" : [ "SampleRateShading" ],
9097 "extensions" : [ "SPV_NV_sample_mask_override_coverage" ],
9101 "enumerant" : "GeometryShaderPassthroughNV",
9103 "capabilities" : [ "Geometry" ],
9104 "extensions" : [ "SPV_NV_geometry_shader_passthrough" ],
9108 "enumerant" : "ShaderViewportIndexLayerEXT",
9110 "capabilities" : [ "MultiViewport" ],
9111 "extensions" : [ "SPV_EXT_shader_viewport_index_layer" ],
9115 "enumerant" : "ShaderViewportIndexLayerNV",
9117 "capabilities" : [ "MultiViewport" ],
9118 "extensions" : [ "SPV_NV_viewport_array2" ],
9122 "enumerant" : "ShaderViewportMaskNV",
9124 "capabilities" : [ "ShaderViewportIndexLayerNV" ],
9125 "extensions" : [ "SPV_NV_viewport_array2" ],
9129 "enumerant" : "ShaderStereoViewNV",
9131 "capabilities" : [ "ShaderViewportMaskNV" ],
9132 "extensions" : [ "SPV_NV_stereo_view_rendering" ],
9136 "enumerant" : "PerViewAttributesNV",
9138 "capabilities" : [ "MultiView" ],
9139 "extensions" : [ "SPV_NVX_multiview_per_view_attributes" ],
9143 "enumerant" : "FragmentFullyCoveredEXT",
9145 "capabilities" : [ "Shader" ],
9146 "extensions" : [ "SPV_EXT_fragment_fully_covered" ],
9150 "enumerant" : "MeshShadingNV",
9152 "capabilities" : [ "Shader" ],
9153 "extensions" : [ "SPV_NV_mesh_shader" ],
9157 "enumerant" : "ShaderNonUniformEXT",
9159 "capabilities" : [ "Shader" ],
9160 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9164 "enumerant" : "RuntimeDescriptorArrayEXT",
9166 "capabilities" : [ "Shader" ],
9167 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9171 "enumerant" : "InputAttachmentArrayDynamicIndexingEXT",
9173 "capabilities" : [ "InputAttachment" ],
9174 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9178 "enumerant" : "UniformTexelBufferArrayDynamicIndexingEXT",
9180 "capabilities" : [ "SampledBuffer" ],
9181 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9185 "enumerant" : "StorageTexelBufferArrayDynamicIndexingEXT",
9187 "capabilities" : [ "ImageBuffer" ],
9188 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9192 "enumerant" : "UniformBufferArrayNonUniformIndexingEXT",
9194 "capabilities" : [ "ShaderNonUniformEXT" ],
9195 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9199 "enumerant" : "SampledImageArrayNonUniformIndexingEXT",
9201 "capabilities" : [ "ShaderNonUniformEXT" ],
9202 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9206 "enumerant" : "StorageBufferArrayNonUniformIndexingEXT",
9208 "capabilities" : [ "ShaderNonUniformEXT" ],
9209 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9213 "enumerant" : "StorageImageArrayNonUniformIndexingEXT",
9215 "capabilities" : [ "ShaderNonUniformEXT" ],
9216 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9220 "enumerant" : "InputAttachmentArrayNonUniformIndexingEXT",
9222 "capabilities" : [ "InputAttachment", "ShaderNonUniformEXT" ],
9223 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9227 "enumerant" : "UniformTexelBufferArrayNonUniformIndexingEXT",
9229 "capabilities" : [ "SampledBuffer", "ShaderNonUniformEXT" ],
9230 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9234 "enumerant" : "StorageTexelBufferArrayNonUniformIndexingEXT",
9236 "capabilities" : [ "ImageBuffer", "ShaderNonUniformEXT" ],
9237 "extensions" : [ "SPV_EXT_descriptor_indexing" ],
9241 "enumerant" : "RayTracingNV",
9243 "capabilities" : [ "Shader" ],
9244 "extensions" : [ "SPV_NV_ray_tracing" ],
9248 "enumerant" : "SubgroupShuffleINTEL",
9250 "extensions" : [ "SPV_INTEL_subgroups" ],
9254 "enumerant" : "SubgroupBufferBlockIOINTEL",
9256 "extensions" : [ "SPV_INTEL_subgroups" ],
9260 "enumerant" : "SubgroupImageBlockIOINTEL",
9262 "extensions" : [ "SPV_INTEL_subgroups" ],
9266 "enumerant" : "SubgroupImageMediaBlockIOINTEL",
9268 "extensions" : [ "SPV_INTEL_media_block_io" ],
9272 "enumerant" : "IntegerFunctions2INTEL",
9274 "capabilities" : [ "Shader" ],
9275 "extensions" : [ "SPV_INTEL_shader_integer_functions2" ],
9279 "enumerant" : "SubgroupAvcMotionEstimationINTEL",
9281 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
9285 "enumerant" : "SubgroupAvcMotionEstimationIntraINTEL",
9287 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
9291 "enumerant" : "SubgroupAvcMotionEstimationChromaINTEL",
9293 "extensions" : [ "SPV_INTEL_device_side_avc_motion_estimation" ],
9297 "enumerant" : "GroupNonUniformPartitionedNV",
9299 "extensions" : [ "SPV_NV_shader_subgroup_partitioned" ],
9303 "enumerant" : "VulkanMemoryModelKHR",
9305 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9309 "enumerant" : "VulkanMemoryModelDeviceScopeKHR",
9311 "extensions" : [ "SPV_KHR_vulkan_memory_model" ],
9315 "enumerant" : "ImageFootprintNV",
9317 "extensions" : [ "SPV_NV_shader_image_footprint" ],
9321 "enumerant" : "FragmentBarycentricNV",
9323 "extensions" : [ "SPV_NV_fragment_shader_barycentric" ],
9327 "enumerant" : "ComputeDerivativeGroupQuadsNV",
9329 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
9333 "enumerant" : "ComputeDerivativeGroupLinearNV",
9335 "extensions" : [ "SPV_NV_compute_shader_derivatives" ],
9339 "enumerant" : "FragmentDensityEXT",
9341 "capabilities" : [ "Shader" ],
9342 "extensions" : [ "SPV_EXT_fragment_invocation_density", "SPV_NV_shading_rate" ],
9346 "enumerant" : "ShadingRateNV",
9348 "capabilities" : [ "Shader" ],
9349 "extensions" : [ "SPV_NV_shading_rate", "SPV_EXT_fragment_invocation_density" ],
9353 "enumerant" : "PhysicalStorageBufferAddressesEXT",
9355 "capabilities" : [ "Shader" ],
9356 "extensions" : [ "SPV_EXT_physical_storage_buffer" ],
9360 "enumerant" : "CooperativeMatrixNV",
9362 "capabilities" : [ "Shader" ],
9363 "extensions" : [ "SPV_NV_cooperative_matrix" ],
9367 "enumerant" : "FragmentShaderSampleInterlockEXT",
9369 "capabilities" : [ "Shader" ],
9370 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9374 "enumerant" : "FragmentShaderShadingRateInterlockEXT",
9376 "capabilities" : [ "Shader" ],
9377 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9381 "enumerant" : "FragmentShaderPixelInterlockEXT",
9383 "capabilities" : [ "Shader" ],
9384 "extensions" : [ "SPV_EXT_fragment_shader_interlock" ],
9388 "enumerant" : "ShaderSMBuiltinsNV",
9390 "capabilities" : [ "Shader" ],
9391 "extensions" : [ "SPV_NV_shader_sm_builtins" ],
9398 "kind" : "IdResultType",
9399 "doc" : "Reference to an <id> representing the result's type of the enclosing instruction"
9403 "kind" : "IdResult",
9404 "doc" : "Definition of an <id> representing the result of the enclosing instruction"
9408 "kind" : "IdMemorySemantics",
9409 "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the MemorySemantics operand kind"
9414 "doc" : "Reference to an <id> representing a 32-bit integer that is a mask from the Scope operand kind"
9419 "doc" : "Reference to an <id>"
9422 "category" : "Literal",
9423 "kind" : "LiteralInteger",
9424 "doc" : "An integer consuming one or more words"
9427 "category" : "Literal",
9428 "kind" : "LiteralString",
9429 "doc" : "A null-terminated stream of characters consuming an integral number of words"
9432 "category" : "Literal",
9433 "kind" : "LiteralContextDependentNumber",
9434 "doc" : "A literal number whose size and format are determined by a previous operand in the enclosing instruction"
9437 "category" : "Literal",
9438 "kind" : "LiteralExtInstInteger",
9439 "doc" : "A 32-bit unsigned integer indicating which instruction to use and determining the layout of following operands (for OpExtInst)"
9442 "category" : "Literal",
9443 "kind" : "LiteralSpecConstantOpInteger",
9444 "doc" : "An opcode indicating the operation to be performed and determining the layout of following operands (for OpSpecConstantOp)"
9447 "category" : "Composite",
9448 "kind" : "PairLiteralIntegerIdRef",
9449 "bases" : [ "LiteralInteger", "IdRef" ]
9452 "category" : "Composite",
9453 "kind" : "PairIdRefLiteralInteger",
9454 "bases" : [ "IdRef", "LiteralInteger" ]
9457 "category" : "Composite",
9458 "kind" : "PairIdRefIdRef",
9459 "bases" : [ "IdRef", "IdRef" ]