Updated spirv-headers.

This commit is contained in:
Бранимир Караџић
2025-05-17 21:44:14 -07:00
parent 53307a82f3
commit 2c99e5f623
4 changed files with 221 additions and 0 deletions

View File

@@ -128,6 +128,10 @@
"tag" : "Non-Uniform",
"heading" : "Non-Uniform Instructions"
},
{
"tag" : "Tensor",
"heading" : "Tensor Instructions"
},
{
"tag" : "Reserved",
"heading" : "Reserved Instructions"
@@ -4433,6 +4437,59 @@
"capabilities" : [ "TileImageStencilReadAccessEXT" ],
"version" : "None"
},
{
"opname" : "OpTypeTensorARM",
"class" : "Type-Declaration",
"opcode" : 4163,
"operands" : [
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Element Type" },
{ "kind" : "IdRef", "name" : "Rank", "quantifier" : "?" },
{ "kind" : "IdRef", "name" : "Shape", "quantifier" : "?" }
],
"capabilities" : [ "TensorsARM" ],
"version" : "None"
},
{
"opname" : "OpTensorReadARM",
"class" : "Tensor",
"opcode" : 4164,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Tensor" },
{ "kind" : "IdRef", "name" : "Coordinates" },
{ "kind" : "TensorOperands", "quantifier" : "?" }
],
"capabilities" : [ "TensorsARM" ],
"version" : "None"
},
{
"opname" : "OpTensorWriteARM",
"class" : "Tensor",
"opcode" : 4165,
"operands" : [
{ "kind" : "IdRef", "name" : "Tensor" },
{ "kind" : "IdRef", "name" : "Coordinates" },
{ "kind" : "IdRef", "name" : "Object" },
{ "kind" : "TensorOperands", "quantifier" : "?" }
],
"capabilities" : [ "TensorsARM" ],
"version" : "None"
},
{
"opname" : "OpTensorQuerySizeARM",
"class" : "Tensor",
"opcode" : 4166,
"operands" : [
{ "kind" : "IdResultType" },
{ "kind" : "IdResult" },
{ "kind" : "IdRef", "name" : "Tensor" },
{ "kind" : "IdRef", "name" : "Dimension" }
],
"capabilities" : [ "TensorsARM" ],
"version" : "None"
},
{
"opname" : "OpTerminateInvocation",
"class" : "Control-Flow",
@@ -16148,6 +16205,24 @@
"extensions" : [ "SPV_EXT_shader_tile_image" ],
"version" : "None"
},
{
"enumerant" : "TensorsARM",
"value" : 4174,
"extensions" : [ "SPV_ARM_tensors"],
"version" : "None"
},
{
"enumerant" : "StorageTensorArrayDynamicIndexingARM",
"value" : 4175,
"extensions" : [ "SPV_ARM_tensors"],
"version" : "None"
},
{
"enumerant" : "StorageTensorArrayNonUniformIndexingARM",
"value" : 4176,
"extensions" : [ "SPV_ARM_tensors"],
"version" : "None"
},
{
"enumerant" : "CooperativeMatrixLayoutsARM",
"value" : 4201,
@@ -17991,6 +18066,57 @@
"category" : "Composite",
"kind" : "PairIdRefIdRef",
"bases" : [ "IdRef", "IdRef" ]
},
{
"category" : "BitEnum",
"kind" : "TensorOperands",
"enumerants" : [
{
"enumerant" : "NoneARM",
"value" : "0x0000",
"capabilities" : [ "TensorsARM" ],
"version" : "None"
},
{
"enumerant" : "NontemporalARM",
"value" : "0x0001",
"capabilities" : [ "TensorsARM" ],
"version" : "None"
},
{
"enumerant" : "OutOfBoundsValueARM",
"value" : "0x0002",
"capabilities" : [ "TensorsARM" ],
"parameters" : [
{ "kind" : "IdRef" }
],
"version" : "None"
},
{
"enumerant" : "MakeElementAvailableARM",
"value" : "0x0004",
"capabilities" : [ "TensorsARM" ],
"parameters" : [
{ "kind" : "IdRef" }
],
"version" : "None"
},
{
"enumerant" : "MakeElementVisibleARM",
"value" : "0x0008",
"capabilities" : [ "TensorsARM" ],
"parameters" : [
{ "kind" : "IdRef" }
],
"version" : "None"
},
{
"enumerant" : "NonPrivateElementARM",
"value" : "0x0010",
"capabilities" : [ "TensorsARM" ],
"version" : "None"
}
]
}
]
}

View File

@@ -1079,6 +1079,9 @@ typedef enum SpvCapability_ {
SpvCapabilityTileImageColorReadAccessEXT = 4166,
SpvCapabilityTileImageDepthReadAccessEXT = 4167,
SpvCapabilityTileImageStencilReadAccessEXT = 4168,
SpvCapabilityTensorsARM = 4174,
SpvCapabilityStorageTensorArrayDynamicIndexingARM = 4175,
SpvCapabilityStorageTensorArrayNonUniformIndexingARM = 4176,
SpvCapabilityCooperativeMatrixLayoutsARM = 4201,
SpvCapabilityFragmentShadingRateKHR = 4422,
SpvCapabilitySubgroupBallotKHR = 4423,
@@ -1472,6 +1475,24 @@ typedef enum SpvTensorAddressingOperandsMask_ {
SpvTensorAddressingOperandsDecodeFuncMask = 0x00000002,
} SpvTensorAddressingOperandsMask;
typedef enum SpvTensorOperandsShift_ {
SpvTensorOperandsNontemporalARMShift = 0,
SpvTensorOperandsOutOfBoundsValueARMShift = 1,
SpvTensorOperandsMakeElementAvailableARMShift = 2,
SpvTensorOperandsMakeElementVisibleARMShift = 3,
SpvTensorOperandsNonPrivateElementARMShift = 4,
SpvTensorOperandsMax = 0x7fffffff,
} SpvTensorOperandsShift;
typedef enum SpvTensorOperandsMask_ {
SpvTensorOperandsMaskNone = 0,
SpvTensorOperandsNontemporalARMMask = 0x00000001,
SpvTensorOperandsOutOfBoundsValueARMMask = 0x00000002,
SpvTensorOperandsMakeElementAvailableARMMask = 0x00000004,
SpvTensorOperandsMakeElementVisibleARMMask = 0x00000008,
SpvTensorOperandsNonPrivateElementARMMask = 0x00000010,
} SpvTensorOperandsMask;
typedef enum SpvInitializationModeQualifier_ {
SpvInitializationModeQualifierInitOnDeviceReprogramINTEL = 0,
SpvInitializationModeQualifierInitOnDeviceResetINTEL = 1,
@@ -1936,6 +1957,10 @@ typedef enum SpvOp_ {
SpvOpColorAttachmentReadEXT = 4160,
SpvOpDepthAttachmentReadEXT = 4161,
SpvOpStencilAttachmentReadEXT = 4162,
SpvOpTypeTensorARM = 4163,
SpvOpTensorReadARM = 4164,
SpvOpTensorWriteARM = 4165,
SpvOpTensorQuerySizeARM = 4166,
SpvOpTerminateInvocation = 4416,
SpvOpTypeUntypedPointerKHR = 4417,
SpvOpUntypedVariableKHR = 4418,
@@ -2752,6 +2777,10 @@ inline void SpvHasResultAndType(SpvOp opcode, bool *hasResult, bool *hasResultTy
case SpvOpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case SpvOpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case SpvOpStencilAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case SpvOpTypeTensorARM: *hasResult = true; *hasResultType = false; break;
case SpvOpTensorReadARM: *hasResult = true; *hasResultType = true; break;
case SpvOpTensorWriteARM: *hasResult = false; *hasResultType = false; break;
case SpvOpTensorQuerySizeARM: *hasResult = true; *hasResultType = true; break;
case SpvOpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
case SpvOpTypeUntypedPointerKHR: *hasResult = true; *hasResultType = false; break;
case SpvOpUntypedVariableKHR: *hasResult = true; *hasResultType = true; break;
@@ -3973,6 +4002,9 @@ inline const char* SpvCapabilityToString(SpvCapability value) {
case SpvCapabilityTileImageColorReadAccessEXT: return "TileImageColorReadAccessEXT";
case SpvCapabilityTileImageDepthReadAccessEXT: return "TileImageDepthReadAccessEXT";
case SpvCapabilityTileImageStencilReadAccessEXT: return "TileImageStencilReadAccessEXT";
case SpvCapabilityTensorsARM: return "TensorsARM";
case SpvCapabilityStorageTensorArrayDynamicIndexingARM: return "StorageTensorArrayDynamicIndexingARM";
case SpvCapabilityStorageTensorArrayNonUniformIndexingARM: return "StorageTensorArrayNonUniformIndexingARM";
case SpvCapabilityCooperativeMatrixLayoutsARM: return "CooperativeMatrixLayoutsARM";
case SpvCapabilityFragmentShadingRateKHR: return "FragmentShadingRateKHR";
case SpvCapabilitySubgroupBallotKHR: return "SubgroupBallotKHR";
@@ -4701,6 +4733,10 @@ inline const char* SpvOpToString(SpvOp value) {
case SpvOpColorAttachmentReadEXT: return "OpColorAttachmentReadEXT";
case SpvOpDepthAttachmentReadEXT: return "OpDepthAttachmentReadEXT";
case SpvOpStencilAttachmentReadEXT: return "OpStencilAttachmentReadEXT";
case SpvOpTypeTensorARM: return "OpTypeTensorARM";
case SpvOpTensorReadARM: return "OpTensorReadARM";
case SpvOpTensorWriteARM: return "OpTensorWriteARM";
case SpvOpTensorQuerySizeARM: return "OpTensorQuerySizeARM";
case SpvOpTerminateInvocation: return "OpTerminateInvocation";
case SpvOpTypeUntypedPointerKHR: return "OpTypeUntypedPointerKHR";
case SpvOpUntypedVariableKHR: return "OpUntypedVariableKHR";

View File

@@ -1075,6 +1075,9 @@ enum class Capability : unsigned {
TileImageColorReadAccessEXT = 4166,
TileImageDepthReadAccessEXT = 4167,
TileImageStencilReadAccessEXT = 4168,
TensorsARM = 4174,
StorageTensorArrayDynamicIndexingARM = 4175,
StorageTensorArrayNonUniformIndexingARM = 4176,
CooperativeMatrixLayoutsARM = 4201,
FragmentShadingRateKHR = 4422,
SubgroupBallotKHR = 4423,
@@ -1468,6 +1471,24 @@ enum class TensorAddressingOperandsMask : unsigned {
DecodeFunc = 0x00000002,
};
enum class TensorOperandsShift : unsigned {
NontemporalARM = 0,
OutOfBoundsValueARM = 1,
MakeElementAvailableARM = 2,
MakeElementVisibleARM = 3,
NonPrivateElementARM = 4,
Max = 0x7fffffff,
};
enum class TensorOperandsMask : unsigned {
MaskNone = 0,
NontemporalARM = 0x00000001,
OutOfBoundsValueARM = 0x00000002,
MakeElementAvailableARM = 0x00000004,
MakeElementVisibleARM = 0x00000008,
NonPrivateElementARM = 0x00000010,
};
enum class InitializationModeQualifier : unsigned {
InitOnDeviceReprogramINTEL = 0,
InitOnDeviceResetINTEL = 1,
@@ -1932,6 +1953,10 @@ enum class Op : unsigned {
OpColorAttachmentReadEXT = 4160,
OpDepthAttachmentReadEXT = 4161,
OpStencilAttachmentReadEXT = 4162,
OpTypeTensorARM = 4163,
OpTensorReadARM = 4164,
OpTensorWriteARM = 4165,
OpTensorQuerySizeARM = 4166,
OpTerminateInvocation = 4416,
OpTypeUntypedPointerKHR = 4417,
OpUntypedVariableKHR = 4418,
@@ -2748,6 +2773,10 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case Op::OpColorAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case Op::OpDepthAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case Op::OpStencilAttachmentReadEXT: *hasResult = true; *hasResultType = true; break;
case Op::OpTypeTensorARM: *hasResult = true; *hasResultType = false; break;
case Op::OpTensorReadARM: *hasResult = true; *hasResultType = true; break;
case Op::OpTensorWriteARM: *hasResult = false; *hasResultType = false; break;
case Op::OpTensorQuerySizeARM: *hasResult = true; *hasResultType = true; break;
case Op::OpTerminateInvocation: *hasResult = false; *hasResultType = false; break;
case Op::OpTypeUntypedPointerKHR: *hasResult = true; *hasResultType = false; break;
case Op::OpUntypedVariableKHR: *hasResult = true; *hasResultType = true; break;
@@ -3969,6 +3998,9 @@ inline const char* CapabilityToString(Capability value) {
case Capability::TileImageColorReadAccessEXT: return "TileImageColorReadAccessEXT";
case Capability::TileImageDepthReadAccessEXT: return "TileImageDepthReadAccessEXT";
case Capability::TileImageStencilReadAccessEXT: return "TileImageStencilReadAccessEXT";
case Capability::TensorsARM: return "TensorsARM";
case Capability::StorageTensorArrayDynamicIndexingARM: return "StorageTensorArrayDynamicIndexingARM";
case Capability::StorageTensorArrayNonUniformIndexingARM: return "StorageTensorArrayNonUniformIndexingARM";
case Capability::CooperativeMatrixLayoutsARM: return "CooperativeMatrixLayoutsARM";
case Capability::FragmentShadingRateKHR: return "FragmentShadingRateKHR";
case Capability::SubgroupBallotKHR: return "SubgroupBallotKHR";
@@ -4697,6 +4729,10 @@ inline const char* OpToString(Op value) {
case Op::OpColorAttachmentReadEXT: return "OpColorAttachmentReadEXT";
case Op::OpDepthAttachmentReadEXT: return "OpDepthAttachmentReadEXT";
case Op::OpStencilAttachmentReadEXT: return "OpStencilAttachmentReadEXT";
case Op::OpTypeTensorARM: return "OpTypeTensorARM";
case Op::OpTensorReadARM: return "OpTensorReadARM";
case Op::OpTensorWriteARM: return "OpTensorWriteARM";
case Op::OpTensorQuerySizeARM: return "OpTensorQuerySizeARM";
case Op::OpTerminateInvocation: return "OpTerminateInvocation";
case Op::OpTypeUntypedPointerKHR: return "OpTypeUntypedPointerKHR";
case Op::OpUntypedVariableKHR: return "OpUntypedVariableKHR";
@@ -5204,6 +5240,10 @@ constexpr TensorAddressingOperandsMask operator|(TensorAddressingOperandsMask a,
constexpr TensorAddressingOperandsMask operator&(TensorAddressingOperandsMask a, TensorAddressingOperandsMask b) { return TensorAddressingOperandsMask(unsigned(a) & unsigned(b)); }
constexpr TensorAddressingOperandsMask operator^(TensorAddressingOperandsMask a, TensorAddressingOperandsMask b) { return TensorAddressingOperandsMask(unsigned(a) ^ unsigned(b)); }
constexpr TensorAddressingOperandsMask operator~(TensorAddressingOperandsMask a) { return TensorAddressingOperandsMask(~unsigned(a)); }
constexpr TensorOperandsMask operator|(TensorOperandsMask a, TensorOperandsMask b) { return TensorOperandsMask(unsigned(a) | unsigned(b)); }
constexpr TensorOperandsMask operator&(TensorOperandsMask a, TensorOperandsMask b) { return TensorOperandsMask(unsigned(a) & unsigned(b)); }
constexpr TensorOperandsMask operator^(TensorOperandsMask a, TensorOperandsMask b) { return TensorOperandsMask(unsigned(a) ^ unsigned(b)); }
constexpr TensorOperandsMask operator~(TensorOperandsMask a) { return TensorOperandsMask(~unsigned(a)); }
constexpr MatrixMultiplyAccumulateOperandsMask operator|(MatrixMultiplyAccumulateOperandsMask a, MatrixMultiplyAccumulateOperandsMask b) { return MatrixMultiplyAccumulateOperandsMask(unsigned(a) | unsigned(b)); }
constexpr MatrixMultiplyAccumulateOperandsMask operator&(MatrixMultiplyAccumulateOperandsMask a, MatrixMultiplyAccumulateOperandsMask b) { return MatrixMultiplyAccumulateOperandsMask(unsigned(a) & unsigned(b)); }
constexpr MatrixMultiplyAccumulateOperandsMask operator^(MatrixMultiplyAccumulateOperandsMask a, MatrixMultiplyAccumulateOperandsMask b) { return MatrixMultiplyAccumulateOperandsMask(unsigned(a) ^ unsigned(b)); }

View File

@@ -1051,6 +1051,9 @@
"TileImageColorReadAccessEXT": 4166,
"TileImageDepthReadAccessEXT": 4167,
"TileImageStencilReadAccessEXT": 4168,
"TensorsARM": 4174,
"StorageTensorArrayDynamicIndexingARM": 4175,
"StorageTensorArrayNonUniformIndexingARM": 4176,
"CooperativeMatrixLayoutsARM": 4201,
"FragmentShadingRateKHR": 4422,
"SubgroupBallotKHR": 4423,
@@ -1445,6 +1448,18 @@
"DecodeFunc": 1
}
},
{
"Name": "TensorOperands",
"Type": "Bit",
"Values":
{
"NontemporalARM": 0,
"OutOfBoundsValueARM": 1,
"MakeElementAvailableARM": 2,
"MakeElementVisibleARM": 3,
"NonPrivateElementARM": 4
}
},
{
"Name": "InitializationModeQualifier",
"Type": "Value",
@@ -1919,6 +1934,10 @@
"OpColorAttachmentReadEXT": 4160,
"OpDepthAttachmentReadEXT": 4161,
"OpStencilAttachmentReadEXT": 4162,
"OpTypeTensorARM": 4163,
"OpTensorReadARM": 4164,
"OpTensorWriteARM": 4165,
"OpTensorQuerySizeARM": 4166,
"OpTerminateInvocation": 4416,
"OpTypeUntypedPointerKHR": 4417,
"OpUntypedVariableKHR": 4418,