@@ -168,6 +168,10 @@ enum ExecutionMode {
168
168
ExecutionModeSampleInterlockUnorderedEXT = 5369 ,
169
169
ExecutionModeShadingRateInterlockOrderedEXT = 5370 ,
170
170
ExecutionModeShadingRateInterlockUnorderedEXT = 5371 ,
171
+ ExecutionModeMaxWorkgroupSizeINTEL = 5893 ,
172
+ ExecutionModeMaxWorkDimINTEL = 5894 ,
173
+ ExecutionModeNoGlobalOffsetINTEL = 5895 ,
174
+ ExecutionModeNumSIMDWorkitemsINTEL = 5896 ,
171
175
ExecutionModeMax = 0x7fffffff ,
172
176
};
173
177
@@ -199,6 +203,7 @@ enum StorageClass {
199
203
StorageClassShaderRecordBufferNV = 5343 ,
200
204
StorageClassPhysicalStorageBuffer = 5349 ,
201
205
StorageClassPhysicalStorageBufferEXT = 5349 ,
206
+ StorageClassCodeSectionINTEL = 5605 ,
202
207
StorageClassMax = 0x7fffffff ,
203
208
};
204
209
@@ -477,11 +482,24 @@ enum Decoration {
477
482
DecorationRestrictPointerEXT = 5355 ,
478
483
DecorationAliasedPointer = 5356 ,
479
484
DecorationAliasedPointerEXT = 5356 ,
485
+ DecorationReferencedIndirectlyINTEL = 5602 ,
480
486
DecorationCounterBuffer = 5634 ,
481
487
DecorationHlslCounterBufferGOOGLE = 5634 ,
482
488
DecorationHlslSemanticGOOGLE = 5635 ,
483
489
DecorationUserSemantic = 5635 ,
484
490
DecorationUserTypeGOOGLE = 5636 ,
491
+ DecorationRegisterINTEL = 5825 ,
492
+ DecorationMemoryINTEL = 5826 ,
493
+ DecorationNumbanksINTEL = 5827 ,
494
+ DecorationBankwidthINTEL = 5828 ,
495
+ DecorationMaxPrivateCopiesINTEL = 5829 ,
496
+ DecorationSinglepumpINTEL = 5830 ,
497
+ DecorationDoublepumpINTEL = 5831 ,
498
+ DecorationMaxReplicatesINTEL = 5832 ,
499
+ DecorationSimpleDualPortINTEL = 5833 ,
500
+ DecorationMergeINTEL = 5834 ,
501
+ DecorationBankBitsINTEL = 5835 ,
502
+ DecorationForcePow2DepthINTEL = 5836 ,
485
503
DecorationMax = 0x7fffffff ,
486
504
};
487
505
@@ -628,6 +646,13 @@ enum LoopControlShift {
628
646
LoopControlIterationMultipleShift = 6 ,
629
647
LoopControlPeelCountShift = 7 ,
630
648
LoopControlPartialCountShift = 8 ,
649
+ LoopControlInitiationIntervalINTELShift = 16 ,
650
+ LoopControlMaxConcurrencyINTELShift = 17 ,
651
+ LoopControlDependencyArrayINTELShift = 18 ,
652
+ LoopControlPipelineEnableINTELShift = 19 ,
653
+ LoopControlLoopCoalesceINTELShift = 20 ,
654
+ LoopControlMaxInterleavingINTELShift = 21 ,
655
+ LoopControlSpeculatedIterationsINTELShift = 22 ,
631
656
LoopControlMax = 0x7fffffff ,
632
657
};
633
658
@@ -642,6 +667,13 @@ enum LoopControlMask {
642
667
LoopControlIterationMultipleMask = 0x00000040 ,
643
668
LoopControlPeelCountMask = 0x00000080 ,
644
669
LoopControlPartialCountMask = 0x00000100 ,
670
+ LoopControlInitiationIntervalINTELMask = 0x00010000 ,
671
+ LoopControlMaxConcurrencyINTELMask = 0x00020000 ,
672
+ LoopControlDependencyArrayINTELMask = 0x00040000 ,
673
+ LoopControlPipelineEnableINTELMask = 0x00080000 ,
674
+ LoopControlLoopCoalesceINTELMask = 0x00100000 ,
675
+ LoopControlMaxInterleavingINTELMask = 0x00200000 ,
676
+ LoopControlSpeculatedIterationsINTELMask = 0x00400000 ,
645
677
};
646
678
647
679
enum FunctionControlShift {
@@ -928,9 +960,20 @@ enum Capability {
928
960
CapabilitySubgroupImageBlockIOINTEL = 5570 ,
929
961
CapabilitySubgroupImageMediaBlockIOINTEL = 5579 ,
930
962
CapabilityIntegerFunctions2INTEL = 5584 ,
963
+ CapabilityFunctionPointersINTEL = 5603 ,
964
+ CapabilityIndirectReferencesINTEL = 5604 ,
931
965
CapabilitySubgroupAvcMotionEstimationINTEL = 5696 ,
932
966
CapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697 ,
933
967
CapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698 ,
968
+ CapabilityFPGAMemoryAttributesINTEL = 5824 ,
969
+ CapabilityUnstructuredLoopControlsINTEL = 5886 ,
970
+ CapabilityFPGALoopControlsINTEL = 5888 ,
971
+ CapabilityKernelAttributesINTEL = 5892 ,
972
+ CapabilityFPGAKernelAttributesINTEL = 5897 ,
973
+ CapabilityBlockingPipesINTEL = 5945 ,
974
+ CapabilityFPGARegINTEL = 5948 ,
975
+ CapabilityAtomicFloat32AddEXT = 6033 ,
976
+ CapabilityAtomicFloat64AddEXT = 6034 ,
934
977
CapabilityMax = 0x7fffffff ,
935
978
};
936
979
@@ -1398,6 +1441,8 @@ enum Op {
1398
1441
OpUSubSatINTEL = 5596 ,
1399
1442
OpIMul32x16INTEL = 5597 ,
1400
1443
OpUMul32x16INTEL = 5598 ,
1444
+ OpFunctionPointerINTEL = 5600 ,
1445
+ OpFunctionPointerCallINTEL = 5601 ,
1401
1446
OpDecorateString = 5632 ,
1402
1447
OpDecorateStringGOOGLE = 5632 ,
1403
1448
OpMemberDecorateString = 5633 ,
@@ -1520,6 +1565,10 @@ enum Op {
1520
1565
OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814 ,
1521
1566
OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815 ,
1522
1567
OpSubgroupAvcSicGetInterRawSadsINTEL = 5816 ,
1568
+ OpLoopControlINTEL = 5887 ,
1569
+ OpReadPipeBlockingINTEL = 5946 ,
1570
+ OpWritePipeBlockingINTEL = 5947 ,
1571
+ OpFPGARegINTEL = 5949 ,
1523
1572
OpRayQueryGetRayTMinKHR = 6016 ,
1524
1573
OpRayQueryGetRayFlagsKHR = 6017 ,
1525
1574
OpRayQueryGetIntersectionTKHR = 6018 ,
@@ -1537,6 +1586,7 @@ enum Op {
1537
1586
OpRayQueryGetWorldRayOriginKHR = 6030 ,
1538
1587
OpRayQueryGetIntersectionObjectToWorldKHR = 6031 ,
1539
1588
OpRayQueryGetIntersectionWorldToObjectKHR = 6032 ,
1589
+ OpAtomicFAddEXT = 6035 ,
1540
1590
OpMax = 0x7fffffff ,
1541
1591
};
1542
1592
@@ -1955,6 +2005,8 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
1955
2005
case OpUSubSatINTEL: *hasResult = true ; *hasResultType = true ; break ;
1956
2006
case OpIMul32x16INTEL: *hasResult = true ; *hasResultType = true ; break ;
1957
2007
case OpUMul32x16INTEL: *hasResult = true ; *hasResultType = true ; break ;
2008
+ case OpFunctionPointerINTEL: *hasResult = true ; *hasResultType = true ; break ;
2009
+ case OpFunctionPointerCallINTEL: *hasResult = true ; *hasResultType = true ; break ;
1958
2010
case OpDecorateString: *hasResult = false ; *hasResultType = false ; break ;
1959
2011
case OpMemberDecorateString: *hasResult = false ; *hasResultType = false ; break ;
1960
2012
case OpVmeImageINTEL: *hasResult = true ; *hasResultType = true ; break ;
@@ -2075,6 +2127,10 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
2075
2127
case OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL: *hasResult = true ; *hasResultType = true ; break ;
2076
2128
case OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL: *hasResult = true ; *hasResultType = true ; break ;
2077
2129
case OpSubgroupAvcSicGetInterRawSadsINTEL: *hasResult = true ; *hasResultType = true ; break ;
2130
+ case OpLoopControlINTEL: *hasResult = false ; *hasResultType = false ; break ;
2131
+ case OpReadPipeBlockingINTEL: *hasResult = true ; *hasResultType = true ; break ;
2132
+ case OpWritePipeBlockingINTEL: *hasResult = true ; *hasResultType = true ; break ;
2133
+ case OpFPGARegINTEL: *hasResult = true ; *hasResultType = true ; break ;
2078
2134
case OpRayQueryGetRayTMinKHR: *hasResult = true ; *hasResultType = true ; break ;
2079
2135
case OpRayQueryGetRayFlagsKHR: *hasResult = true ; *hasResultType = true ; break ;
2080
2136
case OpRayQueryGetIntersectionTKHR: *hasResult = true ; *hasResultType = true ; break ;
@@ -2092,6 +2148,7 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
2092
2148
case OpRayQueryGetWorldRayOriginKHR: *hasResult = true ; *hasResultType = true ; break ;
2093
2149
case OpRayQueryGetIntersectionObjectToWorldKHR: *hasResult = true ; *hasResultType = true ; break ;
2094
2150
case OpRayQueryGetIntersectionWorldToObjectKHR: *hasResult = true ; *hasResultType = true ; break ;
2151
+ case OpAtomicFAddEXT: *hasResult = true ; *hasResultType = true ; break ;
2095
2152
}
2096
2153
}
2097
2154
#endif /* SPV_ENABLE_UTILITY_CODE */
0 commit comments