From bd17a169153ee181100f3b31984968b66618ef3c Mon Sep 17 00:00:00 2001 From: Georgios Pinitas Date: Thu, 16 May 2019 14:23:00 +0100 Subject: IVGCVSW-2794: Return correct status for ReduceMean operations. Returns data type support status. Change-Id: If6f95896eec9a31ede9dc5801a0c949376991a91 Signed-off-by: Georgios Pinitas Reviewed-on: https://review.mlplatform.org/c/1155 Reviewed-by: Michalis Spyrou Comments-Addressed: Arm Jenkins Tested-by: Arm Jenkins --- src/runtime/CL/functions/CLReduceMean.cpp | 3 +++ src/runtime/NEON/functions/NEReduceMean.cpp | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/runtime/CL/functions/CLReduceMean.cpp b/src/runtime/CL/functions/CLReduceMean.cpp index 15091f9066..a3634cd46e 100644 --- a/src/runtime/CL/functions/CLReduceMean.cpp +++ b/src/runtime/CL/functions/CLReduceMean.cpp @@ -23,6 +23,7 @@ */ #include "arm_compute/runtime/CL/functions/CLReduceMean.h" +#include "arm_compute/core/CL/CLValidate.h" #include "arm_compute/core/CL/ICLTensor.h" #include "arm_compute/core/CL/kernels/CLReductionOperationKernel.h" #include "arm_compute/core/Types.h" @@ -99,6 +100,8 @@ void CLReduceMean::configure(ICLTensor *input, const Coordinates &reduction_axis Status CLReduceMean::validate(const ITensorInfo *input, const Coordinates &reduction_axis, bool keep_dims, const ITensorInfo *output) { ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(input); + ARM_COMPUTE_RETURN_ERROR_ON_F16_UNSUPPORTED(input); + ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::QASYMM8, DataType::F16, DataType::F32); ARM_COMPUTE_RETURN_ERROR_ON(reduction_axis.num_dimensions() > input->num_dimensions()); TensorShape out_shape = input->tensor_shape(); diff --git a/src/runtime/NEON/functions/NEReduceMean.cpp b/src/runtime/NEON/functions/NEReduceMean.cpp index 38adaa2a92..0b145f034d 100644 --- a/src/runtime/NEON/functions/NEReduceMean.cpp +++ b/src/runtime/NEON/functions/NEReduceMean.cpp @@ -23,6 +23,7 @@ */ #include "arm_compute/runtime/NEON/functions/NEReduceMean.h" +#include "arm_compute/core/CPP/Validate.h" #include "arm_compute/core/Helpers.h" #include "arm_compute/runtime/NEON/NEScheduler.h" @@ -37,6 +38,8 @@ Status NEReduceMean::validate(const ITensorInfo *input, const Coordinates &reduc { ARM_COMPUTE_UNUSED(keep_dims); ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(input); + ARM_COMPUTE_RETURN_ERROR_ON_CPU_F16_UNSUPPORTED(input); + ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::QASYMM8, DataType::F16, DataType::F32); ARM_COMPUTE_RETURN_ERROR_ON(reduction_axis.num_dimensions() > input->num_dimensions()); TensorShape out_shape = input->tensor_shape(); -- cgit v1.2.1