aboutsummaryrefslogtreecommitdiff
path: root/src/core/CL/CLHelpers.cpp
diff options
context:
space:
mode:
authorMichele Di Giorgio <michele.digiorgio@arm.com>2019-06-18 10:23:22 +0100
committerGeorgios Pinitas <georgios.pinitas@arm.com>2019-06-25 09:37:00 +0000
commit6997fc951e48a1bf8f7591f3b2c4c8d721331b96 (patch)
tree1cc2b28f5b2a5dbb8d7eb32755df4e8f28a1901d /src/core/CL/CLHelpers.cpp
parent944170e1591ff23c9e6ede2201f0f6aba0f3439b (diff)
downloadComputeLibrary-6997fc951e48a1bf8f7591f3b2c4c8d721331b96.tar.gz
COMPMID-2412: Add QSYMM16 support for ElementwiseAddition for CL
Arithmetic addition uses the same code as other element-wise operations. Hence, adding QSYMM16 support for addition automatically adds the same support for: - arithmetic subtraction - element-wise min - element-wise max - squared difference Change-Id: If986102844f62e29dd23c03f9245910db43f9043 Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-on: https://review.mlplatform.org/c/1384 Tested-by: Arm Jenkins <bsgcomp@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Manuel Bottini <manuel.bottini@arm.com> Reviewed-by: Giuseppe Rossini <giuseppe.rossini@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
Diffstat (limited to 'src/core/CL/CLHelpers.cpp')
-rw-r--r--src/core/CL/CLHelpers.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/core/CL/CLHelpers.cpp b/src/core/CL/CLHelpers.cpp
index 2e6ceb4433..e80349e486 100644
--- a/src/core/CL/CLHelpers.cpp
+++ b/src/core/CL/CLHelpers.cpp
@@ -45,6 +45,7 @@ std::string get_cl_type_from_data_type(const DataType &dt)
case DataType::U16:
return "ushort";
case DataType::S16:
+ case DataType::QSYMM16:
return "short";
case DataType::U32:
return "uint";
@@ -78,6 +79,7 @@ std::string get_cl_select_type_from_data_type(const DataType &dt)
return "ushort";
case DataType::F16:
case DataType::S16:
+ case DataType::QSYMM16:
return "short";
case DataType::U32:
return "uint";
@@ -105,6 +107,7 @@ std::string get_data_size_from_data_type(const DataType &dt)
return "8";
case DataType::U16:
case DataType::S16:
+ case DataType::QSYMM16:
case DataType::F16:
return "16";
case DataType::U32:
@@ -246,6 +249,7 @@ size_t preferred_vector_width(const cl::Device &device, const DataType dt)
return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_CHAR>();
case DataType::U16:
case DataType::S16:
+ case DataType::QSYMM16:
return device.getInfo<CL_DEVICE_PREFERRED_VECTOR_WIDTH_SHORT>();
case DataType::U32:
case DataType::S32: