MLCE-347 'REDUCE_MIN, REDUCE_MAX, REDUCE_SUM Support'

* Added TfLiteParser support for REDUCE_MIN and REDUCE_MAX operators
* Added ACL workloads support for REDUCE_MIN, REDUCE_MAX, and REDUCE_SUM operators
* Added TfLite Delegate support for REDUCE_MIN, REDUCE_MAX, and REDUCE_SUM operators

Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I8085d59946bfd4ab78a59a61f899031ae53371a8
diff --git a/src/backends/aclCommon/ArmComputeUtils.hpp b/src/backends/aclCommon/ArmComputeUtils.hpp
index 2a07078..d9efab2 100644
--- a/src/backends/aclCommon/ArmComputeUtils.hpp
+++ b/src/backends/aclCommon/ArmComputeUtils.hpp
@@ -255,4 +255,16 @@
     return static_cast<unsigned int>(positiveAxis);
 }
 
+inline arm_compute::ReductionOperation ConvertReductionOperationToAcl(const ReduceDescriptor& descriptor)
+{
+    switch (descriptor.m_ReduceOperation)
+    {
+        case ReduceOperation::Sum:    return arm_compute::ReductionOperation::SUM;
+        case ReduceOperation::Mean:   return arm_compute::ReductionOperation::MEAN_SUM;
+        case ReduceOperation::Max:    return arm_compute::ReductionOperation::MAX;
+        case ReduceOperation::Min:    return arm_compute::ReductionOperation::MIN;
+        default:                         throw InvalidArgumentException("Unsupported Reduction operation");
+    }
+}
+
 } // namespace armnn