diff options
author | Sheri Zhang <sheri.zhang@arm.com> | 2020-08-10 12:02:59 +0100 |
---|---|---|
committer | Sheri Zhang <sheri.zhang@arm.com> | 2020-08-10 16:10:27 +0000 |
commit | 996c777eea8acb8ce816552e77050dbf388f62be (patch) | |
tree | 0c7134f56f773bba4df185ba5e1b393d2a8d5bf4 /src/core | |
parent | 4aed4aafa2ddb0b6f4b76aef5008c8bb45599ea4 (diff) | |
download | ComputeLibrary-996c777eea8acb8ce816552e77050dbf388f62be.tar.gz |
COMPMID-3700: ArmNN OOB test failure
Fix ArmNN compiling issue through removing defulat template value for offset_no_padding() and pooling2_nchw_maxpool_indices().
Signed-off-by: Sheri Zhang <sheri.zhang@arm.com>
Change-Id: Ie7114d102b8533e757b8e841afcac1adfbcb3b54
Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3697
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Pablo Marquez <pablo.tello@arm.com>
Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/NEON/kernels/NEPoolingLayerKernel.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/core/NEON/kernels/NEPoolingLayerKernel.cpp b/src/core/NEON/kernels/NEPoolingLayerKernel.cpp index 2bbc307d19..efd0affee9 100644 --- a/src/core/NEON/kernels/NEPoolingLayerKernel.cpp +++ b/src/core/NEON/kernels/NEPoolingLayerKernel.cpp @@ -725,7 +725,7 @@ void NEPoolingLayerKernel::configure(const ITensor *input, ITensor *output, cons INEKernel::configure(win_config.second); } -template <typename T = float> +template <typename T> inline uint32_t offset_no_padding(uint32_t padded_offset, const Coordinates &id, const ITensorInfo &info, int pool_stride_x, int pool_stride_y) { const int pad_left = info.padding().left; @@ -975,7 +975,7 @@ f16_to_f32(float32x2_t input) return input; } -template <typename T = float> +template <typename T> void NEPoolingLayerKernel::pooling2_nchw_maxpool_indices(const Window &window_input, const Window &window) { Iterator input(_input, window_input); @@ -2043,7 +2043,7 @@ void NEPoolingLayerKernel::pooling2_f32_nhwc_maxpool_indices(const Window &windo // Store result vst1q_f32(reinterpret_cast<float *>(output.ptr()), vres); - const uint32_t offset_base = offset_no_padding(input.offset(), id, *_input->info(), pool_stride_x, pool_stride_y); + const uint32_t offset_base = offset_no_padding<float>(input.offset(), id, *_input->info(), pool_stride_x, pool_stride_y); const uint32_t offset_x0 = (uint32_t)offset_base / sizeof(float); const uint32_t offset_x1 = (uint32_t)offset_x0 + in_stride_y / sizeof(float) - pad_right; const uint32_t offset_x2 = (uint32_t)offset_x0 + in_stride_z / sizeof(float) - pad_right * _input->info()->tensor_shape()[1]; |