aboutsummaryrefslogtreecommitdiff
path: root/include/spirv/unified1/spirv.hpp11
diff options
context:
space:
mode:
authorDavid Neto <dneto@google.com>2020-05-22 01:47:01 -0400
committerKevin Petit <kevin.petit@arm.com>2021-06-16 18:41:41 +0100
commite51883eceb4cac9c7791f18b48164f4b2d8a6eb9 (patch)
tree4cdf92240a76d0b65c85c9f763d01e529e3ac88d /include/spirv/unified1/spirv.hpp11
parent07f259e68af3a540038fa32df522554e74f53ed5 (diff)
downloadSPIRV-Headers-e51883eceb4cac9c7791f18b48164f4b2d8a6eb9.tar.gz
Support SPV_KHR_integer_dot_product
Signed-off-by: David Neto <dneto@google.com> Signed-off-by: Kevin Petit <kevin.petit@arm.com> Change-Id: Icd243bb9c2a6f8a40713db215a6ca5946ea7abb3
Diffstat (limited to 'include/spirv/unified1/spirv.hpp11')
-rw-r--r--include/spirv/unified1/spirv.hpp1121
1 files changed, 21 insertions, 0 deletions
diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11
index 20aaeb6..cac9539 100644
--- a/include/spirv/unified1/spirv.hpp11
+++ b/include/spirv/unified1/spirv.hpp11
@@ -1041,6 +1041,10 @@ enum class Capability : unsigned {
IOPipesINTEL = 5943,
BlockingPipesINTEL = 5945,
FPGARegINTEL = 5948,
+ DotProductInputAllKHR = 6016,
+ DotProductInput4x8BitKHR = 6017,
+ DotProductInput4x8BitPackedKHR = 6018,
+ DotProductKHR = 6019,
AtomicFloat32AddEXT = 6033,
AtomicFloat64AddEXT = 6034,
LongConstantCompositeINTEL = 6089,
@@ -1142,6 +1146,11 @@ enum class OverflowModes : unsigned {
Max = 0x7fffffff,
};
+enum class PackedVectorFormat : unsigned {
+ PackedVectorFormat4x8BitKHR = 0,
+ Max = 0x7fffffff,
+};
+
enum class Op : unsigned {
OpNop = 0,
OpUndef = 1,
@@ -1499,6 +1508,12 @@ enum class Op : unsigned {
OpConvertUToAccelerationStructureKHR = 4447,
OpIgnoreIntersectionKHR = 4448,
OpTerminateRayKHR = 4449,
+ OpSDotKHR = 4450,
+ OpUDotKHR = 4451,
+ OpSUDotKHR = 4452,
+ OpSDotAccSatKHR = 4453,
+ OpUDotAccSatKHR = 4454,
+ OpSUDotAccSatKHR = 4455,
OpTypeRayQueryKHR = 4472,
OpRayQueryInitializeKHR = 4473,
OpRayQueryTerminateKHR = 4474,
@@ -2139,6 +2154,12 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case Op::OpConvertUToAccelerationStructureKHR: *hasResult = true; *hasResultType = true; break;
case Op::OpIgnoreIntersectionKHR: *hasResult = false; *hasResultType = false; break;
case Op::OpTerminateRayKHR: *hasResult = false; *hasResultType = false; break;
+ case Op::OpSDotKHR: *hasResult = true; *hasResultType = true; break;
+ case Op::OpUDotKHR: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSUDotKHR: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
+ case Op::OpUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
+ case Op::OpSUDotAccSatKHR: *hasResult = true; *hasResultType = true; break;
case Op::OpTypeRayQueryKHR: *hasResult = true; *hasResultType = false; break;
case Op::OpRayQueryInitializeKHR: *hasResult = false; *hasResultType = false; break;
case Op::OpRayQueryTerminateKHR: *hasResult = false; *hasResultType = false; break;