IVGCVSW-4603 Support comparison operators in CL
* Deprecate ClGreaterWorkload
* Add ClComparisonWorkload to encompass all comparison operators
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ida0ed7f59899d75b0fe7de1e7433b1ade018c6f1
diff --git a/src/backends/aclCommon/ArmComputeUtils.hpp b/src/backends/aclCommon/ArmComputeUtils.hpp
index c3cfb5c..9c6f464 100644
--- a/src/backends/aclCommon/ArmComputeUtils.hpp
+++ b/src/backends/aclCommon/ArmComputeUtils.hpp
@@ -78,6 +78,20 @@
actDesc.m_A, actDesc.m_B);
}
+inline arm_compute::ComparisonOperation ConvertComparisonOperationToAcl(const ComparisonDescriptor& descriptor)
+{
+ switch (descriptor.m_Operation)
+ {
+ case ComparisonOperation::Greater: return arm_compute::ComparisonOperation::Greater;
+ case ComparisonOperation::GreaterOrEqual: return arm_compute::ComparisonOperation::GreaterEqual;
+ case ComparisonOperation::Less: return arm_compute::ComparisonOperation::Less;
+ case ComparisonOperation::LessOrEqual: return arm_compute::ComparisonOperation::LessEqual;
+ case ComparisonOperation::Equal: return arm_compute::ComparisonOperation::Equal;
+ case ComparisonOperation::NotEqual: return arm_compute::ComparisonOperation::NotEqual;
+ default: throw InvalidArgumentException("Unsupported comparison function");
+ }
+}
+
inline arm_compute::PoolingType ConvertPoolingAlgorithmToAclPoolingType(PoolingAlgorithm poolingAlgorithm)
{
using arm_compute::PoolingType;