|
@@ -1,5 +1,5 @@
|
|
|
/*
|
|
/*
|
|
|
-** Copyright (c) 2014-2020 The Khronos Group Inc.
|
|
|
|
|
|
|
+** Copyright (c) 2014-2024 The Khronos Group Inc.
|
|
|
**
|
|
**
|
|
|
** Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
** Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
** of this software and/or associated documentation files (the "Materials"),
|
|
** of this software and/or associated documentation files (the "Materials"),
|
|
@@ -77,6 +77,7 @@ typedef enum SpvSourceLanguage_ {
|
|
|
SpvSourceLanguageNZSL = 9,
|
|
SpvSourceLanguageNZSL = 9,
|
|
|
SpvSourceLanguageWGSL = 10,
|
|
SpvSourceLanguageWGSL = 10,
|
|
|
SpvSourceLanguageSlang = 11,
|
|
SpvSourceLanguageSlang = 11,
|
|
|
|
|
+ SpvSourceLanguageZig = 12,
|
|
|
SpvSourceLanguageMax = 0x7fffffff,
|
|
SpvSourceLanguageMax = 0x7fffffff,
|
|
|
} SpvSourceLanguage;
|
|
} SpvSourceLanguage;
|
|
|
|
|
|
|
@@ -187,6 +188,8 @@ typedef enum SpvExecutionMode_ {
|
|
|
SpvExecutionModeStencilRefUnchangedBackAMD = 5082,
|
|
SpvExecutionModeStencilRefUnchangedBackAMD = 5082,
|
|
|
SpvExecutionModeStencilRefGreaterBackAMD = 5083,
|
|
SpvExecutionModeStencilRefGreaterBackAMD = 5083,
|
|
|
SpvExecutionModeStencilRefLessBackAMD = 5084,
|
|
SpvExecutionModeStencilRefLessBackAMD = 5084,
|
|
|
|
|
+ SpvExecutionModeQuadDerivativesKHR = 5088,
|
|
|
|
|
+ SpvExecutionModeRequireFullQuadsKHR = 5089,
|
|
|
SpvExecutionModeOutputLinesEXT = 5269,
|
|
SpvExecutionModeOutputLinesEXT = 5269,
|
|
|
SpvExecutionModeOutputLinesNV = 5269,
|
|
SpvExecutionModeOutputLinesNV = 5269,
|
|
|
SpvExecutionModeOutputPrimitivesEXT = 5270,
|
|
SpvExecutionModeOutputPrimitivesEXT = 5270,
|
|
@@ -211,6 +214,8 @@ typedef enum SpvExecutionMode_ {
|
|
|
SpvExecutionModeNoGlobalOffsetINTEL = 5895,
|
|
SpvExecutionModeNoGlobalOffsetINTEL = 5895,
|
|
|
SpvExecutionModeNumSIMDWorkitemsINTEL = 5896,
|
|
SpvExecutionModeNumSIMDWorkitemsINTEL = 5896,
|
|
|
SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903,
|
|
SpvExecutionModeSchedulerTargetFmaxMhzINTEL = 5903,
|
|
|
|
|
+ SpvExecutionModeMaximallyReconvergesKHR = 6023,
|
|
|
|
|
+ SpvExecutionModeFPFastMathDefault = 6028,
|
|
|
SpvExecutionModeStreamingInterfaceINTEL = 6154,
|
|
SpvExecutionModeStreamingInterfaceINTEL = 6154,
|
|
|
SpvExecutionModeRegisterMapInterfaceINTEL = 6160,
|
|
SpvExecutionModeRegisterMapInterfaceINTEL = 6160,
|
|
|
SpvExecutionModeNamedBarrierCountINTEL = 6417,
|
|
SpvExecutionModeNamedBarrierCountINTEL = 6417,
|
|
@@ -430,8 +435,11 @@ typedef enum SpvFPFastMathModeShift_ {
|
|
|
SpvFPFastMathModeNSZShift = 2,
|
|
SpvFPFastMathModeNSZShift = 2,
|
|
|
SpvFPFastMathModeAllowRecipShift = 3,
|
|
SpvFPFastMathModeAllowRecipShift = 3,
|
|
|
SpvFPFastMathModeFastShift = 4,
|
|
SpvFPFastMathModeFastShift = 4,
|
|
|
|
|
+ SpvFPFastMathModeAllowContractShift = 16,
|
|
|
SpvFPFastMathModeAllowContractFastINTELShift = 16,
|
|
SpvFPFastMathModeAllowContractFastINTELShift = 16,
|
|
|
|
|
+ SpvFPFastMathModeAllowReassocShift = 17,
|
|
|
SpvFPFastMathModeAllowReassocINTELShift = 17,
|
|
SpvFPFastMathModeAllowReassocINTELShift = 17,
|
|
|
|
|
+ SpvFPFastMathModeAllowTransformShift = 18,
|
|
|
SpvFPFastMathModeMax = 0x7fffffff,
|
|
SpvFPFastMathModeMax = 0x7fffffff,
|
|
|
} SpvFPFastMathModeShift;
|
|
} SpvFPFastMathModeShift;
|
|
|
|
|
|
|
@@ -442,8 +450,11 @@ typedef enum SpvFPFastMathModeMask_ {
|
|
|
SpvFPFastMathModeNSZMask = 0x00000004,
|
|
SpvFPFastMathModeNSZMask = 0x00000004,
|
|
|
SpvFPFastMathModeAllowRecipMask = 0x00000008,
|
|
SpvFPFastMathModeAllowRecipMask = 0x00000008,
|
|
|
SpvFPFastMathModeFastMask = 0x00000010,
|
|
SpvFPFastMathModeFastMask = 0x00000010,
|
|
|
|
|
+ SpvFPFastMathModeAllowContractMask = 0x00010000,
|
|
|
SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000,
|
|
SpvFPFastMathModeAllowContractFastINTELMask = 0x00010000,
|
|
|
|
|
+ SpvFPFastMathModeAllowReassocMask = 0x00020000,
|
|
|
SpvFPFastMathModeAllowReassocINTELMask = 0x00020000,
|
|
SpvFPFastMathModeAllowReassocINTELMask = 0x00020000,
|
|
|
|
|
+ SpvFPFastMathModeAllowTransformMask = 0x00040000,
|
|
|
} SpvFPFastMathModeMask;
|
|
} SpvFPFastMathModeMask;
|
|
|
|
|
|
|
|
typedef enum SpvFPRoundingMode_ {
|
|
typedef enum SpvFPRoundingMode_ {
|
|
@@ -1076,6 +1087,7 @@ typedef enum SpvCapability_ {
|
|
|
SpvCapabilityInt64ImageEXT = 5016,
|
|
SpvCapabilityInt64ImageEXT = 5016,
|
|
|
SpvCapabilityShaderClockKHR = 5055,
|
|
SpvCapabilityShaderClockKHR = 5055,
|
|
|
SpvCapabilityShaderEnqueueAMDX = 5067,
|
|
SpvCapabilityShaderEnqueueAMDX = 5067,
|
|
|
|
|
+ SpvCapabilityQuadControlKHR = 5087,
|
|
|
SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
|
|
SpvCapabilitySampleMaskOverrideCoverageNV = 5249,
|
|
|
SpvCapabilityGeometryShaderPassthroughNV = 5251,
|
|
SpvCapabilityGeometryShaderPassthroughNV = 5251,
|
|
|
SpvCapabilityShaderViewportIndexLayerEXT = 5254,
|
|
SpvCapabilityShaderViewportIndexLayerEXT = 5254,
|
|
@@ -1195,6 +1207,7 @@ typedef enum SpvCapability_ {
|
|
|
SpvCapabilityCooperativeMatrixKHR = 6022,
|
|
SpvCapabilityCooperativeMatrixKHR = 6022,
|
|
|
SpvCapabilityBitInstructions = 6025,
|
|
SpvCapabilityBitInstructions = 6025,
|
|
|
SpvCapabilityGroupNonUniformRotateKHR = 6026,
|
|
SpvCapabilityGroupNonUniformRotateKHR = 6026,
|
|
|
|
|
+ SpvCapabilityFloatControls2 = 6029,
|
|
|
SpvCapabilityAtomicFloat32AddEXT = 6033,
|
|
SpvCapabilityAtomicFloat32AddEXT = 6033,
|
|
|
SpvCapabilityAtomicFloat64AddEXT = 6034,
|
|
SpvCapabilityAtomicFloat64AddEXT = 6034,
|
|
|
SpvCapabilityLongCompositesINTEL = 6089,
|
|
SpvCapabilityLongCompositesINTEL = 6089,
|
|
@@ -1211,6 +1224,7 @@ typedef enum SpvCapability_ {
|
|
|
SpvCapabilityGlobalVariableHostAccessINTEL = 6187,
|
|
SpvCapabilityGlobalVariableHostAccessINTEL = 6187,
|
|
|
SpvCapabilityGlobalVariableFPGADecorationsINTEL = 6189,
|
|
SpvCapabilityGlobalVariableFPGADecorationsINTEL = 6189,
|
|
|
SpvCapabilityGroupUniformArithmeticKHR = 6400,
|
|
SpvCapabilityGroupUniformArithmeticKHR = 6400,
|
|
|
|
|
+ SpvCapabilityMaskedGatherScatterINTEL = 6427,
|
|
|
SpvCapabilityCacheControlsINTEL = 6441,
|
|
SpvCapabilityCacheControlsINTEL = 6441,
|
|
|
SpvCapabilityMax = 0x7fffffff,
|
|
SpvCapabilityMax = 0x7fffffff,
|
|
|
} SpvCapability;
|
|
} SpvCapability;
|
|
@@ -1783,6 +1797,8 @@ typedef enum SpvOp_ {
|
|
|
SpvOpFinalizeNodePayloadsAMDX = 5075,
|
|
SpvOpFinalizeNodePayloadsAMDX = 5075,
|
|
|
SpvOpFinishWritingNodePayloadAMDX = 5078,
|
|
SpvOpFinishWritingNodePayloadAMDX = 5078,
|
|
|
SpvOpInitializeNodePayloadsAMDX = 5090,
|
|
SpvOpInitializeNodePayloadsAMDX = 5090,
|
|
|
|
|
+ SpvOpGroupNonUniformQuadAllKHR = 5110,
|
|
|
|
|
+ SpvOpGroupNonUniformQuadAnyKHR = 5111,
|
|
|
SpvOpHitObjectRecordHitMotionNV = 5249,
|
|
SpvOpHitObjectRecordHitMotionNV = 5249,
|
|
|
SpvOpHitObjectRecordHitWithIndexMotionNV = 5250,
|
|
SpvOpHitObjectRecordHitWithIndexMotionNV = 5250,
|
|
|
SpvOpHitObjectRecordMissMotionNV = 5251,
|
|
SpvOpHitObjectRecordMissMotionNV = 5251,
|
|
@@ -2105,6 +2121,8 @@ typedef enum SpvOp_ {
|
|
|
SpvOpGroupLogicalAndKHR = 6406,
|
|
SpvOpGroupLogicalAndKHR = 6406,
|
|
|
SpvOpGroupLogicalOrKHR = 6407,
|
|
SpvOpGroupLogicalOrKHR = 6407,
|
|
|
SpvOpGroupLogicalXorKHR = 6408,
|
|
SpvOpGroupLogicalXorKHR = 6408,
|
|
|
|
|
+ SpvOpMaskedGatherINTEL = 6428,
|
|
|
|
|
+ SpvOpMaskedScatterINTEL = 6429,
|
|
|
SpvOpMax = 0x7fffffff,
|
|
SpvOpMax = 0x7fffffff,
|
|
|
} SpvOp;
|
|
} SpvOp;
|
|
|
|
|
|
|
@@ -2512,6 +2530,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
|
|
|
case SpvOpFinalizeNodePayloadsAMDX: *hasResult = false; *hasResultType = false; break;
|
|
case SpvOpFinalizeNodePayloadsAMDX: *hasResult = false; *hasResultType = false; break;
|
|
|
case SpvOpFinishWritingNodePayloadAMDX: *hasResult = true; *hasResultType = true; break;
|
|
case SpvOpFinishWritingNodePayloadAMDX: *hasResult = true; *hasResultType = true; break;
|
|
|
case SpvOpInitializeNodePayloadsAMDX: *hasResult = false; *hasResultType = false; break;
|
|
case SpvOpInitializeNodePayloadsAMDX: *hasResult = false; *hasResultType = false; break;
|
|
|
|
|
+ case SpvOpGroupNonUniformQuadAllKHR: *hasResult = true; *hasResultType = true; break;
|
|
|
|
|
+ case SpvOpGroupNonUniformQuadAnyKHR: *hasResult = true; *hasResultType = true; break;
|
|
|
case SpvOpHitObjectRecordHitMotionNV: *hasResult = false; *hasResultType = false; break;
|
|
case SpvOpHitObjectRecordHitMotionNV: *hasResult = false; *hasResultType = false; break;
|
|
|
case SpvOpHitObjectRecordHitWithIndexMotionNV: *hasResult = false; *hasResultType = false; break;
|
|
case SpvOpHitObjectRecordHitWithIndexMotionNV: *hasResult = false; *hasResultType = false; break;
|
|
|
case SpvOpHitObjectRecordMissMotionNV: *hasResult = false; *hasResultType = false; break;
|
|
case SpvOpHitObjectRecordMissMotionNV: *hasResult = false; *hasResultType = false; break;
|
|
@@ -2829,6 +2849,8 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
|
|
|
case SpvOpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
|
|
case SpvOpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
|
|
|
case SpvOpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
|
|
case SpvOpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
|
|
|
case SpvOpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
|
|
case SpvOpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
|
|
|
|
|
+ case SpvOpMaskedGatherINTEL: *hasResult = true; *hasResultType = true; break;
|
|
|
|
|
+ case SpvOpMaskedScatterINTEL: *hasResult = false; *hasResultType = false; break;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
#endif /* SPV_ENABLE_UTILITY_CODE */
|
|
#endif /* SPV_ENABLE_UTILITY_CODE */
|