1#[doc = "All operand kinds in the SPIR-V grammar."]
6#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
7#[allow(clippy::upper_case_acronyms)]
8pub enum OperandKind {
9 ImageOperands,
10 FPFastMathMode,
11 SelectionControl,
12 LoopControl,
13 FunctionControl,
14 MemorySemantics,
15 MemoryAccess,
16 KernelProfilingInfo,
17 RayFlags,
18 FragmentShadingRate,
19 SourceLanguage,
20 ExecutionModel,
21 AddressingModel,
22 MemoryModel,
23 ExecutionMode,
24 StorageClass,
25 Dim,
26 SamplerAddressingMode,
27 SamplerFilterMode,
28 ImageFormat,
29 ImageChannelOrder,
30 ImageChannelDataType,
31 FPRoundingMode,
32 FPDenormMode,
33 QuantizationModes,
34 FPOperationMode,
35 OverflowModes,
36 LinkageType,
37 AccessQualifier,
38 HostAccessQualifier,
39 FunctionParameterAttribute,
40 Decoration,
41 BuiltIn,
42 Scope,
43 GroupOperation,
44 KernelEnqueueFlags,
45 Capability,
46 RayQueryIntersection,
47 RayQueryCommittedIntersectionType,
48 RayQueryCandidateIntersectionType,
49 PackedVectorFormat,
50 CooperativeMatrixOperands,
51 CooperativeMatrixLayout,
52 CooperativeMatrixUse,
53 InitializationModeQualifier,
54 LoadCacheControl,
55 StoreCacheControl,
56 IdResultType,
57 IdResult,
58 IdMemorySemantics,
59 IdScope,
60 IdRef,
61 LiteralInteger,
62 LiteralString,
63 LiteralFloat,
64 LiteralContextDependentNumber,
65 LiteralExtInstInteger,
66 LiteralSpecConstantOpInteger,
67 PairLiteralIntegerIdRef,
68 PairIdRefLiteralInteger,
69 PairIdRefIdRef,
70}
71static INSTRUCTION_TABLE: &[Instruction<'static>] = &[
72 inst!(Nop, [], [], []),
73 inst!(Undef, [], [], [(IdResultType, One), (IdResult, One)]),
74 inst!(SourceContinued, [], [], [(LiteralString, One)]),
75 inst!(
76 Source,
77 [],
78 [],
79 [
80 (SourceLanguage, One),
81 (LiteralInteger, One),
82 (IdRef, ZeroOrOne),
83 (LiteralString, ZeroOrOne)
84 ]
85 ),
86 inst!(SourceExtension, [], [], [(LiteralString, One)]),
87 inst!(Name, [], [], [(IdRef, One), (LiteralString, One)]),
88 inst!(
89 MemberName,
90 [],
91 [],
92 [(IdRef, One), (LiteralInteger, One), (LiteralString, One)]
93 ),
94 inst!(String, [], [], [(IdResult, One), (LiteralString, One)]),
95 inst!(
96 Line,
97 [],
98 [],
99 [(IdRef, One), (LiteralInteger, One), (LiteralInteger, One)]
100 ),
101 inst!(Extension, [], [], [(LiteralString, One)]),
102 inst!(
103 ExtInstImport,
104 [],
105 [],
106 [(IdResult, One), (LiteralString, One)]
107 ),
108 inst!(
109 ExtInst,
110 [],
111 [],
112 [
113 (IdResultType, One),
114 (IdResult, One),
115 (IdRef, One),
116 (LiteralExtInstInteger, One),
117 (IdRef, ZeroOrMore)
118 ]
119 ),
120 inst!(
121 MemoryModel,
122 [],
123 [],
124 [(AddressingModel, One), (MemoryModel, One)]
125 ),
126 inst!(
127 EntryPoint,
128 [],
129 [],
130 [
131 (ExecutionModel, One),
132 (IdRef, One),
133 (LiteralString, One),
134 (IdRef, ZeroOrMore)
135 ]
136 ),
137 inst!(ExecutionMode, [], [], [(IdRef, One), (ExecutionMode, One)]),
138 inst!(Capability, [], [], [(Capability, One)]),
139 inst!(TypeVoid, [], [], [(IdResult, One)]),
140 inst!(TypeBool, [], [], [(IdResult, One)]),
141 inst!(
142 TypeInt,
143 [],
144 [],
145 [
146 (IdResult, One),
147 (LiteralInteger, One),
148 (LiteralInteger, One)
149 ]
150 ),
151 inst!(TypeFloat, [], [], [(IdResult, One), (LiteralInteger, One)]),
152 inst!(
153 TypeVector,
154 [],
155 [],
156 [(IdResult, One), (IdRef, One), (LiteralInteger, One)]
157 ),
158 inst!(
159 TypeMatrix,
160 [Matrix],
161 [],
162 [(IdResult, One), (IdRef, One), (LiteralInteger, One)]
163 ),
164 inst!(
165 TypeImage,
166 [],
167 [],
168 [
169 (IdResult, One),
170 (IdRef, One),
171 (Dim, One),
172 (LiteralInteger, One),
173 (LiteralInteger, One),
174 (LiteralInteger, One),
175 (LiteralInteger, One),
176 (ImageFormat, One),
177 (AccessQualifier, ZeroOrOne)
178 ]
179 ),
180 inst!(TypeSampler, [], [], [(IdResult, One)]),
181 inst!(TypeSampledImage, [], [], [(IdResult, One), (IdRef, One)]),
182 inst!(
183 TypeArray,
184 [],
185 [],
186 [(IdResult, One), (IdRef, One), (IdRef, One)]
187 ),
188 inst!(
189 TypeRuntimeArray,
190 [Shader],
191 [],
192 [(IdResult, One), (IdRef, One)]
193 ),
194 inst!(TypeStruct, [], [], [(IdResult, One), (IdRef, ZeroOrMore)]),
195 inst!(
196 TypeOpaque,
197 [Kernel],
198 [],
199 [(IdResult, One), (LiteralString, One)]
200 ),
201 inst!(
202 TypePointer,
203 [],
204 [],
205 [(IdResult, One), (StorageClass, One), (IdRef, One)]
206 ),
207 inst!(
208 TypeFunction,
209 [],
210 [],
211 [(IdResult, One), (IdRef, One), (IdRef, ZeroOrMore)]
212 ),
213 inst!(TypeEvent, [Kernel], [], [(IdResult, One)]),
214 inst!(TypeDeviceEvent, [DeviceEnqueue], [], [(IdResult, One)]),
215 inst!(TypeReserveId, [Pipes], [], [(IdResult, One)]),
216 inst!(TypeQueue, [DeviceEnqueue], [], [(IdResult, One)]),
217 inst!(
218 TypePipe,
219 [Pipes],
220 [],
221 [(IdResult, One), (AccessQualifier, One)]
222 ),
223 inst!(
224 TypeForwardPointer,
225 [Addresses, PhysicalStorageBufferAddresses],
226 [],
227 [(IdRef, One), (StorageClass, One)]
228 ),
229 inst!(ConstantTrue, [], [], [(IdResultType, One), (IdResult, One)]),
230 inst!(
231 ConstantFalse,
232 [],
233 [],
234 [(IdResultType, One), (IdResult, One)]
235 ),
236 inst!(
237 Constant,
238 [],
239 [],
240 [
241 (IdResultType, One),
242 (IdResult, One),
243 (LiteralContextDependentNumber, One)
244 ]
245 ),
246 inst!(
247 ConstantComposite,
248 [],
249 [],
250 [(IdResultType, One), (IdResult, One), (IdRef, ZeroOrMore)]
251 ),
252 inst!(
253 ConstantSampler,
254 [LiteralSampler],
255 [],
256 [
257 (IdResultType, One),
258 (IdResult, One),
259 (SamplerAddressingMode, One),
260 (LiteralInteger, One),
261 (SamplerFilterMode, One)
262 ]
263 ),
264 inst!(ConstantNull, [], [], [(IdResultType, One), (IdResult, One)]),
265 inst!(
266 SpecConstantTrue,
267 [],
268 [],
269 [(IdResultType, One), (IdResult, One)]
270 ),
271 inst!(
272 SpecConstantFalse,
273 [],
274 [],
275 [(IdResultType, One), (IdResult, One)]
276 ),
277 inst!(
278 SpecConstant,
279 [],
280 [],
281 [
282 (IdResultType, One),
283 (IdResult, One),
284 (LiteralContextDependentNumber, One)
285 ]
286 ),
287 inst!(
288 SpecConstantComposite,
289 [],
290 [],
291 [(IdResultType, One), (IdResult, One), (IdRef, ZeroOrMore)]
292 ),
293 inst!(
294 SpecConstantOp,
295 [],
296 [],
297 [
298 (IdResultType, One),
299 (IdResult, One),
300 (LiteralSpecConstantOpInteger, One)
301 ]
302 ),
303 inst!(
304 Function,
305 [],
306 [],
307 [
308 (IdResultType, One),
309 (IdResult, One),
310 (FunctionControl, One),
311 (IdRef, One)
312 ]
313 ),
314 inst!(
315 FunctionParameter,
316 [],
317 [],
318 [(IdResultType, One), (IdResult, One)]
319 ),
320 inst!(FunctionEnd, [], [], []),
321 inst!(
322 FunctionCall,
323 [],
324 [],
325 [
326 (IdResultType, One),
327 (IdResult, One),
328 (IdRef, One),
329 (IdRef, ZeroOrMore)
330 ]
331 ),
332 inst!(
333 Variable,
334 [],
335 [],
336 [
337 (IdResultType, One),
338 (IdResult, One),
339 (StorageClass, One),
340 (IdRef, ZeroOrOne)
341 ]
342 ),
343 inst!(
344 ImageTexelPointer,
345 [],
346 [],
347 [
348 (IdResultType, One),
349 (IdResult, One),
350 (IdRef, One),
351 (IdRef, One),
352 (IdRef, One)
353 ]
354 ),
355 inst!(
356 Load,
357 [],
358 [],
359 [
360 (IdResultType, One),
361 (IdResult, One),
362 (IdRef, One),
363 (MemoryAccess, ZeroOrOne)
364 ]
365 ),
366 inst!(
367 Store,
368 [],
369 [],
370 [(IdRef, One), (IdRef, One), (MemoryAccess, ZeroOrOne)]
371 ),
372 inst!(
373 CopyMemory,
374 [],
375 [],
376 [
377 (IdRef, One),
378 (IdRef, One),
379 (MemoryAccess, ZeroOrOne),
380 (MemoryAccess, ZeroOrOne)
381 ]
382 ),
383 inst!(
384 CopyMemorySized,
385 [Addresses],
386 [],
387 [
388 (IdRef, One),
389 (IdRef, One),
390 (IdRef, One),
391 (MemoryAccess, ZeroOrOne),
392 (MemoryAccess, ZeroOrOne)
393 ]
394 ),
395 inst!(
396 AccessChain,
397 [],
398 [],
399 [
400 (IdResultType, One),
401 (IdResult, One),
402 (IdRef, One),
403 (IdRef, ZeroOrMore)
404 ]
405 ),
406 inst!(
407 InBoundsAccessChain,
408 [],
409 [],
410 [
411 (IdResultType, One),
412 (IdResult, One),
413 (IdRef, One),
414 (IdRef, ZeroOrMore)
415 ]
416 ),
417 inst!(
418 PtrAccessChain,
419 [
420 Addresses,
421 VariablePointers,
422 VariablePointersStorageBuffer,
423 PhysicalStorageBufferAddresses
424 ],
425 [],
426 [
427 (IdResultType, One),
428 (IdResult, One),
429 (IdRef, One),
430 (IdRef, One),
431 (IdRef, ZeroOrMore)
432 ]
433 ),
434 inst!(
435 ArrayLength,
436 [Shader],
437 [],
438 [
439 (IdResultType, One),
440 (IdResult, One),
441 (IdRef, One),
442 (LiteralInteger, One)
443 ]
444 ),
445 inst!(
446 GenericPtrMemSemantics,
447 [Kernel],
448 [],
449 [(IdResultType, One), (IdResult, One), (IdRef, One)]
450 ),
451 inst!(
452 InBoundsPtrAccessChain,
453 [Addresses],
454 [],
455 [
456 (IdResultType, One),
457 (IdResult, One),
458 (IdRef, One),
459 (IdRef, One),
460 (IdRef, ZeroOrMore)
461 ]
462 ),
463 inst!(Decorate, [], [], [(IdRef, One), (Decoration, One)]),
464 inst!(
465 MemberDecorate,
466 [],
467 [],
468 [(IdRef, One), (LiteralInteger, One), (Decoration, One)]
469 ),
470 inst!(DecorationGroup, [], [], [(IdResult, One)]),
471 inst!(GroupDecorate, [], [], [(IdRef, One), (IdRef, ZeroOrMore)]),
472 inst!(
473 GroupMemberDecorate,
474 [],
475 [],
476 [(IdRef, One), (PairIdRefLiteralInteger, ZeroOrMore)]
477 ),
478 inst!(
479 VectorExtractDynamic,
480 [],
481 [],
482 [
483 (IdResultType, One),
484 (IdResult, One),
485 (IdRef, One),
486 (IdRef, One)
487 ]
488 ),
489 inst!(
490 VectorInsertDynamic,
491 [],
492 [],
493 [
494 (IdResultType, One),
495 (IdResult, One),
496 (IdRef, One),
497 (IdRef, One),
498 (IdRef, One)
499 ]
500 ),
501 inst!(
502 VectorShuffle,
503 [],
504 [],
505 [
506 (IdResultType, One),
507 (IdResult, One),
508 (IdRef, One),
509 (IdRef, One),
510 (LiteralInteger, ZeroOrMore)
511 ]
512 ),
513 inst!(
514 CompositeConstruct,
515 [],
516 [],
517 [(IdResultType, One), (IdResult, One), (IdRef, ZeroOrMore)]
518 ),
519 inst!(
520 CompositeExtract,
521 [],
522 [],
523 [
524 (IdResultType, One),
525 (IdResult, One),
526 (IdRef, One),
527 (LiteralInteger, ZeroOrMore)
528 ]
529 ),
530 inst!(
531 CompositeInsert,
532 [],
533 [],
534 [
535 (IdResultType, One),
536 (IdResult, One),
537 (IdRef, One),
538 (IdRef, One),
539 (LiteralInteger, ZeroOrMore)
540 ]
541 ),
542 inst!(
543 CopyObject,
544 [],
545 [],
546 [(IdResultType, One), (IdResult, One), (IdRef, One)]
547 ),
548 inst!(
549 Transpose,
550 [Matrix],
551 [],
552 [(IdResultType, One), (IdResult, One), (IdRef, One)]
553 ),
554 inst!(
555 SampledImage,
556 [],
557 [],
558 [
559 (IdResultType, One),
560 (IdResult, One),
561 (IdRef, One),
562 (IdRef, One)
563 ]
564 ),
565 inst!(
566 ImageSampleImplicitLod,
567 [Shader],
568 [],
569 [
570 (IdResultType, One),
571 (IdResult, One),
572 (IdRef, One),
573 (IdRef, One),
574 (ImageOperands, ZeroOrOne)
575 ]
576 ),
577 inst!(
578 ImageSampleExplicitLod,
579 [],
580 [],
581 [
582 (IdResultType, One),
583 (IdResult, One),
584 (IdRef, One),
585 (IdRef, One),
586 (ImageOperands, One)
587 ]
588 ),
589 inst!(
590 ImageSampleDrefImplicitLod,
591 [Shader],
592 [],
593 [
594 (IdResultType, One),
595 (IdResult, One),
596 (IdRef, One),
597 (IdRef, One),
598 (IdRef, One),
599 (ImageOperands, ZeroOrOne)
600 ]
601 ),
602 inst!(
603 ImageSampleDrefExplicitLod,
604 [Shader],
605 [],
606 [
607 (IdResultType, One),
608 (IdResult, One),
609 (IdRef, One),
610 (IdRef, One),
611 (IdRef, One),
612 (ImageOperands, One)
613 ]
614 ),
615 inst!(
616 ImageSampleProjImplicitLod,
617 [Shader],
618 [],
619 [
620 (IdResultType, One),
621 (IdResult, One),
622 (IdRef, One),
623 (IdRef, One),
624 (ImageOperands, ZeroOrOne)
625 ]
626 ),
627 inst!(
628 ImageSampleProjExplicitLod,
629 [Shader],
630 [],
631 [
632 (IdResultType, One),
633 (IdResult, One),
634 (IdRef, One),
635 (IdRef, One),
636 (ImageOperands, One)
637 ]
638 ),
639 inst!(
640 ImageSampleProjDrefImplicitLod,
641 [Shader],
642 [],
643 [
644 (IdResultType, One),
645 (IdResult, One),
646 (IdRef, One),
647 (IdRef, One),
648 (IdRef, One),
649 (ImageOperands, ZeroOrOne)
650 ]
651 ),
652 inst!(
653 ImageSampleProjDrefExplicitLod,
654 [Shader],
655 [],
656 [
657 (IdResultType, One),
658 (IdResult, One),
659 (IdRef, One),
660 (IdRef, One),
661 (IdRef, One),
662 (ImageOperands, One)
663 ]
664 ),
665 inst!(
666 ImageFetch,
667 [],
668 [],
669 [
670 (IdResultType, One),
671 (IdResult, One),
672 (IdRef, One),
673 (IdRef, One),
674 (ImageOperands, ZeroOrOne)
675 ]
676 ),
677 inst!(
678 ImageGather,
679 [Shader],
680 [],
681 [
682 (IdResultType, One),
683 (IdResult, One),
684 (IdRef, One),
685 (IdRef, One),
686 (IdRef, One),
687 (ImageOperands, ZeroOrOne)
688 ]
689 ),
690 inst!(
691 ImageDrefGather,
692 [Shader],
693 [],
694 [
695 (IdResultType, One),
696 (IdResult, One),
697 (IdRef, One),
698 (IdRef, One),
699 (IdRef, One),
700 (ImageOperands, ZeroOrOne)
701 ]
702 ),
703 inst!(
704 ImageRead,
705 [],
706 [],
707 [
708 (IdResultType, One),
709 (IdResult, One),
710 (IdRef, One),
711 (IdRef, One),
712 (ImageOperands, ZeroOrOne)
713 ]
714 ),
715 inst!(
716 ImageWrite,
717 [],
718 [],
719 [
720 (IdRef, One),
721 (IdRef, One),
722 (IdRef, One),
723 (ImageOperands, ZeroOrOne)
724 ]
725 ),
726 inst!(
727 Image,
728 [],
729 [],
730 [(IdResultType, One), (IdResult, One), (IdRef, One)]
731 ),
732 inst!(
733 ImageQueryFormat,
734 [Kernel],
735 [],
736 [(IdResultType, One), (IdResult, One), (IdRef, One)]
737 ),
738 inst!(
739 ImageQueryOrder,
740 [Kernel],
741 [],
742 [(IdResultType, One), (IdResult, One), (IdRef, One)]
743 ),
744 inst!(
745 ImageQuerySizeLod,
746 [Kernel, ImageQuery],
747 [],
748 [
749 (IdResultType, One),
750 (IdResult, One),
751 (IdRef, One),
752 (IdRef, One)
753 ]
754 ),
755 inst!(
756 ImageQuerySize,
757 [Kernel, ImageQuery],
758 [],
759 [(IdResultType, One), (IdResult, One), (IdRef, One)]
760 ),
761 inst!(
762 ImageQueryLod,
763 [ImageQuery],
764 [],
765 [
766 (IdResultType, One),
767 (IdResult, One),
768 (IdRef, One),
769 (IdRef, One)
770 ]
771 ),
772 inst!(
773 ImageQueryLevels,
774 [Kernel, ImageQuery],
775 [],
776 [(IdResultType, One), (IdResult, One), (IdRef, One)]
777 ),
778 inst!(
779 ImageQuerySamples,
780 [Kernel, ImageQuery],
781 [],
782 [(IdResultType, One), (IdResult, One), (IdRef, One)]
783 ),
784 inst!(
785 ConvertFToU,
786 [],
787 [],
788 [(IdResultType, One), (IdResult, One), (IdRef, One)]
789 ),
790 inst!(
791 ConvertFToS,
792 [],
793 [],
794 [(IdResultType, One), (IdResult, One), (IdRef, One)]
795 ),
796 inst!(
797 ConvertSToF,
798 [],
799 [],
800 [(IdResultType, One), (IdResult, One), (IdRef, One)]
801 ),
802 inst!(
803 ConvertUToF,
804 [],
805 [],
806 [(IdResultType, One), (IdResult, One), (IdRef, One)]
807 ),
808 inst!(
809 UConvert,
810 [],
811 [],
812 [(IdResultType, One), (IdResult, One), (IdRef, One)]
813 ),
814 inst!(
815 SConvert,
816 [],
817 [],
818 [(IdResultType, One), (IdResult, One), (IdRef, One)]
819 ),
820 inst!(
821 FConvert,
822 [],
823 [],
824 [(IdResultType, One), (IdResult, One), (IdRef, One)]
825 ),
826 inst!(
827 QuantizeToF16,
828 [],
829 [],
830 [(IdResultType, One), (IdResult, One), (IdRef, One)]
831 ),
832 inst!(
833 ConvertPtrToU,
834 [Addresses, PhysicalStorageBufferAddresses],
835 [],
836 [(IdResultType, One), (IdResult, One), (IdRef, One)]
837 ),
838 inst!(
839 SatConvertSToU,
840 [Kernel],
841 [],
842 [(IdResultType, One), (IdResult, One), (IdRef, One)]
843 ),
844 inst!(
845 SatConvertUToS,
846 [Kernel],
847 [],
848 [(IdResultType, One), (IdResult, One), (IdRef, One)]
849 ),
850 inst!(
851 ConvertUToPtr,
852 [Addresses, PhysicalStorageBufferAddresses],
853 [],
854 [(IdResultType, One), (IdResult, One), (IdRef, One)]
855 ),
856 inst!(
857 PtrCastToGeneric,
858 [Kernel],
859 [],
860 [(IdResultType, One), (IdResult, One), (IdRef, One)]
861 ),
862 inst!(
863 GenericCastToPtr,
864 [Kernel],
865 [],
866 [(IdResultType, One), (IdResult, One), (IdRef, One)]
867 ),
868 inst!(
869 GenericCastToPtrExplicit,
870 [Kernel],
871 [],
872 [
873 (IdResultType, One),
874 (IdResult, One),
875 (IdRef, One),
876 (StorageClass, One)
877 ]
878 ),
879 inst!(
880 Bitcast,
881 [],
882 [],
883 [(IdResultType, One), (IdResult, One), (IdRef, One)]
884 ),
885 inst!(
886 SNegate,
887 [],
888 [],
889 [(IdResultType, One), (IdResult, One), (IdRef, One)]
890 ),
891 inst!(
892 FNegate,
893 [],
894 [],
895 [(IdResultType, One), (IdResult, One), (IdRef, One)]
896 ),
897 inst!(
898 IAdd,
899 [],
900 [],
901 [
902 (IdResultType, One),
903 (IdResult, One),
904 (IdRef, One),
905 (IdRef, One)
906 ]
907 ),
908 inst!(
909 FAdd,
910 [],
911 [],
912 [
913 (IdResultType, One),
914 (IdResult, One),
915 (IdRef, One),
916 (IdRef, One)
917 ]
918 ),
919 inst!(
920 ISub,
921 [],
922 [],
923 [
924 (IdResultType, One),
925 (IdResult, One),
926 (IdRef, One),
927 (IdRef, One)
928 ]
929 ),
930 inst!(
931 FSub,
932 [],
933 [],
934 [
935 (IdResultType, One),
936 (IdResult, One),
937 (IdRef, One),
938 (IdRef, One)
939 ]
940 ),
941 inst!(
942 IMul,
943 [],
944 [],
945 [
946 (IdResultType, One),
947 (IdResult, One),
948 (IdRef, One),
949 (IdRef, One)
950 ]
951 ),
952 inst!(
953 FMul,
954 [],
955 [],
956 [
957 (IdResultType, One),
958 (IdResult, One),
959 (IdRef, One),
960 (IdRef, One)
961 ]
962 ),
963 inst!(
964 UDiv,
965 [],
966 [],
967 [
968 (IdResultType, One),
969 (IdResult, One),
970 (IdRef, One),
971 (IdRef, One)
972 ]
973 ),
974 inst!(
975 SDiv,
976 [],
977 [],
978 [
979 (IdResultType, One),
980 (IdResult, One),
981 (IdRef, One),
982 (IdRef, One)
983 ]
984 ),
985 inst!(
986 FDiv,
987 [],
988 [],
989 [
990 (IdResultType, One),
991 (IdResult, One),
992 (IdRef, One),
993 (IdRef, One)
994 ]
995 ),
996 inst!(
997 UMod,
998 [],
999 [],
1000 [
1001 (IdResultType, One),
1002 (IdResult, One),
1003 (IdRef, One),
1004 (IdRef, One)
1005 ]
1006 ),
1007 inst!(
1008 SRem,
1009 [],
1010 [],
1011 [
1012 (IdResultType, One),
1013 (IdResult, One),
1014 (IdRef, One),
1015 (IdRef, One)
1016 ]
1017 ),
1018 inst!(
1019 SMod,
1020 [],
1021 [],
1022 [
1023 (IdResultType, One),
1024 (IdResult, One),
1025 (IdRef, One),
1026 (IdRef, One)
1027 ]
1028 ),
1029 inst!(
1030 FRem,
1031 [],
1032 [],
1033 [
1034 (IdResultType, One),
1035 (IdResult, One),
1036 (IdRef, One),
1037 (IdRef, One)
1038 ]
1039 ),
1040 inst!(
1041 FMod,
1042 [],
1043 [],
1044 [
1045 (IdResultType, One),
1046 (IdResult, One),
1047 (IdRef, One),
1048 (IdRef, One)
1049 ]
1050 ),
1051 inst!(
1052 VectorTimesScalar,
1053 [],
1054 [],
1055 [
1056 (IdResultType, One),
1057 (IdResult, One),
1058 (IdRef, One),
1059 (IdRef, One)
1060 ]
1061 ),
1062 inst!(
1063 MatrixTimesScalar,
1064 [Matrix],
1065 [],
1066 [
1067 (IdResultType, One),
1068 (IdResult, One),
1069 (IdRef, One),
1070 (IdRef, One)
1071 ]
1072 ),
1073 inst!(
1074 VectorTimesMatrix,
1075 [Matrix],
1076 [],
1077 [
1078 (IdResultType, One),
1079 (IdResult, One),
1080 (IdRef, One),
1081 (IdRef, One)
1082 ]
1083 ),
1084 inst!(
1085 MatrixTimesVector,
1086 [Matrix],
1087 [],
1088 [
1089 (IdResultType, One),
1090 (IdResult, One),
1091 (IdRef, One),
1092 (IdRef, One)
1093 ]
1094 ),
1095 inst!(
1096 MatrixTimesMatrix,
1097 [Matrix],
1098 [],
1099 [
1100 (IdResultType, One),
1101 (IdResult, One),
1102 (IdRef, One),
1103 (IdRef, One)
1104 ]
1105 ),
1106 inst!(
1107 OuterProduct,
1108 [Matrix],
1109 [],
1110 [
1111 (IdResultType, One),
1112 (IdResult, One),
1113 (IdRef, One),
1114 (IdRef, One)
1115 ]
1116 ),
1117 inst!(
1118 Dot,
1119 [],
1120 [],
1121 [
1122 (IdResultType, One),
1123 (IdResult, One),
1124 (IdRef, One),
1125 (IdRef, One)
1126 ]
1127 ),
1128 inst!(
1129 IAddCarry,
1130 [],
1131 [],
1132 [
1133 (IdResultType, One),
1134 (IdResult, One),
1135 (IdRef, One),
1136 (IdRef, One)
1137 ]
1138 ),
1139 inst!(
1140 ISubBorrow,
1141 [],
1142 [],
1143 [
1144 (IdResultType, One),
1145 (IdResult, One),
1146 (IdRef, One),
1147 (IdRef, One)
1148 ]
1149 ),
1150 inst!(
1151 UMulExtended,
1152 [],
1153 [],
1154 [
1155 (IdResultType, One),
1156 (IdResult, One),
1157 (IdRef, One),
1158 (IdRef, One)
1159 ]
1160 ),
1161 inst!(
1162 SMulExtended,
1163 [],
1164 [],
1165 [
1166 (IdResultType, One),
1167 (IdResult, One),
1168 (IdRef, One),
1169 (IdRef, One)
1170 ]
1171 ),
1172 inst!(
1173 Any,
1174 [],
1175 [],
1176 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1177 ),
1178 inst!(
1179 All,
1180 [],
1181 [],
1182 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1183 ),
1184 inst!(
1185 IsNan,
1186 [],
1187 [],
1188 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1189 ),
1190 inst!(
1191 IsInf,
1192 [],
1193 [],
1194 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1195 ),
1196 inst!(
1197 IsFinite,
1198 [Kernel],
1199 [],
1200 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1201 ),
1202 inst!(
1203 IsNormal,
1204 [Kernel],
1205 [],
1206 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1207 ),
1208 inst!(
1209 SignBitSet,
1210 [Kernel],
1211 [],
1212 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1213 ),
1214 inst!(
1215 LessOrGreater,
1216 [Kernel],
1217 [],
1218 [
1219 (IdResultType, One),
1220 (IdResult, One),
1221 (IdRef, One),
1222 (IdRef, One)
1223 ]
1224 ),
1225 inst!(
1226 Ordered,
1227 [Kernel],
1228 [],
1229 [
1230 (IdResultType, One),
1231 (IdResult, One),
1232 (IdRef, One),
1233 (IdRef, One)
1234 ]
1235 ),
1236 inst!(
1237 Unordered,
1238 [Kernel],
1239 [],
1240 [
1241 (IdResultType, One),
1242 (IdResult, One),
1243 (IdRef, One),
1244 (IdRef, One)
1245 ]
1246 ),
1247 inst!(
1248 LogicalEqual,
1249 [],
1250 [],
1251 [
1252 (IdResultType, One),
1253 (IdResult, One),
1254 (IdRef, One),
1255 (IdRef, One)
1256 ]
1257 ),
1258 inst!(
1259 LogicalNotEqual,
1260 [],
1261 [],
1262 [
1263 (IdResultType, One),
1264 (IdResult, One),
1265 (IdRef, One),
1266 (IdRef, One)
1267 ]
1268 ),
1269 inst!(
1270 LogicalOr,
1271 [],
1272 [],
1273 [
1274 (IdResultType, One),
1275 (IdResult, One),
1276 (IdRef, One),
1277 (IdRef, One)
1278 ]
1279 ),
1280 inst!(
1281 LogicalAnd,
1282 [],
1283 [],
1284 [
1285 (IdResultType, One),
1286 (IdResult, One),
1287 (IdRef, One),
1288 (IdRef, One)
1289 ]
1290 ),
1291 inst!(
1292 LogicalNot,
1293 [],
1294 [],
1295 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1296 ),
1297 inst!(
1298 Select,
1299 [],
1300 [],
1301 [
1302 (IdResultType, One),
1303 (IdResult, One),
1304 (IdRef, One),
1305 (IdRef, One),
1306 (IdRef, One)
1307 ]
1308 ),
1309 inst!(
1310 IEqual,
1311 [],
1312 [],
1313 [
1314 (IdResultType, One),
1315 (IdResult, One),
1316 (IdRef, One),
1317 (IdRef, One)
1318 ]
1319 ),
1320 inst!(
1321 INotEqual,
1322 [],
1323 [],
1324 [
1325 (IdResultType, One),
1326 (IdResult, One),
1327 (IdRef, One),
1328 (IdRef, One)
1329 ]
1330 ),
1331 inst!(
1332 UGreaterThan,
1333 [],
1334 [],
1335 [
1336 (IdResultType, One),
1337 (IdResult, One),
1338 (IdRef, One),
1339 (IdRef, One)
1340 ]
1341 ),
1342 inst!(
1343 SGreaterThan,
1344 [],
1345 [],
1346 [
1347 (IdResultType, One),
1348 (IdResult, One),
1349 (IdRef, One),
1350 (IdRef, One)
1351 ]
1352 ),
1353 inst!(
1354 UGreaterThanEqual,
1355 [],
1356 [],
1357 [
1358 (IdResultType, One),
1359 (IdResult, One),
1360 (IdRef, One),
1361 (IdRef, One)
1362 ]
1363 ),
1364 inst!(
1365 SGreaterThanEqual,
1366 [],
1367 [],
1368 [
1369 (IdResultType, One),
1370 (IdResult, One),
1371 (IdRef, One),
1372 (IdRef, One)
1373 ]
1374 ),
1375 inst!(
1376 ULessThan,
1377 [],
1378 [],
1379 [
1380 (IdResultType, One),
1381 (IdResult, One),
1382 (IdRef, One),
1383 (IdRef, One)
1384 ]
1385 ),
1386 inst!(
1387 SLessThan,
1388 [],
1389 [],
1390 [
1391 (IdResultType, One),
1392 (IdResult, One),
1393 (IdRef, One),
1394 (IdRef, One)
1395 ]
1396 ),
1397 inst!(
1398 ULessThanEqual,
1399 [],
1400 [],
1401 [
1402 (IdResultType, One),
1403 (IdResult, One),
1404 (IdRef, One),
1405 (IdRef, One)
1406 ]
1407 ),
1408 inst!(
1409 SLessThanEqual,
1410 [],
1411 [],
1412 [
1413 (IdResultType, One),
1414 (IdResult, One),
1415 (IdRef, One),
1416 (IdRef, One)
1417 ]
1418 ),
1419 inst!(
1420 FOrdEqual,
1421 [],
1422 [],
1423 [
1424 (IdResultType, One),
1425 (IdResult, One),
1426 (IdRef, One),
1427 (IdRef, One)
1428 ]
1429 ),
1430 inst!(
1431 FUnordEqual,
1432 [],
1433 [],
1434 [
1435 (IdResultType, One),
1436 (IdResult, One),
1437 (IdRef, One),
1438 (IdRef, One)
1439 ]
1440 ),
1441 inst!(
1442 FOrdNotEqual,
1443 [],
1444 [],
1445 [
1446 (IdResultType, One),
1447 (IdResult, One),
1448 (IdRef, One),
1449 (IdRef, One)
1450 ]
1451 ),
1452 inst!(
1453 FUnordNotEqual,
1454 [],
1455 [],
1456 [
1457 (IdResultType, One),
1458 (IdResult, One),
1459 (IdRef, One),
1460 (IdRef, One)
1461 ]
1462 ),
1463 inst!(
1464 FOrdLessThan,
1465 [],
1466 [],
1467 [
1468 (IdResultType, One),
1469 (IdResult, One),
1470 (IdRef, One),
1471 (IdRef, One)
1472 ]
1473 ),
1474 inst!(
1475 FUnordLessThan,
1476 [],
1477 [],
1478 [
1479 (IdResultType, One),
1480 (IdResult, One),
1481 (IdRef, One),
1482 (IdRef, One)
1483 ]
1484 ),
1485 inst!(
1486 FOrdGreaterThan,
1487 [],
1488 [],
1489 [
1490 (IdResultType, One),
1491 (IdResult, One),
1492 (IdRef, One),
1493 (IdRef, One)
1494 ]
1495 ),
1496 inst!(
1497 FUnordGreaterThan,
1498 [],
1499 [],
1500 [
1501 (IdResultType, One),
1502 (IdResult, One),
1503 (IdRef, One),
1504 (IdRef, One)
1505 ]
1506 ),
1507 inst!(
1508 FOrdLessThanEqual,
1509 [],
1510 [],
1511 [
1512 (IdResultType, One),
1513 (IdResult, One),
1514 (IdRef, One),
1515 (IdRef, One)
1516 ]
1517 ),
1518 inst!(
1519 FUnordLessThanEqual,
1520 [],
1521 [],
1522 [
1523 (IdResultType, One),
1524 (IdResult, One),
1525 (IdRef, One),
1526 (IdRef, One)
1527 ]
1528 ),
1529 inst!(
1530 FOrdGreaterThanEqual,
1531 [],
1532 [],
1533 [
1534 (IdResultType, One),
1535 (IdResult, One),
1536 (IdRef, One),
1537 (IdRef, One)
1538 ]
1539 ),
1540 inst!(
1541 FUnordGreaterThanEqual,
1542 [],
1543 [],
1544 [
1545 (IdResultType, One),
1546 (IdResult, One),
1547 (IdRef, One),
1548 (IdRef, One)
1549 ]
1550 ),
1551 inst!(
1552 ShiftRightLogical,
1553 [],
1554 [],
1555 [
1556 (IdResultType, One),
1557 (IdResult, One),
1558 (IdRef, One),
1559 (IdRef, One)
1560 ]
1561 ),
1562 inst!(
1563 ShiftRightArithmetic,
1564 [],
1565 [],
1566 [
1567 (IdResultType, One),
1568 (IdResult, One),
1569 (IdRef, One),
1570 (IdRef, One)
1571 ]
1572 ),
1573 inst!(
1574 ShiftLeftLogical,
1575 [],
1576 [],
1577 [
1578 (IdResultType, One),
1579 (IdResult, One),
1580 (IdRef, One),
1581 (IdRef, One)
1582 ]
1583 ),
1584 inst!(
1585 BitwiseOr,
1586 [],
1587 [],
1588 [
1589 (IdResultType, One),
1590 (IdResult, One),
1591 (IdRef, One),
1592 (IdRef, One)
1593 ]
1594 ),
1595 inst!(
1596 BitwiseXor,
1597 [],
1598 [],
1599 [
1600 (IdResultType, One),
1601 (IdResult, One),
1602 (IdRef, One),
1603 (IdRef, One)
1604 ]
1605 ),
1606 inst!(
1607 BitwiseAnd,
1608 [],
1609 [],
1610 [
1611 (IdResultType, One),
1612 (IdResult, One),
1613 (IdRef, One),
1614 (IdRef, One)
1615 ]
1616 ),
1617 inst!(
1618 Not,
1619 [],
1620 [],
1621 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1622 ),
1623 inst!(
1624 BitFieldInsert,
1625 [Shader, BitInstructions],
1626 [],
1627 [
1628 (IdResultType, One),
1629 (IdResult, One),
1630 (IdRef, One),
1631 (IdRef, One),
1632 (IdRef, One),
1633 (IdRef, One)
1634 ]
1635 ),
1636 inst!(
1637 BitFieldSExtract,
1638 [Shader, BitInstructions],
1639 [],
1640 [
1641 (IdResultType, One),
1642 (IdResult, One),
1643 (IdRef, One),
1644 (IdRef, One),
1645 (IdRef, One)
1646 ]
1647 ),
1648 inst!(
1649 BitFieldUExtract,
1650 [Shader, BitInstructions],
1651 [],
1652 [
1653 (IdResultType, One),
1654 (IdResult, One),
1655 (IdRef, One),
1656 (IdRef, One),
1657 (IdRef, One)
1658 ]
1659 ),
1660 inst!(
1661 BitReverse,
1662 [Shader, BitInstructions],
1663 [],
1664 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1665 ),
1666 inst!(
1667 BitCount,
1668 [],
1669 [],
1670 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1671 ),
1672 inst!(
1673 DPdx,
1674 [Shader],
1675 [],
1676 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1677 ),
1678 inst!(
1679 DPdy,
1680 [Shader],
1681 [],
1682 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1683 ),
1684 inst!(
1685 Fwidth,
1686 [Shader],
1687 [],
1688 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1689 ),
1690 inst!(
1691 DPdxFine,
1692 [DerivativeControl],
1693 [],
1694 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1695 ),
1696 inst!(
1697 DPdyFine,
1698 [DerivativeControl],
1699 [],
1700 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1701 ),
1702 inst!(
1703 FwidthFine,
1704 [DerivativeControl],
1705 [],
1706 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1707 ),
1708 inst!(
1709 DPdxCoarse,
1710 [DerivativeControl],
1711 [],
1712 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1713 ),
1714 inst!(
1715 DPdyCoarse,
1716 [DerivativeControl],
1717 [],
1718 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1719 ),
1720 inst!(
1721 FwidthCoarse,
1722 [DerivativeControl],
1723 [],
1724 [(IdResultType, One), (IdResult, One), (IdRef, One)]
1725 ),
1726 inst!(EmitVertex, [Geometry], [], []),
1727 inst!(EndPrimitive, [Geometry], [], []),
1728 inst!(EmitStreamVertex, [GeometryStreams], [], [(IdRef, One)]),
1729 inst!(EndStreamPrimitive, [GeometryStreams], [], [(IdRef, One)]),
1730 inst!(
1731 ControlBarrier,
1732 [],
1733 [],
1734 [(IdScope, One), (IdScope, One), (IdMemorySemantics, One)]
1735 ),
1736 inst!(
1737 MemoryBarrier,
1738 [],
1739 [],
1740 [(IdScope, One), (IdMemorySemantics, One)]
1741 ),
1742 inst!(
1743 AtomicLoad,
1744 [],
1745 [],
1746 [
1747 (IdResultType, One),
1748 (IdResult, One),
1749 (IdRef, One),
1750 (IdScope, One),
1751 (IdMemorySemantics, One)
1752 ]
1753 ),
1754 inst!(
1755 AtomicStore,
1756 [],
1757 [],
1758 [
1759 (IdRef, One),
1760 (IdScope, One),
1761 (IdMemorySemantics, One),
1762 (IdRef, One)
1763 ]
1764 ),
1765 inst!(
1766 AtomicExchange,
1767 [],
1768 [],
1769 [
1770 (IdResultType, One),
1771 (IdResult, One),
1772 (IdRef, One),
1773 (IdScope, One),
1774 (IdMemorySemantics, One),
1775 (IdRef, One)
1776 ]
1777 ),
1778 inst!(
1779 AtomicCompareExchange,
1780 [],
1781 [],
1782 [
1783 (IdResultType, One),
1784 (IdResult, One),
1785 (IdRef, One),
1786 (IdScope, One),
1787 (IdMemorySemantics, One),
1788 (IdMemorySemantics, One),
1789 (IdRef, One),
1790 (IdRef, One)
1791 ]
1792 ),
1793 inst!(
1794 AtomicCompareExchangeWeak,
1795 [Kernel],
1796 [],
1797 [
1798 (IdResultType, One),
1799 (IdResult, One),
1800 (IdRef, One),
1801 (IdScope, One),
1802 (IdMemorySemantics, One),
1803 (IdMemorySemantics, One),
1804 (IdRef, One),
1805 (IdRef, One)
1806 ]
1807 ),
1808 inst!(
1809 AtomicIIncrement,
1810 [],
1811 [],
1812 [
1813 (IdResultType, One),
1814 (IdResult, One),
1815 (IdRef, One),
1816 (IdScope, One),
1817 (IdMemorySemantics, One)
1818 ]
1819 ),
1820 inst!(
1821 AtomicIDecrement,
1822 [],
1823 [],
1824 [
1825 (IdResultType, One),
1826 (IdResult, One),
1827 (IdRef, One),
1828 (IdScope, One),
1829 (IdMemorySemantics, One)
1830 ]
1831 ),
1832 inst!(
1833 AtomicIAdd,
1834 [],
1835 [],
1836 [
1837 (IdResultType, One),
1838 (IdResult, One),
1839 (IdRef, One),
1840 (IdScope, One),
1841 (IdMemorySemantics, One),
1842 (IdRef, One)
1843 ]
1844 ),
1845 inst!(
1846 AtomicISub,
1847 [],
1848 [],
1849 [
1850 (IdResultType, One),
1851 (IdResult, One),
1852 (IdRef, One),
1853 (IdScope, One),
1854 (IdMemorySemantics, One),
1855 (IdRef, One)
1856 ]
1857 ),
1858 inst!(
1859 AtomicSMin,
1860 [],
1861 [],
1862 [
1863 (IdResultType, One),
1864 (IdResult, One),
1865 (IdRef, One),
1866 (IdScope, One),
1867 (IdMemorySemantics, One),
1868 (IdRef, One)
1869 ]
1870 ),
1871 inst!(
1872 AtomicUMin,
1873 [],
1874 [],
1875 [
1876 (IdResultType, One),
1877 (IdResult, One),
1878 (IdRef, One),
1879 (IdScope, One),
1880 (IdMemorySemantics, One),
1881 (IdRef, One)
1882 ]
1883 ),
1884 inst!(
1885 AtomicSMax,
1886 [],
1887 [],
1888 [
1889 (IdResultType, One),
1890 (IdResult, One),
1891 (IdRef, One),
1892 (IdScope, One),
1893 (IdMemorySemantics, One),
1894 (IdRef, One)
1895 ]
1896 ),
1897 inst!(
1898 AtomicUMax,
1899 [],
1900 [],
1901 [
1902 (IdResultType, One),
1903 (IdResult, One),
1904 (IdRef, One),
1905 (IdScope, One),
1906 (IdMemorySemantics, One),
1907 (IdRef, One)
1908 ]
1909 ),
1910 inst!(
1911 AtomicAnd,
1912 [],
1913 [],
1914 [
1915 (IdResultType, One),
1916 (IdResult, One),
1917 (IdRef, One),
1918 (IdScope, One),
1919 (IdMemorySemantics, One),
1920 (IdRef, One)
1921 ]
1922 ),
1923 inst!(
1924 AtomicOr,
1925 [],
1926 [],
1927 [
1928 (IdResultType, One),
1929 (IdResult, One),
1930 (IdRef, One),
1931 (IdScope, One),
1932 (IdMemorySemantics, One),
1933 (IdRef, One)
1934 ]
1935 ),
1936 inst!(
1937 AtomicXor,
1938 [],
1939 [],
1940 [
1941 (IdResultType, One),
1942 (IdResult, One),
1943 (IdRef, One),
1944 (IdScope, One),
1945 (IdMemorySemantics, One),
1946 (IdRef, One)
1947 ]
1948 ),
1949 inst!(
1950 Phi,
1951 [],
1952 [],
1953 [
1954 (IdResultType, One),
1955 (IdResult, One),
1956 (PairIdRefIdRef, ZeroOrMore)
1957 ]
1958 ),
1959 inst!(
1960 LoopMerge,
1961 [],
1962 [],
1963 [(IdRef, One), (IdRef, One), (LoopControl, One)]
1964 ),
1965 inst!(
1966 SelectionMerge,
1967 [],
1968 [],
1969 [(IdRef, One), (SelectionControl, One)]
1970 ),
1971 inst!(Label, [], [], [(IdResult, One)]),
1972 inst!(Branch, [], [], [(IdRef, One)]),
1973 inst!(
1974 BranchConditional,
1975 [],
1976 [],
1977 [
1978 (IdRef, One),
1979 (IdRef, One),
1980 (IdRef, One),
1981 (LiteralInteger, ZeroOrMore)
1982 ]
1983 ),
1984 inst!(
1985 Switch,
1986 [],
1987 [],
1988 [
1989 (IdRef, One),
1990 (IdRef, One),
1991 (PairLiteralIntegerIdRef, ZeroOrMore)
1992 ]
1993 ),
1994 inst!(Kill, [Shader], [], []),
1995 inst!(Return, [], [], []),
1996 inst!(ReturnValue, [], [], [(IdRef, One)]),
1997 inst!(Unreachable, [], [], []),
1998 inst!(
1999 LifetimeStart,
2000 [Kernel],
2001 [],
2002 [(IdRef, One), (LiteralInteger, One)]
2003 ),
2004 inst!(
2005 LifetimeStop,
2006 [Kernel],
2007 [],
2008 [(IdRef, One), (LiteralInteger, One)]
2009 ),
2010 inst!(
2011 GroupAsyncCopy,
2012 [Kernel],
2013 [],
2014 [
2015 (IdResultType, One),
2016 (IdResult, One),
2017 (IdScope, One),
2018 (IdRef, One),
2019 (IdRef, One),
2020 (IdRef, One),
2021 (IdRef, One),
2022 (IdRef, One)
2023 ]
2024 ),
2025 inst!(
2026 GroupWaitEvents,
2027 [Kernel],
2028 [],
2029 [(IdScope, One), (IdRef, One), (IdRef, One)]
2030 ),
2031 inst!(
2032 GroupAll,
2033 [Groups],
2034 [],
2035 [
2036 (IdResultType, One),
2037 (IdResult, One),
2038 (IdScope, One),
2039 (IdRef, One)
2040 ]
2041 ),
2042 inst!(
2043 GroupAny,
2044 [Groups],
2045 [],
2046 [
2047 (IdResultType, One),
2048 (IdResult, One),
2049 (IdScope, One),
2050 (IdRef, One)
2051 ]
2052 ),
2053 inst!(
2054 GroupBroadcast,
2055 [Groups],
2056 [],
2057 [
2058 (IdResultType, One),
2059 (IdResult, One),
2060 (IdScope, One),
2061 (IdRef, One),
2062 (IdRef, One)
2063 ]
2064 ),
2065 inst!(
2066 GroupIAdd,
2067 [Groups],
2068 [],
2069 [
2070 (IdResultType, One),
2071 (IdResult, One),
2072 (IdScope, One),
2073 (GroupOperation, One),
2074 (IdRef, One)
2075 ]
2076 ),
2077 inst!(
2078 GroupFAdd,
2079 [Groups],
2080 [],
2081 [
2082 (IdResultType, One),
2083 (IdResult, One),
2084 (IdScope, One),
2085 (GroupOperation, One),
2086 (IdRef, One)
2087 ]
2088 ),
2089 inst!(
2090 GroupFMin,
2091 [Groups],
2092 [],
2093 [
2094 (IdResultType, One),
2095 (IdResult, One),
2096 (IdScope, One),
2097 (GroupOperation, One),
2098 (IdRef, One)
2099 ]
2100 ),
2101 inst!(
2102 GroupUMin,
2103 [Groups],
2104 [],
2105 [
2106 (IdResultType, One),
2107 (IdResult, One),
2108 (IdScope, One),
2109 (GroupOperation, One),
2110 (IdRef, One)
2111 ]
2112 ),
2113 inst!(
2114 GroupSMin,
2115 [Groups],
2116 [],
2117 [
2118 (IdResultType, One),
2119 (IdResult, One),
2120 (IdScope, One),
2121 (GroupOperation, One),
2122 (IdRef, One)
2123 ]
2124 ),
2125 inst!(
2126 GroupFMax,
2127 [Groups],
2128 [],
2129 [
2130 (IdResultType, One),
2131 (IdResult, One),
2132 (IdScope, One),
2133 (GroupOperation, One),
2134 (IdRef, One)
2135 ]
2136 ),
2137 inst!(
2138 GroupUMax,
2139 [Groups],
2140 [],
2141 [
2142 (IdResultType, One),
2143 (IdResult, One),
2144 (IdScope, One),
2145 (GroupOperation, One),
2146 (IdRef, One)
2147 ]
2148 ),
2149 inst!(
2150 GroupSMax,
2151 [Groups],
2152 [],
2153 [
2154 (IdResultType, One),
2155 (IdResult, One),
2156 (IdScope, One),
2157 (GroupOperation, One),
2158 (IdRef, One)
2159 ]
2160 ),
2161 inst!(
2162 ReadPipe,
2163 [Pipes],
2164 [],
2165 [
2166 (IdResultType, One),
2167 (IdResult, One),
2168 (IdRef, One),
2169 (IdRef, One),
2170 (IdRef, One),
2171 (IdRef, One)
2172 ]
2173 ),
2174 inst!(
2175 WritePipe,
2176 [Pipes],
2177 [],
2178 [
2179 (IdResultType, One),
2180 (IdResult, One),
2181 (IdRef, One),
2182 (IdRef, One),
2183 (IdRef, One),
2184 (IdRef, One)
2185 ]
2186 ),
2187 inst!(
2188 ReservedReadPipe,
2189 [Pipes],
2190 [],
2191 [
2192 (IdResultType, One),
2193 (IdResult, One),
2194 (IdRef, One),
2195 (IdRef, One),
2196 (IdRef, One),
2197 (IdRef, One),
2198 (IdRef, One),
2199 (IdRef, One)
2200 ]
2201 ),
2202 inst!(
2203 ReservedWritePipe,
2204 [Pipes],
2205 [],
2206 [
2207 (IdResultType, One),
2208 (IdResult, One),
2209 (IdRef, One),
2210 (IdRef, One),
2211 (IdRef, One),
2212 (IdRef, One),
2213 (IdRef, One),
2214 (IdRef, One)
2215 ]
2216 ),
2217 inst!(
2218 ReserveReadPipePackets,
2219 [Pipes],
2220 [],
2221 [
2222 (IdResultType, One),
2223 (IdResult, One),
2224 (IdRef, One),
2225 (IdRef, One),
2226 (IdRef, One),
2227 (IdRef, One)
2228 ]
2229 ),
2230 inst!(
2231 ReserveWritePipePackets,
2232 [Pipes],
2233 [],
2234 [
2235 (IdResultType, One),
2236 (IdResult, One),
2237 (IdRef, One),
2238 (IdRef, One),
2239 (IdRef, One),
2240 (IdRef, One)
2241 ]
2242 ),
2243 inst!(
2244 CommitReadPipe,
2245 [Pipes],
2246 [],
2247 [(IdRef, One), (IdRef, One), (IdRef, One), (IdRef, One)]
2248 ),
2249 inst!(
2250 CommitWritePipe,
2251 [Pipes],
2252 [],
2253 [(IdRef, One), (IdRef, One), (IdRef, One), (IdRef, One)]
2254 ),
2255 inst!(
2256 IsValidReserveId,
2257 [Pipes],
2258 [],
2259 [(IdResultType, One), (IdResult, One), (IdRef, One)]
2260 ),
2261 inst!(
2262 GetNumPipePackets,
2263 [Pipes],
2264 [],
2265 [
2266 (IdResultType, One),
2267 (IdResult, One),
2268 (IdRef, One),
2269 (IdRef, One),
2270 (IdRef, One)
2271 ]
2272 ),
2273 inst!(
2274 GetMaxPipePackets,
2275 [Pipes],
2276 [],
2277 [
2278 (IdResultType, One),
2279 (IdResult, One),
2280 (IdRef, One),
2281 (IdRef, One),
2282 (IdRef, One)
2283 ]
2284 ),
2285 inst!(
2286 GroupReserveReadPipePackets,
2287 [Pipes],
2288 [],
2289 [
2290 (IdResultType, One),
2291 (IdResult, One),
2292 (IdScope, One),
2293 (IdRef, One),
2294 (IdRef, One),
2295 (IdRef, One),
2296 (IdRef, One)
2297 ]
2298 ),
2299 inst!(
2300 GroupReserveWritePipePackets,
2301 [Pipes],
2302 [],
2303 [
2304 (IdResultType, One),
2305 (IdResult, One),
2306 (IdScope, One),
2307 (IdRef, One),
2308 (IdRef, One),
2309 (IdRef, One),
2310 (IdRef, One)
2311 ]
2312 ),
2313 inst!(
2314 GroupCommitReadPipe,
2315 [Pipes],
2316 [],
2317 [
2318 (IdScope, One),
2319 (IdRef, One),
2320 (IdRef, One),
2321 (IdRef, One),
2322 (IdRef, One)
2323 ]
2324 ),
2325 inst!(
2326 GroupCommitWritePipe,
2327 [Pipes],
2328 [],
2329 [
2330 (IdScope, One),
2331 (IdRef, One),
2332 (IdRef, One),
2333 (IdRef, One),
2334 (IdRef, One)
2335 ]
2336 ),
2337 inst!(
2338 EnqueueMarker,
2339 [DeviceEnqueue],
2340 [],
2341 [
2342 (IdResultType, One),
2343 (IdResult, One),
2344 (IdRef, One),
2345 (IdRef, One),
2346 (IdRef, One),
2347 (IdRef, One)
2348 ]
2349 ),
2350 inst!(
2351 EnqueueKernel,
2352 [DeviceEnqueue],
2353 [],
2354 [
2355 (IdResultType, One),
2356 (IdResult, One),
2357 (IdRef, One),
2358 (IdRef, One),
2359 (IdRef, One),
2360 (IdRef, One),
2361 (IdRef, One),
2362 (IdRef, One),
2363 (IdRef, One),
2364 (IdRef, One),
2365 (IdRef, One),
2366 (IdRef, One),
2367 (IdRef, ZeroOrMore)
2368 ]
2369 ),
2370 inst!(
2371 GetKernelNDrangeSubGroupCount,
2372 [DeviceEnqueue],
2373 [],
2374 [
2375 (IdResultType, One),
2376 (IdResult, One),
2377 (IdRef, One),
2378 (IdRef, One),
2379 (IdRef, One),
2380 (IdRef, One),
2381 (IdRef, One)
2382 ]
2383 ),
2384 inst!(
2385 GetKernelNDrangeMaxSubGroupSize,
2386 [DeviceEnqueue],
2387 [],
2388 [
2389 (IdResultType, One),
2390 (IdResult, One),
2391 (IdRef, One),
2392 (IdRef, One),
2393 (IdRef, One),
2394 (IdRef, One),
2395 (IdRef, One)
2396 ]
2397 ),
2398 inst!(
2399 GetKernelWorkGroupSize,
2400 [DeviceEnqueue],
2401 [],
2402 [
2403 (IdResultType, One),
2404 (IdResult, One),
2405 (IdRef, One),
2406 (IdRef, One),
2407 (IdRef, One),
2408 (IdRef, One)
2409 ]
2410 ),
2411 inst!(
2412 GetKernelPreferredWorkGroupSizeMultiple,
2413 [DeviceEnqueue],
2414 [],
2415 [
2416 (IdResultType, One),
2417 (IdResult, One),
2418 (IdRef, One),
2419 (IdRef, One),
2420 (IdRef, One),
2421 (IdRef, One)
2422 ]
2423 ),
2424 inst!(RetainEvent, [DeviceEnqueue], [], [(IdRef, One)]),
2425 inst!(ReleaseEvent, [DeviceEnqueue], [], [(IdRef, One)]),
2426 inst!(
2427 CreateUserEvent,
2428 [DeviceEnqueue],
2429 [],
2430 [(IdResultType, One), (IdResult, One)]
2431 ),
2432 inst!(
2433 IsValidEvent,
2434 [DeviceEnqueue],
2435 [],
2436 [(IdResultType, One), (IdResult, One), (IdRef, One)]
2437 ),
2438 inst!(
2439 SetUserEventStatus,
2440 [DeviceEnqueue],
2441 [],
2442 [(IdRef, One), (IdRef, One)]
2443 ),
2444 inst!(
2445 CaptureEventProfilingInfo,
2446 [DeviceEnqueue],
2447 [],
2448 [(IdRef, One), (IdRef, One), (IdRef, One)]
2449 ),
2450 inst!(
2451 GetDefaultQueue,
2452 [DeviceEnqueue],
2453 [],
2454 [(IdResultType, One), (IdResult, One)]
2455 ),
2456 inst!(
2457 BuildNDRange,
2458 [DeviceEnqueue],
2459 [],
2460 [
2461 (IdResultType, One),
2462 (IdResult, One),
2463 (IdRef, One),
2464 (IdRef, One),
2465 (IdRef, One)
2466 ]
2467 ),
2468 inst!(
2469 ImageSparseSampleImplicitLod,
2470 [SparseResidency],
2471 [],
2472 [
2473 (IdResultType, One),
2474 (IdResult, One),
2475 (IdRef, One),
2476 (IdRef, One),
2477 (ImageOperands, ZeroOrOne)
2478 ]
2479 ),
2480 inst!(
2481 ImageSparseSampleExplicitLod,
2482 [SparseResidency],
2483 [],
2484 [
2485 (IdResultType, One),
2486 (IdResult, One),
2487 (IdRef, One),
2488 (IdRef, One),
2489 (ImageOperands, One)
2490 ]
2491 ),
2492 inst!(
2493 ImageSparseSampleDrefImplicitLod,
2494 [SparseResidency],
2495 [],
2496 [
2497 (IdResultType, One),
2498 (IdResult, One),
2499 (IdRef, One),
2500 (IdRef, One),
2501 (IdRef, One),
2502 (ImageOperands, ZeroOrOne)
2503 ]
2504 ),
2505 inst!(
2506 ImageSparseSampleDrefExplicitLod,
2507 [SparseResidency],
2508 [],
2509 [
2510 (IdResultType, One),
2511 (IdResult, One),
2512 (IdRef, One),
2513 (IdRef, One),
2514 (IdRef, One),
2515 (ImageOperands, One)
2516 ]
2517 ),
2518 inst!(
2519 ImageSparseSampleProjImplicitLod,
2520 [SparseResidency],
2521 [],
2522 [
2523 (IdResultType, One),
2524 (IdResult, One),
2525 (IdRef, One),
2526 (IdRef, One),
2527 (ImageOperands, ZeroOrOne)
2528 ]
2529 ),
2530 inst!(
2531 ImageSparseSampleProjExplicitLod,
2532 [SparseResidency],
2533 [],
2534 [
2535 (IdResultType, One),
2536 (IdResult, One),
2537 (IdRef, One),
2538 (IdRef, One),
2539 (ImageOperands, One)
2540 ]
2541 ),
2542 inst!(
2543 ImageSparseSampleProjDrefImplicitLod,
2544 [SparseResidency],
2545 [],
2546 [
2547 (IdResultType, One),
2548 (IdResult, One),
2549 (IdRef, One),
2550 (IdRef, One),
2551 (IdRef, One),
2552 (ImageOperands, ZeroOrOne)
2553 ]
2554 ),
2555 inst!(
2556 ImageSparseSampleProjDrefExplicitLod,
2557 [SparseResidency],
2558 [],
2559 [
2560 (IdResultType, One),
2561 (IdResult, One),
2562 (IdRef, One),
2563 (IdRef, One),
2564 (IdRef, One),
2565 (ImageOperands, One)
2566 ]
2567 ),
2568 inst!(
2569 ImageSparseFetch,
2570 [SparseResidency],
2571 [],
2572 [
2573 (IdResultType, One),
2574 (IdResult, One),
2575 (IdRef, One),
2576 (IdRef, One),
2577 (ImageOperands, ZeroOrOne)
2578 ]
2579 ),
2580 inst!(
2581 ImageSparseGather,
2582 [SparseResidency],
2583 [],
2584 [
2585 (IdResultType, One),
2586 (IdResult, One),
2587 (IdRef, One),
2588 (IdRef, One),
2589 (IdRef, One),
2590 (ImageOperands, ZeroOrOne)
2591 ]
2592 ),
2593 inst!(
2594 ImageSparseDrefGather,
2595 [SparseResidency],
2596 [],
2597 [
2598 (IdResultType, One),
2599 (IdResult, One),
2600 (IdRef, One),
2601 (IdRef, One),
2602 (IdRef, One),
2603 (ImageOperands, ZeroOrOne)
2604 ]
2605 ),
2606 inst!(
2607 ImageSparseTexelsResident,
2608 [SparseResidency],
2609 [],
2610 [(IdResultType, One), (IdResult, One), (IdRef, One)]
2611 ),
2612 inst!(NoLine, [], [], []),
2613 inst!(
2614 AtomicFlagTestAndSet,
2615 [Kernel],
2616 [],
2617 [
2618 (IdResultType, One),
2619 (IdResult, One),
2620 (IdRef, One),
2621 (IdScope, One),
2622 (IdMemorySemantics, One)
2623 ]
2624 ),
2625 inst!(
2626 AtomicFlagClear,
2627 [Kernel],
2628 [],
2629 [(IdRef, One), (IdScope, One), (IdMemorySemantics, One)]
2630 ),
2631 inst!(
2632 ImageSparseRead,
2633 [SparseResidency],
2634 [],
2635 [
2636 (IdResultType, One),
2637 (IdResult, One),
2638 (IdRef, One),
2639 (IdRef, One),
2640 (ImageOperands, ZeroOrOne)
2641 ]
2642 ),
2643 inst!(
2644 SizeOf,
2645 [Addresses],
2646 [],
2647 [(IdResultType, One), (IdResult, One), (IdRef, One)]
2648 ),
2649 inst!(TypePipeStorage, [PipeStorage], [], [(IdResult, One)]),
2650 inst!(
2651 ConstantPipeStorage,
2652 [PipeStorage],
2653 [],
2654 [
2655 (IdResultType, One),
2656 (IdResult, One),
2657 (LiteralInteger, One),
2658 (LiteralInteger, One),
2659 (LiteralInteger, One)
2660 ]
2661 ),
2662 inst!(
2663 CreatePipeFromPipeStorage,
2664 [PipeStorage],
2665 [],
2666 [(IdResultType, One), (IdResult, One), (IdRef, One)]
2667 ),
2668 inst!(
2669 GetKernelLocalSizeForSubgroupCount,
2670 [SubgroupDispatch],
2671 [],
2672 [
2673 (IdResultType, One),
2674 (IdResult, One),
2675 (IdRef, One),
2676 (IdRef, One),
2677 (IdRef, One),
2678 (IdRef, One),
2679 (IdRef, One)
2680 ]
2681 ),
2682 inst!(
2683 GetKernelMaxNumSubgroups,
2684 [SubgroupDispatch],
2685 [],
2686 [
2687 (IdResultType, One),
2688 (IdResult, One),
2689 (IdRef, One),
2690 (IdRef, One),
2691 (IdRef, One),
2692 (IdRef, One)
2693 ]
2694 ),
2695 inst!(TypeNamedBarrier, [NamedBarrier], [], [(IdResult, One)]),
2696 inst!(
2697 NamedBarrierInitialize,
2698 [NamedBarrier],
2699 [],
2700 [(IdResultType, One), (IdResult, One), (IdRef, One)]
2701 ),
2702 inst!(
2703 MemoryNamedBarrier,
2704 [NamedBarrier],
2705 [],
2706 [(IdRef, One), (IdScope, One), (IdMemorySemantics, One)]
2707 ),
2708 inst!(ModuleProcessed, [], [], [(LiteralString, One)]),
2709 inst!(
2710 ExecutionModeId,
2711 [],
2712 [],
2713 [(IdRef, One), (ExecutionMode, One)]
2714 ),
2715 inst!(
2716 DecorateId,
2717 [],
2718 ["SPV_GOOGLE_hlsl_functionality1"],
2719 [(IdRef, One), (Decoration, One)]
2720 ),
2721 inst!(
2722 GroupNonUniformElect,
2723 [GroupNonUniform],
2724 [],
2725 [(IdResultType, One), (IdResult, One), (IdScope, One)]
2726 ),
2727 inst!(
2728 GroupNonUniformAll,
2729 [GroupNonUniformVote],
2730 [],
2731 [
2732 (IdResultType, One),
2733 (IdResult, One),
2734 (IdScope, One),
2735 (IdRef, One)
2736 ]
2737 ),
2738 inst!(
2739 GroupNonUniformAny,
2740 [GroupNonUniformVote],
2741 [],
2742 [
2743 (IdResultType, One),
2744 (IdResult, One),
2745 (IdScope, One),
2746 (IdRef, One)
2747 ]
2748 ),
2749 inst!(
2750 GroupNonUniformAllEqual,
2751 [GroupNonUniformVote],
2752 [],
2753 [
2754 (IdResultType, One),
2755 (IdResult, One),
2756 (IdScope, One),
2757 (IdRef, One)
2758 ]
2759 ),
2760 inst!(
2761 GroupNonUniformBroadcast,
2762 [GroupNonUniformBallot],
2763 [],
2764 [
2765 (IdResultType, One),
2766 (IdResult, One),
2767 (IdScope, One),
2768 (IdRef, One),
2769 (IdRef, One)
2770 ]
2771 ),
2772 inst!(
2773 GroupNonUniformBroadcastFirst,
2774 [GroupNonUniformBallot],
2775 [],
2776 [
2777 (IdResultType, One),
2778 (IdResult, One),
2779 (IdScope, One),
2780 (IdRef, One)
2781 ]
2782 ),
2783 inst!(
2784 GroupNonUniformBallot,
2785 [GroupNonUniformBallot],
2786 [],
2787 [
2788 (IdResultType, One),
2789 (IdResult, One),
2790 (IdScope, One),
2791 (IdRef, One)
2792 ]
2793 ),
2794 inst!(
2795 GroupNonUniformInverseBallot,
2796 [GroupNonUniformBallot],
2797 [],
2798 [
2799 (IdResultType, One),
2800 (IdResult, One),
2801 (IdScope, One),
2802 (IdRef, One)
2803 ]
2804 ),
2805 inst!(
2806 GroupNonUniformBallotBitExtract,
2807 [GroupNonUniformBallot],
2808 [],
2809 [
2810 (IdResultType, One),
2811 (IdResult, One),
2812 (IdScope, One),
2813 (IdRef, One),
2814 (IdRef, One)
2815 ]
2816 ),
2817 inst!(
2818 GroupNonUniformBallotBitCount,
2819 [GroupNonUniformBallot],
2820 [],
2821 [
2822 (IdResultType, One),
2823 (IdResult, One),
2824 (IdScope, One),
2825 (GroupOperation, One),
2826 (IdRef, One)
2827 ]
2828 ),
2829 inst!(
2830 GroupNonUniformBallotFindLSB,
2831 [GroupNonUniformBallot],
2832 [],
2833 [
2834 (IdResultType, One),
2835 (IdResult, One),
2836 (IdScope, One),
2837 (IdRef, One)
2838 ]
2839 ),
2840 inst!(
2841 GroupNonUniformBallotFindMSB,
2842 [GroupNonUniformBallot],
2843 [],
2844 [
2845 (IdResultType, One),
2846 (IdResult, One),
2847 (IdScope, One),
2848 (IdRef, One)
2849 ]
2850 ),
2851 inst!(
2852 GroupNonUniformShuffle,
2853 [GroupNonUniformShuffle],
2854 [],
2855 [
2856 (IdResultType, One),
2857 (IdResult, One),
2858 (IdScope, One),
2859 (IdRef, One),
2860 (IdRef, One)
2861 ]
2862 ),
2863 inst!(
2864 GroupNonUniformShuffleXor,
2865 [GroupNonUniformShuffle],
2866 [],
2867 [
2868 (IdResultType, One),
2869 (IdResult, One),
2870 (IdScope, One),
2871 (IdRef, One),
2872 (IdRef, One)
2873 ]
2874 ),
2875 inst!(
2876 GroupNonUniformShuffleUp,
2877 [GroupNonUniformShuffleRelative],
2878 [],
2879 [
2880 (IdResultType, One),
2881 (IdResult, One),
2882 (IdScope, One),
2883 (IdRef, One),
2884 (IdRef, One)
2885 ]
2886 ),
2887 inst!(
2888 GroupNonUniformShuffleDown,
2889 [GroupNonUniformShuffleRelative],
2890 [],
2891 [
2892 (IdResultType, One),
2893 (IdResult, One),
2894 (IdScope, One),
2895 (IdRef, One),
2896 (IdRef, One)
2897 ]
2898 ),
2899 inst!(
2900 GroupNonUniformIAdd,
2901 [
2902 GroupNonUniformArithmetic,
2903 GroupNonUniformClustered,
2904 GroupNonUniformPartitionedNV
2905 ],
2906 [],
2907 [
2908 (IdResultType, One),
2909 (IdResult, One),
2910 (IdScope, One),
2911 (GroupOperation, One),
2912 (IdRef, One),
2913 (IdRef, ZeroOrOne)
2914 ]
2915 ),
2916 inst!(
2917 GroupNonUniformFAdd,
2918 [
2919 GroupNonUniformArithmetic,
2920 GroupNonUniformClustered,
2921 GroupNonUniformPartitionedNV
2922 ],
2923 [],
2924 [
2925 (IdResultType, One),
2926 (IdResult, One),
2927 (IdScope, One),
2928 (GroupOperation, One),
2929 (IdRef, One),
2930 (IdRef, ZeroOrOne)
2931 ]
2932 ),
2933 inst!(
2934 GroupNonUniformIMul,
2935 [
2936 GroupNonUniformArithmetic,
2937 GroupNonUniformClustered,
2938 GroupNonUniformPartitionedNV
2939 ],
2940 [],
2941 [
2942 (IdResultType, One),
2943 (IdResult, One),
2944 (IdScope, One),
2945 (GroupOperation, One),
2946 (IdRef, One),
2947 (IdRef, ZeroOrOne)
2948 ]
2949 ),
2950 inst!(
2951 GroupNonUniformFMul,
2952 [
2953 GroupNonUniformArithmetic,
2954 GroupNonUniformClustered,
2955 GroupNonUniformPartitionedNV
2956 ],
2957 [],
2958 [
2959 (IdResultType, One),
2960 (IdResult, One),
2961 (IdScope, One),
2962 (GroupOperation, One),
2963 (IdRef, One),
2964 (IdRef, ZeroOrOne)
2965 ]
2966 ),
2967 inst!(
2968 GroupNonUniformSMin,
2969 [
2970 GroupNonUniformArithmetic,
2971 GroupNonUniformClustered,
2972 GroupNonUniformPartitionedNV
2973 ],
2974 [],
2975 [
2976 (IdResultType, One),
2977 (IdResult, One),
2978 (IdScope, One),
2979 (GroupOperation, One),
2980 (IdRef, One),
2981 (IdRef, ZeroOrOne)
2982 ]
2983 ),
2984 inst!(
2985 GroupNonUniformUMin,
2986 [
2987 GroupNonUniformArithmetic,
2988 GroupNonUniformClustered,
2989 GroupNonUniformPartitionedNV
2990 ],
2991 [],
2992 [
2993 (IdResultType, One),
2994 (IdResult, One),
2995 (IdScope, One),
2996 (GroupOperation, One),
2997 (IdRef, One),
2998 (IdRef, ZeroOrOne)
2999 ]
3000 ),
3001 inst!(
3002 GroupNonUniformFMin,
3003 [
3004 GroupNonUniformArithmetic,
3005 GroupNonUniformClustered,
3006 GroupNonUniformPartitionedNV
3007 ],
3008 [],
3009 [
3010 (IdResultType, One),
3011 (IdResult, One),
3012 (IdScope, One),
3013 (GroupOperation, One),
3014 (IdRef, One),
3015 (IdRef, ZeroOrOne)
3016 ]
3017 ),
3018 inst!(
3019 GroupNonUniformSMax,
3020 [
3021 GroupNonUniformArithmetic,
3022 GroupNonUniformClustered,
3023 GroupNonUniformPartitionedNV
3024 ],
3025 [],
3026 [
3027 (IdResultType, One),
3028 (IdResult, One),
3029 (IdScope, One),
3030 (GroupOperation, One),
3031 (IdRef, One),
3032 (IdRef, ZeroOrOne)
3033 ]
3034 ),
3035 inst!(
3036 GroupNonUniformUMax,
3037 [
3038 GroupNonUniformArithmetic,
3039 GroupNonUniformClustered,
3040 GroupNonUniformPartitionedNV
3041 ],
3042 [],
3043 [
3044 (IdResultType, One),
3045 (IdResult, One),
3046 (IdScope, One),
3047 (GroupOperation, One),
3048 (IdRef, One),
3049 (IdRef, ZeroOrOne)
3050 ]
3051 ),
3052 inst!(
3053 GroupNonUniformFMax,
3054 [
3055 GroupNonUniformArithmetic,
3056 GroupNonUniformClustered,
3057 GroupNonUniformPartitionedNV
3058 ],
3059 [],
3060 [
3061 (IdResultType, One),
3062 (IdResult, One),
3063 (IdScope, One),
3064 (GroupOperation, One),
3065 (IdRef, One),
3066 (IdRef, ZeroOrOne)
3067 ]
3068 ),
3069 inst!(
3070 GroupNonUniformBitwiseAnd,
3071 [
3072 GroupNonUniformArithmetic,
3073 GroupNonUniformClustered,
3074 GroupNonUniformPartitionedNV
3075 ],
3076 [],
3077 [
3078 (IdResultType, One),
3079 (IdResult, One),
3080 (IdScope, One),
3081 (GroupOperation, One),
3082 (IdRef, One),
3083 (IdRef, ZeroOrOne)
3084 ]
3085 ),
3086 inst!(
3087 GroupNonUniformBitwiseOr,
3088 [
3089 GroupNonUniformArithmetic,
3090 GroupNonUniformClustered,
3091 GroupNonUniformPartitionedNV
3092 ],
3093 [],
3094 [
3095 (IdResultType, One),
3096 (IdResult, One),
3097 (IdScope, One),
3098 (GroupOperation, One),
3099 (IdRef, One),
3100 (IdRef, ZeroOrOne)
3101 ]
3102 ),
3103 inst!(
3104 GroupNonUniformBitwiseXor,
3105 [
3106 GroupNonUniformArithmetic,
3107 GroupNonUniformClustered,
3108 GroupNonUniformPartitionedNV
3109 ],
3110 [],
3111 [
3112 (IdResultType, One),
3113 (IdResult, One),
3114 (IdScope, One),
3115 (GroupOperation, One),
3116 (IdRef, One),
3117 (IdRef, ZeroOrOne)
3118 ]
3119 ),
3120 inst!(
3121 GroupNonUniformLogicalAnd,
3122 [
3123 GroupNonUniformArithmetic,
3124 GroupNonUniformClustered,
3125 GroupNonUniformPartitionedNV
3126 ],
3127 [],
3128 [
3129 (IdResultType, One),
3130 (IdResult, One),
3131 (IdScope, One),
3132 (GroupOperation, One),
3133 (IdRef, One),
3134 (IdRef, ZeroOrOne)
3135 ]
3136 ),
3137 inst!(
3138 GroupNonUniformLogicalOr,
3139 [
3140 GroupNonUniformArithmetic,
3141 GroupNonUniformClustered,
3142 GroupNonUniformPartitionedNV
3143 ],
3144 [],
3145 [
3146 (IdResultType, One),
3147 (IdResult, One),
3148 (IdScope, One),
3149 (GroupOperation, One),
3150 (IdRef, One),
3151 (IdRef, ZeroOrOne)
3152 ]
3153 ),
3154 inst!(
3155 GroupNonUniformLogicalXor,
3156 [
3157 GroupNonUniformArithmetic,
3158 GroupNonUniformClustered,
3159 GroupNonUniformPartitionedNV
3160 ],
3161 [],
3162 [
3163 (IdResultType, One),
3164 (IdResult, One),
3165 (IdScope, One),
3166 (GroupOperation, One),
3167 (IdRef, One),
3168 (IdRef, ZeroOrOne)
3169 ]
3170 ),
3171 inst!(
3172 GroupNonUniformQuadBroadcast,
3173 [GroupNonUniformQuad],
3174 [],
3175 [
3176 (IdResultType, One),
3177 (IdResult, One),
3178 (IdScope, One),
3179 (IdRef, One),
3180 (IdRef, One)
3181 ]
3182 ),
3183 inst!(
3184 GroupNonUniformQuadSwap,
3185 [GroupNonUniformQuad],
3186 [],
3187 [
3188 (IdResultType, One),
3189 (IdResult, One),
3190 (IdScope, One),
3191 (IdRef, One),
3192 (IdRef, One)
3193 ]
3194 ),
3195 inst!(
3196 CopyLogical,
3197 [],
3198 [],
3199 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3200 ),
3201 inst!(
3202 PtrEqual,
3203 [],
3204 [],
3205 [
3206 (IdResultType, One),
3207 (IdResult, One),
3208 (IdRef, One),
3209 (IdRef, One)
3210 ]
3211 ),
3212 inst!(
3213 PtrNotEqual,
3214 [],
3215 [],
3216 [
3217 (IdResultType, One),
3218 (IdResult, One),
3219 (IdRef, One),
3220 (IdRef, One)
3221 ]
3222 ),
3223 inst!(
3224 PtrDiff,
3225 [Addresses, VariablePointers, VariablePointersStorageBuffer],
3226 [],
3227 [
3228 (IdResultType, One),
3229 (IdResult, One),
3230 (IdRef, One),
3231 (IdRef, One)
3232 ]
3233 ),
3234 inst!(
3235 ColorAttachmentReadEXT,
3236 [TileImageColorReadAccessEXT],
3237 [],
3238 [
3239 (IdResultType, One),
3240 (IdResult, One),
3241 (IdRef, One),
3242 (IdRef, ZeroOrOne)
3243 ]
3244 ),
3245 inst!(
3246 DepthAttachmentReadEXT,
3247 [TileImageDepthReadAccessEXT],
3248 [],
3249 [(IdResultType, One), (IdResult, One), (IdRef, ZeroOrOne)]
3250 ),
3251 inst!(
3252 StencilAttachmentReadEXT,
3253 [TileImageStencilReadAccessEXT],
3254 [],
3255 [(IdResultType, One), (IdResult, One), (IdRef, ZeroOrOne)]
3256 ),
3257 inst!(
3258 TerminateInvocation,
3259 [Shader],
3260 ["SPV_KHR_terminate_invocation"],
3261 []
3262 ),
3263 inst!(
3264 SubgroupBallotKHR,
3265 [SubgroupBallotKHR],
3266 ["SPV_KHR_shader_ballot"],
3267 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3268 ),
3269 inst!(
3270 SubgroupFirstInvocationKHR,
3271 [SubgroupBallotKHR],
3272 ["SPV_KHR_shader_ballot"],
3273 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3274 ),
3275 inst!(
3276 SubgroupAllKHR,
3277 [SubgroupVoteKHR],
3278 ["SPV_KHR_subgroup_vote"],
3279 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3280 ),
3281 inst!(
3282 SubgroupAnyKHR,
3283 [SubgroupVoteKHR],
3284 ["SPV_KHR_subgroup_vote"],
3285 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3286 ),
3287 inst!(
3288 SubgroupAllEqualKHR,
3289 [SubgroupVoteKHR],
3290 ["SPV_KHR_subgroup_vote"],
3291 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3292 ),
3293 inst!(
3294 GroupNonUniformRotateKHR,
3295 [GroupNonUniformRotateKHR],
3296 [],
3297 [
3298 (IdResultType, One),
3299 (IdResult, One),
3300 (IdScope, One),
3301 (IdRef, One),
3302 (IdRef, One),
3303 (IdRef, ZeroOrOne)
3304 ]
3305 ),
3306 inst!(
3307 SubgroupReadInvocationKHR,
3308 [SubgroupBallotKHR],
3309 ["SPV_KHR_shader_ballot"],
3310 [
3311 (IdResultType, One),
3312 (IdResult, One),
3313 (IdRef, One),
3314 (IdRef, One)
3315 ]
3316 ),
3317 inst!(
3318 TraceRayKHR,
3319 [RayTracingKHR],
3320 ["SPV_KHR_ray_tracing"],
3321 [
3322 (IdRef, One),
3323 (IdRef, One),
3324 (IdRef, One),
3325 (IdRef, One),
3326 (IdRef, One),
3327 (IdRef, One),
3328 (IdRef, One),
3329 (IdRef, One),
3330 (IdRef, One),
3331 (IdRef, One),
3332 (IdRef, One)
3333 ]
3334 ),
3335 inst!(
3336 ExecuteCallableKHR,
3337 [RayTracingKHR],
3338 ["SPV_KHR_ray_tracing"],
3339 [(IdRef, One), (IdRef, One)]
3340 ),
3341 inst!(
3342 ConvertUToAccelerationStructureKHR,
3343 [RayTracingKHR, RayQueryKHR],
3344 ["SPV_KHR_ray_tracing", "SPV_KHR_ray_query"],
3345 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3346 ),
3347 inst!(
3348 IgnoreIntersectionKHR,
3349 [RayTracingKHR],
3350 ["SPV_KHR_ray_tracing"],
3351 []
3352 ),
3353 inst!(
3354 TerminateRayKHR,
3355 [RayTracingKHR],
3356 ["SPV_KHR_ray_tracing"],
3357 []
3358 ),
3359 inst!(
3360 SDot,
3361 [DotProduct],
3362 [],
3363 [
3364 (IdResultType, One),
3365 (IdResult, One),
3366 (IdRef, One),
3367 (IdRef, One),
3368 (PackedVectorFormat, ZeroOrOne)
3369 ]
3370 ),
3371 inst!(
3372 SDotKHR,
3373 [DotProductKHR],
3374 ["SPV_KHR_integer_dot_product"],
3375 [
3376 (IdResultType, One),
3377 (IdResult, One),
3378 (IdRef, One),
3379 (IdRef, One),
3380 (PackedVectorFormat, ZeroOrOne)
3381 ]
3382 ),
3383 inst!(
3384 UDot,
3385 [DotProduct],
3386 [],
3387 [
3388 (IdResultType, One),
3389 (IdResult, One),
3390 (IdRef, One),
3391 (IdRef, One),
3392 (PackedVectorFormat, ZeroOrOne)
3393 ]
3394 ),
3395 inst!(
3396 UDotKHR,
3397 [DotProductKHR],
3398 ["SPV_KHR_integer_dot_product"],
3399 [
3400 (IdResultType, One),
3401 (IdResult, One),
3402 (IdRef, One),
3403 (IdRef, One),
3404 (PackedVectorFormat, ZeroOrOne)
3405 ]
3406 ),
3407 inst!(
3408 SUDot,
3409 [DotProduct],
3410 [],
3411 [
3412 (IdResultType, One),
3413 (IdResult, One),
3414 (IdRef, One),
3415 (IdRef, One),
3416 (PackedVectorFormat, ZeroOrOne)
3417 ]
3418 ),
3419 inst!(
3420 SUDotKHR,
3421 [DotProductKHR],
3422 ["SPV_KHR_integer_dot_product"],
3423 [
3424 (IdResultType, One),
3425 (IdResult, One),
3426 (IdRef, One),
3427 (IdRef, One),
3428 (PackedVectorFormat, ZeroOrOne)
3429 ]
3430 ),
3431 inst!(
3432 SDotAccSat,
3433 [DotProduct],
3434 [],
3435 [
3436 (IdResultType, One),
3437 (IdResult, One),
3438 (IdRef, One),
3439 (IdRef, One),
3440 (IdRef, One),
3441 (PackedVectorFormat, ZeroOrOne)
3442 ]
3443 ),
3444 inst!(
3445 SDotAccSatKHR,
3446 [DotProductKHR],
3447 ["SPV_KHR_integer_dot_product"],
3448 [
3449 (IdResultType, One),
3450 (IdResult, One),
3451 (IdRef, One),
3452 (IdRef, One),
3453 (IdRef, One),
3454 (PackedVectorFormat, ZeroOrOne)
3455 ]
3456 ),
3457 inst!(
3458 UDotAccSat,
3459 [DotProduct],
3460 [],
3461 [
3462 (IdResultType, One),
3463 (IdResult, One),
3464 (IdRef, One),
3465 (IdRef, One),
3466 (IdRef, One),
3467 (PackedVectorFormat, ZeroOrOne)
3468 ]
3469 ),
3470 inst!(
3471 UDotAccSatKHR,
3472 [DotProductKHR],
3473 ["SPV_KHR_integer_dot_product"],
3474 [
3475 (IdResultType, One),
3476 (IdResult, One),
3477 (IdRef, One),
3478 (IdRef, One),
3479 (IdRef, One),
3480 (PackedVectorFormat, ZeroOrOne)
3481 ]
3482 ),
3483 inst!(
3484 SUDotAccSat,
3485 [DotProduct],
3486 [],
3487 [
3488 (IdResultType, One),
3489 (IdResult, One),
3490 (IdRef, One),
3491 (IdRef, One),
3492 (IdRef, One),
3493 (PackedVectorFormat, ZeroOrOne)
3494 ]
3495 ),
3496 inst!(
3497 SUDotAccSatKHR,
3498 [DotProductKHR],
3499 ["SPV_KHR_integer_dot_product"],
3500 [
3501 (IdResultType, One),
3502 (IdResult, One),
3503 (IdRef, One),
3504 (IdRef, One),
3505 (IdRef, One),
3506 (PackedVectorFormat, ZeroOrOne)
3507 ]
3508 ),
3509 inst!(
3510 TypeCooperativeMatrixKHR,
3511 [CooperativeMatrixKHR],
3512 [],
3513 [
3514 (IdResult, One),
3515 (IdRef, One),
3516 (IdScope, One),
3517 (IdRef, One),
3518 (IdRef, One),
3519 (IdRef, One)
3520 ]
3521 ),
3522 inst!(
3523 CooperativeMatrixLoadKHR,
3524 [CooperativeMatrixKHR],
3525 [],
3526 [
3527 (IdResultType, One),
3528 (IdResult, One),
3529 (IdRef, One),
3530 (IdRef, One),
3531 (IdRef, ZeroOrOne),
3532 (MemoryAccess, ZeroOrOne)
3533 ]
3534 ),
3535 inst!(
3536 CooperativeMatrixStoreKHR,
3537 [CooperativeMatrixKHR],
3538 [],
3539 [
3540 (IdRef, One),
3541 (IdRef, One),
3542 (IdRef, One),
3543 (IdRef, ZeroOrOne),
3544 (MemoryAccess, ZeroOrOne)
3545 ]
3546 ),
3547 inst!(
3548 CooperativeMatrixMulAddKHR,
3549 [CooperativeMatrixKHR],
3550 [],
3551 [
3552 (IdResultType, One),
3553 (IdResult, One),
3554 (IdRef, One),
3555 (IdRef, One),
3556 (IdRef, One),
3557 (CooperativeMatrixOperands, ZeroOrOne)
3558 ]
3559 ),
3560 inst!(
3561 CooperativeMatrixLengthKHR,
3562 [CooperativeMatrixKHR],
3563 [],
3564 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3565 ),
3566 inst!(
3567 TypeRayQueryKHR,
3568 [RayQueryKHR],
3569 ["SPV_KHR_ray_query"],
3570 [(IdResult, One)]
3571 ),
3572 inst!(
3573 RayQueryInitializeKHR,
3574 [RayQueryKHR],
3575 ["SPV_KHR_ray_query"],
3576 [
3577 (IdRef, One),
3578 (IdRef, One),
3579 (IdRef, One),
3580 (IdRef, One),
3581 (IdRef, One),
3582 (IdRef, One),
3583 (IdRef, One),
3584 (IdRef, One)
3585 ]
3586 ),
3587 inst!(
3588 RayQueryTerminateKHR,
3589 [RayQueryKHR],
3590 ["SPV_KHR_ray_query"],
3591 [(IdRef, One)]
3592 ),
3593 inst!(
3594 RayQueryGenerateIntersectionKHR,
3595 [RayQueryKHR],
3596 ["SPV_KHR_ray_query"],
3597 [(IdRef, One), (IdRef, One)]
3598 ),
3599 inst!(
3600 RayQueryConfirmIntersectionKHR,
3601 [RayQueryKHR],
3602 ["SPV_KHR_ray_query"],
3603 [(IdRef, One)]
3604 ),
3605 inst!(
3606 RayQueryProceedKHR,
3607 [RayQueryKHR],
3608 ["SPV_KHR_ray_query"],
3609 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3610 ),
3611 inst!(
3612 RayQueryGetIntersectionTypeKHR,
3613 [RayQueryKHR],
3614 ["SPV_KHR_ray_query"],
3615 [
3616 (IdResultType, One),
3617 (IdResult, One),
3618 (IdRef, One),
3619 (IdRef, One)
3620 ]
3621 ),
3622 inst!(
3623 ImageSampleWeightedQCOM,
3624 [TextureSampleWeightedQCOM],
3625 [],
3626 [
3627 (IdResultType, One),
3628 (IdResult, One),
3629 (IdRef, One),
3630 (IdRef, One),
3631 (IdRef, One)
3632 ]
3633 ),
3634 inst!(
3635 ImageBoxFilterQCOM,
3636 [TextureBoxFilterQCOM],
3637 [],
3638 [
3639 (IdResultType, One),
3640 (IdResult, One),
3641 (IdRef, One),
3642 (IdRef, One),
3643 (IdRef, One)
3644 ]
3645 ),
3646 inst!(
3647 ImageBlockMatchSSDQCOM,
3648 [TextureBlockMatchQCOM],
3649 [],
3650 [
3651 (IdResultType, One),
3652 (IdResult, One),
3653 (IdRef, One),
3654 (IdRef, One),
3655 (IdRef, One),
3656 (IdRef, One),
3657 (IdRef, One)
3658 ]
3659 ),
3660 inst!(
3661 ImageBlockMatchSADQCOM,
3662 [TextureBlockMatchQCOM],
3663 [],
3664 [
3665 (IdResultType, One),
3666 (IdResult, One),
3667 (IdRef, One),
3668 (IdRef, One),
3669 (IdRef, One),
3670 (IdRef, One),
3671 (IdRef, One)
3672 ]
3673 ),
3674 inst!(
3675 GroupIAddNonUniformAMD,
3676 [Groups],
3677 ["SPV_AMD_shader_ballot"],
3678 [
3679 (IdResultType, One),
3680 (IdResult, One),
3681 (IdScope, One),
3682 (GroupOperation, One),
3683 (IdRef, One)
3684 ]
3685 ),
3686 inst!(
3687 GroupFAddNonUniformAMD,
3688 [Groups],
3689 ["SPV_AMD_shader_ballot"],
3690 [
3691 (IdResultType, One),
3692 (IdResult, One),
3693 (IdScope, One),
3694 (GroupOperation, One),
3695 (IdRef, One)
3696 ]
3697 ),
3698 inst!(
3699 GroupFMinNonUniformAMD,
3700 [Groups],
3701 ["SPV_AMD_shader_ballot"],
3702 [
3703 (IdResultType, One),
3704 (IdResult, One),
3705 (IdScope, One),
3706 (GroupOperation, One),
3707 (IdRef, One)
3708 ]
3709 ),
3710 inst!(
3711 GroupUMinNonUniformAMD,
3712 [Groups],
3713 ["SPV_AMD_shader_ballot"],
3714 [
3715 (IdResultType, One),
3716 (IdResult, One),
3717 (IdScope, One),
3718 (GroupOperation, One),
3719 (IdRef, One)
3720 ]
3721 ),
3722 inst!(
3723 GroupSMinNonUniformAMD,
3724 [Groups],
3725 ["SPV_AMD_shader_ballot"],
3726 [
3727 (IdResultType, One),
3728 (IdResult, One),
3729 (IdScope, One),
3730 (GroupOperation, One),
3731 (IdRef, One)
3732 ]
3733 ),
3734 inst!(
3735 GroupFMaxNonUniformAMD,
3736 [Groups],
3737 ["SPV_AMD_shader_ballot"],
3738 [
3739 (IdResultType, One),
3740 (IdResult, One),
3741 (IdScope, One),
3742 (GroupOperation, One),
3743 (IdRef, One)
3744 ]
3745 ),
3746 inst!(
3747 GroupUMaxNonUniformAMD,
3748 [Groups],
3749 ["SPV_AMD_shader_ballot"],
3750 [
3751 (IdResultType, One),
3752 (IdResult, One),
3753 (IdScope, One),
3754 (GroupOperation, One),
3755 (IdRef, One)
3756 ]
3757 ),
3758 inst!(
3759 GroupSMaxNonUniformAMD,
3760 [Groups],
3761 ["SPV_AMD_shader_ballot"],
3762 [
3763 (IdResultType, One),
3764 (IdResult, One),
3765 (IdScope, One),
3766 (GroupOperation, One),
3767 (IdRef, One)
3768 ]
3769 ),
3770 inst!(
3771 FragmentMaskFetchAMD,
3772 [FragmentMaskAMD],
3773 ["SPV_AMD_shader_fragment_mask"],
3774 [
3775 (IdResultType, One),
3776 (IdResult, One),
3777 (IdRef, One),
3778 (IdRef, One)
3779 ]
3780 ),
3781 inst!(
3782 FragmentFetchAMD,
3783 [FragmentMaskAMD],
3784 ["SPV_AMD_shader_fragment_mask"],
3785 [
3786 (IdResultType, One),
3787 (IdResult, One),
3788 (IdRef, One),
3789 (IdRef, One),
3790 (IdRef, One)
3791 ]
3792 ),
3793 inst!(
3794 ReadClockKHR,
3795 [ShaderClockKHR],
3796 [],
3797 [(IdResultType, One), (IdResult, One), (IdScope, One)]
3798 ),
3799 inst!(
3800 FinalizeNodePayloadsAMDX,
3801 [ShaderEnqueueAMDX],
3802 [],
3803 [(IdRef, One)]
3804 ),
3805 inst!(
3806 FinishWritingNodePayloadAMDX,
3807 [ShaderEnqueueAMDX],
3808 [],
3809 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3810 ),
3811 inst!(
3812 InitializeNodePayloadsAMDX,
3813 [ShaderEnqueueAMDX],
3814 [],
3815 [(IdRef, One), (IdScope, One), (IdRef, One), (IdRef, One)]
3816 ),
3817 inst!(
3818 HitObjectRecordHitMotionNV,
3819 [ShaderInvocationReorderNV, RayTracingMotionBlurNV],
3820 [],
3821 [
3822 (IdRef, One),
3823 (IdRef, One),
3824 (IdRef, One),
3825 (IdRef, One),
3826 (IdRef, One),
3827 (IdRef, One),
3828 (IdRef, One),
3829 (IdRef, One),
3830 (IdRef, One),
3831 (IdRef, One),
3832 (IdRef, One),
3833 (IdRef, One),
3834 (IdRef, One),
3835 (IdRef, One)
3836 ]
3837 ),
3838 inst!(
3839 HitObjectRecordHitWithIndexMotionNV,
3840 [ShaderInvocationReorderNV, RayTracingMotionBlurNV],
3841 [],
3842 [
3843 (IdRef, One),
3844 (IdRef, One),
3845 (IdRef, One),
3846 (IdRef, One),
3847 (IdRef, One),
3848 (IdRef, One),
3849 (IdRef, One),
3850 (IdRef, One),
3851 (IdRef, One),
3852 (IdRef, One),
3853 (IdRef, One),
3854 (IdRef, One),
3855 (IdRef, One)
3856 ]
3857 ),
3858 inst!(
3859 HitObjectRecordMissMotionNV,
3860 [ShaderInvocationReorderNV, RayTracingMotionBlurNV],
3861 [],
3862 [
3863 (IdRef, One),
3864 (IdRef, One),
3865 (IdRef, One),
3866 (IdRef, One),
3867 (IdRef, One),
3868 (IdRef, One),
3869 (IdRef, One)
3870 ]
3871 ),
3872 inst!(
3873 HitObjectGetWorldToObjectNV,
3874 [ShaderInvocationReorderNV],
3875 [],
3876 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3877 ),
3878 inst!(
3879 HitObjectGetObjectToWorldNV,
3880 [ShaderInvocationReorderNV],
3881 [],
3882 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3883 ),
3884 inst!(
3885 HitObjectGetObjectRayDirectionNV,
3886 [ShaderInvocationReorderNV],
3887 [],
3888 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3889 ),
3890 inst!(
3891 HitObjectGetObjectRayOriginNV,
3892 [ShaderInvocationReorderNV],
3893 [],
3894 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3895 ),
3896 inst!(
3897 HitObjectTraceRayMotionNV,
3898 [ShaderInvocationReorderNV, RayTracingMotionBlurNV],
3899 [],
3900 [
3901 (IdRef, One),
3902 (IdRef, One),
3903 (IdRef, One),
3904 (IdRef, One),
3905 (IdRef, One),
3906 (IdRef, One),
3907 (IdRef, One),
3908 (IdRef, One),
3909 (IdRef, One),
3910 (IdRef, One),
3911 (IdRef, One),
3912 (IdRef, One),
3913 (IdRef, One)
3914 ]
3915 ),
3916 inst!(
3917 HitObjectGetShaderRecordBufferHandleNV,
3918 [ShaderInvocationReorderNV],
3919 [],
3920 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3921 ),
3922 inst!(
3923 HitObjectGetShaderBindingTableRecordIndexNV,
3924 [ShaderInvocationReorderNV],
3925 [],
3926 [(IdResultType, One), (IdResult, One), (IdRef, One)]
3927 ),
3928 inst!(
3929 HitObjectRecordEmptyNV,
3930 [ShaderInvocationReorderNV],
3931 [],
3932 [(IdRef, One)]
3933 ),
3934 inst!(
3935 HitObjectTraceRayNV,
3936 [ShaderInvocationReorderNV],
3937 [],
3938 [
3939 (IdRef, One),
3940 (IdRef, One),
3941 (IdRef, One),
3942 (IdRef, One),
3943 (IdRef, One),
3944 (IdRef, One),
3945 (IdRef, One),
3946 (IdRef, One),
3947 (IdRef, One),
3948 (IdRef, One),
3949 (IdRef, One),
3950 (IdRef, One)
3951 ]
3952 ),
3953 inst!(
3954 HitObjectRecordHitNV,
3955 [ShaderInvocationReorderNV],
3956 [],
3957 [
3958 (IdRef, One),
3959 (IdRef, One),
3960 (IdRef, One),
3961 (IdRef, One),
3962 (IdRef, One),
3963 (IdRef, One),
3964 (IdRef, One),
3965 (IdRef, One),
3966 (IdRef, One),
3967 (IdRef, One),
3968 (IdRef, One),
3969 (IdRef, One),
3970 (IdRef, One)
3971 ]
3972 ),
3973 inst!(
3974 HitObjectRecordHitWithIndexNV,
3975 [ShaderInvocationReorderNV],
3976 [],
3977 [
3978 (IdRef, One),
3979 (IdRef, One),
3980 (IdRef, One),
3981 (IdRef, One),
3982 (IdRef, One),
3983 (IdRef, One),
3984 (IdRef, One),
3985 (IdRef, One),
3986 (IdRef, One),
3987 (IdRef, One),
3988 (IdRef, One),
3989 (IdRef, One)
3990 ]
3991 ),
3992 inst!(
3993 HitObjectRecordMissNV,
3994 [ShaderInvocationReorderNV],
3995 [],
3996 [
3997 (IdRef, One),
3998 (IdRef, One),
3999 (IdRef, One),
4000 (IdRef, One),
4001 (IdRef, One),
4002 (IdRef, One)
4003 ]
4004 ),
4005 inst!(
4006 HitObjectExecuteShaderNV,
4007 [ShaderInvocationReorderNV],
4008 [],
4009 [(IdRef, One), (IdRef, One)]
4010 ),
4011 inst!(
4012 HitObjectGetCurrentTimeNV,
4013 [ShaderInvocationReorderNV],
4014 [],
4015 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4016 ),
4017 inst!(
4018 HitObjectGetAttributesNV,
4019 [ShaderInvocationReorderNV],
4020 [],
4021 [(IdRef, One), (IdRef, One)]
4022 ),
4023 inst!(
4024 HitObjectGetHitKindNV,
4025 [ShaderInvocationReorderNV],
4026 [],
4027 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4028 ),
4029 inst!(
4030 HitObjectGetPrimitiveIndexNV,
4031 [ShaderInvocationReorderNV],
4032 [],
4033 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4034 ),
4035 inst!(
4036 HitObjectGetGeometryIndexNV,
4037 [ShaderInvocationReorderNV],
4038 [],
4039 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4040 ),
4041 inst!(
4042 HitObjectGetInstanceIdNV,
4043 [ShaderInvocationReorderNV],
4044 [],
4045 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4046 ),
4047 inst!(
4048 HitObjectGetInstanceCustomIndexNV,
4049 [ShaderInvocationReorderNV],
4050 [],
4051 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4052 ),
4053 inst!(
4054 HitObjectGetWorldRayDirectionNV,
4055 [ShaderInvocationReorderNV],
4056 [],
4057 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4058 ),
4059 inst!(
4060 HitObjectGetWorldRayOriginNV,
4061 [ShaderInvocationReorderNV],
4062 [],
4063 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4064 ),
4065 inst!(
4066 HitObjectGetRayTMaxNV,
4067 [ShaderInvocationReorderNV],
4068 [],
4069 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4070 ),
4071 inst!(
4072 HitObjectGetRayTMinNV,
4073 [ShaderInvocationReorderNV],
4074 [],
4075 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4076 ),
4077 inst!(
4078 HitObjectIsEmptyNV,
4079 [ShaderInvocationReorderNV],
4080 [],
4081 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4082 ),
4083 inst!(
4084 HitObjectIsHitNV,
4085 [ShaderInvocationReorderNV],
4086 [],
4087 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4088 ),
4089 inst!(
4090 HitObjectIsMissNV,
4091 [ShaderInvocationReorderNV],
4092 [],
4093 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4094 ),
4095 inst!(
4096 ReorderThreadWithHitObjectNV,
4097 [ShaderInvocationReorderNV],
4098 [],
4099 [(IdRef, One), (IdRef, ZeroOrOne), (IdRef, ZeroOrOne)]
4100 ),
4101 inst!(
4102 ReorderThreadWithHintNV,
4103 [ShaderInvocationReorderNV],
4104 [],
4105 [(IdRef, One), (IdRef, One)]
4106 ),
4107 inst!(
4108 TypeHitObjectNV,
4109 [ShaderInvocationReorderNV],
4110 [],
4111 [(IdResult, One)]
4112 ),
4113 inst!(
4114 ImageSampleFootprintNV,
4115 [ImageFootprintNV],
4116 ["SPV_NV_shader_image_footprint"],
4117 [
4118 (IdResultType, One),
4119 (IdResult, One),
4120 (IdRef, One),
4121 (IdRef, One),
4122 (IdRef, One),
4123 (IdRef, One),
4124 (ImageOperands, ZeroOrOne)
4125 ]
4126 ),
4127 inst!(
4128 EmitMeshTasksEXT,
4129 [MeshShadingEXT],
4130 [],
4131 [(IdRef, One), (IdRef, One), (IdRef, One), (IdRef, ZeroOrOne)]
4132 ),
4133 inst!(
4134 SetMeshOutputsEXT,
4135 [MeshShadingEXT],
4136 [],
4137 [(IdRef, One), (IdRef, One)]
4138 ),
4139 inst!(
4140 GroupNonUniformPartitionNV,
4141 [GroupNonUniformPartitionedNV],
4142 ["SPV_NV_shader_subgroup_partitioned"],
4143 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4144 ),
4145 inst!(
4146 WritePackedPrimitiveIndices4x8NV,
4147 [MeshShadingNV],
4148 ["SPV_NV_mesh_shader"],
4149 [(IdRef, One), (IdRef, One)]
4150 ),
4151 inst!(
4152 FetchMicroTriangleVertexPositionNV,
4153 [DisplacementMicromapNV],
4154 [],
4155 [
4156 (IdResultType, One),
4157 (IdResult, One),
4158 (IdRef, One),
4159 (IdRef, One),
4160 (IdRef, One),
4161 (IdRef, One),
4162 (IdRef, One)
4163 ]
4164 ),
4165 inst!(
4166 FetchMicroTriangleVertexBarycentricNV,
4167 [DisplacementMicromapNV],
4168 [],
4169 [
4170 (IdResultType, One),
4171 (IdResult, One),
4172 (IdRef, One),
4173 (IdRef, One),
4174 (IdRef, One),
4175 (IdRef, One),
4176 (IdRef, One)
4177 ]
4178 ),
4179 inst!(
4180 ReportIntersectionKHR,
4181 [RayTracingNV, RayTracingKHR],
4182 ["SPV_NV_ray_tracing", "SPV_KHR_ray_tracing"],
4183 [
4184 (IdResultType, One),
4185 (IdResult, One),
4186 (IdRef, One),
4187 (IdRef, One)
4188 ]
4189 ),
4190 inst!(
4191 ReportIntersectionNV,
4192 [RayTracingNV, RayTracingKHR],
4193 ["SPV_NV_ray_tracing", "SPV_KHR_ray_tracing"],
4194 [
4195 (IdResultType, One),
4196 (IdResult, One),
4197 (IdRef, One),
4198 (IdRef, One)
4199 ]
4200 ),
4201 inst!(
4202 IgnoreIntersectionNV,
4203 [RayTracingNV],
4204 ["SPV_NV_ray_tracing"],
4205 []
4206 ),
4207 inst!(TerminateRayNV, [RayTracingNV], ["SPV_NV_ray_tracing"], []),
4208 inst!(
4209 TraceNV,
4210 [RayTracingNV],
4211 ["SPV_NV_ray_tracing"],
4212 [
4213 (IdRef, One),
4214 (IdRef, One),
4215 (IdRef, One),
4216 (IdRef, One),
4217 (IdRef, One),
4218 (IdRef, One),
4219 (IdRef, One),
4220 (IdRef, One),
4221 (IdRef, One),
4222 (IdRef, One),
4223 (IdRef, One)
4224 ]
4225 ),
4226 inst!(
4227 TraceMotionNV,
4228 [RayTracingMotionBlurNV],
4229 ["SPV_NV_ray_tracing_motion_blur"],
4230 [
4231 (IdRef, One),
4232 (IdRef, One),
4233 (IdRef, One),
4234 (IdRef, One),
4235 (IdRef, One),
4236 (IdRef, One),
4237 (IdRef, One),
4238 (IdRef, One),
4239 (IdRef, One),
4240 (IdRef, One),
4241 (IdRef, One),
4242 (IdRef, One)
4243 ]
4244 ),
4245 inst!(
4246 TraceRayMotionNV,
4247 [RayTracingMotionBlurNV],
4248 ["SPV_NV_ray_tracing_motion_blur"],
4249 [
4250 (IdRef, One),
4251 (IdRef, One),
4252 (IdRef, One),
4253 (IdRef, One),
4254 (IdRef, One),
4255 (IdRef, One),
4256 (IdRef, One),
4257 (IdRef, One),
4258 (IdRef, One),
4259 (IdRef, One),
4260 (IdRef, One),
4261 (IdRef, One)
4262 ]
4263 ),
4264 inst!(
4265 RayQueryGetIntersectionTriangleVertexPositionsKHR,
4266 [RayQueryPositionFetchKHR],
4267 [],
4268 [
4269 (IdResultType, One),
4270 (IdResult, One),
4271 (IdRef, One),
4272 (IdRef, One)
4273 ]
4274 ),
4275 inst!(
4276 TypeAccelerationStructureKHR,
4277 [RayTracingNV, RayTracingKHR, RayQueryKHR],
4278 [
4279 "SPV_NV_ray_tracing",
4280 "SPV_KHR_ray_tracing",
4281 "SPV_KHR_ray_query"
4282 ],
4283 [(IdResult, One)]
4284 ),
4285 inst!(
4286 TypeAccelerationStructureNV,
4287 [RayTracingNV, RayTracingKHR, RayQueryKHR],
4288 [
4289 "SPV_NV_ray_tracing",
4290 "SPV_KHR_ray_tracing",
4291 "SPV_KHR_ray_query"
4292 ],
4293 [(IdResult, One)]
4294 ),
4295 inst!(
4296 ExecuteCallableNV,
4297 [RayTracingNV],
4298 ["SPV_NV_ray_tracing"],
4299 [(IdRef, One), (IdRef, One)]
4300 ),
4301 inst!(
4302 TypeCooperativeMatrixNV,
4303 [CooperativeMatrixNV],
4304 ["SPV_NV_cooperative_matrix"],
4305 [
4306 (IdResult, One),
4307 (IdRef, One),
4308 (IdScope, One),
4309 (IdRef, One),
4310 (IdRef, One)
4311 ]
4312 ),
4313 inst!(
4314 CooperativeMatrixLoadNV,
4315 [CooperativeMatrixNV],
4316 ["SPV_NV_cooperative_matrix"],
4317 [
4318 (IdResultType, One),
4319 (IdResult, One),
4320 (IdRef, One),
4321 (IdRef, One),
4322 (IdRef, One),
4323 (MemoryAccess, ZeroOrOne)
4324 ]
4325 ),
4326 inst!(
4327 CooperativeMatrixStoreNV,
4328 [CooperativeMatrixNV],
4329 ["SPV_NV_cooperative_matrix"],
4330 [
4331 (IdRef, One),
4332 (IdRef, One),
4333 (IdRef, One),
4334 (IdRef, One),
4335 (MemoryAccess, ZeroOrOne)
4336 ]
4337 ),
4338 inst!(
4339 CooperativeMatrixMulAddNV,
4340 [CooperativeMatrixNV],
4341 ["SPV_NV_cooperative_matrix"],
4342 [
4343 (IdResultType, One),
4344 (IdResult, One),
4345 (IdRef, One),
4346 (IdRef, One),
4347 (IdRef, One)
4348 ]
4349 ),
4350 inst!(
4351 CooperativeMatrixLengthNV,
4352 [CooperativeMatrixNV],
4353 ["SPV_NV_cooperative_matrix"],
4354 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4355 ),
4356 inst!(
4357 BeginInvocationInterlockEXT,
4358 [
4359 FragmentShaderSampleInterlockEXT,
4360 FragmentShaderPixelInterlockEXT,
4361 FragmentShaderShadingRateInterlockEXT
4362 ],
4363 ["SPV_EXT_fragment_shader_interlock"],
4364 []
4365 ),
4366 inst!(
4367 EndInvocationInterlockEXT,
4368 [
4369 FragmentShaderSampleInterlockEXT,
4370 FragmentShaderPixelInterlockEXT,
4371 FragmentShaderShadingRateInterlockEXT
4372 ],
4373 ["SPV_EXT_fragment_shader_interlock"],
4374 []
4375 ),
4376 inst!(DemoteToHelperInvocation, [DemoteToHelperInvocation], [], []),
4377 inst!(
4378 DemoteToHelperInvocationEXT,
4379 [DemoteToHelperInvocationEXT],
4380 [],
4381 []
4382 ),
4383 inst!(
4384 IsHelperInvocationEXT,
4385 [DemoteToHelperInvocationEXT],
4386 ["SPV_EXT_demote_to_helper_invocation"],
4387 [(IdResultType, One), (IdResult, One)]
4388 ),
4389 inst!(
4390 ConvertUToImageNV,
4391 [BindlessTextureNV],
4392 [],
4393 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4394 ),
4395 inst!(
4396 ConvertUToSamplerNV,
4397 [BindlessTextureNV],
4398 [],
4399 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4400 ),
4401 inst!(
4402 ConvertImageToUNV,
4403 [BindlessTextureNV],
4404 [],
4405 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4406 ),
4407 inst!(
4408 ConvertSamplerToUNV,
4409 [BindlessTextureNV],
4410 [],
4411 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4412 ),
4413 inst!(
4414 ConvertUToSampledImageNV,
4415 [BindlessTextureNV],
4416 [],
4417 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4418 ),
4419 inst!(
4420 ConvertSampledImageToUNV,
4421 [BindlessTextureNV],
4422 [],
4423 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4424 ),
4425 inst!(
4426 SamplerImageAddressingModeNV,
4427 [BindlessTextureNV],
4428 [],
4429 [(LiteralInteger, One)]
4430 ),
4431 inst!(
4432 SubgroupShuffleINTEL,
4433 [SubgroupShuffleINTEL],
4434 [],
4435 [
4436 (IdResultType, One),
4437 (IdResult, One),
4438 (IdRef, One),
4439 (IdRef, One)
4440 ]
4441 ),
4442 inst!(
4443 SubgroupShuffleDownINTEL,
4444 [SubgroupShuffleINTEL],
4445 [],
4446 [
4447 (IdResultType, One),
4448 (IdResult, One),
4449 (IdRef, One),
4450 (IdRef, One),
4451 (IdRef, One)
4452 ]
4453 ),
4454 inst!(
4455 SubgroupShuffleUpINTEL,
4456 [SubgroupShuffleINTEL],
4457 [],
4458 [
4459 (IdResultType, One),
4460 (IdResult, One),
4461 (IdRef, One),
4462 (IdRef, One),
4463 (IdRef, One)
4464 ]
4465 ),
4466 inst!(
4467 SubgroupShuffleXorINTEL,
4468 [SubgroupShuffleINTEL],
4469 [],
4470 [
4471 (IdResultType, One),
4472 (IdResult, One),
4473 (IdRef, One),
4474 (IdRef, One)
4475 ]
4476 ),
4477 inst!(
4478 SubgroupBlockReadINTEL,
4479 [SubgroupBufferBlockIOINTEL],
4480 [],
4481 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4482 ),
4483 inst!(
4484 SubgroupBlockWriteINTEL,
4485 [SubgroupBufferBlockIOINTEL],
4486 [],
4487 [(IdRef, One), (IdRef, One)]
4488 ),
4489 inst!(
4490 SubgroupImageBlockReadINTEL,
4491 [SubgroupImageBlockIOINTEL],
4492 [],
4493 [
4494 (IdResultType, One),
4495 (IdResult, One),
4496 (IdRef, One),
4497 (IdRef, One)
4498 ]
4499 ),
4500 inst!(
4501 SubgroupImageBlockWriteINTEL,
4502 [SubgroupImageBlockIOINTEL],
4503 [],
4504 [(IdRef, One), (IdRef, One), (IdRef, One)]
4505 ),
4506 inst!(
4507 SubgroupImageMediaBlockReadINTEL,
4508 [SubgroupImageMediaBlockIOINTEL],
4509 [],
4510 [
4511 (IdResultType, One),
4512 (IdResult, One),
4513 (IdRef, One),
4514 (IdRef, One),
4515 (IdRef, One),
4516 (IdRef, One)
4517 ]
4518 ),
4519 inst!(
4520 SubgroupImageMediaBlockWriteINTEL,
4521 [SubgroupImageMediaBlockIOINTEL],
4522 [],
4523 [
4524 (IdRef, One),
4525 (IdRef, One),
4526 (IdRef, One),
4527 (IdRef, One),
4528 (IdRef, One)
4529 ]
4530 ),
4531 inst!(
4532 UCountLeadingZerosINTEL,
4533 [IntegerFunctions2INTEL],
4534 [],
4535 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4536 ),
4537 inst!(
4538 UCountTrailingZerosINTEL,
4539 [IntegerFunctions2INTEL],
4540 [],
4541 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4542 ),
4543 inst!(
4544 AbsISubINTEL,
4545 [IntegerFunctions2INTEL],
4546 [],
4547 [
4548 (IdResultType, One),
4549 (IdResult, One),
4550 (IdRef, One),
4551 (IdRef, One)
4552 ]
4553 ),
4554 inst!(
4555 AbsUSubINTEL,
4556 [IntegerFunctions2INTEL],
4557 [],
4558 [
4559 (IdResultType, One),
4560 (IdResult, One),
4561 (IdRef, One),
4562 (IdRef, One)
4563 ]
4564 ),
4565 inst!(
4566 IAddSatINTEL,
4567 [IntegerFunctions2INTEL],
4568 [],
4569 [
4570 (IdResultType, One),
4571 (IdResult, One),
4572 (IdRef, One),
4573 (IdRef, One)
4574 ]
4575 ),
4576 inst!(
4577 UAddSatINTEL,
4578 [IntegerFunctions2INTEL],
4579 [],
4580 [
4581 (IdResultType, One),
4582 (IdResult, One),
4583 (IdRef, One),
4584 (IdRef, One)
4585 ]
4586 ),
4587 inst!(
4588 IAverageINTEL,
4589 [IntegerFunctions2INTEL],
4590 [],
4591 [
4592 (IdResultType, One),
4593 (IdResult, One),
4594 (IdRef, One),
4595 (IdRef, One)
4596 ]
4597 ),
4598 inst!(
4599 UAverageINTEL,
4600 [IntegerFunctions2INTEL],
4601 [],
4602 [
4603 (IdResultType, One),
4604 (IdResult, One),
4605 (IdRef, One),
4606 (IdRef, One)
4607 ]
4608 ),
4609 inst!(
4610 IAverageRoundedINTEL,
4611 [IntegerFunctions2INTEL],
4612 [],
4613 [
4614 (IdResultType, One),
4615 (IdResult, One),
4616 (IdRef, One),
4617 (IdRef, One)
4618 ]
4619 ),
4620 inst!(
4621 UAverageRoundedINTEL,
4622 [IntegerFunctions2INTEL],
4623 [],
4624 [
4625 (IdResultType, One),
4626 (IdResult, One),
4627 (IdRef, One),
4628 (IdRef, One)
4629 ]
4630 ),
4631 inst!(
4632 ISubSatINTEL,
4633 [IntegerFunctions2INTEL],
4634 [],
4635 [
4636 (IdResultType, One),
4637 (IdResult, One),
4638 (IdRef, One),
4639 (IdRef, One)
4640 ]
4641 ),
4642 inst!(
4643 USubSatINTEL,
4644 [IntegerFunctions2INTEL],
4645 [],
4646 [
4647 (IdResultType, One),
4648 (IdResult, One),
4649 (IdRef, One),
4650 (IdRef, One)
4651 ]
4652 ),
4653 inst!(
4654 IMul32x16INTEL,
4655 [IntegerFunctions2INTEL],
4656 [],
4657 [
4658 (IdResultType, One),
4659 (IdResult, One),
4660 (IdRef, One),
4661 (IdRef, One)
4662 ]
4663 ),
4664 inst!(
4665 UMul32x16INTEL,
4666 [IntegerFunctions2INTEL],
4667 [],
4668 [
4669 (IdResultType, One),
4670 (IdResult, One),
4671 (IdRef, One),
4672 (IdRef, One)
4673 ]
4674 ),
4675 inst!(
4676 ConstantFunctionPointerINTEL,
4677 [FunctionPointersINTEL],
4678 ["SPV_INTEL_function_pointers"],
4679 [(IdResultType, One), (IdResult, One), (IdRef, One)]
4680 ),
4681 inst!(
4682 FunctionPointerCallINTEL,
4683 [FunctionPointersINTEL],
4684 ["SPV_INTEL_function_pointers"],
4685 [(IdResultType, One), (IdResult, One), (IdRef, ZeroOrMore)]
4686 ),
4687 inst!(
4688 AsmTargetINTEL,
4689 [AsmINTEL],
4690 [],
4691 [(IdResultType, One), (IdResult, One), (LiteralString, One)]
4692 ),
4693 inst!(
4694 AsmINTEL,
4695 [AsmINTEL],
4696 [],
4697 [
4698 (IdResultType, One),
4699 (IdResult, One),
4700 (IdRef, One),
4701 (IdRef, One),
4702 (LiteralString, One),
4703 (LiteralString, One)
4704 ]
4705 ),
4706 inst!(
4707 AsmCallINTEL,
4708 [AsmINTEL],
4709 [],
4710 [
4711 (IdResultType, One),
4712 (IdResult, One),
4713 (IdRef, One),
4714 (IdRef, ZeroOrMore)
4715 ]
4716 ),
4717 inst!(
4718 AtomicFMinEXT,
4719 [
4720 AtomicFloat16MinMaxEXT,
4721 AtomicFloat32MinMaxEXT,
4722 AtomicFloat64MinMaxEXT
4723 ],
4724 [],
4725 [
4726 (IdResultType, One),
4727 (IdResult, One),
4728 (IdRef, One),
4729 (IdScope, One),
4730 (IdMemorySemantics, One),
4731 (IdRef, One)
4732 ]
4733 ),
4734 inst!(
4735 AtomicFMaxEXT,
4736 [
4737 AtomicFloat16MinMaxEXT,
4738 AtomicFloat32MinMaxEXT,
4739 AtomicFloat64MinMaxEXT
4740 ],
4741 [],
4742 [
4743 (IdResultType, One),
4744 (IdResult, One),
4745 (IdRef, One),
4746 (IdScope, One),
4747 (IdMemorySemantics, One),
4748 (IdRef, One)
4749 ]
4750 ),
4751 inst!(
4752 AssumeTrueKHR,
4753 [ExpectAssumeKHR],
4754 ["SPV_KHR_expect_assume"],
4755 [(IdRef, One)]
4756 ),
4757 inst!(
4758 ExpectKHR,
4759 [ExpectAssumeKHR],
4760 ["SPV_KHR_expect_assume"],
4761 [
4762 (IdResultType, One),
4763 (IdResult, One),
4764 (IdRef, One),
4765 (IdRef, One)
4766 ]
4767 ),
4768 inst!(
4769 DecorateString,
4770 [],
4771 [
4772 "SPV_GOOGLE_decorate_string",
4773 "SPV_GOOGLE_hlsl_functionality1"
4774 ],
4775 [(IdRef, One), (Decoration, One)]
4776 ),
4777 inst!(
4778 DecorateStringGOOGLE,
4779 [],
4780 [
4781 "SPV_GOOGLE_decorate_string",
4782 "SPV_GOOGLE_hlsl_functionality1"
4783 ],
4784 [(IdRef, One), (Decoration, One)]
4785 ),
4786 inst!(
4787 MemberDecorateString,
4788 [],
4789 [
4790 "SPV_GOOGLE_decorate_string",
4791 "SPV_GOOGLE_hlsl_functionality1"
4792 ],
4793 [(IdRef, One), (LiteralInteger, One), (Decoration, One)]
4794 ),
4795 inst!(
4796 MemberDecorateStringGOOGLE,
4797 [],
4798 [
4799 "SPV_GOOGLE_decorate_string",
4800 "SPV_GOOGLE_hlsl_functionality1"
4801 ],
4802 [(IdRef, One), (LiteralInteger, One), (Decoration, One)]
4803 ),
4804 inst!(
4805 VmeImageINTEL,
4806 [SubgroupAvcMotionEstimationINTEL],
4807 [],
4808 [
4809 (IdResultType, One),
4810 (IdResult, One),
4811 (IdRef, One),
4812 (IdRef, One)
4813 ]
4814 ),
4815 inst!(
4816 TypeVmeImageINTEL,
4817 [SubgroupAvcMotionEstimationINTEL],
4818 [],
4819 [(IdResult, One), (IdRef, One)]
4820 ),
4821 inst!(
4822 TypeAvcImePayloadINTEL,
4823 [SubgroupAvcMotionEstimationINTEL],
4824 [],
4825 [(IdResult, One)]
4826 ),
4827 inst!(
4828 TypeAvcRefPayloadINTEL,
4829 [SubgroupAvcMotionEstimationINTEL],
4830 [],
4831 [(IdResult, One)]
4832 ),
4833 inst!(
4834 TypeAvcSicPayloadINTEL,
4835 [SubgroupAvcMotionEstimationINTEL],
4836 [],
4837 [(IdResult, One)]
4838 ),
4839 inst!(
4840 TypeAvcMcePayloadINTEL,
4841 [SubgroupAvcMotionEstimationINTEL],
4842 [],
4843 [(IdResult, One)]
4844 ),
4845 inst!(
4846 TypeAvcMceResultINTEL,
4847 [SubgroupAvcMotionEstimationINTEL],
4848 [],
4849 [(IdResult, One)]
4850 ),
4851 inst!(
4852 TypeAvcImeResultINTEL,
4853 [SubgroupAvcMotionEstimationINTEL],
4854 [],
4855 [(IdResult, One)]
4856 ),
4857 inst!(
4858 TypeAvcImeResultSingleReferenceStreamoutINTEL,
4859 [SubgroupAvcMotionEstimationINTEL],
4860 [],
4861 [(IdResult, One)]
4862 ),
4863 inst!(
4864 TypeAvcImeResultDualReferenceStreamoutINTEL,
4865 [SubgroupAvcMotionEstimationINTEL],
4866 [],
4867 [(IdResult, One)]
4868 ),
4869 inst!(
4870 TypeAvcImeSingleReferenceStreaminINTEL,
4871 [SubgroupAvcMotionEstimationINTEL],
4872 [],
4873 [(IdResult, One)]
4874 ),
4875 inst!(
4876 TypeAvcImeDualReferenceStreaminINTEL,
4877 [SubgroupAvcMotionEstimationINTEL],
4878 [],
4879 [(IdResult, One)]
4880 ),
4881 inst!(
4882 TypeAvcRefResultINTEL,
4883 [SubgroupAvcMotionEstimationINTEL],
4884 [],
4885 [(IdResult, One)]
4886 ),
4887 inst!(
4888 TypeAvcSicResultINTEL,
4889 [SubgroupAvcMotionEstimationINTEL],
4890 [],
4891 [(IdResult, One)]
4892 ),
4893 inst!(
4894 SubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL,
4895 [SubgroupAvcMotionEstimationINTEL],
4896 [],
4897 [
4898 (IdResultType, One),
4899 (IdResult, One),
4900 (IdRef, One),
4901 (IdRef, One)
4902 ]
4903 ),
4904 inst!(
4905 SubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL,
4906 [SubgroupAvcMotionEstimationINTEL],
4907 [],
4908 [
4909 (IdResultType, One),
4910 (IdResult, One),
4911 (IdRef, One),
4912 (IdRef, One)
4913 ]
4914 ),
4915 inst!(
4916 SubgroupAvcMceGetDefaultInterShapePenaltyINTEL,
4917 [SubgroupAvcMotionEstimationINTEL],
4918 [],
4919 [
4920 (IdResultType, One),
4921 (IdResult, One),
4922 (IdRef, One),
4923 (IdRef, One)
4924 ]
4925 ),
4926 inst!(
4927 SubgroupAvcMceSetInterShapePenaltyINTEL,
4928 [SubgroupAvcMotionEstimationINTEL],
4929 [],
4930 [
4931 (IdResultType, One),
4932 (IdResult, One),
4933 (IdRef, One),
4934 (IdRef, One)
4935 ]
4936 ),
4937 inst!(
4938 SubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL,
4939 [SubgroupAvcMotionEstimationINTEL],
4940 [],
4941 [
4942 (IdResultType, One),
4943 (IdResult, One),
4944 (IdRef, One),
4945 (IdRef, One)
4946 ]
4947 ),
4948 inst!(
4949 SubgroupAvcMceSetInterDirectionPenaltyINTEL,
4950 [SubgroupAvcMotionEstimationINTEL],
4951 [],
4952 [
4953 (IdResultType, One),
4954 (IdResult, One),
4955 (IdRef, One),
4956 (IdRef, One)
4957 ]
4958 ),
4959 inst!(
4960 SubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL,
4961 [
4962 SubgroupAvcMotionEstimationINTEL,
4963 SubgroupAvcMotionEstimationIntraINTEL
4964 ],
4965 [],
4966 [
4967 (IdResultType, One),
4968 (IdResult, One),
4969 (IdRef, One),
4970 (IdRef, One)
4971 ]
4972 ),
4973 inst!(
4974 SubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL,
4975 [SubgroupAvcMotionEstimationINTEL],
4976 [],
4977 [
4978 (IdResultType, One),
4979 (IdResult, One),
4980 (IdRef, One),
4981 (IdRef, One)
4982 ]
4983 ),
4984 inst!(
4985 SubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL,
4986 [SubgroupAvcMotionEstimationINTEL],
4987 [],
4988 [(IdResultType, One), (IdResult, One)]
4989 ),
4990 inst!(
4991 SubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL,
4992 [SubgroupAvcMotionEstimationINTEL],
4993 [],
4994 [(IdResultType, One), (IdResult, One)]
4995 ),
4996 inst!(
4997 SubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL,
4998 [SubgroupAvcMotionEstimationINTEL],
4999 [],
5000 [(IdResultType, One), (IdResult, One)]
5001 ),
5002 inst!(
5003 SubgroupAvcMceSetMotionVectorCostFunctionINTEL,
5004 [SubgroupAvcMotionEstimationINTEL],
5005 [],
5006 [
5007 (IdResultType, One),
5008 (IdResult, One),
5009 (IdRef, One),
5010 (IdRef, One),
5011 (IdRef, One),
5012 (IdRef, One)
5013 ]
5014 ),
5015 inst!(
5016 SubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL,
5017 [
5018 SubgroupAvcMotionEstimationINTEL,
5019 SubgroupAvcMotionEstimationIntraINTEL
5020 ],
5021 [],
5022 [
5023 (IdResultType, One),
5024 (IdResult, One),
5025 (IdRef, One),
5026 (IdRef, One)
5027 ]
5028 ),
5029 inst!(
5030 SubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL,
5031 [
5032 SubgroupAvcMotionEstimationINTEL,
5033 SubgroupAvcMotionEstimationIntraINTEL
5034 ],
5035 [],
5036 [(IdResultType, One), (IdResult, One)]
5037 ),
5038 inst!(
5039 SubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL,
5040 [
5041 SubgroupAvcMotionEstimationINTEL,
5042 SubgroupAvcMotionEstimationChromaINTEL
5043 ],
5044 [],
5045 [(IdResultType, One), (IdResult, One)]
5046 ),
5047 inst!(
5048 SubgroupAvcMceSetAcOnlyHaarINTEL,
5049 [SubgroupAvcMotionEstimationINTEL],
5050 [],
5051 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5052 ),
5053 inst!(
5054 SubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL,
5055 [SubgroupAvcMotionEstimationINTEL],
5056 [],
5057 [
5058 (IdResultType, One),
5059 (IdResult, One),
5060 (IdRef, One),
5061 (IdRef, One)
5062 ]
5063 ),
5064 inst!(
5065 SubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL,
5066 [SubgroupAvcMotionEstimationINTEL],
5067 [],
5068 [
5069 (IdResultType, One),
5070 (IdResult, One),
5071 (IdRef, One),
5072 (IdRef, One)
5073 ]
5074 ),
5075 inst!(
5076 SubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL,
5077 [SubgroupAvcMotionEstimationINTEL],
5078 [],
5079 [
5080 (IdResultType, One),
5081 (IdResult, One),
5082 (IdRef, One),
5083 (IdRef, One),
5084 (IdRef, One)
5085 ]
5086 ),
5087 inst!(
5088 SubgroupAvcMceConvertToImePayloadINTEL,
5089 [SubgroupAvcMotionEstimationINTEL],
5090 [],
5091 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5092 ),
5093 inst!(
5094 SubgroupAvcMceConvertToImeResultINTEL,
5095 [SubgroupAvcMotionEstimationINTEL],
5096 [],
5097 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5098 ),
5099 inst!(
5100 SubgroupAvcMceConvertToRefPayloadINTEL,
5101 [SubgroupAvcMotionEstimationINTEL],
5102 [],
5103 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5104 ),
5105 inst!(
5106 SubgroupAvcMceConvertToRefResultINTEL,
5107 [SubgroupAvcMotionEstimationINTEL],
5108 [],
5109 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5110 ),
5111 inst!(
5112 SubgroupAvcMceConvertToSicPayloadINTEL,
5113 [SubgroupAvcMotionEstimationINTEL],
5114 [],
5115 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5116 ),
5117 inst!(
5118 SubgroupAvcMceConvertToSicResultINTEL,
5119 [SubgroupAvcMotionEstimationINTEL],
5120 [],
5121 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5122 ),
5123 inst!(
5124 SubgroupAvcMceGetMotionVectorsINTEL,
5125 [SubgroupAvcMotionEstimationINTEL],
5126 [],
5127 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5128 ),
5129 inst!(
5130 SubgroupAvcMceGetInterDistortionsINTEL,
5131 [SubgroupAvcMotionEstimationINTEL],
5132 [],
5133 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5134 ),
5135 inst!(
5136 SubgroupAvcMceGetBestInterDistortionsINTEL,
5137 [SubgroupAvcMotionEstimationINTEL],
5138 [],
5139 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5140 ),
5141 inst!(
5142 SubgroupAvcMceGetInterMajorShapeINTEL,
5143 [SubgroupAvcMotionEstimationINTEL],
5144 [],
5145 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5146 ),
5147 inst!(
5148 SubgroupAvcMceGetInterMinorShapeINTEL,
5149 [SubgroupAvcMotionEstimationINTEL],
5150 [],
5151 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5152 ),
5153 inst!(
5154 SubgroupAvcMceGetInterDirectionsINTEL,
5155 [SubgroupAvcMotionEstimationINTEL],
5156 [],
5157 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5158 ),
5159 inst!(
5160 SubgroupAvcMceGetInterMotionVectorCountINTEL,
5161 [SubgroupAvcMotionEstimationINTEL],
5162 [],
5163 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5164 ),
5165 inst!(
5166 SubgroupAvcMceGetInterReferenceIdsINTEL,
5167 [SubgroupAvcMotionEstimationINTEL],
5168 [],
5169 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5170 ),
5171 inst!(
5172 SubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL,
5173 [SubgroupAvcMotionEstimationINTEL],
5174 [],
5175 [
5176 (IdResultType, One),
5177 (IdResult, One),
5178 (IdRef, One),
5179 (IdRef, One),
5180 (IdRef, One)
5181 ]
5182 ),
5183 inst!(
5184 SubgroupAvcImeInitializeINTEL,
5185 [SubgroupAvcMotionEstimationINTEL],
5186 [],
5187 [
5188 (IdResultType, One),
5189 (IdResult, One),
5190 (IdRef, One),
5191 (IdRef, One),
5192 (IdRef, One)
5193 ]
5194 ),
5195 inst!(
5196 SubgroupAvcImeSetSingleReferenceINTEL,
5197 [SubgroupAvcMotionEstimationINTEL],
5198 [],
5199 [
5200 (IdResultType, One),
5201 (IdResult, One),
5202 (IdRef, One),
5203 (IdRef, One),
5204 (IdRef, One)
5205 ]
5206 ),
5207 inst!(
5208 SubgroupAvcImeSetDualReferenceINTEL,
5209 [SubgroupAvcMotionEstimationINTEL],
5210 [],
5211 [
5212 (IdResultType, One),
5213 (IdResult, One),
5214 (IdRef, One),
5215 (IdRef, One),
5216 (IdRef, One),
5217 (IdRef, One)
5218 ]
5219 ),
5220 inst!(
5221 SubgroupAvcImeRefWindowSizeINTEL,
5222 [SubgroupAvcMotionEstimationINTEL],
5223 [],
5224 [
5225 (IdResultType, One),
5226 (IdResult, One),
5227 (IdRef, One),
5228 (IdRef, One)
5229 ]
5230 ),
5231 inst!(
5232 SubgroupAvcImeAdjustRefOffsetINTEL,
5233 [SubgroupAvcMotionEstimationINTEL],
5234 [],
5235 [
5236 (IdResultType, One),
5237 (IdResult, One),
5238 (IdRef, One),
5239 (IdRef, One),
5240 (IdRef, One),
5241 (IdRef, One)
5242 ]
5243 ),
5244 inst!(
5245 SubgroupAvcImeConvertToMcePayloadINTEL,
5246 [SubgroupAvcMotionEstimationINTEL],
5247 [],
5248 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5249 ),
5250 inst!(
5251 SubgroupAvcImeSetMaxMotionVectorCountINTEL,
5252 [SubgroupAvcMotionEstimationINTEL],
5253 [],
5254 [
5255 (IdResultType, One),
5256 (IdResult, One),
5257 (IdRef, One),
5258 (IdRef, One)
5259 ]
5260 ),
5261 inst!(
5262 SubgroupAvcImeSetUnidirectionalMixDisableINTEL,
5263 [SubgroupAvcMotionEstimationINTEL],
5264 [],
5265 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5266 ),
5267 inst!(
5268 SubgroupAvcImeSetEarlySearchTerminationThresholdINTEL,
5269 [SubgroupAvcMotionEstimationINTEL],
5270 [],
5271 [
5272 (IdResultType, One),
5273 (IdResult, One),
5274 (IdRef, One),
5275 (IdRef, One)
5276 ]
5277 ),
5278 inst!(
5279 SubgroupAvcImeSetWeightedSadINTEL,
5280 [SubgroupAvcMotionEstimationINTEL],
5281 [],
5282 [
5283 (IdResultType, One),
5284 (IdResult, One),
5285 (IdRef, One),
5286 (IdRef, One)
5287 ]
5288 ),
5289 inst!(
5290 SubgroupAvcImeEvaluateWithSingleReferenceINTEL,
5291 [SubgroupAvcMotionEstimationINTEL],
5292 [],
5293 [
5294 (IdResultType, One),
5295 (IdResult, One),
5296 (IdRef, One),
5297 (IdRef, One),
5298 (IdRef, One)
5299 ]
5300 ),
5301 inst!(
5302 SubgroupAvcImeEvaluateWithDualReferenceINTEL,
5303 [SubgroupAvcMotionEstimationINTEL],
5304 [],
5305 [
5306 (IdResultType, One),
5307 (IdResult, One),
5308 (IdRef, One),
5309 (IdRef, One),
5310 (IdRef, One),
5311 (IdRef, One)
5312 ]
5313 ),
5314 inst!(
5315 SubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL,
5316 [SubgroupAvcMotionEstimationINTEL],
5317 [],
5318 [
5319 (IdResultType, One),
5320 (IdResult, One),
5321 (IdRef, One),
5322 (IdRef, One),
5323 (IdRef, One),
5324 (IdRef, One)
5325 ]
5326 ),
5327 inst!(
5328 SubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL,
5329 [SubgroupAvcMotionEstimationINTEL],
5330 [],
5331 [
5332 (IdResultType, One),
5333 (IdResult, One),
5334 (IdRef, One),
5335 (IdRef, One),
5336 (IdRef, One),
5337 (IdRef, One),
5338 (IdRef, One)
5339 ]
5340 ),
5341 inst!(
5342 SubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL,
5343 [SubgroupAvcMotionEstimationINTEL],
5344 [],
5345 [
5346 (IdResultType, One),
5347 (IdResult, One),
5348 (IdRef, One),
5349 (IdRef, One),
5350 (IdRef, One)
5351 ]
5352 ),
5353 inst!(
5354 SubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL,
5355 [SubgroupAvcMotionEstimationINTEL],
5356 [],
5357 [
5358 (IdResultType, One),
5359 (IdResult, One),
5360 (IdRef, One),
5361 (IdRef, One),
5362 (IdRef, One),
5363 (IdRef, One)
5364 ]
5365 ),
5366 inst!(
5367 SubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL,
5368 [SubgroupAvcMotionEstimationINTEL],
5369 [],
5370 [
5371 (IdResultType, One),
5372 (IdResult, One),
5373 (IdRef, One),
5374 (IdRef, One),
5375 (IdRef, One),
5376 (IdRef, One)
5377 ]
5378 ),
5379 inst!(
5380 SubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL,
5381 [SubgroupAvcMotionEstimationINTEL],
5382 [],
5383 [
5384 (IdResultType, One),
5385 (IdResult, One),
5386 (IdRef, One),
5387 (IdRef, One),
5388 (IdRef, One),
5389 (IdRef, One),
5390 (IdRef, One)
5391 ]
5392 ),
5393 inst!(
5394 SubgroupAvcImeConvertToMceResultINTEL,
5395 [SubgroupAvcMotionEstimationINTEL],
5396 [],
5397 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5398 ),
5399 inst!(
5400 SubgroupAvcImeGetSingleReferenceStreaminINTEL,
5401 [SubgroupAvcMotionEstimationINTEL],
5402 [],
5403 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5404 ),
5405 inst!(
5406 SubgroupAvcImeGetDualReferenceStreaminINTEL,
5407 [SubgroupAvcMotionEstimationINTEL],
5408 [],
5409 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5410 ),
5411 inst!(
5412 SubgroupAvcImeStripSingleReferenceStreamoutINTEL,
5413 [SubgroupAvcMotionEstimationINTEL],
5414 [],
5415 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5416 ),
5417 inst!(
5418 SubgroupAvcImeStripDualReferenceStreamoutINTEL,
5419 [SubgroupAvcMotionEstimationINTEL],
5420 [],
5421 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5422 ),
5423 inst!(
5424 SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL,
5425 [SubgroupAvcMotionEstimationINTEL],
5426 [],
5427 [
5428 (IdResultType, One),
5429 (IdResult, One),
5430 (IdRef, One),
5431 (IdRef, One)
5432 ]
5433 ),
5434 inst!(
5435 SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL,
5436 [SubgroupAvcMotionEstimationINTEL],
5437 [],
5438 [
5439 (IdResultType, One),
5440 (IdResult, One),
5441 (IdRef, One),
5442 (IdRef, One)
5443 ]
5444 ),
5445 inst!(
5446 SubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL,
5447 [SubgroupAvcMotionEstimationINTEL],
5448 [],
5449 [
5450 (IdResultType, One),
5451 (IdResult, One),
5452 (IdRef, One),
5453 (IdRef, One)
5454 ]
5455 ),
5456 inst!(
5457 SubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL,
5458 [SubgroupAvcMotionEstimationINTEL],
5459 [],
5460 [
5461 (IdResultType, One),
5462 (IdResult, One),
5463 (IdRef, One),
5464 (IdRef, One),
5465 (IdRef, One)
5466 ]
5467 ),
5468 inst!(
5469 SubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL,
5470 [SubgroupAvcMotionEstimationINTEL],
5471 [],
5472 [
5473 (IdResultType, One),
5474 (IdResult, One),
5475 (IdRef, One),
5476 (IdRef, One),
5477 (IdRef, One)
5478 ]
5479 ),
5480 inst!(
5481 SubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL,
5482 [SubgroupAvcMotionEstimationINTEL],
5483 [],
5484 [
5485 (IdResultType, One),
5486 (IdResult, One),
5487 (IdRef, One),
5488 (IdRef, One),
5489 (IdRef, One)
5490 ]
5491 ),
5492 inst!(
5493 SubgroupAvcImeGetBorderReachedINTEL,
5494 [SubgroupAvcMotionEstimationINTEL],
5495 [],
5496 [
5497 (IdResultType, One),
5498 (IdResult, One),
5499 (IdRef, One),
5500 (IdRef, One)
5501 ]
5502 ),
5503 inst!(
5504 SubgroupAvcImeGetTruncatedSearchIndicationINTEL,
5505 [SubgroupAvcMotionEstimationINTEL],
5506 [],
5507 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5508 ),
5509 inst!(
5510 SubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL,
5511 [SubgroupAvcMotionEstimationINTEL],
5512 [],
5513 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5514 ),
5515 inst!(
5516 SubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL,
5517 [SubgroupAvcMotionEstimationINTEL],
5518 [],
5519 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5520 ),
5521 inst!(
5522 SubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL,
5523 [SubgroupAvcMotionEstimationINTEL],
5524 [],
5525 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5526 ),
5527 inst!(
5528 SubgroupAvcFmeInitializeINTEL,
5529 [SubgroupAvcMotionEstimationINTEL],
5530 [],
5531 [
5532 (IdResultType, One),
5533 (IdResult, One),
5534 (IdRef, One),
5535 (IdRef, One),
5536 (IdRef, One),
5537 (IdRef, One),
5538 (IdRef, One),
5539 (IdRef, One),
5540 (IdRef, One)
5541 ]
5542 ),
5543 inst!(
5544 SubgroupAvcBmeInitializeINTEL,
5545 [SubgroupAvcMotionEstimationINTEL],
5546 [],
5547 [
5548 (IdResultType, One),
5549 (IdResult, One),
5550 (IdRef, One),
5551 (IdRef, One),
5552 (IdRef, One),
5553 (IdRef, One),
5554 (IdRef, One),
5555 (IdRef, One),
5556 (IdRef, One),
5557 (IdRef, One)
5558 ]
5559 ),
5560 inst!(
5561 SubgroupAvcRefConvertToMcePayloadINTEL,
5562 [SubgroupAvcMotionEstimationINTEL],
5563 [],
5564 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5565 ),
5566 inst!(
5567 SubgroupAvcRefSetBidirectionalMixDisableINTEL,
5568 [SubgroupAvcMotionEstimationINTEL],
5569 [],
5570 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5571 ),
5572 inst!(
5573 SubgroupAvcRefSetBilinearFilterEnableINTEL,
5574 [SubgroupAvcMotionEstimationINTEL],
5575 [],
5576 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5577 ),
5578 inst!(
5579 SubgroupAvcRefEvaluateWithSingleReferenceINTEL,
5580 [SubgroupAvcMotionEstimationINTEL],
5581 [],
5582 [
5583 (IdResultType, One),
5584 (IdResult, One),
5585 (IdRef, One),
5586 (IdRef, One),
5587 (IdRef, One)
5588 ]
5589 ),
5590 inst!(
5591 SubgroupAvcRefEvaluateWithDualReferenceINTEL,
5592 [SubgroupAvcMotionEstimationINTEL],
5593 [],
5594 [
5595 (IdResultType, One),
5596 (IdResult, One),
5597 (IdRef, One),
5598 (IdRef, One),
5599 (IdRef, One),
5600 (IdRef, One)
5601 ]
5602 ),
5603 inst!(
5604 SubgroupAvcRefEvaluateWithMultiReferenceINTEL,
5605 [SubgroupAvcMotionEstimationINTEL],
5606 [],
5607 [
5608 (IdResultType, One),
5609 (IdResult, One),
5610 (IdRef, One),
5611 (IdRef, One),
5612 (IdRef, One)
5613 ]
5614 ),
5615 inst!(
5616 SubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL,
5617 [SubgroupAvcMotionEstimationINTEL],
5618 [],
5619 [
5620 (IdResultType, One),
5621 (IdResult, One),
5622 (IdRef, One),
5623 (IdRef, One),
5624 (IdRef, One),
5625 (IdRef, One)
5626 ]
5627 ),
5628 inst!(
5629 SubgroupAvcRefConvertToMceResultINTEL,
5630 [SubgroupAvcMotionEstimationINTEL],
5631 [],
5632 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5633 ),
5634 inst!(
5635 SubgroupAvcSicInitializeINTEL,
5636 [SubgroupAvcMotionEstimationINTEL],
5637 [],
5638 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5639 ),
5640 inst!(
5641 SubgroupAvcSicConfigureSkcINTEL,
5642 [SubgroupAvcMotionEstimationINTEL],
5643 [],
5644 [
5645 (IdResultType, One),
5646 (IdResult, One),
5647 (IdRef, One),
5648 (IdRef, One),
5649 (IdRef, One),
5650 (IdRef, One),
5651 (IdRef, One),
5652 (IdRef, One)
5653 ]
5654 ),
5655 inst!(
5656 SubgroupAvcSicConfigureIpeLumaINTEL,
5657 [
5658 SubgroupAvcMotionEstimationINTEL,
5659 SubgroupAvcMotionEstimationIntraINTEL
5660 ],
5661 [],
5662 [
5663 (IdResultType, One),
5664 (IdResult, One),
5665 (IdRef, One),
5666 (IdRef, One),
5667 (IdRef, One),
5668 (IdRef, One),
5669 (IdRef, One),
5670 (IdRef, One),
5671 (IdRef, One),
5672 (IdRef, One)
5673 ]
5674 ),
5675 inst!(
5676 SubgroupAvcSicConfigureIpeLumaChromaINTEL,
5677 [
5678 SubgroupAvcMotionEstimationINTEL,
5679 SubgroupAvcMotionEstimationChromaINTEL
5680 ],
5681 [],
5682 [
5683 (IdResultType, One),
5684 (IdResult, One),
5685 (IdRef, One),
5686 (IdRef, One),
5687 (IdRef, One),
5688 (IdRef, One),
5689 (IdRef, One),
5690 (IdRef, One),
5691 (IdRef, One),
5692 (IdRef, One),
5693 (IdRef, One),
5694 (IdRef, One),
5695 (IdRef, One)
5696 ]
5697 ),
5698 inst!(
5699 SubgroupAvcSicGetMotionVectorMaskINTEL,
5700 [SubgroupAvcMotionEstimationINTEL],
5701 [],
5702 [
5703 (IdResultType, One),
5704 (IdResult, One),
5705 (IdRef, One),
5706 (IdRef, One)
5707 ]
5708 ),
5709 inst!(
5710 SubgroupAvcSicConvertToMcePayloadINTEL,
5711 [SubgroupAvcMotionEstimationINTEL],
5712 [],
5713 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5714 ),
5715 inst!(
5716 SubgroupAvcSicSetIntraLumaShapePenaltyINTEL,
5717 [SubgroupAvcMotionEstimationINTEL],
5718 [],
5719 [
5720 (IdResultType, One),
5721 (IdResult, One),
5722 (IdRef, One),
5723 (IdRef, One)
5724 ]
5725 ),
5726 inst!(
5727 SubgroupAvcSicSetIntraLumaModeCostFunctionINTEL,
5728 [
5729 SubgroupAvcMotionEstimationINTEL,
5730 SubgroupAvcMotionEstimationIntraINTEL
5731 ],
5732 [],
5733 [
5734 (IdResultType, One),
5735 (IdResult, One),
5736 (IdRef, One),
5737 (IdRef, One),
5738 (IdRef, One),
5739 (IdRef, One)
5740 ]
5741 ),
5742 inst!(
5743 SubgroupAvcSicSetIntraChromaModeCostFunctionINTEL,
5744 [
5745 SubgroupAvcMotionEstimationINTEL,
5746 SubgroupAvcMotionEstimationChromaINTEL
5747 ],
5748 [],
5749 [
5750 (IdResultType, One),
5751 (IdResult, One),
5752 (IdRef, One),
5753 (IdRef, One)
5754 ]
5755 ),
5756 inst!(
5757 SubgroupAvcSicSetBilinearFilterEnableINTEL,
5758 [SubgroupAvcMotionEstimationINTEL],
5759 [],
5760 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5761 ),
5762 inst!(
5763 SubgroupAvcSicSetSkcForwardTransformEnableINTEL,
5764 [SubgroupAvcMotionEstimationINTEL],
5765 [],
5766 [
5767 (IdResultType, One),
5768 (IdResult, One),
5769 (IdRef, One),
5770 (IdRef, One)
5771 ]
5772 ),
5773 inst!(
5774 SubgroupAvcSicSetBlockBasedRawSkipSadINTEL,
5775 [SubgroupAvcMotionEstimationINTEL],
5776 [],
5777 [
5778 (IdResultType, One),
5779 (IdResult, One),
5780 (IdRef, One),
5781 (IdRef, One)
5782 ]
5783 ),
5784 inst!(
5785 SubgroupAvcSicEvaluateIpeINTEL,
5786 [
5787 SubgroupAvcMotionEstimationINTEL,
5788 SubgroupAvcMotionEstimationIntraINTEL
5789 ],
5790 [],
5791 [
5792 (IdResultType, One),
5793 (IdResult, One),
5794 (IdRef, One),
5795 (IdRef, One)
5796 ]
5797 ),
5798 inst!(
5799 SubgroupAvcSicEvaluateWithSingleReferenceINTEL,
5800 [SubgroupAvcMotionEstimationINTEL],
5801 [],
5802 [
5803 (IdResultType, One),
5804 (IdResult, One),
5805 (IdRef, One),
5806 (IdRef, One),
5807 (IdRef, One)
5808 ]
5809 ),
5810 inst!(
5811 SubgroupAvcSicEvaluateWithDualReferenceINTEL,
5812 [SubgroupAvcMotionEstimationINTEL],
5813 [],
5814 [
5815 (IdResultType, One),
5816 (IdResult, One),
5817 (IdRef, One),
5818 (IdRef, One),
5819 (IdRef, One),
5820 (IdRef, One)
5821 ]
5822 ),
5823 inst!(
5824 SubgroupAvcSicEvaluateWithMultiReferenceINTEL,
5825 [SubgroupAvcMotionEstimationINTEL],
5826 [],
5827 [
5828 (IdResultType, One),
5829 (IdResult, One),
5830 (IdRef, One),
5831 (IdRef, One),
5832 (IdRef, One)
5833 ]
5834 ),
5835 inst!(
5836 SubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL,
5837 [SubgroupAvcMotionEstimationINTEL],
5838 [],
5839 [
5840 (IdResultType, One),
5841 (IdResult, One),
5842 (IdRef, One),
5843 (IdRef, One),
5844 (IdRef, One),
5845 (IdRef, One)
5846 ]
5847 ),
5848 inst!(
5849 SubgroupAvcSicConvertToMceResultINTEL,
5850 [SubgroupAvcMotionEstimationINTEL],
5851 [],
5852 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5853 ),
5854 inst!(
5855 SubgroupAvcSicGetIpeLumaShapeINTEL,
5856 [
5857 SubgroupAvcMotionEstimationINTEL,
5858 SubgroupAvcMotionEstimationIntraINTEL
5859 ],
5860 [],
5861 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5862 ),
5863 inst!(
5864 SubgroupAvcSicGetBestIpeLumaDistortionINTEL,
5865 [
5866 SubgroupAvcMotionEstimationINTEL,
5867 SubgroupAvcMotionEstimationIntraINTEL
5868 ],
5869 [],
5870 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5871 ),
5872 inst!(
5873 SubgroupAvcSicGetBestIpeChromaDistortionINTEL,
5874 [SubgroupAvcMotionEstimationINTEL],
5875 [],
5876 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5877 ),
5878 inst!(
5879 SubgroupAvcSicGetPackedIpeLumaModesINTEL,
5880 [
5881 SubgroupAvcMotionEstimationINTEL,
5882 SubgroupAvcMotionEstimationIntraINTEL
5883 ],
5884 [],
5885 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5886 ),
5887 inst!(
5888 SubgroupAvcSicGetIpeChromaModeINTEL,
5889 [
5890 SubgroupAvcMotionEstimationINTEL,
5891 SubgroupAvcMotionEstimationChromaINTEL
5892 ],
5893 [],
5894 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5895 ),
5896 inst!(
5897 SubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL,
5898 [
5899 SubgroupAvcMotionEstimationINTEL,
5900 SubgroupAvcMotionEstimationIntraINTEL
5901 ],
5902 [],
5903 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5904 ),
5905 inst!(
5906 SubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL,
5907 [
5908 SubgroupAvcMotionEstimationINTEL,
5909 SubgroupAvcMotionEstimationIntraINTEL
5910 ],
5911 [],
5912 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5913 ),
5914 inst!(
5915 SubgroupAvcSicGetInterRawSadsINTEL,
5916 [SubgroupAvcMotionEstimationINTEL],
5917 [],
5918 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5919 ),
5920 inst!(
5921 VariableLengthArrayINTEL,
5922 [VariableLengthArrayINTEL],
5923 [],
5924 [(IdResultType, One), (IdResult, One), (IdRef, One)]
5925 ),
5926 inst!(
5927 SaveMemoryINTEL,
5928 [VariableLengthArrayINTEL],
5929 [],
5930 [(IdResultType, One), (IdResult, One)]
5931 ),
5932 inst!(
5933 RestoreMemoryINTEL,
5934 [VariableLengthArrayINTEL],
5935 [],
5936 [(IdRef, One)]
5937 ),
5938 inst!(
5939 ArbitraryFloatSinCosPiINTEL,
5940 [ArbitraryPrecisionFloatingPointINTEL],
5941 [],
5942 [
5943 (IdResultType, One),
5944 (IdResult, One),
5945 (IdRef, One),
5946 (LiteralInteger, One),
5947 (LiteralInteger, One),
5948 (LiteralInteger, One),
5949 (LiteralInteger, One),
5950 (LiteralInteger, One),
5951 (LiteralInteger, One)
5952 ]
5953 ),
5954 inst!(
5955 ArbitraryFloatCastINTEL,
5956 [ArbitraryPrecisionFloatingPointINTEL],
5957 [],
5958 [
5959 (IdResultType, One),
5960 (IdResult, One),
5961 (IdRef, One),
5962 (LiteralInteger, One),
5963 (LiteralInteger, One),
5964 (LiteralInteger, One),
5965 (LiteralInteger, One),
5966 (LiteralInteger, One)
5967 ]
5968 ),
5969 inst!(
5970 ArbitraryFloatCastFromIntINTEL,
5971 [ArbitraryPrecisionFloatingPointINTEL],
5972 [],
5973 [
5974 (IdResultType, One),
5975 (IdResult, One),
5976 (IdRef, One),
5977 (LiteralInteger, One),
5978 (LiteralInteger, One),
5979 (LiteralInteger, One),
5980 (LiteralInteger, One),
5981 (LiteralInteger, One)
5982 ]
5983 ),
5984 inst!(
5985 ArbitraryFloatCastToIntINTEL,
5986 [ArbitraryPrecisionFloatingPointINTEL],
5987 [],
5988 [
5989 (IdResultType, One),
5990 (IdResult, One),
5991 (IdRef, One),
5992 (LiteralInteger, One),
5993 (LiteralInteger, One),
5994 (LiteralInteger, One),
5995 (LiteralInteger, One)
5996 ]
5997 ),
5998 inst!(
5999 ArbitraryFloatAddINTEL,
6000 [ArbitraryPrecisionFloatingPointINTEL],
6001 [],
6002 [
6003 (IdResultType, One),
6004 (IdResult, One),
6005 (IdRef, One),
6006 (LiteralInteger, One),
6007 (IdRef, One),
6008 (LiteralInteger, One),
6009 (LiteralInteger, One),
6010 (LiteralInteger, One),
6011 (LiteralInteger, One),
6012 (LiteralInteger, One)
6013 ]
6014 ),
6015 inst!(
6016 ArbitraryFloatSubINTEL,
6017 [ArbitraryPrecisionFloatingPointINTEL],
6018 [],
6019 [
6020 (IdResultType, One),
6021 (IdResult, One),
6022 (IdRef, One),
6023 (LiteralInteger, One),
6024 (IdRef, One),
6025 (LiteralInteger, One),
6026 (LiteralInteger, One),
6027 (LiteralInteger, One),
6028 (LiteralInteger, One),
6029 (LiteralInteger, One)
6030 ]
6031 ),
6032 inst!(
6033 ArbitraryFloatMulINTEL,
6034 [ArbitraryPrecisionFloatingPointINTEL],
6035 [],
6036 [
6037 (IdResultType, One),
6038 (IdResult, One),
6039 (IdRef, One),
6040 (LiteralInteger, One),
6041 (IdRef, One),
6042 (LiteralInteger, One),
6043 (LiteralInteger, One),
6044 (LiteralInteger, One),
6045 (LiteralInteger, One),
6046 (LiteralInteger, One)
6047 ]
6048 ),
6049 inst!(
6050 ArbitraryFloatDivINTEL,
6051 [ArbitraryPrecisionFloatingPointINTEL],
6052 [],
6053 [
6054 (IdResultType, One),
6055 (IdResult, One),
6056 (IdRef, One),
6057 (LiteralInteger, One),
6058 (IdRef, One),
6059 (LiteralInteger, One),
6060 (LiteralInteger, One),
6061 (LiteralInteger, One),
6062 (LiteralInteger, One),
6063 (LiteralInteger, One)
6064 ]
6065 ),
6066 inst!(
6067 ArbitraryFloatGTINTEL,
6068 [ArbitraryPrecisionFloatingPointINTEL],
6069 [],
6070 [
6071 (IdResultType, One),
6072 (IdResult, One),
6073 (IdRef, One),
6074 (LiteralInteger, One),
6075 (IdRef, One),
6076 (LiteralInteger, One)
6077 ]
6078 ),
6079 inst!(
6080 ArbitraryFloatGEINTEL,
6081 [ArbitraryPrecisionFloatingPointINTEL],
6082 [],
6083 [
6084 (IdResultType, One),
6085 (IdResult, One),
6086 (IdRef, One),
6087 (LiteralInteger, One),
6088 (IdRef, One),
6089 (LiteralInteger, One)
6090 ]
6091 ),
6092 inst!(
6093 ArbitraryFloatLTINTEL,
6094 [ArbitraryPrecisionFloatingPointINTEL],
6095 [],
6096 [
6097 (IdResultType, One),
6098 (IdResult, One),
6099 (IdRef, One),
6100 (LiteralInteger, One),
6101 (IdRef, One),
6102 (LiteralInteger, One)
6103 ]
6104 ),
6105 inst!(
6106 ArbitraryFloatLEINTEL,
6107 [ArbitraryPrecisionFloatingPointINTEL],
6108 [],
6109 [
6110 (IdResultType, One),
6111 (IdResult, One),
6112 (IdRef, One),
6113 (LiteralInteger, One),
6114 (IdRef, One),
6115 (LiteralInteger, One)
6116 ]
6117 ),
6118 inst!(
6119 ArbitraryFloatEQINTEL,
6120 [ArbitraryPrecisionFloatingPointINTEL],
6121 [],
6122 [
6123 (IdResultType, One),
6124 (IdResult, One),
6125 (IdRef, One),
6126 (LiteralInteger, One),
6127 (IdRef, One),
6128 (LiteralInteger, One)
6129 ]
6130 ),
6131 inst!(
6132 ArbitraryFloatRecipINTEL,
6133 [ArbitraryPrecisionFloatingPointINTEL],
6134 [],
6135 [
6136 (IdResultType, One),
6137 (IdResult, One),
6138 (IdRef, One),
6139 (LiteralInteger, One),
6140 (LiteralInteger, One),
6141 (LiteralInteger, One),
6142 (LiteralInteger, One),
6143 (LiteralInteger, One)
6144 ]
6145 ),
6146 inst!(
6147 ArbitraryFloatRSqrtINTEL,
6148 [ArbitraryPrecisionFloatingPointINTEL],
6149 [],
6150 [
6151 (IdResultType, One),
6152 (IdResult, One),
6153 (IdRef, One),
6154 (LiteralInteger, One),
6155 (LiteralInteger, One),
6156 (LiteralInteger, One),
6157 (LiteralInteger, One),
6158 (LiteralInteger, One)
6159 ]
6160 ),
6161 inst!(
6162 ArbitraryFloatCbrtINTEL,
6163 [ArbitraryPrecisionFloatingPointINTEL],
6164 [],
6165 [
6166 (IdResultType, One),
6167 (IdResult, One),
6168 (IdRef, One),
6169 (LiteralInteger, One),
6170 (LiteralInteger, One),
6171 (LiteralInteger, One),
6172 (LiteralInteger, One),
6173 (LiteralInteger, One)
6174 ]
6175 ),
6176 inst!(
6177 ArbitraryFloatHypotINTEL,
6178 [ArbitraryPrecisionFloatingPointINTEL],
6179 [],
6180 [
6181 (IdResultType, One),
6182 (IdResult, One),
6183 (IdRef, One),
6184 (LiteralInteger, One),
6185 (IdRef, One),
6186 (LiteralInteger, One),
6187 (LiteralInteger, One),
6188 (LiteralInteger, One),
6189 (LiteralInteger, One),
6190 (LiteralInteger, One)
6191 ]
6192 ),
6193 inst!(
6194 ArbitraryFloatSqrtINTEL,
6195 [ArbitraryPrecisionFloatingPointINTEL],
6196 [],
6197 [
6198 (IdResultType, One),
6199 (IdResult, One),
6200 (IdRef, One),
6201 (LiteralInteger, One),
6202 (LiteralInteger, One),
6203 (LiteralInteger, One),
6204 (LiteralInteger, One),
6205 (LiteralInteger, One)
6206 ]
6207 ),
6208 inst!(
6209 ArbitraryFloatLogINTEL,
6210 [ArbitraryPrecisionFloatingPointINTEL],
6211 [],
6212 [
6213 (IdResultType, One),
6214 (IdResult, One),
6215 (IdRef, One),
6216 (LiteralInteger, One),
6217 (LiteralInteger, One),
6218 (LiteralInteger, One),
6219 (LiteralInteger, One),
6220 (LiteralInteger, One)
6221 ]
6222 ),
6223 inst!(
6224 ArbitraryFloatLog2INTEL,
6225 [ArbitraryPrecisionFloatingPointINTEL],
6226 [],
6227 [
6228 (IdResultType, One),
6229 (IdResult, One),
6230 (IdRef, One),
6231 (LiteralInteger, One),
6232 (LiteralInteger, One),
6233 (LiteralInteger, One),
6234 (LiteralInteger, One),
6235 (LiteralInteger, One)
6236 ]
6237 ),
6238 inst!(
6239 ArbitraryFloatLog10INTEL,
6240 [ArbitraryPrecisionFloatingPointINTEL],
6241 [],
6242 [
6243 (IdResultType, One),
6244 (IdResult, One),
6245 (IdRef, One),
6246 (LiteralInteger, One),
6247 (LiteralInteger, One),
6248 (LiteralInteger, One),
6249 (LiteralInteger, One),
6250 (LiteralInteger, One)
6251 ]
6252 ),
6253 inst!(
6254 ArbitraryFloatLog1pINTEL,
6255 [ArbitraryPrecisionFloatingPointINTEL],
6256 [],
6257 [
6258 (IdResultType, One),
6259 (IdResult, One),
6260 (IdRef, One),
6261 (LiteralInteger, One),
6262 (LiteralInteger, One),
6263 (LiteralInteger, One),
6264 (LiteralInteger, One),
6265 (LiteralInteger, One)
6266 ]
6267 ),
6268 inst!(
6269 ArbitraryFloatExpINTEL,
6270 [ArbitraryPrecisionFloatingPointINTEL],
6271 [],
6272 [
6273 (IdResultType, One),
6274 (IdResult, One),
6275 (IdRef, One),
6276 (LiteralInteger, One),
6277 (LiteralInteger, One),
6278 (LiteralInteger, One),
6279 (LiteralInteger, One),
6280 (LiteralInteger, One)
6281 ]
6282 ),
6283 inst!(
6284 ArbitraryFloatExp2INTEL,
6285 [ArbitraryPrecisionFloatingPointINTEL],
6286 [],
6287 [
6288 (IdResultType, One),
6289 (IdResult, One),
6290 (IdRef, One),
6291 (LiteralInteger, One),
6292 (LiteralInteger, One),
6293 (LiteralInteger, One),
6294 (LiteralInteger, One),
6295 (LiteralInteger, One)
6296 ]
6297 ),
6298 inst!(
6299 ArbitraryFloatExp10INTEL,
6300 [ArbitraryPrecisionFloatingPointINTEL],
6301 [],
6302 [
6303 (IdResultType, One),
6304 (IdResult, One),
6305 (IdRef, One),
6306 (LiteralInteger, One),
6307 (LiteralInteger, One),
6308 (LiteralInteger, One),
6309 (LiteralInteger, One),
6310 (LiteralInteger, One)
6311 ]
6312 ),
6313 inst!(
6314 ArbitraryFloatExpm1INTEL,
6315 [ArbitraryPrecisionFloatingPointINTEL],
6316 [],
6317 [
6318 (IdResultType, One),
6319 (IdResult, One),
6320 (IdRef, One),
6321 (LiteralInteger, One),
6322 (LiteralInteger, One),
6323 (LiteralInteger, One),
6324 (LiteralInteger, One),
6325 (LiteralInteger, One)
6326 ]
6327 ),
6328 inst!(
6329 ArbitraryFloatSinINTEL,
6330 [ArbitraryPrecisionFloatingPointINTEL],
6331 [],
6332 [
6333 (IdResultType, One),
6334 (IdResult, One),
6335 (IdRef, One),
6336 (LiteralInteger, One),
6337 (LiteralInteger, One),
6338 (LiteralInteger, One),
6339 (LiteralInteger, One),
6340 (LiteralInteger, One)
6341 ]
6342 ),
6343 inst!(
6344 ArbitraryFloatCosINTEL,
6345 [ArbitraryPrecisionFloatingPointINTEL],
6346 [],
6347 [
6348 (IdResultType, One),
6349 (IdResult, One),
6350 (IdRef, One),
6351 (LiteralInteger, One),
6352 (LiteralInteger, One),
6353 (LiteralInteger, One),
6354 (LiteralInteger, One),
6355 (LiteralInteger, One)
6356 ]
6357 ),
6358 inst!(
6359 ArbitraryFloatSinCosINTEL,
6360 [ArbitraryPrecisionFloatingPointINTEL],
6361 [],
6362 [
6363 (IdResultType, One),
6364 (IdResult, One),
6365 (IdRef, One),
6366 (LiteralInteger, One),
6367 (LiteralInteger, One),
6368 (LiteralInteger, One),
6369 (LiteralInteger, One),
6370 (LiteralInteger, One)
6371 ]
6372 ),
6373 inst!(
6374 ArbitraryFloatSinPiINTEL,
6375 [ArbitraryPrecisionFloatingPointINTEL],
6376 [],
6377 [
6378 (IdResultType, One),
6379 (IdResult, One),
6380 (IdRef, One),
6381 (LiteralInteger, One),
6382 (LiteralInteger, One),
6383 (LiteralInteger, One),
6384 (LiteralInteger, One),
6385 (LiteralInteger, One)
6386 ]
6387 ),
6388 inst!(
6389 ArbitraryFloatCosPiINTEL,
6390 [ArbitraryPrecisionFloatingPointINTEL],
6391 [],
6392 [
6393 (IdResultType, One),
6394 (IdResult, One),
6395 (IdRef, One),
6396 (LiteralInteger, One),
6397 (LiteralInteger, One),
6398 (LiteralInteger, One),
6399 (LiteralInteger, One),
6400 (LiteralInteger, One)
6401 ]
6402 ),
6403 inst!(
6404 ArbitraryFloatASinINTEL,
6405 [ArbitraryPrecisionFloatingPointINTEL],
6406 [],
6407 [
6408 (IdResultType, One),
6409 (IdResult, One),
6410 (IdRef, One),
6411 (LiteralInteger, One),
6412 (LiteralInteger, One),
6413 (LiteralInteger, One),
6414 (LiteralInteger, One),
6415 (LiteralInteger, One)
6416 ]
6417 ),
6418 inst!(
6419 ArbitraryFloatASinPiINTEL,
6420 [ArbitraryPrecisionFloatingPointINTEL],
6421 [],
6422 [
6423 (IdResultType, One),
6424 (IdResult, One),
6425 (IdRef, One),
6426 (LiteralInteger, One),
6427 (LiteralInteger, One),
6428 (LiteralInteger, One),
6429 (LiteralInteger, One),
6430 (LiteralInteger, One)
6431 ]
6432 ),
6433 inst!(
6434 ArbitraryFloatACosINTEL,
6435 [ArbitraryPrecisionFloatingPointINTEL],
6436 [],
6437 [
6438 (IdResultType, One),
6439 (IdResult, One),
6440 (IdRef, One),
6441 (LiteralInteger, One),
6442 (LiteralInteger, One),
6443 (LiteralInteger, One),
6444 (LiteralInteger, One),
6445 (LiteralInteger, One)
6446 ]
6447 ),
6448 inst!(
6449 ArbitraryFloatACosPiINTEL,
6450 [ArbitraryPrecisionFloatingPointINTEL],
6451 [],
6452 [
6453 (IdResultType, One),
6454 (IdResult, One),
6455 (IdRef, One),
6456 (LiteralInteger, One),
6457 (LiteralInteger, One),
6458 (LiteralInteger, One),
6459 (LiteralInteger, One),
6460 (LiteralInteger, One)
6461 ]
6462 ),
6463 inst!(
6464 ArbitraryFloatATanINTEL,
6465 [ArbitraryPrecisionFloatingPointINTEL],
6466 [],
6467 [
6468 (IdResultType, One),
6469 (IdResult, One),
6470 (IdRef, One),
6471 (LiteralInteger, One),
6472 (LiteralInteger, One),
6473 (LiteralInteger, One),
6474 (LiteralInteger, One),
6475 (LiteralInteger, One)
6476 ]
6477 ),
6478 inst!(
6479 ArbitraryFloatATanPiINTEL,
6480 [ArbitraryPrecisionFloatingPointINTEL],
6481 [],
6482 [
6483 (IdResultType, One),
6484 (IdResult, One),
6485 (IdRef, One),
6486 (LiteralInteger, One),
6487 (LiteralInteger, One),
6488 (LiteralInteger, One),
6489 (LiteralInteger, One),
6490 (LiteralInteger, One)
6491 ]
6492 ),
6493 inst!(
6494 ArbitraryFloatATan2INTEL,
6495 [ArbitraryPrecisionFloatingPointINTEL],
6496 [],
6497 [
6498 (IdResultType, One),
6499 (IdResult, One),
6500 (IdRef, One),
6501 (LiteralInteger, One),
6502 (IdRef, One),
6503 (LiteralInteger, One),
6504 (LiteralInteger, One),
6505 (LiteralInteger, One),
6506 (LiteralInteger, One),
6507 (LiteralInteger, One)
6508 ]
6509 ),
6510 inst!(
6511 ArbitraryFloatPowINTEL,
6512 [ArbitraryPrecisionFloatingPointINTEL],
6513 [],
6514 [
6515 (IdResultType, One),
6516 (IdResult, One),
6517 (IdRef, One),
6518 (LiteralInteger, One),
6519 (IdRef, One),
6520 (LiteralInteger, One),
6521 (LiteralInteger, One),
6522 (LiteralInteger, One),
6523 (LiteralInteger, One),
6524 (LiteralInteger, One)
6525 ]
6526 ),
6527 inst!(
6528 ArbitraryFloatPowRINTEL,
6529 [ArbitraryPrecisionFloatingPointINTEL],
6530 [],
6531 [
6532 (IdResultType, One),
6533 (IdResult, One),
6534 (IdRef, One),
6535 (LiteralInteger, One),
6536 (IdRef, One),
6537 (LiteralInteger, One),
6538 (LiteralInteger, One),
6539 (LiteralInteger, One),
6540 (LiteralInteger, One),
6541 (LiteralInteger, One)
6542 ]
6543 ),
6544 inst!(
6545 ArbitraryFloatPowNINTEL,
6546 [ArbitraryPrecisionFloatingPointINTEL],
6547 [],
6548 [
6549 (IdResultType, One),
6550 (IdResult, One),
6551 (IdRef, One),
6552 (LiteralInteger, One),
6553 (IdRef, One),
6554 (LiteralInteger, One),
6555 (LiteralInteger, One),
6556 (LiteralInteger, One),
6557 (LiteralInteger, One)
6558 ]
6559 ),
6560 inst!(
6561 LoopControlINTEL,
6562 [UnstructuredLoopControlsINTEL],
6563 ["SPV_INTEL_unstructured_loop_controls"],
6564 [(LiteralInteger, ZeroOrMore)]
6565 ),
6566 inst!(
6567 AliasDomainDeclINTEL,
6568 [MemoryAccessAliasingINTEL],
6569 ["SPV_INTEL_memory_access_aliasing"],
6570 [(IdResult, One), (IdRef, ZeroOrOne)]
6571 ),
6572 inst!(
6573 AliasScopeDeclINTEL,
6574 [MemoryAccessAliasingINTEL],
6575 ["SPV_INTEL_memory_access_aliasing"],
6576 [(IdResult, One), (IdRef, One), (IdRef, ZeroOrOne)]
6577 ),
6578 inst!(
6579 AliasScopeListDeclINTEL,
6580 [MemoryAccessAliasingINTEL],
6581 ["SPV_INTEL_memory_access_aliasing"],
6582 [(IdResult, One), (IdRef, ZeroOrMore)]
6583 ),
6584 inst!(
6585 FixedSqrtINTEL,
6586 [ArbitraryPrecisionFixedPointINTEL],
6587 [],
6588 [
6589 (IdResultType, One),
6590 (IdResult, One),
6591 (IdRef, One),
6592 (IdRef, One),
6593 (LiteralInteger, One),
6594 (LiteralInteger, One),
6595 (LiteralInteger, One),
6596 (LiteralInteger, One),
6597 (LiteralInteger, One)
6598 ]
6599 ),
6600 inst!(
6601 FixedRecipINTEL,
6602 [ArbitraryPrecisionFixedPointINTEL],
6603 [],
6604 [
6605 (IdResultType, One),
6606 (IdResult, One),
6607 (IdRef, One),
6608 (IdRef, One),
6609 (LiteralInteger, One),
6610 (LiteralInteger, One),
6611 (LiteralInteger, One),
6612 (LiteralInteger, One),
6613 (LiteralInteger, One)
6614 ]
6615 ),
6616 inst!(
6617 FixedRsqrtINTEL,
6618 [ArbitraryPrecisionFixedPointINTEL],
6619 [],
6620 [
6621 (IdResultType, One),
6622 (IdResult, One),
6623 (IdRef, One),
6624 (IdRef, One),
6625 (LiteralInteger, One),
6626 (LiteralInteger, One),
6627 (LiteralInteger, One),
6628 (LiteralInteger, One),
6629 (LiteralInteger, One)
6630 ]
6631 ),
6632 inst!(
6633 FixedSinINTEL,
6634 [ArbitraryPrecisionFixedPointINTEL],
6635 [],
6636 [
6637 (IdResultType, One),
6638 (IdResult, One),
6639 (IdRef, One),
6640 (IdRef, One),
6641 (LiteralInteger, One),
6642 (LiteralInteger, One),
6643 (LiteralInteger, One),
6644 (LiteralInteger, One),
6645 (LiteralInteger, One)
6646 ]
6647 ),
6648 inst!(
6649 FixedCosINTEL,
6650 [ArbitraryPrecisionFixedPointINTEL],
6651 [],
6652 [
6653 (IdResultType, One),
6654 (IdResult, One),
6655 (IdRef, One),
6656 (IdRef, One),
6657 (LiteralInteger, One),
6658 (LiteralInteger, One),
6659 (LiteralInteger, One),
6660 (LiteralInteger, One),
6661 (LiteralInteger, One)
6662 ]
6663 ),
6664 inst!(
6665 FixedSinCosINTEL,
6666 [ArbitraryPrecisionFixedPointINTEL],
6667 [],
6668 [
6669 (IdResultType, One),
6670 (IdResult, One),
6671 (IdRef, One),
6672 (IdRef, One),
6673 (LiteralInteger, One),
6674 (LiteralInteger, One),
6675 (LiteralInteger, One),
6676 (LiteralInteger, One),
6677 (LiteralInteger, One)
6678 ]
6679 ),
6680 inst!(
6681 FixedSinPiINTEL,
6682 [ArbitraryPrecisionFixedPointINTEL],
6683 [],
6684 [
6685 (IdResultType, One),
6686 (IdResult, One),
6687 (IdRef, One),
6688 (IdRef, One),
6689 (LiteralInteger, One),
6690 (LiteralInteger, One),
6691 (LiteralInteger, One),
6692 (LiteralInteger, One),
6693 (LiteralInteger, One)
6694 ]
6695 ),
6696 inst!(
6697 FixedCosPiINTEL,
6698 [ArbitraryPrecisionFixedPointINTEL],
6699 [],
6700 [
6701 (IdResultType, One),
6702 (IdResult, One),
6703 (IdRef, One),
6704 (IdRef, One),
6705 (LiteralInteger, One),
6706 (LiteralInteger, One),
6707 (LiteralInteger, One),
6708 (LiteralInteger, One),
6709 (LiteralInteger, One)
6710 ]
6711 ),
6712 inst!(
6713 FixedSinCosPiINTEL,
6714 [ArbitraryPrecisionFixedPointINTEL],
6715 [],
6716 [
6717 (IdResultType, One),
6718 (IdResult, One),
6719 (IdRef, One),
6720 (IdRef, One),
6721 (LiteralInteger, One),
6722 (LiteralInteger, One),
6723 (LiteralInteger, One),
6724 (LiteralInteger, One),
6725 (LiteralInteger, One)
6726 ]
6727 ),
6728 inst!(
6729 FixedLogINTEL,
6730 [ArbitraryPrecisionFixedPointINTEL],
6731 [],
6732 [
6733 (IdResultType, One),
6734 (IdResult, One),
6735 (IdRef, One),
6736 (IdRef, One),
6737 (LiteralInteger, One),
6738 (LiteralInteger, One),
6739 (LiteralInteger, One),
6740 (LiteralInteger, One),
6741 (LiteralInteger, One)
6742 ]
6743 ),
6744 inst!(
6745 FixedExpINTEL,
6746 [ArbitraryPrecisionFixedPointINTEL],
6747 [],
6748 [
6749 (IdResultType, One),
6750 (IdResult, One),
6751 (IdRef, One),
6752 (IdRef, One),
6753 (LiteralInteger, One),
6754 (LiteralInteger, One),
6755 (LiteralInteger, One),
6756 (LiteralInteger, One),
6757 (LiteralInteger, One)
6758 ]
6759 ),
6760 inst!(
6761 PtrCastToCrossWorkgroupINTEL,
6762 [USMStorageClassesINTEL],
6763 [],
6764 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6765 ),
6766 inst!(
6767 CrossWorkgroupCastToPtrINTEL,
6768 [USMStorageClassesINTEL],
6769 [],
6770 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6771 ),
6772 inst!(
6773 ReadPipeBlockingINTEL,
6774 [BlockingPipesINTEL],
6775 ["SPV_INTEL_blocking_pipes"],
6776 [
6777 (IdResultType, One),
6778 (IdResult, One),
6779 (IdRef, One),
6780 (IdRef, One)
6781 ]
6782 ),
6783 inst!(
6784 WritePipeBlockingINTEL,
6785 [BlockingPipesINTEL],
6786 ["SPV_INTEL_blocking_pipes"],
6787 [
6788 (IdResultType, One),
6789 (IdResult, One),
6790 (IdRef, One),
6791 (IdRef, One)
6792 ]
6793 ),
6794 inst!(
6795 FPGARegINTEL,
6796 [FPGARegINTEL],
6797 ["SPV_INTEL_fpga_reg"],
6798 [
6799 (IdResultType, One),
6800 (IdResult, One),
6801 (IdRef, One),
6802 (IdRef, One)
6803 ]
6804 ),
6805 inst!(
6806 RayQueryGetRayTMinKHR,
6807 [RayQueryKHR],
6808 ["SPV_KHR_ray_query"],
6809 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6810 ),
6811 inst!(
6812 RayQueryGetRayFlagsKHR,
6813 [RayQueryKHR],
6814 ["SPV_KHR_ray_query"],
6815 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6816 ),
6817 inst!(
6818 RayQueryGetIntersectionTKHR,
6819 [RayQueryKHR],
6820 ["SPV_KHR_ray_query"],
6821 [
6822 (IdResultType, One),
6823 (IdResult, One),
6824 (IdRef, One),
6825 (IdRef, One)
6826 ]
6827 ),
6828 inst!(
6829 RayQueryGetIntersectionInstanceCustomIndexKHR,
6830 [RayQueryKHR],
6831 ["SPV_KHR_ray_query"],
6832 [
6833 (IdResultType, One),
6834 (IdResult, One),
6835 (IdRef, One),
6836 (IdRef, One)
6837 ]
6838 ),
6839 inst!(
6840 RayQueryGetIntersectionInstanceIdKHR,
6841 [RayQueryKHR],
6842 ["SPV_KHR_ray_query"],
6843 [
6844 (IdResultType, One),
6845 (IdResult, One),
6846 (IdRef, One),
6847 (IdRef, One)
6848 ]
6849 ),
6850 inst!(
6851 RayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR,
6852 [RayQueryKHR],
6853 ["SPV_KHR_ray_query"],
6854 [
6855 (IdResultType, One),
6856 (IdResult, One),
6857 (IdRef, One),
6858 (IdRef, One)
6859 ]
6860 ),
6861 inst!(
6862 RayQueryGetIntersectionGeometryIndexKHR,
6863 [RayQueryKHR],
6864 ["SPV_KHR_ray_query"],
6865 [
6866 (IdResultType, One),
6867 (IdResult, One),
6868 (IdRef, One),
6869 (IdRef, One)
6870 ]
6871 ),
6872 inst!(
6873 RayQueryGetIntersectionPrimitiveIndexKHR,
6874 [RayQueryKHR],
6875 ["SPV_KHR_ray_query"],
6876 [
6877 (IdResultType, One),
6878 (IdResult, One),
6879 (IdRef, One),
6880 (IdRef, One)
6881 ]
6882 ),
6883 inst!(
6884 RayQueryGetIntersectionBarycentricsKHR,
6885 [RayQueryKHR],
6886 ["SPV_KHR_ray_query"],
6887 [
6888 (IdResultType, One),
6889 (IdResult, One),
6890 (IdRef, One),
6891 (IdRef, One)
6892 ]
6893 ),
6894 inst!(
6895 RayQueryGetIntersectionFrontFaceKHR,
6896 [RayQueryKHR],
6897 ["SPV_KHR_ray_query"],
6898 [
6899 (IdResultType, One),
6900 (IdResult, One),
6901 (IdRef, One),
6902 (IdRef, One)
6903 ]
6904 ),
6905 inst!(
6906 RayQueryGetIntersectionCandidateAABBOpaqueKHR,
6907 [RayQueryKHR],
6908 ["SPV_KHR_ray_query"],
6909 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6910 ),
6911 inst!(
6912 RayQueryGetIntersectionObjectRayDirectionKHR,
6913 [RayQueryKHR],
6914 ["SPV_KHR_ray_query"],
6915 [
6916 (IdResultType, One),
6917 (IdResult, One),
6918 (IdRef, One),
6919 (IdRef, One)
6920 ]
6921 ),
6922 inst!(
6923 RayQueryGetIntersectionObjectRayOriginKHR,
6924 [RayQueryKHR],
6925 ["SPV_KHR_ray_query"],
6926 [
6927 (IdResultType, One),
6928 (IdResult, One),
6929 (IdRef, One),
6930 (IdRef, One)
6931 ]
6932 ),
6933 inst!(
6934 RayQueryGetWorldRayDirectionKHR,
6935 [RayQueryKHR],
6936 ["SPV_KHR_ray_query"],
6937 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6938 ),
6939 inst!(
6940 RayQueryGetWorldRayOriginKHR,
6941 [RayQueryKHR],
6942 ["SPV_KHR_ray_query"],
6943 [(IdResultType, One), (IdResult, One), (IdRef, One)]
6944 ),
6945 inst!(
6946 RayQueryGetIntersectionObjectToWorldKHR,
6947 [RayQueryKHR],
6948 ["SPV_KHR_ray_query"],
6949 [
6950 (IdResultType, One),
6951 (IdResult, One),
6952 (IdRef, One),
6953 (IdRef, One)
6954 ]
6955 ),
6956 inst!(
6957 RayQueryGetIntersectionWorldToObjectKHR,
6958 [RayQueryKHR],
6959 ["SPV_KHR_ray_query"],
6960 [
6961 (IdResultType, One),
6962 (IdResult, One),
6963 (IdRef, One),
6964 (IdRef, One)
6965 ]
6966 ),
6967 inst!(
6968 AtomicFAddEXT,
6969 [
6970 AtomicFloat16AddEXT,
6971 AtomicFloat32AddEXT,
6972 AtomicFloat64AddEXT
6973 ],
6974 ["SPV_EXT_shader_atomic_float_add"],
6975 [
6976 (IdResultType, One),
6977 (IdResult, One),
6978 (IdRef, One),
6979 (IdScope, One),
6980 (IdMemorySemantics, One),
6981 (IdRef, One)
6982 ]
6983 ),
6984 inst!(
6985 TypeBufferSurfaceINTEL,
6986 [VectorComputeINTEL],
6987 [],
6988 [(IdResult, One), (AccessQualifier, One)]
6989 ),
6990 inst!(
6991 TypeStructContinuedINTEL,
6992 [LongConstantCompositeINTEL],
6993 [],
6994 [(IdRef, ZeroOrMore)]
6995 ),
6996 inst!(
6997 ConstantCompositeContinuedINTEL,
6998 [LongConstantCompositeINTEL],
6999 [],
7000 [(IdRef, ZeroOrMore)]
7001 ),
7002 inst!(
7003 SpecConstantCompositeContinuedINTEL,
7004 [LongConstantCompositeINTEL],
7005 [],
7006 [(IdRef, ZeroOrMore)]
7007 ),
7008 inst!(
7009 ConvertFToBF16INTEL,
7010 [BFloat16ConversionINTEL],
7011 [],
7012 [(IdResultType, One), (IdResult, One), (IdRef, One)]
7013 ),
7014 inst!(
7015 ConvertBF16ToFINTEL,
7016 [BFloat16ConversionINTEL],
7017 [],
7018 [(IdResultType, One), (IdResult, One), (IdRef, One)]
7019 ),
7020 inst!(
7021 ControlBarrierArriveINTEL,
7022 [SplitBarrierINTEL],
7023 [],
7024 [(IdScope, One), (IdScope, One), (IdMemorySemantics, One)]
7025 ),
7026 inst!(
7027 ControlBarrierWaitINTEL,
7028 [SplitBarrierINTEL],
7029 [],
7030 [(IdScope, One), (IdScope, One), (IdMemorySemantics, One)]
7031 ),
7032 inst!(
7033 GroupIMulKHR,
7034 [GroupUniformArithmeticKHR],
7035 [],
7036 [
7037 (IdResultType, One),
7038 (IdResult, One),
7039 (IdScope, One),
7040 (GroupOperation, One),
7041 (IdRef, One)
7042 ]
7043 ),
7044 inst!(
7045 GroupFMulKHR,
7046 [GroupUniformArithmeticKHR],
7047 [],
7048 [
7049 (IdResultType, One),
7050 (IdResult, One),
7051 (IdScope, One),
7052 (GroupOperation, One),
7053 (IdRef, One)
7054 ]
7055 ),
7056 inst!(
7057 GroupBitwiseAndKHR,
7058 [GroupUniformArithmeticKHR],
7059 [],
7060 [
7061 (IdResultType, One),
7062 (IdResult, One),
7063 (IdScope, One),
7064 (GroupOperation, One),
7065 (IdRef, One)
7066 ]
7067 ),
7068 inst!(
7069 GroupBitwiseOrKHR,
7070 [GroupUniformArithmeticKHR],
7071 [],
7072 [
7073 (IdResultType, One),
7074 (IdResult, One),
7075 (IdScope, One),
7076 (GroupOperation, One),
7077 (IdRef, One)
7078 ]
7079 ),
7080 inst!(
7081 GroupBitwiseXorKHR,
7082 [GroupUniformArithmeticKHR],
7083 [],
7084 [
7085 (IdResultType, One),
7086 (IdResult, One),
7087 (IdScope, One),
7088 (GroupOperation, One),
7089 (IdRef, One)
7090 ]
7091 ),
7092 inst!(
7093 GroupLogicalAndKHR,
7094 [GroupUniformArithmeticKHR],
7095 [],
7096 [
7097 (IdResultType, One),
7098 (IdResult, One),
7099 (IdScope, One),
7100 (GroupOperation, One),
7101 (IdRef, One)
7102 ]
7103 ),
7104 inst!(
7105 GroupLogicalOrKHR,
7106 [GroupUniformArithmeticKHR],
7107 [],
7108 [
7109 (IdResultType, One),
7110 (IdResult, One),
7111 (IdScope, One),
7112 (GroupOperation, One),
7113 (IdRef, One)
7114 ]
7115 ),
7116 inst!(
7117 GroupLogicalXorKHR,
7118 [GroupUniformArithmeticKHR],
7119 [],
7120 [
7121 (IdResultType, One),
7122 (IdResult, One),
7123 (IdScope, One),
7124 (GroupOperation, One),
7125 (IdRef, One)
7126 ]
7127 ),
7128];