aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/armnn/TypesUtils.hpp8
-rw-r--r--src/backends/backendsCommon/WorkloadData.cpp5
2 files changed, 9 insertions, 4 deletions
diff --git a/include/armnn/TypesUtils.hpp b/include/armnn/TypesUtils.hpp
index 32967c6b42..c8f612f08d 100644
--- a/include/armnn/TypesUtils.hpp
+++ b/include/armnn/TypesUtils.hpp
@@ -195,6 +195,14 @@ constexpr bool IsQuantizedType()
return std::is_integral<T>::value;
}
+constexpr bool IsQuantizedType(DataType dataType)
+{
+ return dataType == DataType::QuantisedAsymm8 ||
+ dataType == DataType::QuantisedSymm8 ||
+ dataType == DataType::QuantisedSymm16 ||
+ dataType == DataType::QuantizedSymm8PerAxis;
+}
+
inline std::ostream& operator<<(std::ostream& os, Status stat)
{
os << GetStatusAsCString(stat);
diff --git a/src/backends/backendsCommon/WorkloadData.cpp b/src/backends/backendsCommon/WorkloadData.cpp
index 83e823c9a5..6d5c6e8343 100644
--- a/src/backends/backendsCommon/WorkloadData.cpp
+++ b/src/backends/backendsCommon/WorkloadData.cpp
@@ -2483,10 +2483,7 @@ void DequantizeQueueDescriptor::Validate(const WorkloadInfo& workloadInfo) const
const TensorInfo& inputTensorInfo = workloadInfo.m_InputTensorInfos[0];
const TensorInfo& outputTensorInfo = workloadInfo.m_OutputTensorInfos[0];
- if (inputTensorInfo.GetDataType() != DataType::QuantisedAsymm8 &&
- inputTensorInfo.GetDataType() != DataType::QuantisedSymm8 &&
- inputTensorInfo.GetDataType() != DataType::QuantizedSymm8PerAxis &&
- inputTensorInfo.GetDataType() != DataType::QuantisedSymm16)
+ if (!IsQuantizedType(inputTensorInfo.GetDataType()))
{
throw InvalidArgumentException(descriptorName + ": Input to dequantize layer must be quantized type.");
}