diff options
Diffstat (limited to 'src/backends/neon/workloads')
8 files changed, 25 insertions, 22 deletions
diff --git a/src/backends/neon/workloads/NeonBatchToSpaceNdWorkload.cpp b/src/backends/neon/workloads/NeonBatchToSpaceNdWorkload.cpp index a6e7aa4415..d2f538745c 100644 --- a/src/backends/neon/workloads/NeonBatchToSpaceNdWorkload.cpp +++ b/src/backends/neon/workloads/NeonBatchToSpaceNdWorkload.cpp @@ -6,6 +6,8 @@ #include "NeonBatchToSpaceNdWorkload.hpp" #include "NeonWorkloadUtils.hpp" + +#include <armnn/utility/PolymorphicDowncast.hpp> #include <ResolveType.hpp> namespace armnn @@ -38,9 +40,9 @@ NeonBatchToSpaceNdWorkload::NeonBatchToSpaceNdWorkload(const BatchToSpaceNdQueue m_Data.ValidateInputsOutputs("NeonBatchToSpaceNdWorkload", 1, 1); arm_compute::ITensor& input = - boost::polymorphic_pointer_downcast<IAclTensorHandle>(m_Data.m_Inputs[0])->GetTensor(); + armnn::PolymorphicPointerDowncast<IAclTensorHandle>(m_Data.m_Inputs[0])->GetTensor(); arm_compute::ITensor& output = - boost::polymorphic_pointer_downcast<IAclTensorHandle>(m_Data.m_Outputs[0])->GetTensor(); + armnn::PolymorphicPointerDowncast<IAclTensorHandle>(m_Data.m_Outputs[0])->GetTensor(); arm_compute::DataLayout aclDataLayout = ConvertDataLayout(m_Data.m_Parameters.m_DataLayout); input.info()->set_data_layout(aclDataLayout); diff --git a/src/backends/neon/workloads/NeonComparisonWorkload.cpp b/src/backends/neon/workloads/NeonComparisonWorkload.cpp index 0edb3328b9..6e1f208228 100644 --- a/src/backends/neon/workloads/NeonComparisonWorkload.cpp +++ b/src/backends/neon/workloads/NeonComparisonWorkload.cpp @@ -6,6 +6,7 @@ #include "NeonComparisonWorkload.hpp" #include <aclCommon/ArmComputeUtils.hpp> #include <aclCommon/ArmComputeTensorUtils.hpp> +#include <armnn/utility/PolymorphicDowncast.hpp> #include <backendsCommon/CpuTensorHandle.hpp> namespace armnn @@ -35,9 +36,9 @@ NeonComparisonWorkload::NeonComparisonWorkload(const ComparisonQueueDescriptor& { m_Data.ValidateInputsOutputs("NeonComparisonWorkload", 2, 1); - arm_compute::ITensor& input0 = boost::polymorphic_downcast<IAclTensorHandle*>(m_Data.m_Inputs[0])->GetTensor(); - arm_compute::ITensor& input1 = boost::polymorphic_downcast<IAclTensorHandle*>(m_Data.m_Inputs[1])->GetTensor(); - arm_compute::ITensor& output = boost::polymorphic_downcast<IAclTensorHandle*>(m_Data.m_Outputs[0])->GetTensor(); + arm_compute::ITensor& input0 = PolymorphicDowncast<IAclTensorHandle*>(m_Data.m_Inputs[0])->GetTensor(); + arm_compute::ITensor& input1 = PolymorphicDowncast<IAclTensorHandle*>(m_Data.m_Inputs[1])->GetTensor(); + arm_compute::ITensor& output = PolymorphicDowncast<IAclTensorHandle*>(m_Data.m_Outputs[0])->GetTensor(); const arm_compute::ComparisonOperation comparisonOperation = ConvertComparisonOperationToAcl(m_Data.m_Parameters); diff --git a/src/backends/neon/workloads/NeonConcatWorkload.cpp b/src/backends/neon/workloads/NeonConcatWorkload.cpp index 4a9f68798c..65678aae59 100644 --- a/src/backends/neon/workloads/NeonConcatWorkload.cpp +++ b/src/backends/neon/workloads/NeonConcatWorkload.cpp @@ -8,11 +8,10 @@ #include "NeonWorkloadUtils.hpp" #include <aclCommon/ArmComputeTensorUtils.hpp> +#include <armnn/utility/PolymorphicDowncast.hpp> #include <backendsCommon/CpuTensorHandle.hpp> #include <neon/NeonTensorHandle.hpp> - - namespace armnn { using namespace armcomputetensorutils; @@ -73,10 +72,10 @@ const ConcatQueueDescriptor& descriptor, const WorkloadInfo& info) std::vector<arm_compute::ITensor *> aclInputs; for (auto input : m_Data.m_Inputs) { - arm_compute::ITensor& aclInput = boost::polymorphic_pointer_downcast<IAclTensorHandle>(input)->GetTensor(); + arm_compute::ITensor& aclInput = armnn::PolymorphicPointerDowncast<IAclTensorHandle>(input)->GetTensor(); aclInputs.emplace_back(&aclInput); } - arm_compute::ITensor& output = boost::polymorphic_pointer_downcast<IAclTensorHandle>( + arm_compute::ITensor& output = armnn::PolymorphicPointerDowncast<IAclTensorHandle>( m_Data.m_Outputs[0])->GetTensor(); // Create the layer function diff --git a/src/backends/neon/workloads/NeonDepthToSpaceWorkload.cpp b/src/backends/neon/workloads/NeonDepthToSpaceWorkload.cpp index b30dfcd80e..12e7d206bf 100644 --- a/src/backends/neon/workloads/NeonDepthToSpaceWorkload.cpp +++ b/src/backends/neon/workloads/NeonDepthToSpaceWorkload.cpp @@ -8,9 +8,9 @@ #include "NeonWorkloadUtils.hpp" #include <aclCommon/ArmComputeTensorUtils.hpp> +#include <armnn/utility/PolymorphicDowncast.hpp> #include <boost/numeric/conversion/cast.hpp> -#include <boost/polymorphic_pointer_cast.hpp> namespace armnn { @@ -39,13 +39,13 @@ NeonDepthToSpaceWorkload::NeonDepthToSpaceWorkload(const DepthToSpaceQueueDescri arm_compute::DataLayout aclDataLayout = ConvertDataLayout(m_Data.m_Parameters.m_DataLayout); arm_compute::ITensor& input = - boost::polymorphic_pointer_downcast<IAclTensorHandle>(m_Data.m_Inputs[0])->GetTensor(); + PolymorphicPointerDowncast<IAclTensorHandle>(m_Data.m_Inputs[0])->GetTensor(); input.info()->set_data_layout(aclDataLayout); int32_t blockSize = boost::numeric_cast<int32_t>(desc.m_Parameters.m_BlockSize); arm_compute::ITensor& output = - boost::polymorphic_pointer_downcast<IAclTensorHandle>(m_Data.m_Outputs[0])->GetTensor(); + PolymorphicPointerDowncast<IAclTensorHandle>(m_Data.m_Outputs[0])->GetTensor(); output.info()->set_data_layout(aclDataLayout); m_Layer.configure(&input, &output, blockSize); diff --git a/src/backends/neon/workloads/NeonQuantizeWorkload.cpp b/src/backends/neon/workloads/NeonQuantizeWorkload.cpp index 4f3ea2c3c1..14fbdf3dd9 100644 --- a/src/backends/neon/workloads/NeonQuantizeWorkload.cpp +++ b/src/backends/neon/workloads/NeonQuantizeWorkload.cpp @@ -8,10 +8,9 @@ #include <neon/NeonTensorHandle.hpp> #include <aclCommon/ArmComputeTensorUtils.hpp> +#include <armnn/utility/PolymorphicDowncast.hpp> #include <arm_compute/core/Types.h> -#include <boost/polymorphic_pointer_cast.hpp> - namespace armnn { using namespace armcomputetensorutils; @@ -30,9 +29,9 @@ NeonQuantizeWorkload::NeonQuantizeWorkload(const QuantizeQueueDescriptor& descri { m_Data.ValidateInputsOutputs("NeonQuantizeWorkload", 1, 1); - arm_compute::ITensor& input = boost::polymorphic_pointer_downcast<IAclTensorHandle>( + arm_compute::ITensor& input = PolymorphicPointerDowncast<IAclTensorHandle>( m_Data.m_Inputs[0])->GetTensor(); - arm_compute::ITensor& output = boost::polymorphic_pointer_downcast<IAclTensorHandle>( + arm_compute::ITensor& output = PolymorphicPointerDowncast<IAclTensorHandle>( m_Data.m_Outputs[0])->GetTensor(); m_Layer.reset(new arm_compute::NEQuantizationLayer()); diff --git a/src/backends/neon/workloads/NeonSpaceToBatchNdWorkload.cpp b/src/backends/neon/workloads/NeonSpaceToBatchNdWorkload.cpp index 199e926142..d68ab4c4ac 100644 --- a/src/backends/neon/workloads/NeonSpaceToBatchNdWorkload.cpp +++ b/src/backends/neon/workloads/NeonSpaceToBatchNdWorkload.cpp @@ -6,6 +6,8 @@ #include "NeonSpaceToBatchNdWorkload.hpp" #include "NeonWorkloadUtils.hpp" + +#include <armnn/utility/PolymorphicDowncast.hpp> #include <ResolveType.hpp> namespace armnn @@ -44,9 +46,9 @@ NeonSpaceToBatchNdWorkload::NeonSpaceToBatchNdWorkload(const SpaceToBatchNdQueue m_Data.ValidateInputsOutputs("NESpaceToBatchNdWorkload", 1, 1); arm_compute::ITensor& input = - boost::polymorphic_pointer_downcast<IAclTensorHandle>(m_Data.m_Inputs[0])->GetTensor(); + PolymorphicPointerDowncast<IAclTensorHandle>(m_Data.m_Inputs[0])->GetTensor(); arm_compute::ITensor& output = - boost::polymorphic_pointer_downcast<IAclTensorHandle>(m_Data.m_Outputs[0])->GetTensor(); + PolymorphicPointerDowncast<IAclTensorHandle>(m_Data.m_Outputs[0])->GetTensor(); // ArmNN blockShape is [H, W] Cl asks for W, H int32_t blockHeight = boost::numeric_cast<int32_t>(m_Data.m_Parameters.m_BlockShape[0]); diff --git a/src/backends/neon/workloads/NeonSplitterWorkload.cpp b/src/backends/neon/workloads/NeonSplitterWorkload.cpp index 19fa7c6389..de6f1378bd 100644 --- a/src/backends/neon/workloads/NeonSplitterWorkload.cpp +++ b/src/backends/neon/workloads/NeonSplitterWorkload.cpp @@ -80,7 +80,7 @@ NeonSplitterWorkload::NeonSplitterWorkload(const SplitterQueueDescriptor& descri std::vector<arm_compute::ITensor *> aclOutputs; for (auto output : m_Data.m_Outputs) { - arm_compute::ITensor& aclOutput = boost::polymorphic_pointer_downcast<IAclTensorHandle>(output)->GetTensor(); + arm_compute::ITensor& aclOutput = PolymorphicPointerDowncast<IAclTensorHandle>(output)->GetTensor(); aclOutputs.emplace_back(&aclOutput); } diff --git a/src/backends/neon/workloads/NeonStackWorkload.cpp b/src/backends/neon/workloads/NeonStackWorkload.cpp index b21494397d..a3ba8d888d 100644 --- a/src/backends/neon/workloads/NeonStackWorkload.cpp +++ b/src/backends/neon/workloads/NeonStackWorkload.cpp @@ -6,11 +6,11 @@ #include "NeonWorkloadUtils.hpp" #include <aclCommon/ArmComputeTensorUtils.hpp> +#include <armnn/utility/PolymorphicDowncast.hpp> #include <backendsCommon/CpuTensorHandle.hpp> #include <neon/NeonTensorHandle.hpp> #include <boost/numeric/conversion/cast.hpp> -#include <boost/polymorphic_pointer_cast.hpp> namespace armnn { @@ -53,10 +53,10 @@ NeonStackWorkload::NeonStackWorkload(const StackQueueDescriptor& descriptor, con std::vector<arm_compute::ITensor*> aclInputs; for (auto input : m_Data.m_Inputs) { - arm_compute::ITensor& aclInput = boost::polymorphic_pointer_downcast<IAclTensorHandle>(input)->GetTensor(); + arm_compute::ITensor& aclInput = PolymorphicPointerDowncast<IAclTensorHandle>(input)->GetTensor(); aclInputs.emplace_back(&aclInput); } - arm_compute::ITensor& output = boost::polymorphic_pointer_downcast<IAclTensorHandle>( + arm_compute::ITensor& output = PolymorphicPointerDowncast<IAclTensorHandle>( m_Data.m_Outputs[0])->GetTensor(); m_Layer.reset(new arm_compute::NEStackLayer()); |