From 03bb3ffa5ed0692add2b4290bf99288f0947c741 Mon Sep 17 00:00:00 2001 From: Jakub Kuderski Date: Thu, 1 Dec 2022 09:14:52 -0500 Subject: [PATCH] [mlir][spirv] Fix integer dot prod capabilities Allow the integer dot product cabailities to be used in SPIR-V <1.6 when the SPV_KHR_integer_dot_product extension is available. Reviewed By: antiagainst Differential Revision: https://reviews.llvm.org/D139063 --- mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td b/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td index e4d4ee5..6a89ac3 100644 --- a/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td +++ b/mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td @@ -802,16 +802,26 @@ def SPIRV_C_FPGARegINTEL : I32EnumAttrCase<"FPGAR } def SPIRV_C_DotProductInputAll : I32EnumAttrCase<"DotProductInputAll", 6016> { list availability = [ + Extension<[SPV_KHR_integer_dot_product]>, + MinVersion + ]; +} +def SPIRV_C_DotProductInput4x8Bit : I32EnumAttrCase<"DotProductInput4x8Bit", 6017> { + list implies = [SPIRV_C_Int8]; + list availability = [ + Extension<[SPV_KHR_integer_dot_product]>, MinVersion ]; } def SPIRV_C_DotProductInput4x8BitPacked : I32EnumAttrCase<"DotProductInput4x8BitPacked", 6018> { list availability = [ + Extension<[SPV_KHR_integer_dot_product]>, MinVersion ]; } def SPIRV_C_DotProduct : I32EnumAttrCase<"DotProduct", 6019> { list availability = [ + Extension<[SPV_KHR_integer_dot_product]>, MinVersion ]; } @@ -976,12 +986,6 @@ def SPIRV_C_FPFastMathModeINTEL : I32EnumAttrCase<"FPFas Extension<[SPV_INTEL_fp_fast_math_mode]> ]; } -def SPIRV_C_DotProductInput4x8Bit : I32EnumAttrCase<"DotProductInput4x8Bit", 6017> { - list implies = [SPIRV_C_Int8]; - list availability = [ - MinVersion - ]; -} def SPIRV_C_GroupNonUniformRotateKHR : I32EnumAttrCase<"GroupNonUniformRotateKHR", 6026> { list implies = [SPIRV_C_GroupNonUniform]; list availability = [ -- 2.7.4