Updated spirv-headers.

This commit is contained in:
Бранимир Караџић
2026-02-21 18:57:00 -08:00
committed by Branimir Karadžić
parent 8f79485b97
commit 7147583ad7
5 changed files with 120 additions and 5 deletions

View File

@@ -141,13 +141,14 @@
<ids type="opcode" start="6656" end="6719" vendor="Meta" comment="Contact dunfanlu@meta.com"/>
<ids type="opcode" start="6720" end="6783" vendor="MediaTek" comment="Contact samuel.huang@mediatek.com"/>
<ids type="opcode" start="6784" end="6911" vendor="Intel" comment="Contact mariusz.merecki@intel.com"/>
<ids type="opcode" start="6912" end="6975" vendor="Valve" comment="Contact michael.blumenkrantz@gmail.com"/>
<!-- Opcode enumerants to reserve for future use. To get a block, allocate
multiples of 64 starting at the lowest available point in this
block and add a corresponding <ids> tag immediately above. Make
sure to fill in the vendor attribute, and preferably add a contact
person/address in a comment attribute. -->
<!-- Example new block: <ids type="opcode" start="XXXX" end="XXXX+64n-1" vendor="Add vendor" comment="Contact TBD"/> -->
<ids type="opcode" start="6912" end="65535" comment="Opcode range reservable for future use by vendors"/>
<ids type="opcode" start="6976" end="65535" comment="Opcode range reservable for future use by vendors"/>
<!-- End reservations of opcodes -->
@@ -176,13 +177,15 @@
<ids type="enumerant" start="6656" end="6719" vendor="Meta" comment="Contact dunfanlu@meta.com"/>
<ids type="enumerant" start="6720" end="6783" vendor="MediaTek" comment="Contact samuel.huang@mediatek.com"/>
<ids type="enumerant" start="6784" end="6911" vendor="Intel" comment="Contact mariusz.merecki@intel.com"/>
<ids type="enumerant" start="6912" end="6975" vendor="Valve" comment="Contact michael.blumenkrantz@gmail.com"/>
<ids type="enumerant" start="6976" end="7039" vendor="Broadcom" comment="Contact gleese@broadcom.com"/>
<!-- Enumerants to reserve for future use. To get a block, allocate
multiples of 64 starting at the lowest available point in this
block and add a corresponding <ids> tag immediately above. Make
sure to fill in the vendor attribute, and preferably add a contact
person/address in a comment attribute. -->
<!-- Example new block: <ids type="enumerant" start="XXXX" end="XXXX+64n-1" vendor="Add vendor" comment="Contact TBD"/> -->
<ids type="enumerant" start="6912" end="4294967295" comment="Enumerant range reservable for future use by vendors"/>
<ids type="enumerant" start="7040" end="4294967295" comment="Enumerant range reservable for future use by vendors"/>
<!-- End reservations of enumerants -->
@@ -244,7 +247,8 @@
<ids type="FPFastMathMode" start="0" end="15" vendor="Khronos" comment="Reserved FPFastMathMode bits, not available to vendors - see the SPIR-V Specification"/>
<ids type="FPFastMathMode" start="16" end="17" vendor="Intel" comment="Contact michael.kinsner@intel.com"/>
<ids type="FPFastMathMode" start="18" end="18" vendor="khronos" comment="Reserved FPFastMathMode bit, not available to vendors - see SPV_KHR_float_controls2"/>
<ids type="FPFastMathMode" start="19" end="31" comment="Unreserved bits reservable for use by vendors"/>
<ids type="FPFastMathMode" start="19" end="20" vendor="Broadcom" comment="Contact gleese@broadcom.com"/>
<ids type="FPFastMathMode" start="21" end="31" comment="Unreserved bits reservable for use by vendors"/>
<!-- SECTION: SPIR-V Memory Operand Bit Reservations -->

View File

@@ -11728,6 +11728,48 @@
"capabilities" : [ "BindlessImagesINTEL" ],
"provisional" : true,
"version" : "None"
},
{
"opname" : "OpFDot2MixAcc32VALVE",
"class" : "Reserved",
"opcode" : 6916,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Vector 1" },
{ "kind" : "IdRef", "name" : "Vector 2" },
{ "kind" : "IdRef", "name" : "Accumulator" }
],
"capabilities" : [ "DotProductFloat16AccFloat32VALVE", "DotProductBFloat16AccVALVE" ],
"version" : "None"
},
{
"opname" : "OpFDot2MixAcc16VALVE",
"class" : "Reserved",
"opcode" : 6917,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Vector 1" },
{ "kind" : "IdRef", "name" : "Vector 2" },
{ "kind" : "IdRef", "name" : "Accumulator" }
],
"capabilities" : [ "DotProductFloat16AccFloat16VALVE", "DotProductBFloat16AccVALVE" ],
"version" : "None"
},
{
"opname" : "OpFDot4MixAcc32VALVE",
"class" : "Reserved",
"opcode" : 6918,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Vector 1" },
{ "kind" : "IdRef", "name" : "Vector 2" },
{ "kind" : "IdRef", "name" : "Accumulator" }
],
"capabilities" : [ "DotProductFloat8AccFloat32VALVE" ],
"version" : "None"
}
],
"operand_kinds" : [
@@ -18561,6 +18603,34 @@
"extensions" : [ "SPV_INTEL_bindless_images" ],
"provisional" : true,
"version" : "None"
},
{
"enumerant" : "DotProductFloat16AccFloat32VALVE",
"value" : 6912,
"capabilities" : [ "Float16" ],
"extensions" : [ "SPV_VALVE_mixed_float_dot_product" ],
"version" : "None"
},
{
"enumerant" : "DotProductFloat16AccFloat16VALVE",
"value" : 6913,
"capabilities" : [ "Float16" ],
"extensions" : [ "SPV_VALVE_mixed_float_dot_product" ],
"version" : "None"
},
{
"enumerant" : "DotProductBFloat16AccVALVE",
"value" : 6914,
"capabilities" : [ "BFloat16TypeKHR" ],
"extensions" : [ "SPV_VALVE_mixed_float_dot_product" ],
"version" : "None"
},
{
"enumerant" : "DotProductFloat8AccFloat32VALVE",
"value" : 6915,
"capabilities" : [ "Float8EXT" ],
"extensions" : [ "SPV_VALVE_mixed_float_dot_product" ],
"version" : "None"
}
]
},

View File

@@ -1397,6 +1397,10 @@ typedef enum SpvCapability_ {
SpvCapabilityCacheControlsINTEL = 6441,
SpvCapabilityRegisterLimitsINTEL = 6460,
SpvCapabilityBindlessImagesINTEL = 6528,
SpvCapabilityDotProductFloat16AccFloat32VALVE = 6912,
SpvCapabilityDotProductFloat16AccFloat16VALVE = 6913,
SpvCapabilityDotProductBFloat16AccVALVE = 6914,
SpvCapabilityDotProductFloat8AccFloat32VALVE = 6915,
SpvCapabilityMax = 0x7fffffff,
} SpvCapability;
@@ -2628,6 +2632,9 @@ typedef enum SpvOp_ {
SpvOpConvertHandleToImageINTEL = 6529,
SpvOpConvertHandleToSamplerINTEL = 6530,
SpvOpConvertHandleToSampledImageINTEL = 6531,
SpvOpFDot2MixAcc32VALVE = 6916,
SpvOpFDot2MixAcc16VALVE = 6917,
SpvOpFDot4MixAcc32VALVE = 6918,
SpvOpMax = 0x7fffffff,
} SpvOp;
@@ -3502,6 +3509,9 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpConvertHandleToImageINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpConvertHandleToSamplerINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpConvertHandleToSampledImageINTEL: *hasResult = true; *hasResultType = true; break;
case SpvOpFDot2MixAcc32VALVE: *hasResult = true; *hasResultType = true; break;
case SpvOpFDot2MixAcc16VALVE: *hasResult = true; *hasResultType = true; break;
case SpvOpFDot4MixAcc32VALVE: *hasResult = true; *hasResultType = true; break;
}
}
inline const char* SpvSourceLanguageToString(SpvSourceLanguage value) {
@@ -4493,6 +4503,10 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityCacheControlsINTEL: return "CacheControlsINTEL";
case SpvCapabilityRegisterLimitsINTEL: return "RegisterLimitsINTEL";
case SpvCapabilityBindlessImagesINTEL: return "BindlessImagesINTEL";
case SpvCapabilityDotProductFloat16AccFloat32VALVE: return "DotProductFloat16AccFloat32VALVE";
case SpvCapabilityDotProductFloat16AccFloat16VALVE: return "DotProductFloat16AccFloat16VALVE";
case SpvCapabilityDotProductBFloat16AccVALVE: return "DotProductBFloat16AccVALVE";
case SpvCapabilityDotProductFloat8AccFloat32VALVE: return "DotProductFloat8AccFloat32VALVE";
default: return "Unknown";
}
}
@@ -5550,6 +5564,9 @@ inline const char* SpvOpToString(SpvOp value) {
case SpvOpConvertHandleToImageINTEL: return "OpConvertHandleToImageINTEL";
case SpvOpConvertHandleToSamplerINTEL: return "OpConvertHandleToSamplerINTEL";
case SpvOpConvertHandleToSampledImageINTEL: return "OpConvertHandleToSampledImageINTEL";
case SpvOpFDot2MixAcc32VALVE: return "OpFDot2MixAcc32VALVE";
case SpvOpFDot2MixAcc16VALVE: return "OpFDot2MixAcc16VALVE";
case SpvOpFDot4MixAcc32VALVE: return "OpFDot4MixAcc32VALVE";
default: return "Unknown";
}
}

View File

@@ -1393,6 +1393,10 @@ enum class Capability : unsigned {
CacheControlsINTEL = 6441,
RegisterLimitsINTEL = 6460,
BindlessImagesINTEL = 6528,
DotProductFloat16AccFloat32VALVE = 6912,
DotProductFloat16AccFloat16VALVE = 6913,
DotProductBFloat16AccVALVE = 6914,
DotProductFloat8AccFloat32VALVE = 6915,
Max = 0x7fffffff,
};
@@ -2624,6 +2628,9 @@ enum class Op : unsigned {
OpConvertHandleToImageINTEL = 6529,
OpConvertHandleToSamplerINTEL = 6530,
OpConvertHandleToSampledImageINTEL = 6531,
OpFDot2MixAcc32VALVE = 6916,
OpFDot2MixAcc16VALVE = 6917,
OpFDot4MixAcc32VALVE = 6918,
Max = 0x7fffffff,
};
@@ -3498,6 +3505,9 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case Op::OpConvertHandleToImageINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpConvertHandleToSamplerINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpConvertHandleToSampledImageINTEL: *hasResult = true; *hasResultType = true; break;
case Op::OpFDot2MixAcc32VALVE: *hasResult = true; *hasResultType = true; break;
case Op::OpFDot2MixAcc16VALVE: *hasResult = true; *hasResultType = true; break;
case Op::OpFDot4MixAcc32VALVE: *hasResult = true; *hasResultType = true; break;
}
}
inline const char* SourceLanguageToString(SourceLanguage value) {
@@ -4489,6 +4499,10 @@ inline const char* CapabilityToString(Capability value) {
case Capability::CacheControlsINTEL: return "CacheControlsINTEL";
case Capability::RegisterLimitsINTEL: return "RegisterLimitsINTEL";
case Capability::BindlessImagesINTEL: return "BindlessImagesINTEL";
case Capability::DotProductFloat16AccFloat32VALVE: return "DotProductFloat16AccFloat32VALVE";
case Capability::DotProductFloat16AccFloat16VALVE: return "DotProductFloat16AccFloat16VALVE";
case Capability::DotProductBFloat16AccVALVE: return "DotProductBFloat16AccVALVE";
case Capability::DotProductFloat8AccFloat32VALVE: return "DotProductFloat8AccFloat32VALVE";
default: return "Unknown";
}
}
@@ -5546,6 +5560,9 @@ inline const char* OpToString(Op value) {
case Op::OpConvertHandleToImageINTEL: return "OpConvertHandleToImageINTEL";
case Op::OpConvertHandleToSamplerINTEL: return "OpConvertHandleToSamplerINTEL";
case Op::OpConvertHandleToSampledImageINTEL: return "OpConvertHandleToSampledImageINTEL";
case Op::OpFDot2MixAcc32VALVE: return "OpFDot2MixAcc32VALVE";
case Op::OpFDot2MixAcc16VALVE: return "OpFDot2MixAcc16VALVE";
case Op::OpFDot4MixAcc32VALVE: return "OpFDot4MixAcc32VALVE";
default: return "Unknown";
}
}

View File

@@ -1358,7 +1358,11 @@
"MaskedGatherScatterINTEL": 6427,
"CacheControlsINTEL": 6441,
"RegisterLimitsINTEL": 6460,
"BindlessImagesINTEL": 6528
"BindlessImagesINTEL": 6528,
"DotProductFloat16AccFloat32VALVE": 6912,
"DotProductFloat16AccFloat16VALVE": 6913,
"DotProductBFloat16AccVALVE": 6914,
"DotProductFloat8AccFloat32VALVE": 6915
}
},
{
@@ -2594,7 +2598,10 @@
"OpMaskedScatterINTEL": 6429,
"OpConvertHandleToImageINTEL": 6529,
"OpConvertHandleToSamplerINTEL": 6530,
"OpConvertHandleToSampledImageINTEL": 6531
"OpConvertHandleToSampledImageINTEL": 6531,
"OpFDot2MixAcc32VALVE": 6916,
"OpFDot2MixAcc16VALVE": 6917,
"OpFDot4MixAcc32VALVE": 6918
}
}
]