From e51883eceb4cac9c7791f18b48164f4b2d8a6eb9 Mon Sep 17 00:00:00 2001 From: David Neto Date: Fri, 22 May 2020 01:47:01 -0400 Subject: Support SPV_KHR_integer_dot_product Signed-off-by: David Neto Signed-off-by: Kevin Petit Change-Id: Icd243bb9c2a6f8a40713db215a6ca5946ea7abb3 --- include/spirv/unified1/spirv.hpp11 | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'include/spirv/unified1/spirv.hpp11') 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; -- cgit v1.2.3