aboutsummaryrefslogtreecommitdiff
path: root/1.1
diff options
context:
space:
mode:
authorMike Kelly <mike.kelly@arm.com>2019-07-25 09:26:06 +0100
committerMike Kelly <mike.kelly@arm.com>2019-07-25 09:26:06 +0100
commit3c673949b4ed3ab3129859b18439ed8fe87a6ad1 (patch)
tree0c5a47c6dbf9d03e7cdfdf10c72b8d3696bea59b /1.1
parent29404fb3b16b301d630f492a2b89b9eb39b67e63 (diff)
downloadandroid-nn-driver-3c673949b4ed3ab3129859b18439ed8fe87a6ad1.tar.gz
IVGCVSW-3521 CpuAcc V1.2 pad Failures
* Fixed Pad and PadV2 failures and skips. * Templated ConvertPad to enable float16 tests to run. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I50ded84fe44ea5d5949e877f383f32adff88680d
Diffstat (limited to '1.1')
-rw-r--r--1.1/HalPolicy.cpp60
-rw-r--r--1.1/HalPolicy.hpp1
2 files changed, 1 insertions, 60 deletions
diff --git a/1.1/HalPolicy.cpp b/1.1/HalPolicy.cpp
index c5df72a7..b58cda48 100644
--- a/1.1/HalPolicy.cpp
+++ b/1.1/HalPolicy.cpp
@@ -86,7 +86,7 @@ bool HalPolicy::ConvertOperation(const Operation& operation, const Model& model,
case V1_1::OperationType::MEAN:
return ConvertMean(operation, model, data);
case V1_1::OperationType::PAD:
- return ConvertPad(operation, model, data);
+ return ConvertPad<hal_1_1::HalPolicy>(operation, model, data);
case V1_1::OperationType::SPACE_TO_BATCH_ND:
return ConvertSpaceToBatchNd(operation, model, data);
case V1_1::OperationType::SQUEEZE:
@@ -296,64 +296,6 @@ bool HalPolicy::ConvertMean(const Operation& operation, const Model& model, Conv
return SetupAndTrackLayerOutputSlot<hal_1_1::HalPolicy>(operation, 0, *layer, model, data);
}
-bool HalPolicy::ConvertPad(const Operation& operation, const Model& model, ConversionData& data)
-{
- ALOGV("hal_1_1::HalPolicy::ConvertPad()");
-
- LayerInputHandle input = ConvertToLayerInputHandle<hal_1_1::HalPolicy>(operation, 0, model, data);
- if (!input.IsValid())
- {
- return Fail("%s: Operation has invalid inputs", __func__);
- }
-
- const armnn::TensorInfo& inputInfo = input.GetTensorInfo();
- unsigned int rank = inputInfo.GetNumDimensions();
-
- armnn::PadDescriptor descriptor;
- if (!ConvertPaddings<hal_1_1::HalPolicy>(operation, model, data, rank, descriptor))
- {
- return Fail("%s: Could not convert paddings", __func__);
- }
-
- const Operand* output = GetOutputOperand<hal_1_1::HalPolicy>(operation, 0, model);
- if (!output)
- {
- return Fail("%s: Could not read output", __func__);
- }
-
- armnn::TensorInfo outputInfo = GetTensorInfoForOperand(*output);
- if (IsDynamicTensor(outputInfo))
- {
- ALOGD("Output shape not set, will infer from inputs");
- outputInfo.SetShape(InferPadOutputShape(inputInfo.GetShape(), descriptor.m_PadList));
- }
-
- bool isSupported = false;
- FORWARD_LAYER_SUPPORT_FUNC(__func__,
- IsPadSupported,
- data.m_Backends,
- isSupported,
- inputInfo,
- outputInfo,
- descriptor);
- if (!isSupported)
- {
- return false;
- }
-
- armnn::IConnectableLayer* const layer = data.m_Network->AddPadLayer(descriptor);
- assert(layer != nullptr);
- input.Connect(layer->GetInputSlot(0));
- layer->GetOutputSlot(0).SetTensorInfo(outputInfo);
-
- return SetupAndTrackLayerOutputSlot<hal_1_1::HalPolicy>(operation,
- 0,
- *layer,
- model,
- data,
- armnn::Optional<armnn::TensorInfo>(outputInfo));
-}
-
bool HalPolicy::ConvertSpaceToBatchNd(const Operation& operation, const Model& model, ConversionData& data)
{
ALOGV("hal_1_1::HalPolicy::ConvertSpaceToBatchNd()");
diff --git a/1.1/HalPolicy.hpp b/1.1/HalPolicy.hpp
index dd8558b3..827fddde 100644
--- a/1.1/HalPolicy.hpp
+++ b/1.1/HalPolicy.hpp
@@ -31,7 +31,6 @@ private:
static bool ConvertDiv(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertSub(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertMean(const Operation& operation, const Model& model, ConversionData& data);
- static bool ConvertPad(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertSpaceToBatchNd(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertSqueeze(const Operation& operation, const Model& model, ConversionData& data);
static bool ConvertStridedSlice(const Operation& operation, const Model& model, ConversionData& data);