COMPMID-1995: Fix clang-tidy warnings
- Remove VirtualCall checks
- Fix some unused variables errors
- Use std::array insted of C style arrays
- Various fixes
Change-Id: Ife6170b7102de42b8f04e298dcf8476bf90779f0
Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com>
Reviewed-on: https://review.mlplatform.org/c/1049
Tested-by: Arm Jenkins <bsgcomp@arm.com>
Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com>
diff --git a/src/core/CL/kernels/CLPixelWiseMultiplicationKernel.cpp b/src/core/CL/kernels/CLPixelWiseMultiplicationKernel.cpp
index 9fa92bd..dda9b16 100644
--- a/src/core/CL/kernels/CLPixelWiseMultiplicationKernel.cpp
+++ b/src/core/CL/kernels/CLPixelWiseMultiplicationKernel.cpp
@@ -274,7 +274,7 @@
{
const unsigned int replicateSize = _output->info()->dimension(0) - std::min(_input1->info()->dimension(0), _input2->info()->dimension(0));
const unsigned int border = std::min<unsigned int>(num_elems_processed_per_iteration - 1U, replicateSize);
- return BorderSize(0, border, 0, 0);
+ return BorderSize{ 0, border, 0, 0 };
}
namespace
@@ -409,6 +409,6 @@
{
const unsigned int replicateSize = _output->info()->dimension(0) - std::min(_input1->info()->dimension(0), _input2->info()->dimension(0));
const unsigned int border = std::min<unsigned int>(num_elems_processed_per_iteration_complex - 1U, replicateSize);
- return BorderSize(0, border, 0, 0);
+ return BorderSize{ 0, border, 0, 0 };
}
} // namespace arm_compute
\ No newline at end of file
diff --git a/src/core/CL/kernels/CLSobel5x5Kernel.cpp b/src/core/CL/kernels/CLSobel5x5Kernel.cpp
index 46aa074..be2a44b 100644
--- a/src/core/CL/kernels/CLSobel5x5Kernel.cpp
+++ b/src/core/CL/kernels/CLSobel5x5Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -138,7 +138,7 @@
BorderSize CLSobel5x5VertKernel::border_size() const
{
- return BorderSize(2, 0);
+ return BorderSize{ 2, 0 };
}
void CLSobel5x5VertKernel::configure(const ICLTensor *input_x, const ICLTensor *input_y, ICLTensor *output_x, ICLTensor *output_y, bool border_undefined)
diff --git a/src/core/CL/kernels/CLSobel7x7Kernel.cpp b/src/core/CL/kernels/CLSobel7x7Kernel.cpp
index 0c94e88..a4a20c1 100644
--- a/src/core/CL/kernels/CLSobel7x7Kernel.cpp
+++ b/src/core/CL/kernels/CLSobel7x7Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -141,7 +141,7 @@
BorderSize CLSobel7x7VertKernel::border_size() const
{
- return BorderSize(3, 0);
+ return BorderSize{ 3, 0 };
}
void CLSobel7x7VertKernel::configure(const ICLTensor *input_x, const ICLTensor *input_y, ICLTensor *output_x, ICLTensor *output_y, bool border_undefined)
diff --git a/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp b/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp
index 403256b..e2d9881 100644
--- a/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp
+++ b/src/core/CL/kernels/CLSoftmaxLayerKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -62,11 +62,12 @@
const double beta_multiplier = std::min(
1.0 * beta * input_scale * (1 << (31 - scaled_diff_int_bits)),
- (1ll << 31) - 1.0);
- int input_beta_multiplier, input_beta_left_shift;
+ (1LL << 31) - 1.0);
+ int input_beta_multiplier;
+ int input_beta_left_shift;
quantization::calculate_quantized_multiplier_greater_than_one(beta_multiplier, &input_beta_multiplier, &input_beta_left_shift);
- const double max_input_rescaled = 1.0 * ((1 << scaled_diff_int_bits) - 1) * (1ll << (31 - scaled_diff_int_bits)) / (1ll << input_beta_left_shift);
+ const double max_input_rescaled = 1.0 * ((1 << scaled_diff_int_bits) - 1) * (1LL << (31 - scaled_diff_int_bits)) / (1LL << input_beta_left_shift);
const int diff_min = -1.f * std::floor(max_input_rescaled);
CLBuildOptions build_opts;
@@ -337,7 +338,7 @@
ARM_COMPUTE_ERROR_ON_NULLPTR(input, sum, output);
// Note: output should always have a scale of 1/256 and offset 0
- const QuantizationInfo allowed_quantization_info = QuantizationInfo(1.f / 256, 0);
+ const QuantizationInfo allowed_quantization_info = QuantizationInfo(1.F / 256, 0);
const bool is_quantized_asymmetric = (input->info()->data_type() == DataType::S32);
const DataType output_data_type = is_quantized_asymmetric ? DataType::QASYMM8 : input->info()->data_type();
diff --git a/src/core/CL/kernels/CLStridedSliceKernel.cpp b/src/core/CL/kernels/CLStridedSliceKernel.cpp
index c40f3c9..5a6b958 100644
--- a/src/core/CL/kernels/CLStridedSliceKernel.cpp
+++ b/src/core/CL/kernels/CLStridedSliceKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2018 ARM Limited.
+ * Copyright (c) 2018-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -115,7 +115,9 @@
const TensorShape &input_shape = input->info()->tensor_shape();
- Coordinates starts_abs, ends_abs, final_strides;
+ Coordinates starts_abs;
+ Coordinates ends_abs;
+ Coordinates final_strides;
std::tie(starts_abs, ends_abs, final_strides) = arm_compute::helpers::tensor_transform::calculate_strided_slice_coords(
input_shape,
starts, ends, strides,
diff --git a/src/core/HOGInfo.cpp b/src/core/HOGInfo.cpp
index 4f99455..bfee12c 100644
--- a/src/core/HOGInfo.cpp
+++ b/src/core/HOGInfo.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -68,24 +68,24 @@
{
ARM_COMPUTE_ERROR_ON(_cell_size.width == 0 || _cell_size.height == 0);
- return Size2D(_block_size.width / _cell_size.width,
- _block_size.height / _cell_size.height);
+ return Size2D{ _block_size.width / _cell_size.width,
+ _block_size.height / _cell_size.height };
}
Size2D HOGInfo::num_cells_per_block_stride() const
{
ARM_COMPUTE_ERROR_ON(_cell_size.width == 0 || _cell_size.height == 0);
- return Size2D(_block_stride.width / _cell_size.width,
- _block_stride.height / _cell_size.height);
+ return Size2D{ _block_stride.width / _cell_size.width,
+ _block_stride.height / _cell_size.height };
}
Size2D HOGInfo::num_block_positions_per_image(const Size2D &image_size) const
{
ARM_COMPUTE_ERROR_ON(_block_stride.width == 0 || _block_stride.height == 0);
- return Size2D(((image_size.width - _block_size.width) / _block_stride.width) + 1,
- ((image_size.height - _block_size.height) / _block_stride.height) + 1);
+ return Size2D{ ((image_size.width - _block_size.width) / _block_stride.width) + 1,
+ ((image_size.height - _block_size.height) / _block_stride.height) + 1 };
}
const Size2D &HOGInfo::cell_size() const
diff --git a/src/core/ITensor.cpp b/src/core/ITensor.cpp
index e6c80e8..7cf04b5 100644
--- a/src/core/ITensor.cpp
+++ b/src/core/ITensor.cpp
@@ -64,7 +64,7 @@
const size_t line_size = src_info->element_size() * src_info->dimension(0);
- execute_window_loop(win_src, [&](const Coordinates & id)
+ execute_window_loop(win_src, [&](const Coordinates &)
{
memcpy(dst_it.ptr(), src_it.ptr(), line_size);
},
diff --git a/src/core/NEON/kernels/NEAbsoluteDifferenceKernel.cpp b/src/core/NEON/kernels/NEAbsoluteDifferenceKernel.cpp
index e0c2891..62285e0 100644
--- a/src/core/NEON/kernels/NEAbsoluteDifferenceKernel.cpp
+++ b/src/core/NEON/kernels/NEAbsoluteDifferenceKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -49,7 +49,7 @@
Iterator input2(in2, window);
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t input1_val = vld1q_u8(input1.ptr());
const uint8x16_t input2_val = vld1q_u8(input2.ptr());
@@ -78,7 +78,7 @@
Iterator input2(in2, window);
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
int16x8x2_t input1_val = vld2q_s16(reinterpret_cast<const int16_t *>(input1.ptr()));
int16x8x2_t input2_val = vld2q_s16(reinterpret_cast<const int16_t *>(input2.ptr()));
@@ -93,7 +93,7 @@
Iterator input2(in2, window);
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t input1_val = vld1q_u8(input1.ptr());
const int16x8x2_t input2_val =
diff --git a/src/core/NEON/kernels/NEAccumulateKernel.cpp b/src/core/NEON/kernels/NEAccumulateKernel.cpp
index dae0800..d601adc 100644
--- a/src/core/NEON/kernels/NEAccumulateKernel.cpp
+++ b/src/core/NEON/kernels/NEAccumulateKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -126,7 +126,7 @@
const float16x8_t scale_val = vdupq_n_f16(1.f - _alpha);
const float16x8_t scale_val2 = vdupq_n_f16(_alpha);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
fp16::acc_we_v16_u8(input.ptr(), accum.ptr(), scale_val, scale_val2);
},
@@ -271,7 +271,7 @@
Iterator input(_input, window);
Iterator accum(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
acc_v16_u8(input.ptr(), accum.ptr());
},
@@ -314,7 +314,7 @@
const float32x4_t scale_val = vdupq_n_f32(1.f - _alpha);
const float32x4_t scale_val2 = vdupq_n_f32(_alpha);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
acc_we_v16_u8(input.ptr(), accum.ptr(), scale_val, scale_val2);
},
@@ -353,7 +353,7 @@
Iterator input(_input, window);
Iterator accum(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
acc_sq_v16_u8(input.ptr(), _shift, accum.ptr());
},
diff --git a/src/core/NEON/kernels/NEActivationLayerKernel.cpp b/src/core/NEON/kernels/NEActivationLayerKernel.cpp
index cf31cb8..8de8db9 100644
--- a/src/core/NEON/kernels/NEActivationLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEActivationLayerKernel.cpp
@@ -195,7 +195,7 @@
const auto a = static_cast<T>(_act_info.a());
const auto b = static_cast<T>(_act_info.b());
- execute_window_loop(win_collapsed, [&](const Coordinates & id)
+ execute_window_loop(win_collapsed, [&](const Coordinates &)
{
const auto input_ptr = reinterpret_cast<const T *>(input.ptr());
const auto output_ptr = reinterpret_cast<T *>(output.ptr());
@@ -327,7 +327,7 @@
float32x4_t vs = vdupq_n_f32(s);
float32x4_t vo = vdupq_n_f32(o);
- execute_window_loop(win_collapsed, [&](const Coordinates & id)
+ execute_window_loop(win_collapsed, [&](const Coordinates &)
{
const auto input_ptr = reinterpret_cast<const T *>(input.ptr());
const auto output_ptr = reinterpret_cast<T *>(output.ptr());
diff --git a/src/core/NEON/kernels/NEArithmeticAdditionKernel.cpp b/src/core/NEON/kernels/NEArithmeticAdditionKernel.cpp
index ffa578f..ca79a0a 100644
--- a/src/core/NEON/kernels/NEArithmeticAdditionKernel.cpp
+++ b/src/core/NEON/kernels/NEArithmeticAdditionKernel.cpp
@@ -84,7 +84,7 @@
Iterator non_broadcast_input(non_broadcast_tensor, non_broadcast_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto non_broadcast_input_ptr = reinterpret_cast<const T *>(non_broadcast_input.ptr());
const auto output_ptr = reinterpret_cast<T *>(output.ptr());
@@ -120,7 +120,7 @@
Iterator input2(in2, input2_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto input1_ptr = reinterpret_cast<const T *>(input1.ptr());
const auto input2_ptr = reinterpret_cast<const T *>(input2.ptr());
@@ -165,8 +165,8 @@
const auto window_end_x = static_cast<int>(window.x().end());
const bool is_broadcast_across_x = (input1_win.x().step() == 0) || (input2_win.x().step() == 0);
- const float output_scale = out->info()->quantization_info().scale;
- const int output_offset = out->info()->quantization_info().offset;
+ const float output_scale = out->info()->quantization_info().scale;
+ const int output_offset = out->info()->quantization_info().offset;
const float32x4_t vscale1 = vdupq_n_f32(in1->info()->quantization_info().scale);
const float32x4_t vscale2 = vdupq_n_f32(in2->info()->quantization_info().scale);
@@ -192,7 +192,7 @@
Iterator non_broadcast_input(non_broadcast_tensor, non_broadcast_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto non_broadcast_input_ptr = reinterpret_cast<const uint8_t *>(non_broadcast_input.ptr());
const auto output_ptr = reinterpret_cast<uint8_t *>(output.ptr());
@@ -234,7 +234,7 @@
vcvtnq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[1], bf.val[1]), invvscaleo)),
vcvtnq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[2], bf.val[2]), invvscaleo)),
vcvtnq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[3], bf.val[3]), invvscaleo)),
-#else //__aarch64__
+#else //__aarch64__
vcvtq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[0], bf.val[0]), invvscaleo)),
vcvtq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[1], bf.val[1]), invvscaleo)),
vcvtq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[2], bf.val[2]), invvscaleo)),
@@ -252,7 +252,7 @@
for(; x < window_end_x; ++x)
{
const float afs = static_cast<int32_t>(*(non_broadcast_input_ptr + x) - non_broadcast_qinfo.offset) * non_broadcast_qinfo.scale;
- *(output_ptr + x) = out->info()->quantization_info().quantize((afs + bfs),RoundingPolicy::TO_NEAREST_UP);
+ *(output_ptr + x) = out->info()->quantization_info().quantize((afs + bfs), RoundingPolicy::TO_NEAREST_UP);
}
},
broadcast_input, non_broadcast_input, output);
@@ -270,7 +270,7 @@
Iterator input2(in2, input2_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto input1_ptr = reinterpret_cast<const uint8_t *>(input1.ptr());
const auto input2_ptr = reinterpret_cast<const uint8_t *>(input2.ptr());
@@ -311,7 +311,7 @@
vcvtnq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[1], bf.val[1]), invvscaleo)),
vcvtnq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[2], bf.val[2]), invvscaleo)),
vcvtnq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[3], bf.val[3]), invvscaleo)),
-#else //__aarch64__
+#else //__aarch64__
vcvtq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[0], bf.val[0]), invvscaleo)),
vcvtq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[1], bf.val[1]), invvscaleo)),
vcvtq_s32_f32(vmlaq_f32(voffseto, vaddq_f32(af.val[2], bf.val[2]), invvscaleo)),
@@ -330,7 +330,7 @@
{
const float afs = static_cast<int32_t>((*(input1_ptr + x)) - input1_qinfo.offset) * input1_qinfo.scale;
const float bfs = static_cast<int32_t>((*(input2_ptr + x)) - input2_qinfo.offset) * input2_qinfo.scale;
- *(output_ptr + x) = out->info()->quantization_info().quantize((afs + bfs),RoundingPolicy::TO_NEAREST_UP);
+ *(output_ptr + x) = out->info()->quantization_info().quantize((afs + bfs), RoundingPolicy::TO_NEAREST_UP);
}
},
input1, input2, output);
@@ -357,7 +357,7 @@
const auto window_start_x = static_cast<int>(window.x().start());
const auto window_end_x = static_cast<int>(window.x().end());
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto input1_ptr = reinterpret_cast<const int16_t *>(input1.ptr());
const auto input2_ptr = reinterpret_cast<const uint8_t *>(input2.ptr());
@@ -427,7 +427,7 @@
const auto window_start_x = static_cast<int>(window.x().start());
const auto window_end_x = static_cast<int>(window.x().end());
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto input1_ptr = reinterpret_cast<const uint8_t *>(input1.ptr());
const auto input2_ptr = reinterpret_cast<const uint8_t *>(input2.ptr());
diff --git a/src/core/NEON/kernels/NEArithmeticSubtractionKernel.cpp b/src/core/NEON/kernels/NEArithmeticSubtractionKernel.cpp
index ff5893d..45e1562 100644
--- a/src/core/NEON/kernels/NEArithmeticSubtractionKernel.cpp
+++ b/src/core/NEON/kernels/NEArithmeticSubtractionKernel.cpp
@@ -55,7 +55,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t ta1 = vld1q_u8(input1.ptr());
const uint8x16_t ta2 = vld1q_u8(input2.ptr());
@@ -71,7 +71,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t ta1 = vld1q_u8(input1.ptr());
const uint8x16_t ta2 = vld1q_u8(input2.ptr());
@@ -87,7 +87,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float32x4x4_t ta1 = vdequantize(vld1q_u8(reinterpret_cast<const qasymm8_t *>(input1.ptr())), in1->info()->quantization_info());
const float32x4x4_t ta2 = vdequantize(vld1q_u8(reinterpret_cast<const qasymm8_t *>(input2.ptr())), in2->info()->quantization_info());
@@ -115,7 +115,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t ta1 = vld2q_s16(reinterpret_cast<const int16_t *>(input1.ptr()));
const int16x8x2_t ta2 = vld2q_s16(reinterpret_cast<const int16_t *>(input2.ptr()));
@@ -139,7 +139,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t ta1 = vld2q_s16(reinterpret_cast<const int16_t *>(input1.ptr()));
const int16x8x2_t ta2 = vld2q_s16(reinterpret_cast<const int16_t *>(input2.ptr()));
@@ -179,7 +179,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float16x8x2_t a = vld2q_f16(reinterpret_cast<const float16_t *>(input1.ptr()));
const float16x8x2_t b = vld2q_f16(reinterpret_cast<const float16_t *>(input2.ptr()));
@@ -202,7 +202,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float32x4x4_t ta1 = vld4q_f32(reinterpret_cast<const float *>(input1.ptr()));
const float32x4x4_t ta2 = vld4q_f32(reinterpret_cast<const float *>(input2.ptr()));
@@ -227,7 +227,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t bv_0 = vld1q_u8(input2.ptr());
int16x8_t a1_0 = vld1q_s16(reinterpret_cast<const int16_t *>(input1.ptr()));
@@ -248,7 +248,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t bv_0 = vld1q_u8(input2.ptr());
int16x8_t a1_0 = vld1q_s16(reinterpret_cast<const int16_t *>(input1.ptr()));
@@ -269,7 +269,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t bv_0 = vld1q_u8(input1.ptr());
int16x8_t a1_0 = vld1q_s16(reinterpret_cast<const int16_t *>(input2.ptr()));
@@ -290,7 +290,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t bv_0 = vld1q_u8(input1.ptr());
int16x8_t a1_0 = vld1q_s16(reinterpret_cast<const int16_t *>(input2.ptr()));
@@ -311,7 +311,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t av_0 = vld1q_u8(input1.ptr());
const uint8x16_t bv_0 = vld1q_u8(input2.ptr());
@@ -333,7 +333,7 @@
Iterator input2(in2, window.broadcast_if_dimension_le_one(in2->info()->tensor_shape()));
Iterator output(out, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t av_0 = vld1q_u8(input1.ptr());
const uint8x16_t bv_0 = vld1q_u8(input2.ptr());
@@ -515,5 +515,5 @@
{
const unsigned int replicateSize = _output->info()->dimension(0) - std::min(_input1->info()->dimension(0), _input2->info()->dimension(0));
const unsigned int border = std::min<unsigned int>(num_elems_processed_per_iteration - 1U, replicateSize);
- return BorderSize(0, border, 0, 0);
+ return BorderSize{ 0, border, 0, 0 };
}
\ No newline at end of file
diff --git a/src/core/NEON/kernels/NEBitwiseAndKernel.cpp b/src/core/NEON/kernels/NEBitwiseAndKernel.cpp
index ed83286..71312a9 100644
--- a/src/core/NEON/kernels/NEBitwiseAndKernel.cpp
+++ b/src/core/NEON/kernels/NEBitwiseAndKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -106,7 +106,7 @@
Iterator input2(_input2, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
bitwise_and<uint8_t>(input1.ptr(), input2.ptr(), output.ptr());
},
diff --git a/src/core/NEON/kernels/NEBitwiseNotKernel.cpp b/src/core/NEON/kernels/NEBitwiseNotKernel.cpp
index 08d7fe2..5791dcc 100644
--- a/src/core/NEON/kernels/NEBitwiseNotKernel.cpp
+++ b/src/core/NEON/kernels/NEBitwiseNotKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -89,7 +89,7 @@
Iterator input(_input, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
bitwise_not_U8_U8(input.ptr(), output.ptr());
},
diff --git a/src/core/NEON/kernels/NEBitwiseOrKernel.cpp b/src/core/NEON/kernels/NEBitwiseOrKernel.cpp
index 1b17cc2..8aed9bb 100644
--- a/src/core/NEON/kernels/NEBitwiseOrKernel.cpp
+++ b/src/core/NEON/kernels/NEBitwiseOrKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -102,7 +102,7 @@
Iterator input2(_input2, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
bitwise_or_U8_U8_U8(input1.ptr(), input2.ptr(), output.ptr());
},
diff --git a/src/core/NEON/kernels/NEBitwiseXorKernel.cpp b/src/core/NEON/kernels/NEBitwiseXorKernel.cpp
index 9451e8a..e2dcb95 100644
--- a/src/core/NEON/kernels/NEBitwiseXorKernel.cpp
+++ b/src/core/NEON/kernels/NEBitwiseXorKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -98,7 +98,7 @@
Iterator input2(_input2, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
bitwise_xor_U8_U8_U8(input1.ptr(), input2.ptr(), output.ptr());
},
diff --git a/src/core/NEON/kernels/NEBox3x3Kernel.cpp b/src/core/NEON/kernels/NEBox3x3Kernel.cpp
index 0c97005..7a53f93 100644
--- a/src/core/NEON/kernels/NEBox3x3Kernel.cpp
+++ b/src/core/NEON/kernels/NEBox3x3Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -49,7 +49,7 @@
const float16x8_t oneovernine = vdupq_n_f16(1.0f / 9.0f);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
@@ -160,7 +160,7 @@
const float32x4_t oneovernine = vdupq_n_f32(1.0f / 9.0f);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
diff --git a/src/core/NEON/kernels/NECannyEdgeKernel.cpp b/src/core/NEON/kernels/NECannyEdgeKernel.cpp
index fa51a7b..8d822bd 100644
--- a/src/core/NEON/kernels/NECannyEdgeKernel.cpp
+++ b/src/core/NEON/kernels/NECannyEdgeKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -950,7 +950,7 @@
Iterator magnitude(_magnitude, window);
Iterator phase(_phase, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
(*_func)(gx.ptr(), gy.ptr(), magnitude.ptr(), phase.ptr());
},
@@ -1034,7 +1034,7 @@
const size_t input1_stride = _magnitude->info()->strides_in_bytes()[1];
const size_t input1_stride_ushort = input1_stride / data_size_from_type(_magnitude->info()->data_type());
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
(*_func)(magnitude.ptr(), phase.ptr(), output.ptr(), input1_stride_ushort, _lower_thr, _upper_thr);
},
@@ -1113,7 +1113,7 @@
const size_t input_stride = _input->info()->strides_in_bytes()[1];
const size_t output_stride = _output->info()->strides_in_bytes()[1];
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
edge_trace_U8_U8(input.ptr(), output.ptr(), input_stride, output_stride);
},
diff --git a/src/core/NEON/kernels/NEChannelCombineKernel.cpp b/src/core/NEON/kernels/NEChannelCombineKernel.cpp
index 28fb4bd..539154d 100644
--- a/src/core/NEON/kernels/NEChannelCombineKernel.cpp
+++ b/src/core/NEON/kernels/NEChannelCombineKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -286,7 +286,7 @@
Iterator p2(_planes[2], win);
Iterator out(_output, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto p0_ptr = static_cast<uint8_t *>(p0.ptr());
const auto p1_ptr = static_cast<uint8_t *>(p1.ptr());
@@ -315,7 +315,7 @@
Iterator p3(_planes[3], win);
Iterator out(_output, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto p0_ptr = static_cast<uint8_t *>(p0.ptr());
const auto p1_ptr = static_cast<uint8_t *>(p1.ptr());
@@ -353,7 +353,7 @@
constexpr auto shift = is_uyvy ? 1 : 0;
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto p0_ptr = static_cast<uint8_t *>(p0.ptr());
const auto p1_ptr = static_cast<uint8_t *>(p1.ptr());
@@ -409,7 +409,7 @@
// Increase step size after iterator is created to calculate stride correctly for multi channel format
out_win.set_dimension_step(Window::DimX, out_win.x().step() * _x_subsampling[1]);
- execute_window_loop(out_win, [&](const Coordinates & id)
+ execute_window_loop(out_win, [&](const Coordinates &)
{
const uint8x8x2_t pixels =
{
@@ -444,7 +444,7 @@
Iterator in(_planes[plane_id], tmp_win);
Iterator out(_output_multi->plane(plane_id), tmp_win);
- execute_window_loop(tmp_win, [&](const Coordinates & id)
+ execute_window_loop(tmp_win, [&](const Coordinates &)
{
const uint8x8_t pixels = vld1_u8(in.ptr());
diff --git a/src/core/NEON/kernels/NEChannelExtractKernel.cpp b/src/core/NEON/kernels/NEChannelExtractKernel.cpp
index 98b2f28..61e1304 100644
--- a/src/core/NEON/kernels/NEChannelExtractKernel.cpp
+++ b/src/core/NEON/kernels/NEChannelExtractKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -192,7 +192,7 @@
Iterator in(_input, win);
Iterator out(_output, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto in_ptr = static_cast<uint8_t *>(in.ptr());
const auto out_ptr = static_cast<uint8_t *>(out.ptr());
@@ -207,7 +207,7 @@
Iterator in(_input, win);
Iterator out(_output, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto in_ptr = static_cast<uint8_t *>(in.ptr());
const auto out_ptr = static_cast<uint8_t *>(out.ptr());
@@ -222,7 +222,7 @@
Iterator in(_input, win);
Iterator out(_output, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto in_ptr = static_cast<uint8_t *>(in.ptr());
const auto out_ptr = static_cast<uint8_t *>(out.ptr());
@@ -242,7 +242,7 @@
Iterator in(_input, win);
Iterator out(_output, win_out);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto in_ptr = static_cast<uint8_t *>(in.ptr());
const auto out_ptr = static_cast<uint8_t *>(out.ptr());
diff --git a/src/core/NEON/kernels/NEConvolutionKernel.cpp b/src/core/NEON/kernels/NEConvolutionKernel.cpp
index 0a10546..b154340 100644
--- a/src/core/NEON/kernels/NEConvolutionKernel.cpp
+++ b/src/core/NEON/kernels/NEConvolutionKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -317,7 +317,7 @@
template <unsigned int matrix_size>
BorderSize NEConvolutionKernel<matrix_size>::border_size() const
{
- return BorderSize(matrix_size / 2);
+ return BorderSize{ matrix_size / 2 };
}
template <unsigned int matrix_size>
@@ -388,7 +388,7 @@
const unsigned char *input_mid_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-1, 0));
const unsigned char *input_low_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-1, 1));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int32x4_t out = vdupq_n_s32(0);
int32x4_t out2 = vdupq_n_s32(0);
@@ -437,7 +437,7 @@
const unsigned char *input_low1_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-2, 1));
const unsigned char *input_low2_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-2, 2));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int32x4_t out = vdupq_n_s32(0);
int32x4_t out2 = vdupq_n_s32(0);
@@ -496,7 +496,7 @@
const unsigned char *input_low2_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-3, 2));
const unsigned char *input_low3_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-3, 3));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int32x4_t out = vdupq_n_s32(0);
int32x4_t out2 = vdupq_n_s32(0);
@@ -565,7 +565,7 @@
const unsigned char *input_low3_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-4, 3));
const unsigned char *input_low4_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-4, 4));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int32x4_t out = vdupq_n_s32(0);
int32x4_t out2 = vdupq_n_s32(0);
@@ -728,7 +728,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -761,7 +761,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -794,7 +794,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -840,7 +840,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -875,7 +875,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -910,7 +910,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -962,7 +962,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -999,7 +999,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -1036,7 +1036,7 @@
Iterator input(_input, win_in);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -1096,7 +1096,7 @@
template <unsigned int matrix_size>
BorderSize NESeparableConvolutionVertKernel<matrix_size>::border_size() const
{
- return BorderSize(matrix_size / 2, 0);
+ return BorderSize{ matrix_size / 2, 0 };
}
template <unsigned int matrix_size>
@@ -1209,7 +1209,7 @@
input_ptrs[k_half + i] = _input->ptr_to_element(Coordinates(0, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
uint16x8_t out0 = vdupq_n_u16(0);
uint16x8_t out1 = vdupq_n_u16(0);
@@ -1275,7 +1275,7 @@
input_ptrs[k_half + i] = _input->ptr_to_element(Coordinates(0, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int16x8_t out0 = vdupq_n_s16(0);
int16x8_t out1 = vdupq_n_s16(0);
@@ -1343,7 +1343,7 @@
const int32x4_t zero = vdupq_n_s32(0);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int32x4x2_t out0 =
{
@@ -1576,7 +1576,7 @@
input_ptrs[k_row_half + i] = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-k_col_half, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int32x4_t out = vdupq_n_s32(0);
int32x4_t out2 = vdupq_n_s32(0);
diff --git a/src/core/NEON/kernels/NECopyKernel.cpp b/src/core/NEON/kernels/NECopyKernel.cpp
index c5103f0..4722c05 100644
--- a/src/core/NEON/kernels/NECopyKernel.cpp
+++ b/src/core/NEON/kernels/NECopyKernel.cpp
@@ -70,7 +70,7 @@
Iterator input_it(_input, out_slice);
Iterator output_it(_output, out_slice);
- execute_window_loop(out_slice, [&](const Coordinates & id)
+ execute_window_loop(out_slice, [&](const Coordinates &)
{
memcpy(output_it.ptr(), input_it.ptr(), _output->info()->dimension(0) * _output->info()->element_size());
},
diff --git a/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp b/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp
index 5433755..cbc90a0 100644
--- a/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -148,7 +148,7 @@
const float32x4_t scale = vdupq_n_f32(_input->info()->quantization_info().scale);
const int32x4_t offset = vdupq_n_s32(_input->info()->quantization_info().offset);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t texels_u8 = vld1q_u8(input.ptr());
const uint16x8x2_t texels_u16 =
@@ -184,7 +184,7 @@
const float16x8_t scale = vdupq_n_f16(static_cast<float16_t>(_input->info()->quantization_info().scale));
const int16x8_t offset = vdupq_n_s16(static_cast<int16_t>(_input->info()->quantization_info().offset));
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t texels_u8 = vld1q_u8(input.ptr());
const int16x8x2_t texels_s16 =
@@ -216,7 +216,7 @@
case DataType::S16:
{
/* Up-conversion U8 -> S16 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t texels_u8 = vld1q_u8(input.ptr());
@@ -237,7 +237,7 @@
case DataType::S32:
{
/* Up-conversion U8 -> S32 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t texels_u8 = vld1q_u8(input.ptr());
@@ -260,7 +260,7 @@
case DataType::U16:
{
/* Up-conversion U8 -> U16 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t texels_u8 = vld1q_u8(input.ptr());
@@ -294,7 +294,7 @@
/* Down-conversion S16 -> U8 */
if(ConvertPolicy::SATURATE == _policy)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t texels =
{
@@ -310,7 +310,7 @@
}
else
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t texels =
{
@@ -332,7 +332,7 @@
const int32x4_t b = vdupq_n_s32(_shift);
/* Up-conversion S16 -> S32 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t texels =
{
@@ -376,7 +376,7 @@
/* Down-conversion U16 -> U8 */
if(ConvertPolicy::SATURATE == _policy)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint16x8x2_t texels =
{
@@ -392,7 +392,7 @@
}
else
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint16x8x2_t texels =
{
@@ -413,7 +413,7 @@
const int32x4_t b = vdupq_n_s32(_shift);
/* Up-conversion U16 -> U32 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint16x8x2_t texels =
{
@@ -504,7 +504,7 @@
const int32x4_t zero_val_vec = vdupq_n_s32(0);
/* Down-conversion F32 -> QASYMM8 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float32x4x4_t texels =
{
@@ -535,7 +535,7 @@
const float32x4_t scale = vdupq_n_f32(1.f / (1 << _shift));
/* Down-conversion F32 -> F16 */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float32x4x4_t texels =
{
diff --git a/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp b/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp
index 119aa4a..1520225 100644
--- a/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp
@@ -111,7 +111,7 @@
Iterator in(input, win_collapsed);
Iterator out(output, win_collapsed);
- execute_window_loop(win_collapsed, [&](const Coordinates & id)
+ execute_window_loop(win_collapsed, [&](const Coordinates &)
{
const auto in_ptr = reinterpret_cast<const uint8_t *>(in.ptr());
const auto out_ptr = reinterpret_cast<T *>(out.ptr());
diff --git a/src/core/NEON/kernels/NEDerivativeKernel.cpp b/src/core/NEON/kernels/NEDerivativeKernel.cpp
index cfed324..1d7237a 100644
--- a/src/core/NEON/kernels/NEDerivativeKernel.cpp
+++ b/src/core/NEON/kernels/NEDerivativeKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -124,7 +124,7 @@
Iterator out_x(_output_x, window);
/* Apply 1-D centered point discrete derivative mask ([-1 0 1]) along the X direction */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
/* Load left and right data */
const uint8x16_t l_data = vld1q_u8(in.ptr() - 1);
@@ -153,7 +153,7 @@
const size_t stride = _input->info()->strides_in_bytes()[1];
/* Apply 1-D centered point discrete derivative mask ([-1 0 1]^T) along the Y direction */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
/* Load top and bottom data */
const uint8x16_t t_data = vld1q_u8(in.ptr() - stride);
@@ -183,7 +183,7 @@
const size_t stride = _input->info()->strides_in_bytes()[1];
/* Apply 1-D centered point discrete derivative masks ([-1 0 1] and [-1 0 1]^T) along the X and Y directions */
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
/* Load top, bottom, left and right data */
const uint8x16_t t_data = vld1q_u8(in.ptr() - stride);
diff --git a/src/core/NEON/kernels/NEDirectConvolutionLayerOutputStageKernel.cpp b/src/core/NEON/kernels/NEDirectConvolutionLayerOutputStageKernel.cpp
index 09836f1..7e11393 100644
--- a/src/core/NEON/kernels/NEDirectConvolutionLayerOutputStageKernel.cpp
+++ b/src/core/NEON/kernels/NEDirectConvolutionLayerOutputStageKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -266,7 +266,7 @@
if(in_place) // In place accumulate
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Get bias and pointer to input
const auto in_ptr = reinterpret_cast<T1 *>(in.ptr());
@@ -287,7 +287,7 @@
else // Out of place accumulate
{
Iterator out(output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Get bias and pointer to input
const auto in_ptr = reinterpret_cast<T1 *>(in.ptr());
@@ -363,7 +363,7 @@
Iterator in(input, window);
Iterator out(output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Get bias and pointer to input
const auto in_ptr = reinterpret_cast<int32_t *>(in.ptr());
@@ -399,7 +399,7 @@
Iterator bi(bias, window_bias);
Iterator out(output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Get bias and pointer to input
const auto in_ptr = reinterpret_cast<int32_t *>(in.ptr());
@@ -433,7 +433,7 @@
Iterator in(input, window);
Iterator out(output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Get pointer to input
const auto in_ptr = reinterpret_cast<int32_t *>(in.ptr());
diff --git a/src/core/NEON/kernels/NEElementwiseOperationKernel.cpp b/src/core/NEON/kernels/NEElementwiseOperationKernel.cpp
index aa458c2..6b87ea0 100644
--- a/src/core/NEON/kernels/NEElementwiseOperationKernel.cpp
+++ b/src/core/NEON/kernels/NEElementwiseOperationKernel.cpp
@@ -506,7 +506,7 @@
Iterator non_broadcast_input(non_broadcast_tensor, non_broadcast_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
auto output_ptr = reinterpret_cast<OutputScalarType *>(output.ptr());
const auto non_broadcast_input_ptr = reinterpret_cast<const InputScalarType *>(non_broadcast_input.ptr());
@@ -531,7 +531,7 @@
Iterator input2(in2, input2_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
auto output_ptr = reinterpret_cast<OutputScalarType *>(output.ptr());
const auto input1_ptr = reinterpret_cast<const InputScalarType *>(input1.ptr());
@@ -599,7 +599,7 @@
Iterator non_broadcast_input(non_broadcast_tensor, non_broadcast_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto non_broadcast_input_ptr = reinterpret_cast<const uint8_t *>(non_broadcast_input.ptr());
const auto output_ptr = reinterpret_cast<uint8_t *>(output.ptr());
@@ -640,7 +640,7 @@
Iterator input2(in2, input2_win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const auto input1_ptr = reinterpret_cast<const uint8_t *>(input1.ptr());
const auto input2_ptr = reinterpret_cast<const uint8_t *>(input2.ptr());
diff --git a/src/core/NEON/kernels/NEElementwiseUnaryKernel.cpp b/src/core/NEON/kernels/NEElementwiseUnaryKernel.cpp
index 7ecc4d1..34696d8 100644
--- a/src/core/NEON/kernels/NEElementwiseUnaryKernel.cpp
+++ b/src/core/NEON/kernels/NEElementwiseUnaryKernel.cpp
@@ -87,7 +87,7 @@
Iterator input(in, win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
auto output_ptr = reinterpret_cast<ScalarType *>(output.ptr());
const auto input_ptr = reinterpret_cast<const ScalarType *>(input.ptr());
diff --git a/src/core/NEON/kernels/NEFastCornersKernel.cpp b/src/core/NEON/kernels/NEFastCornersKernel.cpp
index 919efd2..81bcc8b 100644
--- a/src/core/NEON/kernels/NEFastCornersKernel.cpp
+++ b/src/core/NEON/kernels/NEFastCornersKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -49,32 +49,30 @@
{
ARM_COMPUTE_ERROR_ON(k >= PERMUTATIONS);
- static const uint8_t permutations_table[PERMUTATIONS][PERM_SIZE]
- {
- { 0, 1, 2, 3, 4, 5, 6, 7, 8, 255, 255, 255, 255, 255, 255, 255 },
- { 15, 0, 1, 2, 3, 4, 5, 6, 7, 255, 255, 255, 255, 255, 255, 255 },
- { 14, 15, 0, 1, 2, 3, 4, 5, 6, 255, 255, 255, 255, 255, 255, 255 },
- { 13, 14, 15, 0, 1, 2, 3, 4, 5, 255, 255, 255, 255, 255, 255, 255 },
- { 12, 13, 14, 15, 0, 1, 2, 3, 4, 255, 255, 255, 255, 255, 255, 255 },
- { 11, 12, 13, 14, 15, 0, 1, 2, 3, 255, 255, 255, 255, 255, 255, 255 },
- { 10, 11, 12, 13, 14, 15, 0, 1, 2, 255, 255, 255, 255, 255, 255, 255 },
- { 9, 10, 11, 12, 13, 14, 15, 0, 1, 255, 255, 255, 255, 255, 255, 255 },
- { 8, 9, 10, 11, 12, 13, 14, 15, 0, 255, 255, 255, 255, 255, 255, 255 },
- { 7, 8, 9, 10, 11, 12, 13, 14, 15, 255, 255, 255, 255, 255, 255, 255 },
- { 6, 7, 8, 9, 10, 11, 12, 13, 14, 255, 255, 255, 255, 255, 255, 255 },
- { 5, 6, 7, 8, 9, 10, 11, 12, 13, 255, 255, 255, 255, 255, 255, 255 },
- { 4, 5, 6, 7, 8, 9, 10, 11, 12, 255, 255, 255, 255, 255, 255, 255 },
- { 3, 4, 5, 6, 7, 8, 9, 10, 11, 255, 255, 255, 255, 255, 255, 255 },
- { 2, 3, 4, 5, 6, 7, 8, 9, 10, 255, 255, 255, 255, 255, 255, 255 },
- { 1, 2, 3, 4, 5, 6, 7, 8, 9, 255, 255, 255, 255, 255, 255, 255 }
+ static const std::array<std::array<uint8_t, PERMUTATIONS>, PERM_SIZE> permutations_table{ { { 0, 1, 2, 3, 4, 5, 6, 7, 8, 255, 255, 255, 255, 255, 255, 255 },
+ { 15, 0, 1, 2, 3, 4, 5, 6, 7, 255, 255, 255, 255, 255, 255, 255 },
+ { 14, 15, 0, 1, 2, 3, 4, 5, 6, 255, 255, 255, 255, 255, 255, 255 },
+ { 13, 14, 15, 0, 1, 2, 3, 4, 5, 255, 255, 255, 255, 255, 255, 255 },
+ { 12, 13, 14, 15, 0, 1, 2, 3, 4, 255, 255, 255, 255, 255, 255, 255 },
+ { 11, 12, 13, 14, 15, 0, 1, 2, 3, 255, 255, 255, 255, 255, 255, 255 },
+ { 10, 11, 12, 13, 14, 15, 0, 1, 2, 255, 255, 255, 255, 255, 255, 255 },
+ { 9, 10, 11, 12, 13, 14, 15, 0, 1, 255, 255, 255, 255, 255, 255, 255 },
+ { 8, 9, 10, 11, 12, 13, 14, 15, 0, 255, 255, 255, 255, 255, 255, 255 },
+ { 7, 8, 9, 10, 11, 12, 13, 14, 15, 255, 255, 255, 255, 255, 255, 255 },
+ { 6, 7, 8, 9, 10, 11, 12, 13, 14, 255, 255, 255, 255, 255, 255, 255 },
+ { 5, 6, 7, 8, 9, 10, 11, 12, 13, 255, 255, 255, 255, 255, 255, 255 },
+ { 4, 5, 6, 7, 8, 9, 10, 11, 12, 255, 255, 255, 255, 255, 255, 255 },
+ { 3, 4, 5, 6, 7, 8, 9, 10, 11, 255, 255, 255, 255, 255, 255, 255 },
+ { 2, 3, 4, 5, 6, 7, 8, 9, 10, 255, 255, 255, 255, 255, 255, 255 },
+ { 1, 2, 3, 4, 5, 6, 7, 8, 9, 255, 255, 255, 255, 255, 255, 255 }
- };
+ } };
const uint8x8x2_t index =
{
{
- vld1_u8(permutations_table[k]),
- vld1_u8(permutations_table[k] + 8)
+ vld1_u8(permutations_table[k].data()),
+ vld1_u8(permutations_table[k].data() + 8)
}
};
@@ -112,7 +110,7 @@
. . 9 8 7 . . .
*/
- static const uint8_t top_right[8] =
+ static const std::array<uint8_t, 8> top_right =
{
/* The register r.val[0] will be used to retrieve these texels:
. . . 0 1 . . .
@@ -130,7 +128,7 @@
255
};
- static const uint8_t bottom_right[8] =
+ static const std::array<uint8_t, 8> bottom_right =
{
/* The register r.val[1] will be used to retrieve these texels:
. . . . . . 5 .
@@ -147,7 +145,7 @@
20 /* low table, third row, elem 5, value 7 in the diagram above*/
};
- static const uint8_t top_left[8] =
+ static const std::array<uint8_t, 8> top_left =
{
/* The register r.val[2] will be used to retrieve these texels:
. . F . . . . .
@@ -165,7 +163,7 @@
2 /* top table, first row, elem 3, value F in the diagram above*/
};
- static const uint8_t bottom_left[8] =
+ static const std::array<uint8_t, 8> bottom_left =
{
/* The register r.val[3] will be used to retrieve these texels:
B . . . . . . .
@@ -185,10 +183,10 @@
const uint8x8x4_t reg =
{
{
- vld1_u8(top_right),
- vld1_u8(bottom_right),
- vld1_u8(top_left),
- vld1_u8(bottom_left)
+ vld1_u8(top_right.data()),
+ vld1_u8(bottom_right.data()),
+ vld1_u8(top_left.data()),
+ vld1_u8(bottom_left.data())
}
};
@@ -268,7 +266,7 @@
return is_permutation_brighter(permutation, pg) || is_permutation_darker(permutation, pl);
}
-inline bool point_is_fast_corner(uint8_t p, uint8_t threshold, const uint8x8x2_t &tbl_circle_texels, uint8x8x2_t perm_indices[PERMUTATIONS])
+inline bool point_is_fast_corner(uint8_t p, uint8_t threshold, const uint8x8x2_t &tbl_circle_texels, std::array<uint8x8x2_t, PERMUTATIONS> &perm_indices)
{
/*
This function determines whether the point 'p' is a corner.
@@ -287,7 +285,7 @@
return corner_detected;
}
-inline uint8x8x2_t create_circle_tbl(const uint8_t *const __restrict buffer[7], size_t in_offset, const uint8x8x4_t &circle_index_r)
+inline uint8x8x2_t create_circle_tbl(const std::array<uint8_t *const __restrict, 7> &buffer, size_t in_offset, const uint8x8x4_t &circle_index_r)
{
/*
This function builds a LUT holding the 16 texels in the Brensenham circle radius 3.
@@ -329,7 +327,7 @@
return tbl_circle_texels;
}
-inline uint8_t get_point_score(uint8_t p, uint8_t tolerance, const uint8x8x2_t &tbl_circle, uint8x8x2_t perm_indices[PERMUTATIONS])
+inline uint8_t get_point_score(uint8_t p, uint8_t tolerance, const uint8x8x2_t &tbl_circle, std::array<uint8x8x2_t, PERMUTATIONS> &perm_indices)
{
uint8_t b = 255;
uint8_t a = tolerance;
@@ -411,7 +409,7 @@
Iterator in(_input, window);
Iterator out(_output, window);
- const uint8_t *const __restrict in_row[7] =
+ const std::array<uint8_t *const __restrict, 7> in_row
{
_input->ptr_to_element(Coordinates(-3, -3)),
_input->ptr_to_element(Coordinates(-3, -2)),
@@ -429,7 +427,7 @@
return p_is_in_ab && q_is_in_ab;
};
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const size_t in_offset = in.offset();
const uint8_t p0 = *in.ptr();
@@ -455,11 +453,11 @@
/* at this stage we use the full test with the 16 permutations to classify the point as corner or not */
const uint8x8x2_t tbl_circle_texel = create_circle_tbl(in_row, in_offset, circle_index_r);
- if(point_is_fast_corner(p0, _threshold, tbl_circle_texel, perm_index.data()))
+ if(point_is_fast_corner(p0, _threshold, tbl_circle_texel, perm_index))
{
if(_non_max_suppression)
{
- score = get_point_score(p0, _threshold, tbl_circle_texel, perm_index.data());
+ score = get_point_score(p0, _threshold, tbl_circle_texel, perm_index);
}
else
{
diff --git a/src/core/NEON/kernels/NEFillInnerBorderKernel.cpp b/src/core/NEON/kernels/NEFillInnerBorderKernel.cpp
index d1cff6f..50060b2 100644
--- a/src/core/NEON/kernels/NEFillInnerBorderKernel.cpp
+++ b/src/core/NEON/kernels/NEFillInnerBorderKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -111,7 +111,7 @@
Iterator vertical_it(_tensor, vertical);
- execute_window_loop(vertical, [&](const Coordinates & id)
+ execute_window_loop(vertical, [&](const Coordinates &)
{
std::fill_n(reinterpret_cast<T *>(vertical_it.ptr()), _border_size.left, constant_border_value);
std::fill_n(reinterpret_cast<T *>(vertical_it.ptr()) + width - _border_size.right, _border_size.right, constant_border_value);
@@ -122,7 +122,7 @@
// All values are set at once
Iterator horizontal_it(_tensor, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
for(size_t i = 0; i < _border_size.top; ++i)
{
diff --git a/src/core/NEON/kernels/NEFloorKernel.cpp b/src/core/NEON/kernels/NEFloorKernel.cpp
index 6551d9e..43554a0 100644
--- a/src/core/NEON/kernels/NEFloorKernel.cpp
+++ b/src/core/NEON/kernels/NEFloorKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -111,7 +111,7 @@
if(data_type == DataType::F32)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float32x4_t res = vfloorq_f32(vld1q_f32(reinterpret_cast<const float *>(input.ptr())));
vst1q_f32(reinterpret_cast<float *>(output.ptr()), res);
@@ -121,7 +121,7 @@
#ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC
else if(data_type == DataType::F16)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float16x8_t res = vfloorq_f16(vld1q_f16(reinterpret_cast<const float16_t *>(input.ptr())));
vst1q_f16(reinterpret_cast<float16_t *>(output.ptr()), res);
diff --git a/src/core/NEON/kernels/NEGEMMLowpMatrixMultiplyKernel.cpp b/src/core/NEON/kernels/NEGEMMLowpMatrixMultiplyKernel.cpp
index a100cd2..b561d1e 100644
--- a/src/core/NEON/kernels/NEGEMMLowpMatrixMultiplyKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMLowpMatrixMultiplyKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017, 2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -479,7 +479,7 @@
void inline matrix_multiply_u8(Iterator &ina, Iterator &inb, Iterator &out, int width_b, size_t out_stride, const Window &window)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8_t *mtx_a0 = ina.ptr();
const uint8_t *mtx_b0 = inb.ptr();
@@ -599,7 +599,7 @@
// The implementation assumes that the matrix A and Matrix B have been reshaped respectively with NEGEMMInterleave4x4 and NEGEMMTranspose1xW
// The reshaping of the matrices helps to have a cache friendly implementation and helps to avoid the data re-arrangements needed for computing 16x4 elements per iteration
// All the values needed for computing a single 4x4 block will be read from consecutive memory positions
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
auto *mtx_a0 = reinterpret_cast<const int8_t *>(ina.ptr());
auto *mtx_b0 = reinterpret_cast<const int8_t *>(inb.ptr());
diff --git a/src/core/NEON/kernels/NEGEMMLowpOffsetContributionOutputStageKernel.cpp b/src/core/NEON/kernels/NEGEMMLowpOffsetContributionOutputStageKernel.cpp
index 16a10a8..46e53ce 100644
--- a/src/core/NEON/kernels/NEGEMMLowpOffsetContributionOutputStageKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMLowpOffsetContributionOutputStageKernel.cpp
@@ -444,7 +444,7 @@
if(bias != nullptr)
{
Iterator bias_it = get_bias_it(collapsed_window, bias);
- execute_window_loop(collapsed_window, [&](const Coordinates & id)
+ execute_window_loop(collapsed_window, [&](const Coordinates &)
{
run_offset_contribution_output_stage_window<false, false, true, is_bounded_relu, is_fixed_point>(nullptr, nullptr, reinterpret_cast<const int32_t *>(bias_it.ptr()), mm_result_it, out_it,
result_offset_s32, result_shift_s32, min_u8, max_u8, a_offset, b_offset, k_offset,
@@ -454,7 +454,7 @@
}
else
{
- execute_window_loop(collapsed_window, [&](const Coordinates & id)
+ execute_window_loop(collapsed_window, [&](const Coordinates &)
{
run_offset_contribution_output_stage_window<false, false, false, is_bounded_relu, is_fixed_point>(nullptr, nullptr, nullptr, mm_result_it, out_it,
result_offset_s32, result_shift_s32, min_u8, max_u8, a_offset, b_offset, k_offset,
diff --git a/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.cpp b/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.cpp
index d3cfc7a..4906e6a 100644
--- a/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.cpp
@@ -114,7 +114,7 @@
win_biases.set(Window::DimY, Window::Dimension(0, 1, 1));
Iterator bias(_bias, win_biases);
- execute_window_loop(win_collapsed, [&](const Coordinates & id)
+ execute_window_loop(win_collapsed, [&](const Coordinates &)
{
// Compute 16 elements per iteration
int x = window_start_x;
@@ -165,7 +165,7 @@
}
else
{
- execute_window_loop(win_collapsed, [&](const Coordinates & id)
+ execute_window_loop(win_collapsed, [&](const Coordinates &)
{
// Compute 16 elements per iteration
int x = window_start_x;
diff --git a/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel.cpp b/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel.cpp
index 573373f..a221bd7 100644
--- a/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -183,7 +183,7 @@
win_biases.set(Window::DimY, Window::Dimension(0, 1, 1));
Iterator bias(_bias, win_biases);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
// Compute 16 elements per iteration
int x = window_start_x;
@@ -245,7 +245,7 @@
}
else
{
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
// Compute 16 elements per iteration
int x = window_start_x;
diff --git a/src/core/NEON/kernels/NEGEMMMatrixAccumulateBiasesKernel.cpp b/src/core/NEON/kernels/NEGEMMMatrixAccumulateBiasesKernel.cpp
index 42353ed..5ac2323 100644
--- a/src/core/NEON/kernels/NEGEMMMatrixAccumulateBiasesKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMMatrixAccumulateBiasesKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -122,7 +122,7 @@
{
case DataType::F32:
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float32x4x4_t accum = vld4q_f32(reinterpret_cast<const float *>(in0_out.ptr()));
const float32x4x4_t biases = vld4q_f32(reinterpret_cast<const float *>(in1.ptr()));
@@ -144,7 +144,7 @@
#ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC
case DataType::F16:
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const float16x8x2_t accum = vld2q_f16(reinterpret_cast<const float16_t *>(in0_out.ptr()));
const float16x8x2_t biases = vld2q_f16(reinterpret_cast<const float16_t *>(in1.ptr()));
diff --git a/src/core/NEON/kernels/NEGEMMMatrixAdditionKernel.cpp b/src/core/NEON/kernels/NEGEMMMatrixAdditionKernel.cpp
index 757dbbc..86bea84 100644
--- a/src/core/NEON/kernels/NEGEMMMatrixAdditionKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMMatrixAdditionKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -60,7 +60,7 @@
Iterator in(input, window);
Iterator out(output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const auto in_ptr = reinterpret_cast<const float *>(in.ptr());
const auto out_ptr = reinterpret_cast<float *>(out.ptr());
@@ -87,7 +87,7 @@
Iterator in(input, window);
Iterator out(output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const auto in_ptr = reinterpret_cast<const float16_t *>(in.ptr());
const auto out_ptr = reinterpret_cast<float16_t *>(out.ptr());
diff --git a/src/core/NEON/kernels/NEGEMMMatrixMultiplyKernel.cpp b/src/core/NEON/kernels/NEGEMMMatrixMultiplyKernel.cpp
index f182fb2..a82fae7 100644
--- a/src/core/NEON/kernels/NEGEMMMatrixMultiplyKernel.cpp
+++ b/src/core/NEON/kernels/NEGEMMMatrixMultiplyKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -388,7 +388,7 @@
// The implementation assumes that the matrix A and Matrix B have been reshaped respectively with NEGEMMInterleave4x4 and NEGEMMTranspose1xW
// The reshaping of the matrices helps to have a cache friendly implementation and helps to avoid the data re-arrangements needed for computing 16x4 elements per iteration
// All the values needed for computing a single 4x4 block will be read from consecutive memory positions
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
auto mtx_a0 = reinterpret_cast<const float *>(ina.ptr());
auto mtx_b0 = reinterpret_cast<const float *>(inb.ptr());
@@ -687,7 +687,7 @@
const float16x8_t alpha_f16 = vdupq_n_f16(alpha);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const auto *mtx_a0 = reinterpret_cast<const float16_t *>(ina.ptr());
const auto *mtx_b0 = reinterpret_cast<const float16_t *>(inb.ptr());
diff --git a/src/core/NEON/kernels/NEGaussian3x3Kernel.cpp b/src/core/NEON/kernels/NEGaussian3x3Kernel.cpp
index 048c229..f412980 100644
--- a/src/core/NEON/kernels/NEGaussian3x3Kernel.cpp
+++ b/src/core/NEON/kernels/NEGaussian3x3Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -80,7 +80,7 @@
static const int16x8_t two = vdupq_n_s16(2);
static const int16x8_t four = vdupq_n_s16(4);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
diff --git a/src/core/NEON/kernels/NEGaussian5x5Kernel.cpp b/src/core/NEON/kernels/NEGaussian5x5Kernel.cpp
index b62e281..0e4549e 100644
--- a/src/core/NEON/kernels/NEGaussian5x5Kernel.cpp
+++ b/src/core/NEON/kernels/NEGaussian5x5Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -88,7 +88,7 @@
static const int16x8_t six = vdupq_n_s16(6);
static const int16x8_t four = vdupq_n_s16(4);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
uint8x16_t data = vld1q_u8(input.ptr());
@@ -112,7 +112,7 @@
BorderSize NEGaussian5x5VertKernel::border_size() const
{
- return BorderSize(2, 0);
+ return BorderSize{ 2, 0 };
}
void NEGaussian5x5VertKernel::configure(const ITensor *input, ITensor *output, bool border_undefined)
@@ -159,7 +159,7 @@
const uint16x8_t six = vdupq_n_u16(6);
const uint16x8_t four = vdupq_n_u16(4);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const size_t input_offset_high_s16 = input.offset();
const size_t input_offset_low_s16 = input.offset() + 16;
diff --git a/src/core/NEON/kernels/NEGaussianPyramidKernel.cpp b/src/core/NEON/kernels/NEGaussianPyramidKernel.cpp
index 7a123e2..13cee19 100644
--- a/src/core/NEON/kernels/NEGaussianPyramidKernel.cpp
+++ b/src/core/NEON/kernels/NEGaussianPyramidKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -47,7 +47,7 @@
BorderSize NEGaussianPyramidHorKernel::border_size() const
{
- return BorderSize(0, 2);
+ return BorderSize{ 0, 2 };
}
void NEGaussianPyramidHorKernel::configure(const ITensor *input, ITensor *output)
@@ -126,7 +126,7 @@
Iterator out(_output, win_out);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16x2_t data_2q = vld2q_u8(in.ptr());
const uint8x16_t &data_even = data_2q.val[0];
@@ -155,7 +155,7 @@
BorderSize NEGaussianPyramidVertKernel::border_size() const
{
- return BorderSize(2, 0);
+ return BorderSize{ 2, 0 };
}
void NEGaussianPyramidVertKernel::configure(const ITensor *input, ITensor *output)
@@ -236,7 +236,7 @@
const uint8_t *input_low_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(0, 3));
const uint8_t *input_low2_ptr = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(0, 4));
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Low data
const uint16x8_t data_low_t2 = vreinterpretq_u16_s16(vld1q_s16(reinterpret_cast<const int16_t *>(input_top2_ptr + in.offset())));
diff --git a/src/core/NEON/kernels/NEHOGDescriptorKernel.cpp b/src/core/NEON/kernels/NEHOGDescriptorKernel.cpp
index c204395..c58b1c0 100644
--- a/src/core/NEON/kernels/NEHOGDescriptorKernel.cpp
+++ b/src/core/NEON/kernels/NEHOGDescriptorKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -695,7 +695,7 @@
Iterator phase(_input_phase, win_phase);
Iterator out(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const auto mag_row_ptr = reinterpret_cast<const int16_t *>(mag.ptr());
const auto phase_row_ptr = reinterpret_cast<const uint8_t *>(phase.ptr());
diff --git a/src/core/NEON/kernels/NEHarrisCornersKernel.cpp b/src/core/NEON/kernels/NEHarrisCornersKernel.cpp
index 61221c1..34e68e7 100644
--- a/src/core/NEON/kernels/NEHarrisCornersKernel.cpp
+++ b/src/core/NEON/kernels/NEHarrisCornersKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -719,7 +719,7 @@
const size_t input_stride = _input1->info()->strides_in_bytes()[1] / element_size_from_data_type(_input1->info()->data_type());
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
(*_func)(input1.ptr(), input2.ptr(), output.ptr(), input_stride, _norm_factor, _sensitivity, _strength_thresh);
},
diff --git a/src/core/NEON/kernels/NEIntegralImageKernel.cpp b/src/core/NEON/kernels/NEIntegralImageKernel.cpp
index 16a3cf7..b6db5f0 100644
--- a/src/core/NEON/kernels/NEIntegralImageKernel.cpp
+++ b/src/core/NEON/kernels/NEIntegralImageKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -63,7 +63,7 @@
BorderSize NEIntegralImageKernel::border_size() const
{
- return BorderSize(1, 0, 0, 1);
+ return BorderSize{ 1, 0, 0, 1 };
}
bool NEIntegralImageKernel::is_parallelisable() const
@@ -83,7 +83,7 @@
const auto output_top_left = reinterpret_cast<const uint32_t *>(_output->ptr_to_element(Coordinates(-1, -1)));
const auto output_top_mid = reinterpret_cast<const uint32_t *>(_output->ptr_to_element(Coordinates(0, -1)));
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t input_pixels = vld1q_u8(input.ptr());
diff --git a/src/core/NEON/kernels/NEL2NormalizeLayerKernel.cpp b/src/core/NEON/kernels/NEL2NormalizeLayerKernel.cpp
index cda041d..efdcc44 100644
--- a/src/core/NEON/kernels/NEL2NormalizeLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEL2NormalizeLayerKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -61,7 +61,7 @@
const auto sum_value = *reinterpret_cast<const T *>(sum_it.ptr());
const auto vec_normalize_value = wrapper::vdup_n(static_cast<T>(1.f / std::sqrt(std::max(sum_value, static_cast<T>(epsilon)))), ExactTagType{});
- execute_window_loop(in_slice, [&](const Coordinates & id)
+ execute_window_loop(in_slice, [&](const Coordinates &)
{
const auto in_ptr = reinterpret_cast<const T *>(input_it.ptr());
const auto out_ptr = reinterpret_cast<T *>(output_it.ptr());
@@ -93,7 +93,7 @@
auto eps = wrapper::vdup_n(static_cast<T>(epsilon), ExactTagType{});
- execute_window_loop(in_slice, [&](const Coordinates & id)
+ execute_window_loop(in_slice, [&](const Coordinates &)
{
const auto in_ptr = reinterpret_cast<const T *>(input_it.ptr());
const auto sum_ptr = reinterpret_cast<const T *>(sum_it.ptr());
@@ -127,7 +127,7 @@
auto eps = wrapper::vdup_n(static_cast<T>(epsilon), ExactTagType{});
- execute_window_loop(in_slice, [&](const Coordinates & id)
+ execute_window_loop(in_slice, [&](const Coordinates &)
{
const auto in_ptr = reinterpret_cast<const T *>(input_it.ptr());
const auto sum_ptr = reinterpret_cast<const T *>(sum_it.ptr());
diff --git a/src/core/NEON/kernels/NEMagnitudePhaseKernel.cpp b/src/core/NEON/kernels/NEMagnitudePhaseKernel.cpp
index 4a318f0..8c09898 100644
--- a/src/core/NEON/kernels/NEMagnitudePhaseKernel.cpp
+++ b/src/core/NEON/kernels/NEMagnitudePhaseKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -323,7 +323,7 @@
Iterator gy(_gy, window);
Iterator magnitude(_magnitude, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t input1 =
{
@@ -369,7 +369,7 @@
Iterator gy(_gy, window);
Iterator phase(_phase, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t input1 =
{
@@ -415,7 +415,7 @@
Iterator magnitude(_magnitude, window);
Iterator phase(_phase, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const int16x8x2_t input1 =
{
diff --git a/src/core/NEON/kernels/NEMeanStdDevKernel.cpp b/src/core/NEON/kernels/NEMeanStdDevKernel.cpp
index 7895b00..0af6305 100644
--- a/src/core/NEON/kernels/NEMeanStdDevKernel.cpp
+++ b/src/core/NEON/kernels/NEMeanStdDevKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -51,7 +51,7 @@
uint64x1_t sum_squared = vdup_n_u64(0);
// Calculate sum
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t in_data = vld1q_u8(iterator.ptr());
diff --git a/src/core/NEON/kernels/NEMedian3x3Kernel.cpp b/src/core/NEON/kernels/NEMedian3x3Kernel.cpp
index 5bcdc7b..9dc1bc9 100644
--- a/src/core/NEON/kernels/NEMedian3x3Kernel.cpp
+++ b/src/core/NEON/kernels/NEMedian3x3Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -87,7 +87,7 @@
Iterator input(_input, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
diff --git a/src/core/NEON/kernels/NEMemsetKernel.cpp b/src/core/NEON/kernels/NEMemsetKernel.cpp
index 2b57b15..a0fab99 100644
--- a/src/core/NEON/kernels/NEMemsetKernel.cpp
+++ b/src/core/NEON/kernels/NEMemsetKernel.cpp
@@ -67,7 +67,7 @@
collapsed.set(Window::DimX, Window::Dimension(0, 1, 1));
Iterator tensor_it(_tensor, collapsed);
- execute_window_loop(collapsed, [&](const Coordinates & id)
+ execute_window_loop(collapsed, [&](const Coordinates &)
{
uint8_t *base_addr = start_valid_region + tensor_it.offset();
// Set memory
diff --git a/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp b/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp
index 5d1b4b3..fe3af0b 100644
--- a/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEMinMaxLayerKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2017-2018 ARM Limited.
+ * Copyright (c) 2017-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -144,7 +144,7 @@
float carry_min_scalar = std::numeric_limits<float>::max();
float carry_max_scalar = std::numeric_limits<float>::lowest();
- execute_window_loop(window_input, [&](const Coordinates & id)
+ execute_window_loop(window_input, [&](const Coordinates &)
{
int x = x_start;
const auto in_ptr = reinterpret_cast<const float *>(input.ptr() + id_batch[1] * _input->info()->strides_in_bytes()[3]);
@@ -203,7 +203,7 @@
Iterator output(_output, window_output);
- execute_window_loop(window_output, [&](const Coordinates & id)
+ execute_window_loop(window_output, [&](const Coordinates &)
{
vst1_f32(reinterpret_cast<float *>(output.ptr()), reset_values);
},
diff --git a/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp b/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp
index befece2..08b27e3 100644
--- a/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp
+++ b/src/core/NEON/kernels/NEMinMaxLocationKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -152,7 +152,7 @@
Iterator input(_input, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int x = x_start;
@@ -209,7 +209,7 @@
Iterator input(_input, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int x = x_start;
const auto in_ptr = reinterpret_cast<const int16_t *>(input.ptr());
@@ -268,7 +268,7 @@
Iterator input(_input, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
int x = x_start;
const auto in_ptr = reinterpret_cast<const float *>(input.ptr());
@@ -323,11 +323,11 @@
template <class T, std::size_t... N>
struct NEMinMaxLocationKernel::create_func_table<T, utility::index_sequence<N...>>
{
- static const NEMinMaxLocationKernel::MinMaxLocFunction func_table[sizeof...(N)];
+ static const std::array<NEMinMaxLocationKernel::MinMaxLocFunction, sizeof...(N)> func_table;
};
template <class T, std::size_t... N>
-const NEMinMaxLocationKernel::MinMaxLocFunction NEMinMaxLocationKernel::create_func_table<T, utility::index_sequence<N...>>::func_table[sizeof...(N)] =
+const std::array<NEMinMaxLocationKernel::MinMaxLocFunction, sizeof...(N)> NEMinMaxLocationKernel::create_func_table<T, utility::index_sequence<N...>>::func_table
{
&NEMinMaxLocationKernel::minmax_loc<T, bool(N & 8), bool(N & 4), bool(N & 2), bool(N & 1)>...
};
diff --git a/src/core/NEON/kernels/NENonLinearFilterKernel.cpp b/src/core/NEON/kernels/NENonLinearFilterKernel.cpp
index 52dbe26..00536f0 100644
--- a/src/core/NEON/kernels/NENonLinearFilterKernel.cpp
+++ b/src/core/NEON/kernels/NENonLinearFilterKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016-2018 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -117,7 +117,7 @@
sort(p4, p2);
}
-inline void sort21(uint8x8_t p[21])
+inline void sort21(std::array<uint8x8_t, 21> &p)
{
sort(p[0], p[1]);
sort(p[2], p[3]);
@@ -222,7 +222,7 @@
sort(p[10], p[16]);
}
-inline void sort25(uint8x8_t p[25])
+inline void sort25(std::array<uint8x8_t, 25> &p)
{
sort(p[1], p[2]);
sort(p[0], p[1]);
@@ -429,7 +429,7 @@
const auto input_mid_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-1, 0)));
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-1, 1)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
@@ -463,7 +463,7 @@
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 1)));
const auto input_bot2_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 2)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x16_t top2_data = vld1q_u8(input_top2_ptr + input.offset());
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
@@ -471,7 +471,7 @@
const uint8x16_t bot_data = vld1q_u8(input_bot_ptr + input.offset());
const uint8x16_t bot2_data = vld1q_u8(input_bot2_ptr + input.offset());
- const uint8x8_t d[] =
+ const std::array<uint8x8_t, 10> d =
{
vget_low_u8(top2_data),
vget_high_u8(top2_data),
@@ -485,7 +485,7 @@
vget_high_u8(bot2_data)
};
- uint8x8_t p[25];
+ std::array<uint8x8_t, 25> p{ 0 };
for(unsigned int i = 0; i < 5; ++i)
{
const unsigned int idx_d = i * 2;
@@ -524,7 +524,7 @@
input_ptrs[k_row_half + i] = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-k_col_half, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
// Get min of rows
uint8x16_t rows_min = vld1q_u8(input_ptrs[0] + input.offset());
@@ -563,7 +563,7 @@
input_ptrs[k_row_half + i] = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(-k_col_half, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
uint8x16_t rows_max = vld1q_u8(input_ptrs[0] + input.offset());
@@ -593,7 +593,7 @@
const auto input_mid_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-1, 0)));
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(0, 1)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x8_t top_data = vld1_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
@@ -624,7 +624,7 @@
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(0, 1)));
const auto input_bot2_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(0, 2)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x8_t top2_data = vld1_u8(input_top2_ptr + input.offset());
const uint8x8_t top_data = vld1_u8(input_top_ptr + input.offset());
@@ -671,7 +671,7 @@
input_ptrs[k_row_half + i] = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(0, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
uint8x8_t rows_min = vld1_u8(input_ptrs[0] + input.offset());
@@ -717,7 +717,7 @@
input_ptrs[k_row_half + i] = _input->buffer() + _input->info()->offset_element_in_bytes(Coordinates(0, i));
}
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
uint8x8_t rows_max = vld1_u8(input_ptrs[0] + input.offset());
@@ -754,7 +754,7 @@
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 1)));
const auto input_bot2_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 2)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x16_t top2_data = vextq_u8(vld1q_u8(input_top2_ptr + input.offset()), zero, 1);
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
@@ -762,7 +762,7 @@
const uint8x16_t bot_data = vld1q_u8(input_bot_ptr + input.offset());
const uint8x16_t bot2_data = vextq_u8(vld1q_u8(input_bot2_ptr + input.offset()), zero, 1);
- uint8x8_t d[] =
+ std::array<uint8x8_t, 10> d =
{
vget_low_u8(top2_data),
vget_high_u8(top2_data),
@@ -776,7 +776,7 @@
vget_high_u8(bot2_data)
};
- uint8x8_t p[21];
+ std::array<uint8x8_t, 21> p{ 0 };
p[0] = d[0];
p[1] = vext_u8(d[0], d[1], 1);
p[2] = vext_u8(d[0], d[1], 2);
@@ -816,7 +816,7 @@
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 1)));
const auto input_bot2_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 2)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x16_t top2_data = vextq_u8(vld1q_u8(input_top2_ptr + input.offset()), zero, 1);
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
@@ -849,7 +849,7 @@
const auto input_bot_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 1)));
const auto input_bot2_ptr = static_cast<const unsigned char *>(_input->ptr_to_element(Coordinates(-2, 2)));
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
const uint8x16_t top2_data = vextq_u8(vld1q_u8(input_top2_ptr + input.offset()), zero, 1);
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
@@ -889,7 +889,7 @@
std::array<uint8_t, mask_size> vals{ {} };
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
// Clear array
std::fill(std::begin(vals), std::end(vals), 0);
diff --git a/src/core/NEON/kernels/NENonMaximaSuppression3x3Kernel.cpp b/src/core/NEON/kernels/NENonMaximaSuppression3x3Kernel.cpp
index 8f97e6a..674a7c8 100644
--- a/src/core/NEON/kernels/NENonMaximaSuppression3x3Kernel.cpp
+++ b/src/core/NEON/kernels/NENonMaximaSuppression3x3Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -506,7 +506,7 @@
const size_t input_stride = _input->info()->strides_in_bytes()[1] / element_size_from_data_type(_input->info()->data_type());
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
_func(input.ptr(), output.ptr(), input_stride);
},
diff --git a/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp b/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp
index e3166e0..b565300 100644
--- a/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp
+++ b/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp
@@ -627,7 +627,7 @@
if(_func_qasymm8 != nullptr)
{
- execute_window_loop(collapsed, [&](const Coordinates & id)
+ execute_window_loop(collapsed, [&](const Coordinates &)
{
(*_func_qasymm8)(input1.ptr(), input2.ptr(), output.ptr(), _scale,
_input1->info()->quantization_info(), _input2->info()->quantization_info(), _output->info()->quantization_info());
@@ -638,7 +638,7 @@
}
else if(_func_int != nullptr)
{
- execute_window_loop(collapsed, [&](const Coordinates & id)
+ execute_window_loop(collapsed, [&](const Coordinates &)
{
(*_func_int)(input1.ptr(), input2.ptr(), output.ptr(), _scale_exponent);
collapsed.slide_window_slice_3D(slice_input1);
@@ -649,7 +649,7 @@
else
{
ARM_COMPUTE_ERROR_ON(_func_float == nullptr);
- execute_window_loop(collapsed, [&](const Coordinates & id)
+ execute_window_loop(collapsed, [&](const Coordinates &)
{
(*_func_float)(input1.ptr(), input2.ptr(), output.ptr(), _scale);
collapsed.slide_window_slice_3D(slice_input1);
@@ -663,6 +663,6 @@
{
const unsigned int replicateSize = _output->info()->dimension(0) - std::min(_input1->info()->dimension(0), _input2->info()->dimension(0));
const unsigned int border = std::min<unsigned int>(num_elems_processed_per_iteration - 1U, replicateSize);
- return BorderSize(0, border, 0, 0);
+ return BorderSize{ 0, border, 0, 0 };
}
} // namespace arm_compute
diff --git a/src/core/NEON/kernels/NEQuantizationLayerKernel.cpp b/src/core/NEON/kernels/NEQuantizationLayerKernel.cpp
index 136457c..4deeb1c 100644
--- a/src/core/NEON/kernels/NEQuantizationLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEQuantizationLayerKernel.cpp
@@ -51,7 +51,7 @@
return Status{};
}
-inline const float32x4x4_t load_value(const float *input_ptr)
+inline float32x4x4_t load_value(const float *input_ptr)
{
return { wrapper::vloadq(input_ptr),
wrapper::vloadq(input_ptr + 4),
@@ -119,7 +119,7 @@
Iterator input(_input, win_collapsed);
Iterator output(_output, win_collapsed);
- execute_window_loop(win_collapsed, [&](const Coordinates & id)
+ execute_window_loop(win_collapsed, [&](const Coordinates &)
{
auto input_ptr = reinterpret_cast<const T *>(input.ptr());
auto output_ptr = reinterpret_cast<uint8_t *>(output.ptr());
diff --git a/src/core/NEON/kernels/NEScharr3x3Kernel.cpp b/src/core/NEON/kernels/NEScharr3x3Kernel.cpp
index f23c31b..3add699 100644
--- a/src/core/NEON/kernels/NEScharr3x3Kernel.cpp
+++ b/src/core/NEON/kernels/NEScharr3x3Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -161,7 +161,7 @@
if(_run_scharr_x && _run_scharr_y)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
@@ -197,7 +197,7 @@
}
else if(_run_scharr_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
@@ -232,7 +232,7 @@
}
else if(_run_scharr_y)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
diff --git a/src/core/NEON/kernels/NESelectKernel.cpp b/src/core/NEON/kernels/NESelectKernel.cpp
index f2697bc..c03e5f0 100644
--- a/src/core/NEON/kernels/NESelectKernel.cpp
+++ b/src/core/NEON/kernels/NESelectKernel.cpp
@@ -54,7 +54,7 @@
Iterator input2(in2, win);
Iterator output(out, win);
- execute_window_loop(win, [&](const Coordinates & id)
+ execute_window_loop(win, [&](const Coordinates &)
{
auto output_ptr = reinterpret_cast<ScalarType *>(output.ptr());
const auto condition_ptr = reinterpret_cast<const uint8_t *>(condition.ptr());
diff --git a/src/core/NEON/kernels/NESobel3x3Kernel.cpp b/src/core/NEON/kernels/NESobel3x3Kernel.cpp
index 5a80630..7a27203 100644
--- a/src/core/NEON/kernels/NESobel3x3Kernel.cpp
+++ b/src/core/NEON/kernels/NESobel3x3Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -42,7 +42,7 @@
BorderSize NESobel3x3Kernel::border_size() const
{
- return BorderSize(1);
+ return BorderSize{ 1 };
}
void NESobel3x3Kernel::configure(const ITensor *input, ITensor *output_x, ITensor *output_y, bool border_undefined)
@@ -117,7 +117,7 @@
if(_run_sobel_y && _run_sobel_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
@@ -181,7 +181,7 @@
}
else if(_run_sobel_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t mid_data = vld1q_u8(input_mid_ptr + input.offset());
@@ -229,7 +229,7 @@
}
else if(_run_sobel_y)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t top_data = vld1q_u8(input_top_ptr + input.offset());
const uint8x16_t bot_data = vld1q_u8(input_bot_ptr + input.offset());
diff --git a/src/core/NEON/kernels/NESobel5x5Kernel.cpp b/src/core/NEON/kernels/NESobel5x5Kernel.cpp
index 30e7817..a92cfc2 100644
--- a/src/core/NEON/kernels/NESobel5x5Kernel.cpp
+++ b/src/core/NEON/kernels/NESobel5x5Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -120,7 +120,7 @@
static const int16x8_t two = vdupq_n_s16(2);
static const int16x8_t minustwo = vdupq_n_s16(-2);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -154,7 +154,7 @@
static const int16x8_t two = vdupq_n_s16(2);
static const int16x8_t minustwo = vdupq_n_s16(-2);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -180,7 +180,7 @@
static const int16x8_t six = vdupq_n_s16(6);
static const int16x8_t four = vdupq_n_s16(4);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
@@ -211,7 +211,7 @@
BorderSize NESobel5x5VertKernel::border_size() const
{
- return BorderSize(2, 0);
+ return BorderSize{ 2, 0 };
}
void NESobel5x5VertKernel::configure(ITensor *input_x, ITensor *input_y, ITensor *output_x, ITensor *output_y, bool border_undefined)
@@ -312,7 +312,7 @@
if(_run_sobel_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Convert offset from uint8_t* to uint16_t*
const size_t input_offset_high_s16 = input_x.offset() / 2;
@@ -361,7 +361,7 @@
if(_run_sobel_y)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
// Convert offset from uint8_t* to uint16_t*
const size_t input_offset_high_s16 = input_y.offset() / 2;
diff --git a/src/core/NEON/kernels/NESobel7x7Kernel.cpp b/src/core/NEON/kernels/NESobel7x7Kernel.cpp
index 40a3e31..f2b42cc 100644
--- a/src/core/NEON/kernels/NESobel7x7Kernel.cpp
+++ b/src/core/NEON/kernels/NESobel7x7Kernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -215,7 +215,7 @@
if(_run_sobel_y && _run_sobel_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr() - 3);
@@ -244,7 +244,7 @@
}
else if(_run_sobel_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr() - 3);
@@ -269,7 +269,7 @@
}
else if(_run_sobel_y)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr() - 3);
@@ -301,7 +301,7 @@
BorderSize NESobel7x7VertKernel::border_size() const
{
- return BorderSize(3, 0);
+ return BorderSize{ 3, 0 };
}
void NESobel7x7VertKernel::configure(const ITensor *input_x, const ITensor *input_y, ITensor *output_x, ITensor *output_y, bool border_undefined)
@@ -382,7 +382,7 @@
if(_run_sobel_x)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
auto in_ptr = reinterpret_cast<int32_t *>(input_x.ptr()) - 3 * in_x_stride;
@@ -453,7 +453,7 @@
if(_run_sobel_y)
{
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
auto in_ptr = reinterpret_cast<int32_t *>(input_y.ptr()) - 3 * in_y_stride;
diff --git a/src/core/NEON/kernels/NETableLookupKernel.cpp b/src/core/NEON/kernels/NETableLookupKernel.cpp
index 958f4a9..536c220 100644
--- a/src/core/NEON/kernels/NETableLookupKernel.cpp
+++ b/src/core/NEON/kernels/NETableLookupKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -61,7 +61,7 @@
Iterator input = Iterator(_input, window);
Iterator output = Iterator(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
auto input_ptr = reinterpret_cast<const T *>(input.ptr());
auto output_ptr = reinterpret_cast<T *>(output.ptr());
@@ -92,7 +92,7 @@
Iterator input = Iterator(_input, window);
Iterator output = Iterator(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8_t *input_ptr = input.ptr();
uint8_t *output_ptr = output.ptr();
diff --git a/src/core/NEON/kernels/NEThresholdKernel.cpp b/src/core/NEON/kernels/NEThresholdKernel.cpp
index 5ef0693..ae9c62b 100644
--- a/src/core/NEON/kernels/NEThresholdKernel.cpp
+++ b/src/core/NEON/kernels/NEThresholdKernel.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2016, 2017 ARM Limited.
+ * Copyright (c) 2016-2019 ARM Limited.
*
* SPDX-License-Identifier: MIT
*
@@ -86,7 +86,7 @@
Iterator input(_input, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
const uint8x16_t mask = vcgtq_u8(data, threshold);
@@ -106,7 +106,7 @@
Iterator input(_input, window);
Iterator output(_output, window);
- execute_window_loop(window, [&](const Coordinates & id)
+ execute_window_loop(window, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(input.ptr());
diff --git a/src/core/NEON/kernels/NEUpsampleLayerKernel.cpp b/src/core/NEON/kernels/NEUpsampleLayerKernel.cpp
index aae85c6..d3d88b3 100644
--- a/src/core/NEON/kernels/NEUpsampleLayerKernel.cpp
+++ b/src/core/NEON/kernels/NEUpsampleLayerKernel.cpp
@@ -130,7 +130,7 @@
Iterator output(_output, window_out);
const int offset_y_out = _output->info()->strides_in_bytes().y() / sizeof(float);
- execute_window_loop(window_out, [&](const Coordinates & id)
+ execute_window_loop(window_out, [&](const Coordinates &)
{
const float32x4_t data = vld1q_f32(reinterpret_cast<const float *>(input.ptr()));
const float32x4_t data_out1 = { vgetq_lane_f32(data, 0), vgetq_lane_f32(data, 0), vgetq_lane_f32(data, 1), vgetq_lane_f32(data, 1) };
@@ -157,7 +157,7 @@
const int offset_y_out = _output->info()->strides_in_bytes().y() / sizeof(float);
const int offset_z_out = _output->info()->strides_in_bytes().z() / sizeof(float);
- execute_window_loop(window_out, [&](const Coordinates & id)
+ execute_window_loop(window_out, [&](const Coordinates &)
{
const float32x4_t data = vld1q_f32(reinterpret_cast<const float *>(input.ptr()));
auto out = reinterpret_cast<float *>(output.ptr());
@@ -182,7 +182,7 @@
Iterator output(_output, window_out);
const int offset_y_out = _output->info()->strides_in_bytes().y() / sizeof(uint8_t);
- execute_window_loop(window_out, [&](const Coordinates & id)
+ execute_window_loop(window_out, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(reinterpret_cast<const uint8_t *>(input.ptr()));
const uint8x16_t data_out1 = { vgetq_lane_u8(data, 0), vgetq_lane_u8(data, 0), vgetq_lane_u8(data, 1), vgetq_lane_u8(data, 1),
@@ -218,7 +218,7 @@
const int offset_y_out = _output->info()->strides_in_bytes().y() / sizeof(uint8_t);
const int offset_z_out = _output->info()->strides_in_bytes().z() / sizeof(uint8_t);
- execute_window_loop(window_out, [&](const Coordinates & id)
+ execute_window_loop(window_out, [&](const Coordinates &)
{
const uint8x16_t data = vld1q_u8(reinterpret_cast<const uint8_t *>(input.ptr()));
auto out = reinterpret_cast<uint8_t *>(output.ptr());
@@ -245,7 +245,7 @@
Iterator output(_output, window_out);
const int offset_y_out = _output->info()->strides_in_bytes().y() / sizeof(float16_t);
- execute_window_loop(window_out, [&](const Coordinates & id)
+ execute_window_loop(window_out, [&](const Coordinates &)
{
const float16x8_t data = vld1q_f16(reinterpret_cast<const float16_t *>(input.ptr()));
const float16x8_t data_out1 = { vgetq_lane_f16(data, 0), vgetq_lane_f16(data, 0), vgetq_lane_f16(data, 1), vgetq_lane_f16(data, 1),
@@ -278,7 +278,7 @@
const int offset_y_out = _output->info()->strides_in_bytes().y() / sizeof(float16_t);
const int offset_z_out = _output->info()->strides_in_bytes().z() / sizeof(float16_t);
- execute_window_loop(window_out, [&](const Coordinates & id)
+ execute_window_loop(window_out, [&](const Coordinates &)
{
const float16x8_t data = vld1q_f16(reinterpret_cast<const float16_t *>(input.ptr()));
auto out = reinterpret_cast<float16_t *>(output.ptr());
diff --git a/src/runtime/CL/functions/CLCropResize.cpp b/src/runtime/CL/functions/CLCropResize.cpp
index 2cacef1..b22809e 100644
--- a/src/runtime/CL/functions/CLCropResize.cpp
+++ b/src/runtime/CL/functions/CLCropResize.cpp
@@ -57,9 +57,9 @@
bool is_width_flipped = end[0] < start[0];
bool is_height_flipped = end[1] < start[1];
/** The number of rows out of bounds at the start and end of output. */
- int32_t rows_out_of_bounds[2];
+ std::array<int32_t, 2> rows_out_of_bounds{ 0 };
/** The number of columns out of bounds at the start and end of output. */
- int32_t cols_out_of_bounds[2];
+ std::array<int32_t, 2> cols_out_of_bounds{ 0 };
if(is_height_flipped)
{
rows_out_of_bounds[0] = start[1] >= static_cast<int32_t>(input->info()->dimension(2)) ? std::min(start[1] - input->info()->dimension(2) + 1, output->info()->dimension(2)) : 0;
@@ -164,7 +164,7 @@
} // namespace
CLCropResize::CLCropResize()
- : _input(nullptr), _boxes(nullptr), _box_ind(nullptr), _output(nullptr), _num_boxes(0), _method(), _extrapolation_value(0), _scale(), _copy()
+ : _input(nullptr), _boxes(nullptr), _box_ind(nullptr), _output(nullptr), _num_boxes(0), _method(), _extrapolation_value(0), _scale(), _copy(), _crop_results(), _scaled_results()
{
}
@@ -210,20 +210,19 @@
// - A scale function is used to resize the cropped image to the size specified by crop_size.
// - A tensor is required to hold the final scaled image before it is copied into the 4D output
// that will hold all final cropped and scaled 3D images using CLCopyKernel.
- _crop_results = arm_compute::support::cpp14::make_unique<CLTensor[]>(_num_boxes);
- _scale = arm_compute::support::cpp14::make_unique<CLScale[]>(_num_boxes);
- _scaled_results = arm_compute::support::cpp14::make_unique<CLTensor[]>(_num_boxes);
- _copy = arm_compute::support::cpp14::make_unique<CLCopyKernel[]>(_num_boxes);
-
for(unsigned int i = 0; i < _num_boxes; ++i)
{
+ auto crop_tensor = support::cpp14::make_unique<CLTensor>();
TensorInfo crop_result_info(1, DataType::F32);
crop_result_info.set_data_layout(DataLayout::NHWC);
- _crop_results[i].allocator()->init(crop_result_info);
+ crop_tensor->allocator()->init(crop_result_info);
+ _crop_results.emplace_back(std::move(crop_tensor));
+ auto scale_tensor = support::cpp14::make_unique<CLTensor>();
TensorInfo scaled_result_info(out_shape, 1, DataType::F32);
scaled_result_info.set_data_layout(DataLayout::NHWC);
- _scaled_results[i].allocator()->init(scaled_result_info);
+ scale_tensor->allocator()->init(scaled_result_info);
+ _scaled_results.emplace_back(std::move(scale_tensor));
}
}
@@ -240,32 +239,37 @@
// Size of the crop box in _boxes and thus the shape of _crop_results[i]
// may not be known until run-time and so the kernels cannot be configured until then.
uint32_t batch_index;
- Coordinates start, end;
- configure_crop(_input, _boxes, _box_ind, &_crop_results[i], i, start, end, batch_index);
- _scale[i].configure(&_crop_results[i], &_scaled_results[i], _method, BorderMode::CONSTANT, PixelValue(_extrapolation_value), SamplingPolicy::TOP_LEFT);
+ Coordinates start{};
+ Coordinates end{};
+ configure_crop(_input, _boxes, _box_ind, _crop_results[i].get(), i, start, end, batch_index);
+
+ auto scale_kernel = support::cpp14::make_unique<CLScale>();
+ scale_kernel->configure(_crop_results[i].get(), _scaled_results[i].get(), _method, BorderMode::CONSTANT, PixelValue(_extrapolation_value), SamplingPolicy::TOP_LEFT);
+ _scale.emplace_back(std::move(scale_kernel));
Window win = calculate_max_window(*_output->info());
win.set(3, Window::Dimension(i, i + 1, 1));
- _copy[i].configure(&_scaled_results[i], _output, PaddingList(), &win);
- _crop_results[i].allocator()->allocate();
- _scaled_results[i].allocator()->allocate();
+ auto copy_kernel = support::cpp14::make_unique<CLCopyKernel>();
+ copy_kernel->configure(_scaled_results[i].get(), _output, PaddingList(), &win);
+ _copy.emplace_back(std::move(copy_kernel));
- run_crop(_input, &_crop_results[i], batch_index, start, end, _extrapolation_value);
+ _crop_results[i]->allocator()->allocate();
+ _scaled_results[i]->allocator()->allocate();
+
+ run_crop(_input, _crop_results[i].get(), batch_index, start, end, _extrapolation_value);
}
_boxes->unmap(CLScheduler::get().queue());
_box_ind->unmap(CLScheduler::get().queue());
CLScheduler::get().sync();
- for(unsigned int i = 0; i < _num_boxes; ++i)
+ for(auto &kernel : _scale)
{
- // Scale the cropped image
- _scale[i].run();
+ kernel->run();
}
CLScheduler::get().sync();
- for(unsigned int i = 0; i < _num_boxes; ++i)
+ for(auto &kernel : _copy)
{
- // Copy scaled image into output.
- CLScheduler::get().enqueue(_copy[i]);
+ CLScheduler::get().enqueue(*kernel, true);
}
CLScheduler::get().sync();
}
diff --git a/src/runtime/CL/functions/CLFullyConnectedLayer.cpp b/src/runtime/CL/functions/CLFullyConnectedLayer.cpp
index add5e16..7b9229c 100644
--- a/src/runtime/CL/functions/CLFullyConnectedLayer.cpp
+++ b/src/runtime/CL/functions/CLFullyConnectedLayer.cpp
@@ -231,7 +231,8 @@
if(_is_quantized)
{
float multiplier = input->info()->quantization_info().scale * weights->info()->quantization_info().scale / output->info()->quantization_info().scale;
- int output_multiplier, output_shift;
+ int output_multiplier;
+ int output_shift;
quantization::calculate_quantized_multiplier_less_than_one(multiplier, &output_multiplier, &output_shift);
_gemmlowp_output_stage.configure(&_gemmlowp_output, biases, output, output_multiplier, output_shift, output->info()->quantization_info().offset);
_gemmlowp_output.allocator()->allocate();
diff --git a/src/runtime/CL/functions/CLGEMMLowpMatrixMultiplyCore.cpp b/src/runtime/CL/functions/CLGEMMLowpMatrixMultiplyCore.cpp
index cd53708..049db1d 100644
--- a/src/runtime/CL/functions/CLGEMMLowpMatrixMultiplyCore.cpp
+++ b/src/runtime/CL/functions/CLGEMMLowpMatrixMultiplyCore.cpp
@@ -249,7 +249,8 @@
ARM_COMPUTE_RETURN_ON_ERROR(CLGEMMReshapeRHSMatrixKernel::validate(b, &tmp_b_info, rhs_info));
}
- TensorInfo info_vector_sum_col, info_vector_sum_row;
+ TensorInfo info_vector_sum_col{};
+ TensorInfo info_vector_sum_row{};
// Validate matrix B reduction kernel only if _a_offset is not equal to 0
if(a_offset != 0)
diff --git a/src/runtime/NEON/functions/NEDepthwiseConvolutionLayer.cpp b/src/runtime/NEON/functions/NEDepthwiseConvolutionLayer.cpp
index 5133756..3bb69b1 100644
--- a/src/runtime/NEON/functions/NEDepthwiseConvolutionLayer.cpp
+++ b/src/runtime/NEON/functions/NEDepthwiseConvolutionLayer.cpp
@@ -112,7 +112,8 @@
const QuantizationInfo output_quant_info = (output->info()->total_size() == 0) ? input->info()->quantization_info() : output->info()->quantization_info();
float multiplier = input->info()->quantization_info().scale * weights->info()->quantization_info().scale / output_quant_info.scale;
- int output_multiplier, output_shift;
+ int output_multiplier;
+ int output_shift;
quantization::calculate_quantized_multiplier_less_than_one(multiplier, &output_multiplier, &output_shift);
_output_stage_kernel.configure(&_accumulator, biases, _is_nchw ? output : &_permuted_output, output_multiplier, output_shift, output_quant_info.offset);
_accumulator.allocator()->allocate();
@@ -461,7 +462,8 @@
const QuantizationInfo output_quant_info = output->info()->quantization_info();
float multiplier = input->info()->quantization_info().scale * weights->info()->quantization_info().scale / output_quant_info.scale;
- int output_multiplier, output_shift;
+ int output_multiplier;
+ int output_shift;
quantization::calculate_quantized_multiplier_less_than_one(multiplier, &output_multiplier, &output_shift);
_output_stage_kernel.configure(&_output_reshaped, biases, output_to_use, output_multiplier, output_shift, output_quant_info.offset);
_output_reshaped.allocator()->allocate();
diff --git a/src/runtime/NEON/functions/NEFullyConnectedLayer.cpp b/src/runtime/NEON/functions/NEFullyConnectedLayer.cpp
index 273da27..e1a17db 100644
--- a/src/runtime/NEON/functions/NEFullyConnectedLayer.cpp
+++ b/src/runtime/NEON/functions/NEFullyConnectedLayer.cpp
@@ -228,7 +228,8 @@
if(_is_quantized)
{
float multiplier = input->info()->quantization_info().scale * weights->info()->quantization_info().scale / output->info()->quantization_info().scale;
- int output_multiplier, output_shift;
+ int output_multiplier;
+ int output_shift;
quantization::calculate_quantized_multiplier_less_than_one(multiplier, &output_multiplier, &output_shift);
_gemmlowp_output_stage.configure(&_gemmlowp_output, biases, output, output_multiplier, output_shift, output->info()->quantization_info().offset);
_gemmlowp_output.allocator()->allocate();
diff --git a/src/runtime/NEON/functions/NEGEMMConvolutionLayer.cpp b/src/runtime/NEON/functions/NEGEMMConvolutionLayer.cpp
index beac4ff..a2c4e8a 100644
--- a/src/runtime/NEON/functions/NEGEMMConvolutionLayer.cpp
+++ b/src/runtime/NEON/functions/NEGEMMConvolutionLayer.cpp
@@ -118,7 +118,8 @@
const QuantizationInfo output_quant_info = (output->info()->total_size() == 0) ? input_quantization_info : output->info()->quantization_info();
float multiplier = input_quantization_info.scale * weights->info()->quantization_info().scale / output_quant_info.scale;
- int output_multiplier, output_shift;
+ int output_multiplier;
+ int output_shift;
quantization::calculate_quantized_multiplier_less_than_one(multiplier, &output_multiplier, &output_shift);
// Merge activation with output stage
@@ -184,7 +185,8 @@
const QuantizationInfo output_quant_info = (output->total_size() == 0) ? input_quantization_info : output->quantization_info();
float multiplier = input_quantization_info.scale * weights->quantization_info().scale / output_quant_info.scale;
- int output_multiplier, output_shift;
+ int output_multiplier;
+ int output_shift;
quantization::calculate_quantized_multiplier_less_than_one(multiplier, &output_multiplier, &output_shift);
// Merge activation with output stage
@@ -412,7 +414,10 @@
const unsigned int kernel_width = weights->dimension(idx_width);
const unsigned int kernel_height = weights->dimension(idx_height);
- TensorInfo im2col_reshaped_info, info_gemm, tmp_info, weights_reshaped_info;
+ TensorInfo im2col_reshaped_info{};
+ TensorInfo info_gemm{};
+ TensorInfo tmp_info{};
+ TensorInfo weights_reshaped_info{};
const ITensorInfo *gemm_input_to_use = input;
const ITensorInfo *gemm_output_to_use = output;
const ITensorInfo *weights_to_use = weights;
diff --git a/src/runtime/NEON/functions/NEGEMMLowpMatrixMultiplyCore.cpp b/src/runtime/NEON/functions/NEGEMMLowpMatrixMultiplyCore.cpp
index 5ce7bc5..54f49a6 100644
--- a/src/runtime/NEON/functions/NEGEMMLowpMatrixMultiplyCore.cpp
+++ b/src/runtime/NEON/functions/NEGEMMLowpMatrixMultiplyCore.cpp
@@ -287,7 +287,8 @@
}
}
- TensorInfo info_vector_sum_col, info_vector_sum_row;
+ TensorInfo info_vector_sum_col{};
+ TensorInfo info_vector_sum_row{};
// Validate matrix B reduction kernel only if _a_offset is not equal to 0
if(a_offset != 0)
diff --git a/src/runtime/NEON/functions/NEWinogradConvolutionLayer.cpp b/src/runtime/NEON/functions/NEWinogradConvolutionLayer.cpp
index 2332450..1513786 100644
--- a/src/runtime/NEON/functions/NEWinogradConvolutionLayer.cpp
+++ b/src/runtime/NEON/functions/NEWinogradConvolutionLayer.cpp
@@ -162,7 +162,7 @@
const int in_channels = input->info()->dimension(get_data_layout_dimension_index(data_layout, DataLayoutDimension::CHANNEL));
const int in_batches = input->info()->dimension(3);
- return Tensor4DShape({ in_batches, in_height, in_width, in_channels });
+ return Tensor4DShape{ in_batches, in_height, in_width, in_channels };
}
Status validate_arguments(const ITensorInfo *input, const ITensorInfo *weights, const ITensorInfo *biases, const ITensorInfo *output, const PadStrideInfo &conv_info)
@@ -234,7 +234,7 @@
} //namespace
-NEWinogradConvolutionLayer::NEWinogradConvolutionLayer(std::shared_ptr<IMemoryManager> memory_manager)
+NEWinogradConvolutionLayer::NEWinogradConvolutionLayer(const std::shared_ptr<IMemoryManager> &memory_manager)
: _memory_group(memory_manager), _gemm_function(memory_manager), _transform_input_kernel(nullptr), _transform_output_kernel(nullptr), _transform_weights_kernel(nullptr), _activationlayer_function(),
_permute_input(), _permute_weights(), _permute_output(), _input_transformed(), _output_transformed(), _input_workspace(), _output_workspace(), _kernel_storage(), _input_nhwc(), _output_nhwc(),
_weights_hwio(), _input(), _weights(), _output(), _is_prepared(false), _is_activationlayer_enabled(false)
@@ -428,7 +428,9 @@
d_strides.set(2, 0);
d_strides.set(3, data_type_size * output_matrix_stride);
- TensorInfo a_info, b_info, d_info;
+ TensorInfo a_info{};
+ TensorInfo b_info{};
+ TensorInfo d_info{};
a_info.init(a_shape, 1, data_type, a_strides, 0, input_storage_size);
b_info.init(b_shape, 1, data_type, b_strides, 0, kernel_storage_size);
d_info.init(d_shape, 1, data_type, d_strides, 0, output_storage_size);