aboutsummaryrefslogtreecommitdiff
path: root/src/backends/neon/workloads/NeonPadWorkload.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/neon/workloads/NeonPadWorkload.cpp')
-rw-r--r--src/backends/neon/workloads/NeonPadWorkload.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/backends/neon/workloads/NeonPadWorkload.cpp b/src/backends/neon/workloads/NeonPadWorkload.cpp
index 42fc42ba5c..1ba37f82eb 100644
--- a/src/backends/neon/workloads/NeonPadWorkload.cpp
+++ b/src/backends/neon/workloads/NeonPadWorkload.cpp
@@ -6,6 +6,7 @@
#include "NeonPadWorkload.hpp"
#include <neon/NeonTensorHandle.hpp>
+#include <aclCommon/ArmComputeUtils.hpp>
#include <aclCommon/ArmComputeTensorUtils.hpp>
#include <arm_compute/core/Types.h>
#include <arm_compute/runtime/NEON/functions/NEPadLayer.h>
@@ -41,7 +42,11 @@ NeonPadWorkload::NeonPadWorkload(const PadQueueDescriptor& descriptor, const Wor
arm_compute::PixelValue pixelValue = GetPixelValue(input.info(), descriptor.m_Parameters.m_PadValue);
auto layer = std::make_unique<arm_compute::NEPadLayer>();
- layer->configure(&input, &output, padList, pixelValue);
+ layer->configure(&input,
+ &output,
+ padList,
+ pixelValue,
+ ConvertPaddingModeToAcl(descriptor.m_Parameters.m_PaddingMode));
m_Layer.reset(layer.release());
}
@@ -66,7 +71,13 @@ arm_compute::Status NeonPadWorkloadValidate(const TensorInfo& input,
arm_compute::PaddingList padList = static_cast<arm_compute::PaddingList>(reversed_PadList);
- return arm_compute::NEPadLayer::validate(&aclInputInfo, &aclOutputInfo, padList);
+ // PixelValue is currently unused when validating, but it's required to pass in PaddingMode.
+ arm_compute::PixelValue pixelValue = GetPixelValue(&aclInputInfo, descriptor.m_PadValue);
+ return arm_compute::NEPadLayer::validate(&aclInputInfo,
+ &aclOutputInfo,
+ padList,
+ pixelValue,
+ ConvertPaddingModeToAcl(descriptor.m_PaddingMode));
}
} // namespace armnn