aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference/workloads/Pooling2d.cpp
diff options
context:
space:
mode:
authorMatthew Sloyan <matthew.sloyan@arm.com>2020-09-09 09:07:37 +0100
committerJan Eilers <jan.eilers@arm.com>2020-09-17 08:31:09 +0000
commit171214c8ff275c90cd4f7fc23a34ec2c83b5ea39 (patch)
tree23fd3ee288d631c8c94bede71f89f0f1e12da862 /src/backends/reference/workloads/Pooling2d.cpp
parenta25886e0966a6b9433cd23595688fadb88a161b2 (diff)
downloadarmnn-171214c8ff275c90cd4f7fc23a34ec2c83b5ea39.tar.gz
IVGCVSW-5300 Remove some boost::numeric_cast from armnn/backends
* Replaced with armnn/utility/NumericCast.hpp * Some exclusions in reference backend * Excluded as requires float implementation in NumericCast.hpp Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I9e4e9cd502c865452128fa04415fd6f250baa855
Diffstat (limited to 'src/backends/reference/workloads/Pooling2d.cpp')
-rw-r--r--src/backends/reference/workloads/Pooling2d.cpp53
1 files changed, 27 insertions, 26 deletions
diff --git a/src/backends/reference/workloads/Pooling2d.cpp b/src/backends/reference/workloads/Pooling2d.cpp
index 9b220619a4..435671ffad 100644
--- a/src/backends/reference/workloads/Pooling2d.cpp
+++ b/src/backends/reference/workloads/Pooling2d.cpp
@@ -9,6 +9,7 @@
#include <armnn/Types.hpp>
#include <armnnUtils/DataLayoutIndexed.hpp>
+#include <armnn/utility/NumericCast.hpp>
#include <boost/numeric/conversion/cast.hpp>
@@ -151,20 +152,20 @@ void Pooling2d(Decoder<float>& rInputDecoder,
auto heightIndex = dataLayout.GetHeightIndex();
auto widthIndex = dataLayout.GetWidthIndex();
- const int batchSize = boost::numeric_cast<int>(outputInfo.GetShape()[0]);
- const int channels = boost::numeric_cast<int>(outputInfo.GetShape()[channelsIndex]);
- const int heightOutput = boost::numeric_cast<int>(outputInfo.GetShape()[heightIndex]);
- const int widthOutput = boost::numeric_cast<int>(outputInfo.GetShape()[widthIndex]);
- const int heightInput = boost::numeric_cast<int>(inputInfo.GetShape()[heightIndex]);
- const int widthInput = boost::numeric_cast<int>(inputInfo.GetShape()[widthIndex]);
- const int padLeft = boost::numeric_cast<int>(params.m_PadLeft);
- const int padRight = boost::numeric_cast<int>(params.m_PadRight);
- const int padTop = boost::numeric_cast<int>(params.m_PadTop);
- const int padBottom = boost::numeric_cast<int>(params.m_PadBottom);
- const int strideX = boost::numeric_cast<int>(params.m_StrideX);
- const int strideY = boost::numeric_cast<int>(params.m_StrideY);
- const int poolHeight = boost::numeric_cast<int>(params.m_PoolHeight);
- const int poolWidth = boost::numeric_cast<int>(params.m_PoolWidth);
+ const int batchSize = armnn::numeric_cast<int>(outputInfo.GetShape()[0]);
+ const int channels = armnn::numeric_cast<int>(outputInfo.GetShape()[channelsIndex]);
+ const int heightOutput = armnn::numeric_cast<int>(outputInfo.GetShape()[heightIndex]);
+ const int widthOutput = armnn::numeric_cast<int>(outputInfo.GetShape()[widthIndex]);
+ const int heightInput = armnn::numeric_cast<int>(inputInfo.GetShape()[heightIndex]);
+ const int widthInput = armnn::numeric_cast<int>(inputInfo.GetShape()[widthIndex]);
+ const int padLeft = armnn::numeric_cast<int>(params.m_PadLeft);
+ const int padRight = armnn::numeric_cast<int>(params.m_PadRight);
+ const int padTop = armnn::numeric_cast<int>(params.m_PadTop);
+ const int padBottom = armnn::numeric_cast<int>(params.m_PadBottom);
+ const int strideX = armnn::numeric_cast<int>(params.m_StrideX);
+ const int strideY = armnn::numeric_cast<int>(params.m_StrideY);
+ const int poolHeight = armnn::numeric_cast<int>(params.m_PoolHeight);
+ const int poolWidth = armnn::numeric_cast<int>(params.m_PoolWidth);
float defaultInitializer = DefaultInitializer(params.m_PoolType);
@@ -221,10 +222,10 @@ void Pooling2d(Decoder<float>& rInputDecoder,
result = 0.0f;
unsigned int outputIndex = dataLayout.GetIndex(outputShape,
- boost::numeric_cast<unsigned int>(n),
- boost::numeric_cast<unsigned int>(c),
- boost::numeric_cast<unsigned int>(yOutput),
- boost::numeric_cast<unsigned int>(xOutput));
+ armnn::numeric_cast<unsigned int>(n),
+ armnn::numeric_cast<unsigned int>(c),
+ armnn::numeric_cast<unsigned int>(yOutput),
+ armnn::numeric_cast<unsigned int>(xOutput));
rOutputEncoder[outputIndex];
rOutputEncoder.Set(result);
continue;
@@ -244,10 +245,10 @@ void Pooling2d(Decoder<float>& rInputDecoder,
for (auto xInput = wstart; xInput < wend; xInput++)
{
unsigned int inputIndex = dataLayout.GetIndex(inputShape,
- boost::numeric_cast<unsigned int>(n),
- boost::numeric_cast<unsigned int>(c),
- boost::numeric_cast<unsigned int>(yInput),
- boost::numeric_cast<unsigned int>(xInput));
+ armnn::numeric_cast<unsigned int>(n),
+ armnn::numeric_cast<unsigned int>(c),
+ armnn::numeric_cast<unsigned int>(yInput),
+ armnn::numeric_cast<unsigned int>(xInput));
rInputDecoder[inputIndex];
float inval = rInputDecoder.Get();
@@ -259,10 +260,10 @@ void Pooling2d(Decoder<float>& rInputDecoder,
execute(result, poolAreaSize);
unsigned int outputIndex = dataLayout.GetIndex(outputShape,
- boost::numeric_cast<unsigned int>(n),
- boost::numeric_cast<unsigned int>(c),
- boost::numeric_cast<unsigned int>(yOutput),
- boost::numeric_cast<unsigned int>(xOutput));
+ armnn::numeric_cast<unsigned int>(n),
+ armnn::numeric_cast<unsigned int>(c),
+ armnn::numeric_cast<unsigned int>(yOutput),
+ armnn::numeric_cast<unsigned int>(xOutput));
rOutputEncoder[outputIndex];
rOutputEncoder.Set(result);