aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichele Di Giorgio <michele.digiorgio@arm.com>2019-08-16 18:03:35 +0100
committerGian Marco Iodice <gianmarco.iodice@arm.com>2019-08-19 16:23:28 +0100
commit115851c8f51ede4ac4a42737ebd80d6f41fe8c33 (patch)
tree740e86d88d151d54969723a0dc5f0efff664ca96
parentf913a4002ae5c01842259535d6592db85bd7f338 (diff)
downloadComputeLibrary-115851c8f51ede4ac4a42737ebd80d6f41fe8c33.tar.gz
COMPMID-2595: (Nightly) Mismatches in NEArgMinMax for FP16
Results for FP16 were correctly computed but not stored to the output. Change-Id: I8a85e325ee42600e0450307562c344b48eb1c679 Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-on: https://review.mlplatform.org/c/1757 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
-rw-r--r--src/core/NEON/kernels/NEReductionOperationKernel.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/NEON/kernels/NEReductionOperationKernel.cpp b/src/core/NEON/kernels/NEReductionOperationKernel.cpp
index 67ccc5d736..ffa4fa3565 100644
--- a/src/core/NEON/kernels/NEReductionOperationKernel.cpp
+++ b/src/core/NEON/kernels/NEReductionOperationKernel.cpp
@@ -809,6 +809,12 @@ struct RedOpYZW
if(op == ReductionOperation::ARG_IDX_MIN || op == ReductionOperation::ARG_IDX_MAX)
{
wrapper::vstore(reinterpret_cast<uint32_t *>(output.ptr()), vec_res_idx.val[0]);
+#ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC
+ if(std::is_same<T, float16_t>::value)
+ {
+ wrapper::vstore(reinterpret_cast<uint32_t *>(output.ptr()) + 4, vec_res_idx.val[1]);
+ }
+#endif // __ARM_FEATURE_FP16_VECTOR_ARITHMETIC
}
else
{