IVGCVSW-4903 Connect axis parameter in Gather from android to ACL.
!android-nn-driver:3302
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ifbc49acb5272f8a36719bb68676e44817190537d
diff --git a/src/backends/cl/workloads/ClGatherWorkload.cpp b/src/backends/cl/workloads/ClGatherWorkload.cpp
index 0684870..c76b9c7 100644
--- a/src/backends/cl/workloads/ClGatherWorkload.cpp
+++ b/src/backends/cl/workloads/ClGatherWorkload.cpp
@@ -1,5 +1,5 @@
//
-// Copyright © 2020 Arm Ltd. All rights reserved.
+// Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
@@ -14,13 +14,14 @@
{
arm_compute::Status ClGatherWorkloadValidate(const TensorInfo& input,
const TensorInfo& indices,
- const TensorInfo& output)
+ const TensorInfo& output,
+ const GatherDescriptor& descriptor)
{
const arm_compute::TensorInfo aclInput = BuildArmComputeTensorInfo(input);
const arm_compute::TensorInfo aclIndices = BuildArmComputeTensorInfo(indices);
const arm_compute::TensorInfo aclOutput = BuildArmComputeTensorInfo(output);
- int aclAxis = ComputeAclAxis(0, input);
+ int aclAxis = ComputeAclAxis(descriptor.m_Axis, input);
return arm_compute::CLGather::validate(&aclInput, &aclIndices, &aclOutput, aclAxis);
}
@@ -35,7 +36,7 @@
arm_compute::ICLTensor& indices = static_cast<IClTensorHandle*>(m_Data.m_Inputs[1])->GetTensor();
arm_compute::ICLTensor& output = static_cast<IClTensorHandle*>(m_Data.m_Outputs[0])->GetTensor();
- int aclAxis = ComputeAclAxis(0, info.m_InputTensorInfos[0]);
+ int aclAxis = ComputeAclAxis(descriptor.m_Parameters.m_Axis, info.m_InputTensorInfos[0]);
m_Layer.configure(&input, &indices, &output, aclAxis);
};
diff --git a/src/backends/cl/workloads/ClGatherWorkload.hpp b/src/backends/cl/workloads/ClGatherWorkload.hpp
index 5dbeaad..df71a99 100644
--- a/src/backends/cl/workloads/ClGatherWorkload.hpp
+++ b/src/backends/cl/workloads/ClGatherWorkload.hpp
@@ -13,7 +13,8 @@
{
arm_compute::Status ClGatherWorkloadValidate(const TensorInfo& input,
const TensorInfo& indices,
- const TensorInfo& output);
+ const TensorInfo& output,
+ const GatherDescriptor& descriptor);
class ClGatherWorkload : public BaseWorkload<GatherQueueDescriptor>
{