From 6bff195a51915fd88c1aa1904cf269dbd1a04f50 Mon Sep 17 00:00:00 2001 From: Michalis Spyrou Date: Wed, 2 Oct 2019 17:22:11 +0100 Subject: COMPMID-2486: Remove disabled compiler warnings Removed -Wno-unused-parameter and -Wno-deprecated-declarations compilation flags. Plus, 3RDPARTY_UPDATE. Change-Id: I43098c7af527d5651aad3c597b508a56f8813dda Signed-off-by: Michalis Spyrou Reviewed-on: https://review.mlplatform.org/c/2041 Comments-Addressed: Arm Jenkins Reviewed-by: Georgios Pinitas Tested-by: Arm Jenkins --- 3rdparty | 2 +- SConstruct | 6 +-- arm_compute/core/CL/OpenCL.h | 1 + arm_compute/core/Helpers.inl | 1 + arm_compute/core/NEON/NEColorConvertHelper.inl | 48 ++++++++++---------- .../NEON/kernels/NEBoundingBoxTransformKernel.h | 2 +- .../NEON/kernels/NEGenerateProposalsLayerKernel.h | 2 +- .../NEGEMMInterleavedMatrixMultiplyWrapper.h | 2 +- .../assembly/NEGEMMInterleavedTransformAWrapper.h | 2 +- .../core/NEON/kernels/assembly/gemm_common.hpp | 4 +- arm_compute/core/NEON/wrapper/intrinsics/inv.h | 1 + arm_compute/core/Validate.h | 1 + arm_compute/core/utils/logging/LogMsgDecorators.h | 3 ++ arm_compute/core/utils/misc/ShapeCalculator.h | 2 + arm_compute/core/utils/misc/Utility.h | 3 +- arm_compute/graph/INodeVisitor.h | 50 ++++++++++---------- arm_compute/graph/backends/FunctionHelpers.h | 3 ++ .../GLES_COMPUTE/functions/GCFullyConnectedLayer.h | 1 + .../functions/assembly/NEGEMMInterleavedWrapper.h | 1 + examples/graph_deepspeech_v0_4_1.cpp | 35 +++++++------- src/core/CL/OpenCL.cpp | 3 ++ .../kernels/CLDeconvolutionLayerUpsampleKernel.cpp | 1 + .../CLDepthwiseConvolutionLayerNativeKernel.cpp | 5 +- .../NEON/kernels/NEBoundingBoxTransformKernel.cpp | 12 +++-- .../NEON/kernels/NEDepthConvertLayerKernel.cpp | 26 ++++++----- .../NEON/kernels/NEDequantizationLayerKernel.cpp | 2 +- .../kernels/NEGenerateProposalsLayerKernel.cpp | 10 ++-- .../kernels/NEPixelWiseMultiplicationKernel.cpp | 4 +- src/core/NEON/kernels/arm_gemm/buffer_manager.hpp | 16 +++++-- src/core/NEON/kernels/arm_gemm/gemm_hybrid.hpp | 1 + src/core/NEON/kernels/arm_gemm/gemv_batched.hpp | 2 + .../kernels/arm_gemm/kernels/a64_gemm_s16_12x8.hpp | 2 +- .../kernels/arm_gemm/kernels/a64_gemm_s8_4x4.hpp | 2 +- .../kernels/arm_gemm/kernels/a64_gemm_u16_12x8.hpp | 2 +- .../kernels/arm_gemm/kernels/a64_gemm_u8_4x4.hpp | 1 + .../a64_sgemm_nativeA_pretransposeB_16x4.hpp | 2 +- .../arm_gemm/kernels/a64_sgemm_native_16x4.hpp | 2 +- .../arm_gemm/kernels/a64_sgemv_pretransposed.hpp | 2 +- .../kernels/arm_gemm/kernels/a64_sgemv_trans.hpp | 2 +- .../a64_smallK_hybrid_s8s32_dot_4x6/a55.cpp | 1 + .../a64_smallK_hybrid_s8s32_dot_4x6/generic.cpp | 1 + .../a64_smallK_hybrid_s8s32_dot_4x8/a55.cpp | 1 + .../a64_smallK_hybrid_s8s32_dot_4x8/generic.cpp | 1 + .../a64_smallK_hybrid_u8u32_dot_4x6/a55.cpp | 1 + .../a64_smallK_hybrid_u8u32_dot_4x6/generic.cpp | 1 + .../a64_smallK_hybrid_u8u32_dot_4x8/a55.cpp | 1 + .../a64_smallK_hybrid_u8u32_dot_4x8/generic.cpp | 1 + .../arm_gemm/merges/a64_merge_int32_12x8.hpp | 1 + src/core/NEON/kernels/arm_gemm/utils.hpp | 2 + src/runtime/CL/CLHelpers.cpp | 1 + .../CPPBoxWithNonMaximaSuppressionLimit.cpp | 1 + .../functions/GCFullyConnectedLayer.cpp | 4 +- .../assembly/NEGEMMInterleavedWrapper.cpp | 7 ++- support/ToolchainSupport.h | 22 +++++++++ tests/AssetsLibrary.h | 5 +- tests/SConscript | 8 +--- tests/Utils.h | 2 + tests/benchmark/fixtures/ConvolutionFixture.h | 12 ++--- .../fixtures/DepthwiseConvolutionLayerFixture.h | 2 + tests/benchmark/fixtures/ElementWiseUnaryFixture.h | 14 +++--- tests/validate_examples/ValidateExample.h | 4 +- tests/validate_examples/graph_validate_utils.h | 1 + tests/validation/CL/GlobalPoolingLayer.cpp | 6 +-- tests/validation/CL/Permute.cpp | 5 +- tests/validation/CPP/Permute.cpp | 7 ++- tests/validation/NEON/Permute.cpp | 7 ++- tests/validation/UNIT/LifetimeManager.cpp | 1 + tests/validation/fixtures/DropoutLayerFixture.h | 3 +- .../fixtures/FullyConnectedLayerFixture.h | 7 ++- .../fixtures/FuseBatchNormalizationFixture.h | 4 +- tests/validation/fixtures/GEMMFixture.h | 53 ++++++++++++---------- .../validation/fixtures/GEMMTranspose1xWFixture.h | 6 +-- .../fixtures/InstanceNormalizationLayerFixture.h | 4 +- tests/validation/fixtures/PermuteFixture.h | 8 ++-- tests/validation/fixtures/PoolingLayerFixture.h | 2 +- .../fixtures/UNIT/DynamicTensorFixture.h | 1 + tests/validation/fixtures/WarpPerspectiveFixture.h | 12 ++--- .../fixtures/WinogradConvolutionLayerFixture.h | 22 +++------ tests/validation/reference/ColorConvert.cpp | 6 +-- tests/validation/reference/ColorConvertHelper.h | 4 +- tests/validation/reference/ROIAlignLayer.cpp | 2 + utils/GraphUtils.cpp | 4 ++ utils/GraphUtils.h | 2 + utils/ImageLoader.h | 9 ++-- utils/Utils.cpp | 5 ++ utils/Utils.h | 18 +++++--- 86 files changed, 327 insertions(+), 232 deletions(-) diff --git a/3rdparty b/3rdparty index 82e582f535..fdefd7169e 160000 --- a/3rdparty +++ b/3rdparty @@ -1 +1 @@ -Subproject commit 82e582f5359ab572452c6df6b6be50c939638403 +Subproject commit fdefd7169e204b83bdc43b78c55add387f9cbbe0 diff --git a/SConstruct b/SConstruct index 33cc72cf0d..5f966563f2 100644 --- a/SConstruct +++ b/SConstruct @@ -129,11 +129,11 @@ if not env['exceptions']: env.Append(CPPDEFINES = ['ARM_COMPUTE_EXCEPTIONS_DISABLED']) env.Append(CXXFLAGS = ['-fno-exceptions']) -env.Append(CXXFLAGS = ['-Wno-deprecated-declarations','-Wall','-DARCH_ARM', - '-Wextra','-Wno-unused-parameter','-pedantic','-Wdisabled-optimization','-Wformat=2', +env.Append(CXXFLAGS = ['-Wall','-DARCH_ARM', + '-Wextra','-pedantic','-Wdisabled-optimization','-Wformat=2', '-Wno-format-nonliteral', '-Winit-self','-Wstrict-overflow=2','-Wswitch-default', '-fpermissive','-std=gnu++11','-Wno-vla','-Woverloaded-virtual', - '-Wctor-dtor-privacy','-Wsign-promo','-Weffc++','-Wno-format-nonliteral','-Wno-overlength-strings','-Wno-strict-overflow']) + '-Wctor-dtor-privacy','-Wsign-promo','-Weffc++','-Wno-overlength-strings','-Wno-strict-overflow']) env.Append(CPPDEFINES = ['_GLIBCXX_USE_NANOSLEEP']) diff --git a/arm_compute/core/CL/OpenCL.h b/arm_compute/core/CL/OpenCL.h index fc7083d276..912a53103a 100644 --- a/arm_compute/core/CL/OpenCL.h +++ b/arm_compute/core/CL/OpenCL.h @@ -37,6 +37,7 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Weffc++" #pragma GCC diagnostic ignored "-Wignored-qualifiers" +#pragma GCC diagnostic ignored "-Wunused-parameter" #if defined(__GNUG__) && __GNUG__ >= 8 #pragma GCC diagnostic ignored "-Wcatch-value" #endif // defined(__GNUG__) && __GNUG__ >= 8 diff --git a/arm_compute/core/Helpers.inl b/arm_compute/core/Helpers.inl index aeb290b23e..29f31c12c8 100644 --- a/arm_compute/core/Helpers.inl +++ b/arm_compute/core/Helpers.inl @@ -114,6 +114,7 @@ struct ForEachDimension<0> template static void unroll(const Window &w, Coordinates &id, L &&lambda_function, Ts &&... iterators) { + ARM_COMPUTE_UNUSED(w, iterators...); lambda_function(id); } }; diff --git a/arm_compute/core/NEON/NEColorConvertHelper.inl b/arm_compute/core/NEON/NEColorConvertHelper.inl index 7540d33830..68f437116c 100644 --- a/arm_compute/core/NEON/NEColorConvertHelper.inl +++ b/arm_compute/core/NEON/NEColorConvertHelper.inl @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2018 ARM Limited. + * Copyright (c) 2016-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -80,12 +80,12 @@ inline void convert_float32x4x4_to_unit8x16(const float32x4x4_t &in, uint8x16_t out = vcombine_u8(vqmovn_u16(low), vqmovn_u16(high)); } -inline float32x4_t rgb_to_greyscale_calculation(const float32x4_t &rcolor,const float32x4_t &gcolor, const float32x4_t &bcolor, - const float rcoef, const float gcoef, const float bcoef) +inline float32x4_t rgb_to_greyscale_calculation(const float32x4_t &rcolor, const float32x4_t &gcolor, const float32x4_t &bcolor, + const float rcoef, const float gcoef, const float bcoef) { float32x4_t greyscale = vmulq_n_f32(rcolor, rcoef); - greyscale = vmlaq_n_f32(greyscale, gcolor, gcoef); - greyscale = vmlaq_n_f32(greyscale, bcolor, bcoef); + greyscale = vmlaq_n_f32(greyscale, gcolor, gcoef); + greyscale = vmlaq_n_f32(greyscale, bcolor, bcoef); return greyscale; } @@ -101,16 +101,16 @@ inline void rgb_to_u8_conversion(const uint8x16x3_t &in, uint8x16_t &out) //New grayscale image = ( (RED_COEFF * R) + (GREEN_COEFF * G) + (BLUE_COEFF * B) ) //Computation of 1(Greyscale) 4 uint8 using 3(RGB) 4 uint8s float out_float32.val[0] = rgb_to_greyscale_calculation(r_float32.val[0], g_float32.val[0], b_float32.val[0], - rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); + rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); out_float32.val[1] = rgb_to_greyscale_calculation(r_float32.val[1], g_float32.val[1], b_float32.val[1], - rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); + rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); out_float32.val[2] = rgb_to_greyscale_calculation(r_float32.val[2], g_float32.val[2], b_float32.val[2], - rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); + rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); out_float32.val[3] = rgb_to_greyscale_calculation(r_float32.val[3], g_float32.val[3], b_float32.val[3], - rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); + rgb2u8_red_coef, rgb2u8_green_coef, rgb2u8_blue_coef); //Conversion from 1(Greyscale) 4 floats to 1(Greyscale) 4 uint8s convert_float32x4x4_to_unit8x16(out_float32, out); @@ -359,7 +359,7 @@ void colorconvert_rgb_to_rgbx(const void *__restrict input, void *__restrict out Iterator in(input_ptr, win); Iterator out(output_ptr, win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta1 = vld3q_u8(in.ptr()); uint8x16x4_t ta2; @@ -390,7 +390,7 @@ void colorconvert_rgb_to_u8(const void *__restrict input, void *__restrict outpu Iterator in(input_ptr, win); Iterator out(output_ptr, win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta1 = vld3q_u8(in.ptr()); uint8x16_t ta2; @@ -418,7 +418,7 @@ void colorconvert_rgbx_to_rgb(const void *input, void *output, const Window &win Iterator in(input_ptr, win); Iterator out(output_ptr, win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta1 = vld4q_u8(in.ptr()); uint8x16x3_t ta2; @@ -452,7 +452,7 @@ void colorconvert_yuyv_to_rgb(const void *__restrict input, void *__restrict out Iterator in(input_ptr, win); Iterator out(output_ptr, win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta = vld4q_u8(in.ptr()); //ta.val[0] = Y0 Y2 Y4 Y6 ... @@ -505,7 +505,7 @@ void colorconvert_nv12_to_rgb(const void *__restrict input, void *__restrict out Iterator in_uv(input_ptr->plane(1), win_uv); Iterator out(output_ptr, win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_y_top = vld2q_u8(in_y.ptr()); const auto ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr->plane(0)->info()->strides_in_bytes().y()); @@ -567,7 +567,7 @@ void colorconvert_iyuv_to_rgb(const void *__restrict input, void *__restrict out Iterator in_v(input_ptr->plane(2), win_uv); Iterator out(output_ptr, win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_y_top = vld2q_u8(in_y.ptr()); const auto ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr->plane(0)->info()->strides_in_bytes().y()); @@ -628,7 +628,7 @@ void colorconvert_yuyv_to_nv12(const void *__restrict input, void *__restrict ou Iterator out_y(output_ptr->plane(0), win); Iterator out_uv(output_ptr->plane(1), win_uv); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_top = vld4q_u8(in.ptr()); const auto ta_bottom = vld4q_u8(in.ptr() + input_ptr->info()->strides_in_bytes().y()); @@ -683,7 +683,7 @@ void colorconvert_iyuv_to_nv12(const void *__restrict input, void *__restrict ou Iterator out_y(output_ptr->plane(0), win); Iterator out_uv(output_ptr->plane(1), win_uv); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_y_top = vld2q_u8(in_y.ptr()); const auto ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr->plane(0)->info()->strides_in_bytes().y()); @@ -733,7 +733,7 @@ void colorconvert_nv12_to_iyuv(const void *__restrict input, void *__restrict ou Iterator out_u(output_ptr->plane(1), win_uv); Iterator out_v(output_ptr->plane(2), win_uv); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_y_top = vld2q_u8(in_y.ptr()); const auto ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr->plane(0)->info()->strides_in_bytes().y()); @@ -781,7 +781,7 @@ void colorconvert_yuyv_to_iyuv(const void *__restrict input, void *__restrict ou Iterator out_u(output_ptr->plane(1), win_uv); Iterator out_v(output_ptr->plane(2), win_uv); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_top = vld4q_u8(in.ptr()); const auto ta_bottom = vld4q_u8(in.ptr() + input_ptr->info()->strides_in_bytes().y()); @@ -842,7 +842,7 @@ void colorconvert_nv12_to_yuv4(const void *__restrict input, void *__restrict ou Iterator out_u(output_ptr->plane(1), win); Iterator out_v(output_ptr->plane(2), win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_y_top = vld2q_u8(in_y.ptr()); const auto ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr->plane(0)->info()->strides_in_bytes().y()); @@ -899,7 +899,7 @@ void colorconvert_iyuv_to_yuv4(const void *__restrict input, void *__restrict ou Iterator out_u(output_ptr->plane(1), win); Iterator out_v(output_ptr->plane(2), win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_y_top = vld2q_u8(in_y.ptr()); const auto ta_y_bottom = vld2q_u8(in_y.ptr() + input_ptr->plane(0)->info()->strides_in_bytes().y()); @@ -955,7 +955,7 @@ void colorconvert_rgb_to_nv12(const void *__restrict input, void *__restrict out Iterator out_y(output_ptr->plane(0), win); Iterator out_uv(output_ptr->plane(1), win_uv); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_rgb_top = load_rgb(in.ptr(), alpha); const auto ta_rgb_bottom = load_rgb(in.ptr() + input_ptr->info()->strides_in_bytes().y(), alpha); @@ -999,7 +999,7 @@ void colorconvert_rgb_to_iyuv(const void *__restrict input, void *__restrict out Iterator out_u(output_ptr->plane(1), win_uv); Iterator out_v(output_ptr->plane(2), win_uv); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_rgb_top = load_rgb(in.ptr(), alpha); const auto ta_rgb_bottom = load_rgb(in.ptr() + input_ptr->info()->strides_in_bytes().y(), alpha); @@ -1037,7 +1037,7 @@ void colorconvert_rgb_to_yuv4(const void *__restrict input, void *__restrict out Iterator out_u(output_ptr->plane(1), win); Iterator out_v(output_ptr->plane(2), win); - execute_window_loop(win, [&](const Coordinates & id) + execute_window_loop(win, [&](const Coordinates &) { const auto ta_rgb = load_rgb(in.ptr(), alpha); //ta_rgb.val[0] = R0 R1 R2 R3 ... diff --git a/arm_compute/core/NEON/kernels/NEBoundingBoxTransformKernel.h b/arm_compute/core/NEON/kernels/NEBoundingBoxTransformKernel.h index c2b3862b13..70dd0f6a5f 100644 --- a/arm_compute/core/NEON/kernels/NEBoundingBoxTransformKernel.h +++ b/arm_compute/core/NEON/kernels/NEBoundingBoxTransformKernel.h @@ -84,7 +84,7 @@ public: private: template - void internal_run(const Window &window, const ThreadInfo &info); + void internal_run(const Window &window); const ITensor *_boxes; ITensor *_pred_boxes; diff --git a/arm_compute/core/NEON/kernels/NEGenerateProposalsLayerKernel.h b/arm_compute/core/NEON/kernels/NEGenerateProposalsLayerKernel.h index 9ee9d5dd08..9b129c2066 100644 --- a/arm_compute/core/NEON/kernels/NEGenerateProposalsLayerKernel.h +++ b/arm_compute/core/NEON/kernels/NEGenerateProposalsLayerKernel.h @@ -75,7 +75,7 @@ public: private: template - void internal_run(const Window &window, const ThreadInfo &info); + void internal_run(const Window &window); const ITensor *_anchors; ITensor *_all_anchors; diff --git a/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedMatrixMultiplyWrapper.h b/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedMatrixMultiplyWrapper.h index 40b6f5da39..641f88ee5f 100644 --- a/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedMatrixMultiplyWrapper.h +++ b/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedMatrixMultiplyWrapper.h @@ -165,7 +165,7 @@ public: // Merge the result with the other blocks' results: strat.transforms.Merge(c(0, 0, batch, wl._multi), tmp_c(0, info.thread_id), c.stride(1), y, ymax, wl._x0, wl._xmax, _alpha, (wl._k0 == 0 ? _beta : static_cast(1))); }); - auto on_new_row_size = [&](unsigned int start, unsigned int end) + auto on_new_row_size = [&](unsigned int, unsigned int) { //Nothing to do }; diff --git a/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedTransformAWrapper.h b/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedTransformAWrapper.h index b18d327339..c1fd86e453 100644 --- a/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedTransformAWrapper.h +++ b/arm_compute/core/NEON/kernels/assembly/NEGEMMInterleavedTransformAWrapper.h @@ -139,7 +139,7 @@ public: a.stride(1), first_m, last_m, wl._k0, wl._kmax, _transpose_a); } }); - auto on_new_row_size = [&](unsigned int start, unsigned int end) + auto on_new_row_size = [&](unsigned int, unsigned int end) { last_m = std::min(end, _Msize); }; diff --git a/arm_compute/core/NEON/kernels/assembly/gemm_common.hpp b/arm_compute/core/NEON/kernels/assembly/gemm_common.hpp index f59a61703f..1ae503cddb 100644 --- a/arm_compute/core/NEON/kernels/assembly/gemm_common.hpp +++ b/arm_compute/core/NEON/kernels/assembly/gemm_common.hpp @@ -25,6 +25,8 @@ #include +#define UNUSED(x) (void)(x) + namespace arm_gemm { // Abstract class for the GEMM/GEMV functions. @@ -95,7 +97,7 @@ public: /*** "Quantized bias" interface (optional) ***/ /* Set the bias vector for quantized GEMMs */ - virtual void set_quantized_bias(const int32_t *bias) { } + virtual void set_quantized_bias(const int32_t *bias) { UNUSED(bias); } // Destructor virtual ~IGemmCommon() { } diff --git a/arm_compute/core/NEON/wrapper/intrinsics/inv.h b/arm_compute/core/NEON/wrapper/intrinsics/inv.h index acb2c91feb..9e2db58395 100644 --- a/arm_compute/core/NEON/wrapper/intrinsics/inv.h +++ b/arm_compute/core/NEON/wrapper/intrinsics/inv.h @@ -40,6 +40,7 @@ namespace wrapper #define VINV_IMPL_INT(vtype, prefix, postfix) \ inline vtype vinv(const vtype &a) \ { \ + ARM_COMPUTE_UNUSED(a); \ ARM_COMPUTE_ERROR("Not supported"); \ } diff --git a/arm_compute/core/Validate.h b/arm_compute/core/Validate.h index 37c7b50ec7..ab518ef687 100644 --- a/arm_compute/core/Validate.h +++ b/arm_compute/core/Validate.h @@ -638,6 +638,7 @@ void error_on_format_not_in(const char *function, const char *file, const int li return f == object_format; }), function, file, line, "Format %s not supported by this kernel", string_from_format(object_format).c_str()); + ARM_COMPUTE_UNUSED(function, format, file, line); } #define ARM_COMPUTE_ERROR_ON_FORMAT_NOT_IN(t, ...) ::arm_compute::error_on_format_not_in(__func__, __FILE__, __LINE__, t, __VA_ARGS__) diff --git a/arm_compute/core/utils/logging/LogMsgDecorators.h b/arm_compute/core/utils/logging/LogMsgDecorators.h index 03a2d41f12..7c5b58b633 100644 --- a/arm_compute/core/utils/logging/LogMsgDecorators.h +++ b/arm_compute/core/utils/logging/LogMsgDecorators.h @@ -24,6 +24,7 @@ #ifndef __ARM_COMPUTE_LOGGING_LOG_MSG_DECORATORS_H__ #define __ARM_COMPUTE_LOGGING_LOG_MSG_DECORATORS_H__ +#include "arm_compute/core/Error.h" #include "arm_compute/core/utils/logging/Helpers.h" #include "arm_compute/core/utils/logging/Types.h" @@ -120,6 +121,8 @@ public: { #ifndef NO_MULTI_THREADING log_msg.raw_ += angle_wrap_value(std::this_thread::get_id()); +#else /* NO_MULTI_THREADING */ + ARM_COMPUTE_UNUSED(log_msg); #endif /* NO_MULTI_THREADING */ } }; diff --git a/arm_compute/core/utils/misc/ShapeCalculator.h b/arm_compute/core/utils/misc/ShapeCalculator.h index 65a2a1edf4..c4c360842f 100644 --- a/arm_compute/core/utils/misc/ShapeCalculator.h +++ b/arm_compute/core/utils/misc/ShapeCalculator.h @@ -859,6 +859,7 @@ inline TensorShape compute_mm_shape(const ITensorInfo &input0, const ITensorInfo */ inline TensorShape compute_mm_shape(const ITensorInfo &input0, const ITensorInfo &input1, const GEMMReshapeInfo &gemm_info) { + ARM_COMPUTE_UNUSED(input1); ARM_COMPUTE_ERROR_ON_MSG(input0.num_dimensions() > 4, "The number of dimensions for the matrix A must be <= 4"); const bool reinterpret_input_as_3d = gemm_info.reinterpret_input_as_3d(); @@ -896,6 +897,7 @@ inline TensorShape compute_mm_shape(const ITensorInfo &input0, const ITensorInfo */ inline TensorShape compute_mm_shape(const ITensorInfo &input0, const ITensorInfo &input1, const GEMMKernelInfo &gemm_info) { + ARM_COMPUTE_UNUSED(input1); ARM_COMPUTE_ERROR_ON_MSG(input0.num_dimensions() > 4, "The number of dimensions for the matrix A must be <= 4"); const bool reinterpret_input_as_3d = gemm_info.reinterpret_input_as_3d; diff --git a/arm_compute/core/utils/misc/Utility.h b/arm_compute/core/utils/misc/Utility.h index 2325644e72..d27a3cf75e 100644 --- a/arm_compute/core/utils/misc/Utility.h +++ b/arm_compute/core/utils/misc/Utility.h @@ -65,7 +65,7 @@ struct generate_array static constexpr std::array value{ vals... }; }; -template +template constexpr std::array generate_array::value; /** @endcond */ @@ -83,6 +83,7 @@ T make_array(Iterator first, index_sequence) template std::array::value_type, N> make_array(Iterator first, Iterator last) { + ARM_COMPUTE_UNUSED(last); return detail::make_array(first, index_sequence_t {}); } diff --git a/arm_compute/graph/INodeVisitor.h b/arm_compute/graph/INodeVisitor.h index f97906d02a..c9f9d2172c 100644 --- a/arm_compute/graph/INodeVisitor.h +++ b/arm_compute/graph/INodeVisitor.h @@ -176,103 +176,103 @@ public: #ifndef DOXYGEN_SKIP_THIS // Inherited methods overridden - virtual void visit(INode &n) override + virtual void visit(INode &) override { default_visit(); } - virtual void visit(ActivationLayerNode &n) override + virtual void visit(ActivationLayerNode &) override { default_visit(); } - virtual void visit(BatchNormalizationLayerNode &n) override + virtual void visit(BatchNormalizationLayerNode &) override { default_visit(); } - virtual void visit(ConcatenateLayerNode &n) override + virtual void visit(ConcatenateLayerNode &) override { default_visit(); } - virtual void visit(ConstNode &n) override + virtual void visit(ConstNode &) override { default_visit(); } - virtual void visit(ConvolutionLayerNode &n) override + virtual void visit(ConvolutionLayerNode &) override { default_visit(); } - virtual void visit(DetectionOutputLayerNode &n) override + virtual void visit(DetectionOutputLayerNode &) override { default_visit(); } - virtual void visit(DetectionPostProcessLayerNode &n) override + virtual void visit(DetectionPostProcessLayerNode &) override { default_visit(); } - virtual void visit(DepthwiseConvolutionLayerNode &n) override + virtual void visit(DepthwiseConvolutionLayerNode &) override { default_visit(); } - virtual void visit(EltwiseLayerNode &n) override + virtual void visit(EltwiseLayerNode &) override { default_visit(); } - virtual void visit(FlattenLayerNode &n) override + virtual void visit(FlattenLayerNode &) override { default_visit(); } - virtual void visit(FullyConnectedLayerNode &n) override + virtual void visit(FullyConnectedLayerNode &) override { default_visit(); } - virtual void visit(FusedConvolutionBatchNormalizationNode &n) override + virtual void visit(FusedConvolutionBatchNormalizationNode &) override { default_visit(); } - virtual void visit(FusedDepthwiseConvolutionBatchNormalizationNode &n) override + virtual void visit(FusedDepthwiseConvolutionBatchNormalizationNode &) override { default_visit(); } - virtual void visit(InputNode &n) override + virtual void visit(InputNode &) override { default_visit(); } - virtual void visit(NormalizationLayerNode &n) override + virtual void visit(NormalizationLayerNode &) override { default_visit(); } - virtual void visit(OutputNode &n) override + virtual void visit(OutputNode &) override { default_visit(); } - virtual void visit(PermuteLayerNode &n) override + virtual void visit(PermuteLayerNode &) override { default_visit(); } - virtual void visit(PoolingLayerNode &n) override + virtual void visit(PoolingLayerNode &) override { default_visit(); } - virtual void visit(PriorBoxLayerNode &n) override + virtual void visit(PriorBoxLayerNode &) override { default_visit(); } - virtual void visit(QuantizationLayerNode &n) override + virtual void visit(QuantizationLayerNode &) override { default_visit(); } - virtual void visit(ReshapeLayerNode &n) override + virtual void visit(ReshapeLayerNode &) override { default_visit(); } - virtual void visit(SoftmaxLayerNode &n) override + virtual void visit(SoftmaxLayerNode &) override { default_visit(); } - virtual void visit(SplitLayerNode &n) override + virtual void visit(SplitLayerNode &) override { default_visit(); } - virtual void visit(StackLayerNode &n) override + virtual void visit(StackLayerNode &) override { default_visit(); } diff --git a/arm_compute/graph/backends/FunctionHelpers.h b/arm_compute/graph/backends/FunctionHelpers.h index 10f8c0c5c7..94b385e81e 100644 --- a/arm_compute/graph/backends/FunctionHelpers.h +++ b/arm_compute/graph/backends/FunctionHelpers.h @@ -83,6 +83,7 @@ void validate_node(const INode &node, size_t num_expected_inputs, size_t num_exp ARM_COMPUTE_ERROR_ON(TargetInfo::TargetType != node.assigned_target()); ARM_COMPUTE_ERROR_ON(node.num_inputs() != num_expected_inputs); ARM_COMPUTE_ERROR_ON(node.num_outputs() != num_expected_outputs); + ARM_COMPUTE_UNUSED(node, num_expected_inputs, num_expected_outputs); } /** Creates a backend activation layer function @@ -1471,6 +1472,7 @@ std::unique_ptr create_stack_layer(StackLayerNode &node) template std::unique_ptr create_upsample_layer(UpsampleLayerNode &node, GraphContext &ctx) { + ARM_COMPUTE_UNUSED(ctx); validate_node(node, 1 /* expected inputs */, 1 /* expected outputs */); // Extract IO and info @@ -1514,6 +1516,7 @@ std::unique_ptr create_upsample_layer(UpsampleLayerNode &node, GraphC template std::unique_ptr create_yolo_layer(YOLOLayerNode &node, GraphContext &ctx) { + ARM_COMPUTE_UNUSED(ctx); validate_node(node, 1 /* expected inputs */, 1 /* expected outputs */); // Extract IO and info diff --git a/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h b/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h index 3a13e659f9..64e98e2f4d 100644 --- a/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h +++ b/arm_compute/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.h @@ -94,6 +94,7 @@ private: void configure_conv_fc(const IGCTensor *input, const IGCTensor *weights, IGCTensor *output); MemoryGroup _memory_group; + IWeightsManager *_weights_manager; GCIm2ColKernel _im2col_kernel; GCFullyConnectedLayerReshapeWeights _reshape_weights_kernel; GCGEMMMatrixMultiplyKernel _mm_kernel; diff --git a/arm_compute/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.h b/arm_compute/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.h index eeea0babf1..695dcd5b6e 100644 --- a/arm_compute/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.h +++ b/arm_compute/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.h @@ -120,6 +120,7 @@ public: private: MemoryGroup _memory_group; + IWeightsManager *_weights_manager; bool _is_prepared{ false }; bool _pretranspose_b{ false }; Window _block_walker{}; diff --git a/examples/graph_deepspeech_v0_4_1.cpp b/examples/graph_deepspeech_v0_4_1.cpp index 84650a6627..d2a4832bd1 100644 --- a/examples/graph_deepspeech_v0_4_1.cpp +++ b/examples/graph_deepspeech_v0_4_1.cpp @@ -155,22 +155,22 @@ public: .set_name("MatMul_3_bias"); // LSTM Block - std::pair new_state_1 = add_lstm_cell(data_path, unstack_nid, 0, previous_state, previous_state, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_2 = add_lstm_cell(data_path, unstack_nid, 1, new_state_1.first, new_state_1.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_3 = add_lstm_cell(data_path, unstack_nid, 2, new_state_2.first, new_state_2.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_4 = add_lstm_cell(data_path, unstack_nid, 3, new_state_3.first, new_state_3.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_5 = add_lstm_cell(data_path, unstack_nid, 4, new_state_4.first, new_state_4.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_6 = add_lstm_cell(data_path, unstack_nid, 5, new_state_5.first, new_state_5.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_7 = add_lstm_cell(data_path, unstack_nid, 6, new_state_6.first, new_state_6.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_8 = add_lstm_cell(data_path, unstack_nid, 7, new_state_7.first, new_state_7.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_9 = add_lstm_cell(data_path, unstack_nid, 8, new_state_8.first, new_state_8.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_10 = add_lstm_cell(data_path, unstack_nid, 9, new_state_9.first, new_state_9.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_11 = add_lstm_cell(data_path, unstack_nid, 10, new_state_10.first, new_state_10.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_12 = add_lstm_cell(data_path, unstack_nid, 11, new_state_11.first, new_state_11.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_13 = add_lstm_cell(data_path, unstack_nid, 12, new_state_12.first, new_state_12.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_14 = add_lstm_cell(data_path, unstack_nid, 13, new_state_13.first, new_state_13.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_15 = add_lstm_cell(data_path, unstack_nid, 14, new_state_14.first, new_state_14.second, add_y, lstm_fc_weights, lstm_fc_bias); - std::pair new_state_16 = add_lstm_cell(data_path, unstack_nid, 15, new_state_15.first, new_state_15.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_1 = add_lstm_cell(unstack_nid, 0, previous_state, previous_state, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_2 = add_lstm_cell(unstack_nid, 1, new_state_1.first, new_state_1.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_3 = add_lstm_cell(unstack_nid, 2, new_state_2.first, new_state_2.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_4 = add_lstm_cell(unstack_nid, 3, new_state_3.first, new_state_3.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_5 = add_lstm_cell(unstack_nid, 4, new_state_4.first, new_state_4.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_6 = add_lstm_cell(unstack_nid, 5, new_state_5.first, new_state_5.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_7 = add_lstm_cell(unstack_nid, 6, new_state_6.first, new_state_6.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_8 = add_lstm_cell(unstack_nid, 7, new_state_7.first, new_state_7.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_9 = add_lstm_cell(unstack_nid, 8, new_state_8.first, new_state_8.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_10 = add_lstm_cell(unstack_nid, 9, new_state_9.first, new_state_9.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_11 = add_lstm_cell(unstack_nid, 10, new_state_10.first, new_state_10.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_12 = add_lstm_cell(unstack_nid, 11, new_state_11.first, new_state_11.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_13 = add_lstm_cell(unstack_nid, 12, new_state_12.first, new_state_12.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_14 = add_lstm_cell(unstack_nid, 13, new_state_13.first, new_state_13.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_15 = add_lstm_cell(unstack_nid, 14, new_state_14.first, new_state_14.second, add_y, lstm_fc_weights, lstm_fc_bias); + std::pair new_state_16 = add_lstm_cell(unstack_nid, 15, new_state_15.first, new_state_15.second, add_y, lstm_fc_weights, lstm_fc_bias); // Concatenate new states on height const int axis = 1; @@ -241,8 +241,7 @@ private: return Status{}; } - std::pair add_lstm_cell(const std::string &data_path, - NodeID unstack_nid, + std::pair add_lstm_cell(NodeID unstack_nid, unsigned int unstack_idx, SubStream previous_state_c, SubStream previous_state_h, diff --git a/src/core/CL/OpenCL.cpp b/src/core/CL/OpenCL.cpp index ef03a5a302..1ce1b526d7 100644 --- a/src/core/CL/OpenCL.cpp +++ b/src/core/CL/OpenCL.cpp @@ -22,7 +22,10 @@ * SOFTWARE. */ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" #include "arm_compute/core/CL/OpenCL.h" +#pragma GCC diagnostic pop #include #include diff --git a/src/core/CL/kernels/CLDeconvolutionLayerUpsampleKernel.cpp b/src/core/CL/kernels/CLDeconvolutionLayerUpsampleKernel.cpp index 4ae9cabd1f..819e3c910a 100644 --- a/src/core/CL/kernels/CLDeconvolutionLayerUpsampleKernel.cpp +++ b/src/core/CL/kernels/CLDeconvolutionLayerUpsampleKernel.cpp @@ -42,6 +42,7 @@ CLDeconvolutionLayerUpsampleKernel::CLDeconvolutionLayerUpsampleKernel() Status CLDeconvolutionLayerUpsampleKernel::validate(const ITensorInfo *input, const ITensorInfo *output, const PadStrideInfo &info) { + ARM_COMPUTE_UNUSED(info); ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(input, output); ARM_COMPUTE_RETURN_ERROR_ON_F16_UNSUPPORTED(input); ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::QASYMM8, DataType::F16, DataType::F32); diff --git a/src/core/CL/kernels/CLDepthwiseConvolutionLayerNativeKernel.cpp b/src/core/CL/kernels/CLDepthwiseConvolutionLayerNativeKernel.cpp index b34c261a40..8b624bb2cb 100644 --- a/src/core/CL/kernels/CLDepthwiseConvolutionLayerNativeKernel.cpp +++ b/src/core/CL/kernels/CLDepthwiseConvolutionLayerNativeKernel.cpp @@ -23,7 +23,6 @@ */ #include "arm_compute/core/CL/kernels/CLDepthwiseConvolutionLayerNativeKernel.h" -#include "arm_compute/core/IAccessWindow.h" #include "arm_compute/core/CL/CLHelpers.h" #include "arm_compute/core/CL/CLKernelLibrary.h" #include "arm_compute/core/CL/CLValidate.h" @@ -31,6 +30,7 @@ #include "arm_compute/core/CL/ICLTensor.h" #include "arm_compute/core/Error.h" #include "arm_compute/core/Helpers.h" +#include "arm_compute/core/IAccessWindow.h" #include "arm_compute/core/TensorInfo.h" #include "arm_compute/core/Types.h" #include "arm_compute/core/Utils.h" @@ -43,6 +43,7 @@ namespace Status validate_arguments(const ITensorInfo *input, const ITensorInfo *weights, const ITensorInfo *biases, const ITensorInfo *output, const DWCWeightsKernelInfo &dwc_weights_info, const DWCKernelInfo &dwc_info, const PadStrideInfo &conv_info, unsigned int depth_multiplier, const Size2D &dilation) { + ARM_COMPUTE_UNUSED(dwc_info); ARM_COMPUTE_RETURN_ERROR_ON_F16_UNSUPPORTED(input); ARM_COMPUTE_RETURN_ERROR_ON_DATA_LAYOUT_NOT_IN(input, DataLayout::NHWC); ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(input, 1, DataType::F16, DataType::F32); @@ -74,6 +75,8 @@ Status validate_arguments(const ITensorInfo *input, const ITensorInfo *weights, std::pair validate_and_configure_window(ITensorInfo *input, ITensorInfo *weights, ITensorInfo *bias, ITensorInfo *output, const DWCWeightsKernelInfo &dwc_weights_info, const DWCKernelInfo &dwc_info, const PadStrideInfo &conv_info, unsigned int depth_multiplier, const Size2D &dilation) { + ARM_COMPUTE_UNUSED(dwc_info); + // Get convolved dimensions const TensorShape output_shape = arm_compute::misc::shape_calculator::compute_depthwise_convolution_shape(*input, *weights, conv_info, depth_multiplier, dilation); diff --git a/src/core/NEON/kernels/NEBoundingBoxTransformKernel.cpp b/src/core/NEON/kernels/NEBoundingBoxTransformKernel.cpp index 5a40b99609..e195c96722 100644 --- a/src/core/NEON/kernels/NEBoundingBoxTransformKernel.cpp +++ b/src/core/NEON/kernels/NEBoundingBoxTransformKernel.cpp @@ -79,6 +79,7 @@ Status validate_arguments(const ITensorInfo *boxes, const ITensorInfo *pred_boxe std::pair validate_and_configure_window(ITensorInfo *boxes, ITensorInfo *pred_boxes, ITensorInfo *deltas, const BoundingBoxTransformInfo &bb_info) { + ARM_COMPUTE_UNUSED(bb_info); ARM_COMPUTE_ERROR_ON_NULLPTR(boxes, pred_boxes); auto_init_if_empty(*pred_boxes, deltas->clone()->set_data_type(boxes->data_type()).set_quantization_info(boxes->quantization_info())); @@ -130,7 +131,7 @@ Status NEBoundingBoxTransformKernel::validate(const ITensorInfo *boxes, const IT } template <> -void NEBoundingBoxTransformKernel::internal_run(const Window &window, const ThreadInfo &info) +void NEBoundingBoxTransformKernel::internal_run(const Window &window) { const size_t num_classes = _deltas->info()->tensor_shape()[0] >> 2; const size_t deltas_width = _deltas->info()->tensor_shape()[0]; @@ -187,7 +188,7 @@ void NEBoundingBoxTransformKernel::internal_run(const Window &window, } template -void NEBoundingBoxTransformKernel::internal_run(const Window &window, const ThreadInfo &info) +void NEBoundingBoxTransformKernel::internal_run(const Window &window) { const size_t num_classes = _deltas->info()->tensor_shape()[0] >> 2; const size_t deltas_width = _deltas->info()->tensor_shape()[0]; @@ -242,24 +243,25 @@ void NEBoundingBoxTransformKernel::internal_run(const Window &window, const Thre void NEBoundingBoxTransformKernel::run(const Window &window, const ThreadInfo &info) { + ARM_COMPUTE_UNUSED(info); ARM_COMPUTE_ERROR_ON_UNCONFIGURED_KERNEL(this); ARM_COMPUTE_ERROR_ON_INVALID_SUBWINDOW(INEKernel::window(), window); switch(_boxes->info()->data_type()) { case DataType::F32: { - internal_run(window, info); + internal_run(window); break; } case DataType::QASYMM16: { - internal_run(window, info); + internal_run(window); break; } #ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC case DataType::F16: { - internal_run(window, info); + internal_run(window); break; } #endif // __ARM_FEATURE_FP16_VECTOR_ARITHMETIC diff --git a/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp b/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp index 10bbe8324c..d00c5009d2 100644 --- a/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp +++ b/src/core/NEON/kernels/NEDepthConvertLayerKernel.cpp @@ -49,7 +49,7 @@ Status validate_arguments(const ITensorInfo *input, const ITensorInfo *output, C ARM_COMPUTE_RETURN_ERROR_ON(shift >= 8); ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::QASYMM8 && (output->data_type() != DataType::S16 && output->data_type() != DataType::U16 - && output->data_type() != DataType::S32 && output->data_type() != DataType::F16 && output->data_type() != DataType::F32), + && output->data_type() != DataType::S32 && output->data_type() != DataType::F16 && output->data_type() != DataType::F32), "Only data_types supported [in] QASYMM8 -> [out] U16, S16, S32, F16, F32"); ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::U8 && (output->data_type() != DataType::S16 && output->data_type() != DataType::U16 @@ -62,13 +62,16 @@ Status validate_arguments(const ITensorInfo *input, const ITensorInfo *output, C ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::S16 && (output->data_type() != DataType::U8 && output->data_type() != DataType::S32), "Only data_types supported [in] S16 -> [out] U8, S32"); - ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::F16 && (output->data_type() != DataType::QASYMM8 && output->data_type() != DataType::U8 && output->data_type() != DataType::F32 && output->data_type() != DataType::S32), + ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::F16 && (output->data_type() != DataType::QASYMM8 && output->data_type() != DataType::U8 && output->data_type() != DataType::F32 + && output->data_type() != DataType::S32), "Only data_types supported [in] F16 -> [out] QASYMM8, F32, S32, U8"); - ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::F32 && (output->data_type() != DataType::QASYMM8 && output->data_type() != DataType::F16 && output->data_type() != DataType::S32 && output->data_type() != DataType::U8), + ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::F32 && (output->data_type() != DataType::QASYMM8 && output->data_type() != DataType::F16 && output->data_type() != DataType::S32 + && output->data_type() != DataType::U8), "Only data_types supported [in] F32 -> [out] QASYMM8, F16, S32, U8"); - ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::S32 && (output->data_type() != DataType::QASYMM8 && output->data_type() != DataType::F16 && output->data_type() != DataType::F32 && output->data_type() != DataType::U8), + ARM_COMPUTE_RETURN_ERROR_ON_MSG(input->data_type() == DataType::S32 && (output->data_type() != DataType::QASYMM8 && output->data_type() != DataType::F16 && output->data_type() != DataType::F32 + && output->data_type() != DataType::U8), "Only data_types supported [in] S32 -> [out] QASYMM8, F16, F32, U8"); // Validate in case of configured output @@ -427,7 +430,7 @@ void NEDepthConvertLayerKernel::run(const Window &window, const ThreadInfo &info const float16x8_t scale = vdupq_n_f16(1 << _shift); /* Up-conversion F16 -> U8 */ - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { const float16x8x2_t texels = { @@ -447,7 +450,7 @@ void NEDepthConvertLayerKernel::run(const Window &window, const ThreadInfo &info const float32x4_t scale = vdupq_n_f32(1 << _shift); /* Up-conversion F16 -> F32 */ - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { const float16x8x2_t texels = { @@ -470,7 +473,7 @@ void NEDepthConvertLayerKernel::run(const Window &window, const ThreadInfo &info const float32x4_t scale = vdupq_n_f32(1 << _shift); /* Up-conversion F16 -> S32 */ - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { const float16x8x2_t texels = { @@ -565,13 +568,12 @@ void NEDepthConvertLayerKernel::run(const Window &window, const ThreadInfo &info }; vst1_u8(reinterpret_cast(output.ptr()), vqmovn_u16(vcombine_u16(vqmovun_s32(vcvtq_s32_f32(texels.val[0])), vqmovun_s32(vcvtq_s32_f32(texels.val[1]))))); - vst1_u8(reinterpret_cast(output.ptr())+8, vqmovn_u16(vcombine_u16(vqmovun_s32(vcvtq_s32_f32(texels.val[2])), vqmovun_s32(vcvtq_s32_f32(texels.val[3]))))); + vst1_u8(reinterpret_cast(output.ptr()) + 8, vqmovn_u16(vcombine_u16(vqmovun_s32(vcvtq_s32_f32(texels.val[2])), vqmovun_s32(vcvtq_s32_f32(texels.val[3]))))); }, input, output); break; } - default: ARM_COMPUTE_ERROR("Output data type not supported"); } @@ -650,7 +652,7 @@ void NEDepthConvertLayerKernel::run(const Window &window, const ThreadInfo &info } }; vst1_u8(reinterpret_cast(output.ptr()), vqmovn_u16(vcombine_u16(vqmovun_s32(texels.val[0]), vqmovun_s32(texels.val[1])))); - vst1_u8(reinterpret_cast(output.ptr())+8, vqmovn_u16(vcombine_u16(vqmovun_s32(texels.val[2]), vqmovun_s32(texels.val[3])))); + vst1_u8(reinterpret_cast(output.ptr()) + 8, vqmovn_u16(vcombine_u16(vqmovun_s32(texels.val[2]), vqmovun_s32(texels.val[3])))); }, input, output); } @@ -668,8 +670,8 @@ void NEDepthConvertLayerKernel::run(const Window &window, const ThreadInfo &info } }; - vst1_u8(reinterpret_cast(output.ptr()), vmovn_u16(vcombine_u16(vmovn_u32(vreinterpretq_u32_s32(texels.val[0])),vmovn_u32(vreinterpretq_u32_s32(texels.val[1]))))); - vst1_u8(reinterpret_cast(output.ptr())+8, vmovn_u16(vcombine_u16(vmovn_u32(vreinterpretq_u32_s32(texels.val[2])),vmovn_u32(vreinterpretq_u32_s32(texels.val[3]))))); + vst1_u8(reinterpret_cast(output.ptr()), vmovn_u16(vcombine_u16(vmovn_u32(vreinterpretq_u32_s32(texels.val[0])), vmovn_u32(vreinterpretq_u32_s32(texels.val[1]))))); + vst1_u8(reinterpret_cast(output.ptr()) + 8, vmovn_u16(vcombine_u16(vmovn_u32(vreinterpretq_u32_s32(texels.val[2])), vmovn_u32(vreinterpretq_u32_s32(texels.val[3]))))); }, input, output); } diff --git a/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp b/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp index 49de3ec8b3..5abd6a122d 100644 --- a/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp +++ b/src/core/NEON/kernels/NEDequantizationLayerKernel.cpp @@ -219,7 +219,7 @@ void run_dequantization_qasymm8_per_channel_nhwc(const ITensor *input, ITensor * 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 = reinterpret_cast(in.ptr()); const auto out_ptr = reinterpret_cast(out.ptr()); diff --git a/src/core/NEON/kernels/NEGenerateProposalsLayerKernel.cpp b/src/core/NEON/kernels/NEGenerateProposalsLayerKernel.cpp index ba5ca78955..940ccabe65 100644 --- a/src/core/NEON/kernels/NEGenerateProposalsLayerKernel.cpp +++ b/src/core/NEON/kernels/NEGenerateProposalsLayerKernel.cpp @@ -100,7 +100,7 @@ Status NEComputeAllAnchorsKernel::validate(const ITensorInfo *anchors, const ITe } template <> -void NEComputeAllAnchorsKernel::internal_run(const Window &window, const ThreadInfo &info) +void NEComputeAllAnchorsKernel::internal_run(const Window &window) { Iterator all_anchors_it(_all_anchors, window); Iterator anchors_it(_all_anchors, window); @@ -136,7 +136,7 @@ void NEComputeAllAnchorsKernel::internal_run(const Window &window, cons } template -void NEComputeAllAnchorsKernel::internal_run(const Window &window, const ThreadInfo &info) +void NEComputeAllAnchorsKernel::internal_run(const Window &window) { Iterator all_anchors_it(_all_anchors, window); Iterator anchors_it(_all_anchors, window); @@ -174,19 +174,19 @@ void NEComputeAllAnchorsKernel::run(const Window &window, const ThreadInfo &info { case DataType::QSYMM16: { - internal_run(window, info); + internal_run(window); break; } #ifdef __ARM_FEATURE_FP16_VECTOR_ARITHMETIC case DataType::F16: { - internal_run(window, info); + internal_run(window); break; } #endif // __ARM_FEATURE_FP16_VECTOR_ARITHMETIC case DataType::F32: { - internal_run(window, info); + internal_run(window); break; } default: diff --git a/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp b/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp index 1dab5d955d..4bd03e959e 100644 --- a/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp +++ b/src/core/NEON/kernels/NEPixelWiseMultiplicationKernel.cpp @@ -191,7 +191,7 @@ inline uint16x8_t scale255_U16_U16(uint16x8_t in) return vreinterpretq_u16_s16(vcombine_s16(vmovn_s32(tmp_s2), vmovn_s32(tmp_s1))); } -inline void mul_saturate_QASYMM8_QASYMM8_QASYMM8_n_opt(const void *__restrict input1_ptr, const void *__restrict input2_ptr, void *__restrict output_ptr, float scale, +inline void mul_saturate_QASYMM8_QASYMM8_QASYMM8_n_opt(const void *__restrict input1_ptr, const void *__restrict input2_ptr, void *__restrict output_ptr, float32x4_t input1_vscale, int32x4_t input1_voffset, float32x4_t input2_vscale, int32x4_t input2_voffset, float32x4_t output_voffset, float32x4_t vinvscale) { const auto input1 = static_cast(input1_ptr); @@ -739,7 +739,7 @@ void NEPixelWiseMultiplicationKernel::run(const Window &window, const ThreadInfo execute_window_loop(collapsed, [&](const Coordinates &) { - mul_saturate_QASYMM8_QASYMM8_QASYMM8_n_opt(input1.ptr(), input2.ptr(), output.ptr(), _scale, + mul_saturate_QASYMM8_QASYMM8_QASYMM8_n_opt(input1.ptr(), input2.ptr(), output.ptr(), input1_vscale, input1_voffset, input2_vscale, input2_voffset, output_voffset, vinvscale); ARM_COMPUTE_UNUSED(collapsed.slide_window_slice_3D(slice_input1)); ARM_COMPUTE_UNUSED(collapsed.slide_window_slice_3D(slice_input2)); diff --git a/src/core/NEON/kernels/arm_gemm/buffer_manager.hpp b/src/core/NEON/kernels/arm_gemm/buffer_manager.hpp index 03f099d57b..001cab7f09 100644 --- a/src/core/NEON/kernels/arm_gemm/buffer_manager.hpp +++ b/src/core/NEON/kernels/arm_gemm/buffer_manager.hpp @@ -303,22 +303,32 @@ public: BufferManager(BufferManager &) = delete; BufferManager & operator=(BufferManager &) = delete; - BufferManager(const int maxthreads, const size_t buffersize, void *storage) : _storage(storage) { } + BufferManager(const int maxthreads, const size_t buffersize, void *storage) : _storage(storage) { + UNUSED(maxthreads); + UNUSED(buffersize); + } ~BufferManager() { } // Say how much storage is needed. static inline size_t get_storage_requirement(const int maxthreads, const size_t buffersize) { + UNUSED(maxthreads); return buffersize; } template - void try_populate(const int index, T func) { } + void try_populate(const int index, T func) { + UNUSED(index); + UNUSED(func); + } - void release(const int index) { } + void release(const int index) { + UNUSED(index); + } template void *get(const int index, T func) { + UNUSED(index); func(_storage); return _storage; } diff --git a/src/core/NEON/kernels/arm_gemm/gemm_hybrid.hpp b/src/core/NEON/kernels/arm_gemm/gemm_hybrid.hpp index a744376393..436f55dee2 100644 --- a/src/core/NEON/kernels/arm_gemm/gemm_hybrid.hpp +++ b/src/core/NEON/kernels/arm_gemm/gemm_hybrid.hpp @@ -146,6 +146,7 @@ public: // Execute void execute(unsigned int start, unsigned int end, int threadid) override { + UNUSED(threadid); #ifdef CYCLE_PROFILING profiler prof; #endif diff --git a/src/core/NEON/kernels/arm_gemm/gemv_batched.hpp b/src/core/NEON/kernels/arm_gemm/gemv_batched.hpp index 8dae7c3098..4453ee8243 100644 --- a/src/core/NEON/kernels/arm_gemm/gemv_batched.hpp +++ b/src/core/NEON/kernels/arm_gemm/gemv_batched.hpp @@ -48,6 +48,8 @@ public: void set_arrays(const To *A, const int lda, const int A_batch_stride, const int A_multi_stride, const To *B, const int ldb, const int B_multi_stride, Tr *C, const int ldc, const int C_batch_stride, const int C_multi_stride) override { + UNUSED(lda); + UNUSED(ldc); /* A and C's batch stride becomes their new row stride. New batch stride is 0 as nbatches for subgemm is always 1. */ _subgemm->set_arrays(A, A_batch_stride, 0, A_multi_stride, B, ldb, B_multi_stride, diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s16_12x8.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s16_12x8.hpp index 2fcb587df1..a19e07d30f 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s16_12x8.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s16_12x8.hpp @@ -65,7 +65,7 @@ public: kern_type kernel = a64_gemm_s16_asimd_12x8; - gemm_s16_12x8(const CPUInfo *ci) { } + gemm_s16_12x8(const CPUInfo *ci) { UNUSED(ci); } }; } // namespace arm_gemm diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s8_4x4.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s8_4x4.hpp index 71c666ad00..7856eb55e0 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s8_4x4.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_s8_4x4.hpp @@ -59,7 +59,7 @@ public: kern_type kernel=a64_gemm_s8_4x4; - gemm_s8_4x4(const CPUInfo *ci) { } + gemm_s8_4x4(const CPUInfo *ci) { UNUSED(ci); } }; } // namespace arm_gemm diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u16_12x8.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u16_12x8.hpp index 3d5c92c622..a8255629fc 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u16_12x8.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u16_12x8.hpp @@ -65,7 +65,7 @@ public: kern_type kernel = a64_gemm_u16_asimd_12x8; - gemm_u16_12x8(const CPUInfo *ci) { } + gemm_u16_12x8(const CPUInfo *ci) { UNUSED(ci); } }; } // namespace arm_gemm diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u8_4x4.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u8_4x4.hpp index fda7657b2b..56044e9280 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u8_4x4.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_gemm_u8_4x4.hpp @@ -68,6 +68,7 @@ public: kern_type kernel = a64_gemm_u8_4x4; gemm_u8_4x4(const CPUInfo *ci) { + UNUSED(ci); } }; diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_nativeA_pretransposeB_16x4.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_nativeA_pretransposeB_16x4.hpp index 95e3712e84..9b70827125 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_nativeA_pretransposeB_16x4.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_nativeA_pretransposeB_16x4.hpp @@ -69,7 +69,7 @@ public: kern_type kernel=a64_sgemm_nativeA_pretransposeB_16x4; sgemm_nativeA_pretransposeB_16x4(const CPUInfo *ci) { - + UNUSED(ci); } }; diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_native_16x4.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_native_16x4.hpp index 3d2b324314..a5511931d8 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_native_16x4.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemm_native_16x4.hpp @@ -62,7 +62,7 @@ public: kern_type kernel=a64_sgemm_native_16x4; sgemm_native_16x4(const CPUInfo *ci) { - + UNUSED(ci); } }; diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_pretransposed.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_pretransposed.hpp index f5b4f4aa19..c5b410f0b8 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_pretransposed.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_pretransposed.hpp @@ -69,7 +69,7 @@ public: kern_type kernel = a64_sgemv_pretransposed; - sgemv_pretransposed(const CPUInfo *ci) { } + sgemv_pretransposed(const CPUInfo *ci) { UNUSED(ci); } }; } // namespace arm_gemm diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_trans.hpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_trans.hpp index cbaa0cfb1b..c904dc8e7a 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_trans.hpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_sgemv_trans.hpp @@ -49,7 +49,7 @@ public: kern_type kernel=a64_sgemv_trans; - sgemv_trans(const CPUInfo *ci) { } + sgemv_trans(const CPUInfo *ci) { UNUSED(ci); } }; } // namespace arm_gemm diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/a55.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/a55.cpp index c957d11608..e8ac2d7489 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/a55.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/a55.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_s8s32_dot_4x6_a55(const int8_t *A, int lda, const int8_t *B, int32_t *C, int ldc, int32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = (N / 4) - 1; const long ldab = lda * sizeof(int8_t); const long ldcb = ldc * sizeof(int32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/generic.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/generic.cpp index 05d8bd5ad1..64ab6f0fdc 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/generic.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x6/generic.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_s8s32_dot_4x6(const int8_t *A, int lda, const int8_t *B, int32_t *C, int ldc, int32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = (N / 4) - 1; const long ldab = lda * sizeof(int8_t); const long ldcb = ldc * sizeof(int32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/a55.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/a55.cpp index f050fff84a..4ed2bc823c 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/a55.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/a55.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_s8s32_dot_4x8_a55(const int8_t *A, int lda, const int8_t *B, int32_t *C, int ldc, int32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = (N / 4) - 1; const long ldab = lda * sizeof(int8_t); const long ldcb = ldc * sizeof(int32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/generic.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/generic.cpp index 1881cf57a8..1eb58e1cd6 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/generic.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_s8s32_dot_4x8/generic.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_s8s32_dot_4x8(const int8_t *A, int lda, const int8_t *B, int32_t *C, int ldc, int32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = (N / 4) - 1; const long ldab = lda * sizeof(int8_t); const long ldcb = ldc * sizeof(int32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/a55.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/a55.cpp index 88ea940fb7..8bf5debc37 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/a55.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/a55.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_u8u32_dot_4x6_a55(const uint8_t *A, int lda, const uint8_t *B, uint32_t *C, int ldc, uint32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = iceildiv(N, (int)4) - 1; const long ldab = lda * sizeof(uint8_t); const long ldcb = ldc * sizeof(uint32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/generic.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/generic.cpp index ec3ba4ad2a..1f279afd43 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/generic.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x6/generic.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_u8u32_dot_4x6(const uint8_t *A, int lda, const uint8_t *B, uint32_t *C, int ldc, uint32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = iceildiv(N, (int)4) - 1; const long ldab = lda * sizeof(uint8_t); const long ldcb = ldc * sizeof(uint32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/a55.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/a55.cpp index fdd928d567..ec29698f48 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/a55.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/a55.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_u8u32_dot_4x8_a55(const uint8_t *A, int lda, const uint8_t *B, uint32_t *C, int ldc, uint32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = iceildiv(N, (int)4) - 1; const long ldab = lda * sizeof(uint8_t); const long ldcb = ldc * sizeof(uint32_t); diff --git a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/generic.cpp b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/generic.cpp index 7cc8c285ca..46ca013270 100644 --- a/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/generic.cpp +++ b/src/core/NEON/kernels/arm_gemm/kernels/a64_smallK_hybrid_u8u32_dot_4x8/generic.cpp @@ -32,6 +32,7 @@ namespace arm_gemm { void a64_smallK_hybrid_u8u32_dot_4x8(const uint8_t *A, int lda, const uint8_t *B, uint32_t *C, int ldc, uint32_t beta, int M, int N, int K) { + UNUSED(beta); const long loops_count = iceildiv(N, (int)4) - 1; const long ldab = lda * sizeof(uint8_t); const long ldcb = ldc * sizeof(uint32_t); diff --git a/src/core/NEON/kernels/arm_gemm/merges/a64_merge_int32_12x8.hpp b/src/core/NEON/kernels/arm_gemm/merges/a64_merge_int32_12x8.hpp index ce7310d13d..410a0a1dc9 100644 --- a/src/core/NEON/kernels/arm_gemm/merges/a64_merge_int32_12x8.hpp +++ b/src/core/NEON/kernels/arm_gemm/merges/a64_merge_int32_12x8.hpp @@ -27,6 +27,7 @@ template<> inline void MergeResults<12, 8, false>(int32_t *out, const int32_t *in, const int ldout, const int y0, const int ymax, const int x0, const int xmax, const int32_t alpha, const int32_t beta) { + UNUSED(alpha); const int32_t *inptr = in; prefetch_6x(inptr); prefetch_6x(inptr + 96); diff --git a/src/core/NEON/kernels/arm_gemm/utils.hpp b/src/core/NEON/kernels/arm_gemm/utils.hpp index 4271997cdd..7dbbe91ba2 100644 --- a/src/core/NEON/kernels/arm_gemm/utils.hpp +++ b/src/core/NEON/kernels/arm_gemm/utils.hpp @@ -32,6 +32,8 @@ // Paranoid option for the above with assert // #define UNREACHABLE(why) assert(0 && why) +#define UNUSED(x) (void)(x) + template inline T iceildiv(const T a, const T b) { return (a + b - 1) / b; diff --git a/src/runtime/CL/CLHelpers.cpp b/src/runtime/CL/CLHelpers.cpp index 8bc7b8eb7b..edfc8ed2aa 100644 --- a/src/runtime/CL/CLHelpers.cpp +++ b/src/runtime/CL/CLHelpers.cpp @@ -32,6 +32,7 @@ namespace #if defined(ARM_COMPUTE_ASSERTS_ENABLED) void printf_callback(const char *buffer, unsigned int len, size_t complete, void *user_data) { + ARM_COMPUTE_UNUSED(complete, user_data); printf("%.*s", len, buffer); } #endif /* defined(ARM_COMPUTE_ASSERTS_ENABLED) */ diff --git a/src/runtime/CPP/functions/CPPBoxWithNonMaximaSuppressionLimit.cpp b/src/runtime/CPP/functions/CPPBoxWithNonMaximaSuppressionLimit.cpp index 782771bc50..d4be939c52 100644 --- a/src/runtime/CPP/functions/CPPBoxWithNonMaximaSuppressionLimit.cpp +++ b/src/runtime/CPP/functions/CPPBoxWithNonMaximaSuppressionLimit.cpp @@ -196,6 +196,7 @@ void CPPBoxWithNonMaximaSuppressionLimit::configure(const ITensor *scores_in, co Status validate(const ITensorInfo *scores_in, const ITensorInfo *boxes_in, const ITensorInfo *batch_splits_in, const ITensorInfo *scores_out, const ITensorInfo *boxes_out, const ITensorInfo *classes, const ITensorInfo *batch_splits_out, const ITensorInfo *keeps, const ITensorInfo *keeps_size, const BoxNMSLimitInfo info) { + ARM_COMPUTE_UNUSED(batch_splits_in, batch_splits_out, keeps, keeps_size, info); ARM_COMPUTE_RETURN_ERROR_ON_NULLPTR(scores_in, boxes_in, scores_out, boxes_out, classes); ARM_COMPUTE_RETURN_ERROR_ON_DATA_TYPE_CHANNEL_NOT_IN(scores_in, 1, DataType::QASYMM8, DataType::F16, DataType::F32); diff --git a/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp b/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp index 4ccda88279..8f26c620b5 100644 --- a/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp +++ b/src/runtime/GLES_COMPUTE/functions/GCFullyConnectedLayer.cpp @@ -39,8 +39,8 @@ void GCFullyConnectedLayerReshapeWeights::configure(const IGCTensor *input, IGCT } GCFullyConnectedLayer::GCFullyConnectedLayer(std::shared_ptr memory_manager, IWeightsManager *weights_manager) - : _memory_group(std::move(memory_manager)), _im2col_kernel(), _reshape_weights_kernel(), _mm_kernel(), _accumulate_biases_kernel(), _im2col_output(), _reshape_weights_output(), - _original_weights(nullptr), _are_weights_reshaped(true), _is_fc_after_conv(true), _accumulate_biases(false) + : _memory_group(std::move(memory_manager)), _weights_manager(std::move(weights_manager)), _im2col_kernel(), _reshape_weights_kernel(), _mm_kernel(), _accumulate_biases_kernel(), _im2col_output(), + _reshape_weights_output(), _original_weights(nullptr), _are_weights_reshaped(true), _is_fc_after_conv(true), _accumulate_biases(false) { } diff --git a/src/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.cpp b/src/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.cpp index 79e40a7181..1aeab5b9cb 100644 --- a/src/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.cpp +++ b/src/runtime/NEON/functions/assembly/NEGEMMInterleavedWrapper.cpp @@ -171,17 +171,21 @@ public: } void mark_as_reshaped(unsigned int index) override { + ARM_COMPUTE_UNUSED(index); } void wait_for_reshaping(unsigned int index) override { + ARM_COMPUTE_UNUSED(index); } void mark_as_unused(unsigned int index) override { + ARM_COMPUTE_UNUSED(index); } }; NEGEMMInterleavedWrapper::NEGEMMInterleavedWrapper(std::shared_ptr memory_manager, IWeightsManager *weights_manager) - : _memory_group(std::move(memory_manager)) + : _memory_group(std::move(memory_manager)), + _weights_manager(weights_manager) { } @@ -195,6 +199,7 @@ void NEGEMMInterleavedWrapper::run() void NEGEMMInterleavedWrapper::prepare() { + ARM_COMPUTE_UNUSED(_weights_manager); if(!_is_prepared) { if(_pretranspose_b) diff --git a/support/ToolchainSupport.h b/support/ToolchainSupport.h index 03bbff9aba..b4ed2fa9a4 100644 --- a/support/ToolchainSupport.h +++ b/support/ToolchainSupport.h @@ -71,6 +71,17 @@ inline int stoi(const std::string &str, std::size_t *pos = 0, NumericBase base = } ss << str; ss >> x; + + if(pos) + { + std::string s; + std::stringstream ss_p; + + ss_p << x; + ss_p >> s; + *pos = s.length(); + } + return x; } @@ -96,6 +107,17 @@ inline unsigned long stoul(const std::string &str, std::size_t *pos = 0, Numeric } stream << str; stream >> value; + + if(pos) + { + std::string s; + std::stringstream ss_p; + + ss_p << value; + ss_p >> s; + *pos = s.length(); + } + return value; } diff --git a/tests/AssetsLibrary.h b/tests/AssetsLibrary.h index 2ac13468de..a512dab36b 100644 --- a/tests/AssetsLibrary.h +++ b/tests/AssetsLibrary.h @@ -32,7 +32,10 @@ #include "arm_compute/core/Types.h" #include "arm_compute/core/Window.h" #include "arm_compute/core/utils/misc/Random.h" +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" #include "libnpy/npy.hpp" +#pragma GCC diagnostic pop #include "tests/RawTensor.h" #include "tests/TensorCache.h" #include "tests/Utils.h" @@ -467,7 +470,7 @@ void AssetsLibrary::fill_borders_with_garbage(T &&tensor, D &&distribution, std: window.set(1, Window::Dimension(-padding_size.top, tensor.shape()[1] + padding_size.bottom, 1)); } - std::mt19937 gen(_seed); + std::mt19937 gen(_seed + seed_offset); execute_window_loop(window, [&](const Coordinates & id) { diff --git a/tests/SConscript b/tests/SConscript index 3e462910ae..a062cacaa5 100644 --- a/tests/SConscript +++ b/tests/SConscript @@ -1,4 +1,4 @@ -# Copyright (c) 2017, 2018 ARM Limited. +# Copyright (c) 2017-2019 ARM Limited. # # SPDX-License-Identifier: MIT # @@ -58,12 +58,6 @@ Help(new_options.GenerateHelpText(test_env)) Import("arm_compute_test_framework") test_env.Append(LIBS = arm_compute_test_framework) -# Remove warnings from tests -warnings_to_remove = ['-Wno-deprecated-declarations'] -for warning in warnings_to_remove: - if warning in test_env['CXXFLAGS']: - test_env['CXXFLAGS'].remove(warning) - # Remove -Wnoexcept from tests if 'g++' in test_env['CXX'] and '-Wnoexcept' in test_env['CXXFLAGS']: test_env['CXXFLAGS'].remove("-Wnoexcept") diff --git a/tests/Utils.h b/tests/Utils.h index f26507d1a0..ea70fffe3a 100644 --- a/tests/Utils.h +++ b/tests/Utils.h @@ -805,6 +805,8 @@ inline void sync_tensor_if_necessary(TensorType &tensor) t.map(); t.unmap(); } +#else /* ARM_COMPUTE_GC */ + ARM_COMPUTE_UNUSED(tensor); #endif /* ARM_COMPUTE_GC */ } } // namespace test diff --git a/tests/benchmark/fixtures/ConvolutionFixture.h b/tests/benchmark/fixtures/ConvolutionFixture.h index 3f9c2a4f27..f355168ec1 100644 --- a/tests/benchmark/fixtures/ConvolutionFixture.h +++ b/tests/benchmark/fixtures/ConvolutionFixture.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -73,7 +73,7 @@ public: dst = create_tensor(src_shape, output_data_type); // Configure function - configure_target(convolution_func, src, dst, conv.data(), scale, border_mode, constant_border_value); + configure_target(src, dst, conv.data(), scale, border_mode, constant_border_value); // Allocate tensors src.allocator()->allocate(); @@ -96,7 +96,7 @@ public: } protected: - virtual void configure_target(Function &func, TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, + virtual void configure_target(TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, BorderMode border_mode, uint8_t border_value) = 0; protected: @@ -122,7 +122,7 @@ public: } protected: - void configure_target(Function &func, TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, + void configure_target(TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, BorderMode border_mode, uint8_t constant_border_value) { this->convolution_func.configure(&src, &dst, conv, scale, border_mode, constant_border_value); @@ -141,7 +141,7 @@ public: } protected: - void configure_target(Function &func, TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, + void configure_target(TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, BorderMode border_mode, uint8_t constant_border_value) { this->convolution_func.configure(&src, &dst, conv, this->_width, this->_height, scale, border_mode, constant_border_value); @@ -160,7 +160,7 @@ public: } protected: - void configure_target(Function &func, TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, + void configure_target(TensorType &src, TensorType &dst, const int16_t *conv, uint32_t scale, BorderMode border_mode, uint8_t constant_border_value) { this->convolution_func.configure(&src, &dst, conv, scale, border_mode, constant_border_value); diff --git a/tests/benchmark/fixtures/DepthwiseConvolutionLayerFixture.h b/tests/benchmark/fixtures/DepthwiseConvolutionLayerFixture.h index 33753bcd07..09da816fd4 100644 --- a/tests/benchmark/fixtures/DepthwiseConvolutionLayerFixture.h +++ b/tests/benchmark/fixtures/DepthwiseConvolutionLayerFixture.h @@ -47,6 +47,8 @@ public: template void setup(TensorShape src_shape, Size2D kernel_size, PadStrideInfo info, Size2D Dilation, DataType data_type, int batches) { + ARM_COMPUTE_UNUSED(Dilation); + // Get shapes TensorShape weights_shape(kernel_size.width, kernel_size.height); diff --git a/tests/benchmark/fixtures/ElementWiseUnaryFixture.h b/tests/benchmark/fixtures/ElementWiseUnaryFixture.h index e4f76a441f..a26f7c84c0 100644 --- a/tests/benchmark/fixtures/ElementWiseUnaryFixture.h +++ b/tests/benchmark/fixtures/ElementWiseUnaryFixture.h @@ -44,7 +44,7 @@ class ElementWiseUnaryBenchmarkFixture : public framework::Fixture { public: template - void setup(TensorShape input_shape, DataType input_data_type, ElementWiseUnary op) + void setup(TensorShape input_shape, DataType input_data_type) { src = create_tensor(input_shape, input_data_type); dst = create_tensor(input_shape, input_data_type); @@ -80,7 +80,7 @@ public: template void setup(const TensorShape &shape, DataType data_type) { - ElementWiseUnaryBenchmarkFixture::setup(shape, data_type, ElementWiseUnary::RSQRT); + ElementWiseUnaryBenchmarkFixture::setup(shape, data_type); } }; @@ -91,7 +91,7 @@ public: template void setup(const TensorShape &shape, DataType data_type) { - ElementWiseUnaryBenchmarkFixture::setup(shape, data_type, ElementWiseUnary::EXP); + ElementWiseUnaryBenchmarkFixture::setup(shape, data_type); } }; @@ -102,7 +102,7 @@ public: template void setup(const TensorShape &shape, DataType data_type) { - ElementWiseUnaryBenchmarkFixture::setup(shape, data_type, ElementWiseUnary::NEG); + ElementWiseUnaryBenchmarkFixture::setup(shape, data_type); } }; @@ -113,7 +113,7 @@ public: template void setup(const TensorShape &shape, DataType data_type) { - ElementWiseUnaryBenchmarkFixture::setup(shape, data_type, ElementWiseUnary::LOG); + ElementWiseUnaryBenchmarkFixture::setup(shape, data_type); } }; @@ -124,7 +124,7 @@ public: template void setup(const TensorShape &shape, DataType data_type) { - ElementWiseUnaryBenchmarkFixture::setup(shape, data_type, ElementWiseUnary::ABS); + ElementWiseUnaryBenchmarkFixture::setup(shape, data_type); } }; @@ -135,7 +135,7 @@ public: template void setup(const TensorShape &shape, DataType data_type) { - ElementWiseUnaryBenchmarkFixture::setup(shape, data_type, ElementWiseUnary::SIN); + ElementWiseUnaryBenchmarkFixture::setup(shape, data_type); } }; } // namespace validation diff --git a/tests/validate_examples/ValidateExample.h b/tests/validate_examples/ValidateExample.h index 2721508336..8076006afc 100644 --- a/tests/validate_examples/ValidateExample.h +++ b/tests/validate_examples/ValidateExample.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016-2018 ARM Limited. + * Copyright (c) 2016-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -50,6 +50,7 @@ public: */ virtual bool do_setup(int argc, char **argv) { + ARM_COMPUTE_UNUSED(argc, argv); return true; }; /** Run the example. */ @@ -67,6 +68,7 @@ public: */ virtual void print_parameters(test::framework::Printer &printer) { + ARM_COMPUTE_UNUSED(printer); } /** Default destructor */ diff --git a/tests/validate_examples/graph_validate_utils.h b/tests/validate_examples/graph_validate_utils.h index 13cc4fa683..7342ccce39 100644 --- a/tests/validate_examples/graph_validate_utils.h +++ b/tests/validate_examples/graph_validate_utils.h @@ -405,6 +405,7 @@ public: arm_compute::test::SimpleTensor &bias, ITensor &tensor) { + ARM_COMPUTE_UNUSED(tensor); //Create Input tensors src = arm_compute::test::SimpleTensor { TensorShape(_params.input.width, _params.input.height, _params.input.fm, _params.input.batch), _params.data_type, 1, _params.input.quant_info }; weights = arm_compute::test::SimpleTensor { TensorShape(_params.weights.width, _params.weights.height, _params.weights.fm), _params.data_type, 1, _params.weights.quant_info }; diff --git a/tests/validation/CL/GlobalPoolingLayer.cpp b/tests/validation/CL/GlobalPoolingLayer.cpp index 586be5e041..bd4fb68c77 100644 --- a/tests/validation/CL/GlobalPoolingLayer.cpp +++ b/tests/validation/CL/GlobalPoolingLayer.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 @@ TEST_SUITE(Float) TEST_SUITE(FP32) FIXTURE_DATA_TEST_CASE(RunGlobalPooling, CLGlobalPoolingLayerFixture, framework::DatasetMode::ALL, combine(combine(GlobalPoolingLayerDataset, framework::dataset::make("DataType", DataType::F32)), - framework::dataset::make("DataLayout", { DataLayout::NCHW, DataLayout::NHWC }))) + framework::dataset::make("DataLayout", { DataLayout::NCHW }))) { // Validate output validate(CLAccessor(_target), _reference, tolerance_f32); @@ -71,7 +71,7 @@ TEST_SUITE_END() TEST_SUITE(FP16) FIXTURE_DATA_TEST_CASE(RunGlobalPooling, CLGlobalPoolingLayerFixture, framework::DatasetMode::ALL, combine(combine(GlobalPoolingLayerDataset, framework::dataset::make("DataType", DataType::F16)), - framework::dataset::make("DataLayout", { DataLayout::NCHW, DataLayout::NHWC }))) + framework::dataset::make("DataLayout", { DataLayout::NCHW }))) { // Validate output validate(CLAccessor(_target), _reference, tolerance_f16); diff --git a/tests/validation/CL/Permute.cpp b/tests/validation/CL/Permute.cpp index e1908abe2f..8eb302adce 100644 --- a/tests/validation/CL/Permute.cpp +++ b/tests/validation/CL/Permute.cpp @@ -62,9 +62,8 @@ const auto PermuteVectors4 = framework::dataset::make("PermutationVector", PermutationVector(0U, 3U, 2U, 1U) }); const auto PermuteVectors = concat(PermuteVectors3, PermuteVectors4); -const auto PermuteInputLayout = framework::dataset::make("DataLayout", { DataLayout::NCHW, DataLayout::NHWC }); -const auto PermuteParametersSmall = concat(concat(datasets::Small2DShapes(), datasets::Small3DShapes()), datasets::Small4DShapes()) * PermuteInputLayout * PermuteVectors; -const auto PermuteParametersLarge = datasets::Large4DShapes() * PermuteInputLayout * PermuteVectors; +const auto PermuteParametersSmall = concat(concat(datasets::Small2DShapes(), datasets::Small3DShapes()), datasets::Small4DShapes()) * PermuteVectors; +const auto PermuteParametersLarge = datasets::Large4DShapes() * PermuteVectors; } // namespace TEST_SUITE(CL) TEST_SUITE(Permute) diff --git a/tests/validation/CPP/Permute.cpp b/tests/validation/CPP/Permute.cpp index 2ba10ec651..3d28df17b0 100644 --- a/tests/validation/CPP/Permute.cpp +++ b/tests/validation/CPP/Permute.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -51,9 +51,8 @@ const auto PermuteVectors = framework::dataset::make("PermutationVector", PermutationVector(1U, 0U, 2U), PermutationVector(2U, 1U, 0U), }); -const auto PermuteInputLayout = framework::dataset::make("DataLayout", { DataLayout::NCHW, DataLayout::NHWC }); -const auto PermuteParametersSmall = concat(concat(datasets::Small2DShapes(), datasets::Small3DShapes()), datasets::Small4DShapes()) * PermuteInputLayout * PermuteVectors; -const auto PermuteParametersLarge = datasets::Large4DShapes() * PermuteInputLayout * PermuteVectors; +const auto PermuteParametersSmall = concat(concat(datasets::Small2DShapes(), datasets::Small3DShapes()), datasets::Small4DShapes()) * PermuteVectors; +const auto PermuteParametersLarge = datasets::Large4DShapes() * PermuteVectors; } // namespace TEST_SUITE(CPP) diff --git a/tests/validation/NEON/Permute.cpp b/tests/validation/NEON/Permute.cpp index a5a81b7ac3..07578d3896 100644 --- a/tests/validation/NEON/Permute.cpp +++ b/tests/validation/NEON/Permute.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 ARM Limited. + * Copyright (c) 2018-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -62,9 +62,8 @@ const auto PermuteVectors4 = framework::dataset::make("PermutationVector", PermutationVector(0U, 3U, 2U, 1U) }); const auto PermuteVectors = concat(PermuteVectors3, PermuteVectors4); -const auto PermuteInputLayout = framework::dataset::make("DataLayout", { DataLayout::NCHW, DataLayout::NHWC }); -const auto PermuteParametersSmall = concat(concat(datasets::Small2DShapes(), datasets::Small3DShapes()), datasets::Small4DShapes()) * PermuteInputLayout * PermuteVectors; -const auto PermuteParametersLarge = datasets::Large4DShapes() * PermuteInputLayout * PermuteVectors; +const auto PermuteParametersSmall = concat(concat(datasets::Small2DShapes(), datasets::Small3DShapes()), datasets::Small4DShapes()) * PermuteVectors; +const auto PermuteParametersLarge = datasets::Large4DShapes() * PermuteVectors; } // namespace TEST_SUITE(NEON) TEST_SUITE(Permute) diff --git a/tests/validation/UNIT/LifetimeManager.cpp b/tests/validation/UNIT/LifetimeManager.cpp index d4c0a51346..44a52aa5e3 100644 --- a/tests/validation/UNIT/LifetimeManager.cpp +++ b/tests/validation/UNIT/LifetimeManager.cpp @@ -46,6 +46,7 @@ class MockMemoryManageable : public IMemoryManageable public: void associate_memory_group(IMemoryGroup *memory_group) override { + ARM_COMPUTE_UNUSED(memory_group); } }; /** Creates a lifetime of three objects where the two of them can share the same underlying within the given scope diff --git a/tests/validation/fixtures/DropoutLayerFixture.h b/tests/validation/fixtures/DropoutLayerFixture.h index 771de30917..be25802650 100644 --- a/tests/validation/fixtures/DropoutLayerFixture.h +++ b/tests/validation/fixtures/DropoutLayerFixture.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -93,6 +93,7 @@ protected: SimpleTensor compute_reference(const TensorShape &shape, DataType data_type) { + ARM_COMPUTE_UNUSED(shape, data_type); } TensorType _target{}; diff --git a/tests/validation/fixtures/FullyConnectedLayerFixture.h b/tests/validation/fixtures/FullyConnectedLayerFixture.h index 1e4a74445f..0449d80de8 100644 --- a/tests/validation/fixtures/FullyConnectedLayerFixture.h +++ b/tests/validation/fixtures/FullyConnectedLayerFixture.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -64,7 +64,7 @@ public: _quantization_info = quantization_info; _target = compute_target(input_shape, weights_shape, bias_shape, output_shape, transpose_weights, reshape_weights); - _reference = compute_reference(input_shape, weights_shape, bias_shape, output_shape, transpose_weights, reshape_weights); + _reference = compute_reference(input_shape, weights_shape, bias_shape, output_shape); } protected: @@ -181,8 +181,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &weights_shape, const TensorShape &bias_shape, const TensorShape &output_shape, bool transpose_weights, - bool reshape_weights) + SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &weights_shape, const TensorShape &bias_shape, const TensorShape &output_shape) { // Create reference SimpleTensor src{ input_shape, _data_type, 1, _quantization_info }; diff --git a/tests/validation/fixtures/FuseBatchNormalizationFixture.h b/tests/validation/fixtures/FuseBatchNormalizationFixture.h index 4a81fb0823..780b4a0fb3 100644 --- a/tests/validation/fixtures/FuseBatchNormalizationFixture.h +++ b/tests/validation/fixtures/FuseBatchNormalizationFixture.h @@ -51,7 +51,7 @@ public: void setup(TensorShape shape_w, DataType data_type, DataLayout data_layout, bool in_place, bool with_bias, bool with_gamma, bool with_beta) { std::tie(_target_w, _target_b) = compute_target(shape_w, data_type, data_layout, in_place, with_bias, with_gamma, with_beta); - std::tie(_reference_w, _reference_b) = compute_reference(shape_w, data_type, data_layout, with_bias, with_gamma, with_beta); + std::tie(_reference_w, _reference_b) = compute_reference(shape_w, data_type, with_bias, with_gamma, with_beta); } protected: @@ -138,7 +138,7 @@ protected: return std::make_pair(std::move(in_place_w ? w : w_fused), std::move(in_place_b ? b : b_fused)); } - std::pair, SimpleTensor> compute_reference(TensorShape shape_w, DataType data_type, DataLayout data_layout, bool with_bias, bool with_gamma, bool with_beta) + std::pair, SimpleTensor> compute_reference(TensorShape shape_w, DataType data_type, bool with_bias, bool with_gamma, bool with_beta) { const TensorShape shape_v(shape_w[dims_weights - 1]); diff --git a/tests/validation/fixtures/GEMMFixture.h b/tests/validation/fixtures/GEMMFixture.h index bf919c9b09..efe7567075 100644 --- a/tests/validation/fixtures/GEMMFixture.h +++ b/tests/validation/fixtures/GEMMFixture.h @@ -51,8 +51,9 @@ public: template void setup(TensorShape shape_a, TensorShape shape_b, TensorShape shape_c, TensorShape output_shape, float alpha, float beta, bool pretranspose, DataType data_type) { - _target = compute_target(shape_a, shape_b, shape_c, output_shape, alpha, beta, pretranspose, data_type); - _reference = compute_reference(shape_a, shape_b, shape_c, output_shape, alpha, beta, data_type); + ARM_COMPUTE_UNUSED(pretranspose); + _target = compute_target(shape_a, shape_b, shape_c, output_shape, alpha, beta, data_type); + _reference = compute_reference(shape_a, shape_b, output_shape, alpha, beta, data_type); } protected: @@ -74,7 +75,7 @@ protected: } TensorType compute_target(const TensorShape &shape_a, const TensorShape &shape_b, const TensorShape &shape_c, const TensorShape &output_shape, float alpha, float beta, - bool pretranspose, DataType data_type) + DataType data_type) { // Create tensors TensorType a = create_tensor(shape_a, data_type, 1); @@ -124,7 +125,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &shape_a, const TensorShape &shape_b, const TensorShape &shape_c, const TensorShape &output_shape, float alpha, float beta, + SimpleTensor compute_reference(const TensorShape &shape_a, const TensorShape &shape_b, const TensorShape &output_shape, float alpha, float beta, DataType data_type) { TensorShape shape_a_to_use = shape_a; @@ -183,7 +184,7 @@ public: broadcast_bias ? 1 : batch_size); _target = compute_target(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, broadcast_bias, fp16_mixed_precision, act_info, gpu_arch); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, broadcast_bias, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, broadcast_bias, act_info); } protected: @@ -244,7 +245,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -289,6 +290,8 @@ public: void setup(unsigned int m_w, unsigned int m_h, unsigned int n, unsigned int k, unsigned int batch_size, float alpha, float beta, bool broadcast_bias, bool fp16_mixed_precision, const ActivationLayerInfo &act_info, DataType data_type, GPUTarget gpu_arch) { + ARM_COMPUTE_UNUSED(broadcast_bias); + // In case of GEMM3D, m is the product between m_w and m_h const unsigned int m = m_w * m_h; @@ -298,7 +301,7 @@ public: const TensorShape bias_shape(n, 1, 1); _target = compute_target(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, m_h, fp16_mixed_precision, act_info, gpu_arch); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, m_h, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, m_h, act_info); } protected: @@ -355,7 +358,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, unsigned int m_h, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, unsigned int m_h, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -421,7 +424,7 @@ public: broadcast_bias ? 1 : batch_size); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, broadcast_bias, fp16_mixed_precision, act_info, gpu_arch); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, broadcast_bias, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, broadcast_bias, act_info); } protected: @@ -494,7 +497,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -539,6 +542,8 @@ public: void setup(unsigned int m_w, unsigned int m_h, unsigned int n, unsigned int k, unsigned int batch_size, float alpha, float beta, unsigned int v0, unsigned int h0, bool broadcast_bias, bool fp16_mixed_precision, const ActivationLayerInfo &act_info, DataType data_type, GPUTarget gpu_arch) { + ARM_COMPUTE_UNUSED(broadcast_bias); + GEMMLHSMatrixInfo lhs_info; lhs_info.m0 = 4; lhs_info.k0 = 4; @@ -562,7 +567,7 @@ public: const TensorShape bias_shape(n, 1, 1); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, m_h, fp16_mixed_precision, act_info, gpu_arch); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, m_h, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, m_h, act_info); } protected: @@ -631,7 +636,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, unsigned int m_h, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, unsigned int m_h, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -697,7 +702,7 @@ public: broadcast_bias ? 1 : batch_size); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, broadcast_bias, act_info); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, broadcast_bias, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, broadcast_bias, act_info); } protected: @@ -778,7 +783,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -854,7 +859,7 @@ public: const TensorShape bias_shape(n, 1, 1); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, m_h, act_info); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, m_h, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, m_h, act_info); } protected: @@ -931,7 +936,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, unsigned int m_h, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, unsigned int m_h, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -1001,7 +1006,7 @@ public: broadcast_bias ? 1 : batch_size); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, broadcast_bias, act_info); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, broadcast_bias, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, broadcast_bias, act_info); } protected: @@ -1075,7 +1080,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -1140,7 +1145,7 @@ public: const TensorShape bias_shape(n, 1, 1); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, m_h, act_info); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, m_h, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, m_h, act_info); } protected: @@ -1211,7 +1216,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, unsigned int m_h, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, unsigned int m_h, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -1271,7 +1276,7 @@ public: broadcast_bias ? 1 : batch_size); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, broadcast_bias, act_info); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, broadcast_bias, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, broadcast_bias, act_info); } protected: @@ -1337,7 +1342,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, bool broadcast_bias, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; @@ -1399,7 +1404,7 @@ public: const TensorShape bias_shape(n, 1, 1); _target = compute_target(lhs_shape, rhs_shape, bias_shape, lhs_info, rhs_info, data_type, alpha, beta, m_h, act_info); - _reference = compute_reference(lhs_shape, rhs_shape, bias_shape, data_type, alpha, beta, m_h, act_info); + _reference = compute_reference(lhs_shape, rhs_shape, data_type, alpha, beta, m_h, act_info); } protected: @@ -1463,7 +1468,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, const TensorShape &bias_shape, DataType data_type, float alpha, float beta, unsigned int m_h, + SimpleTensor compute_reference(const TensorShape &lhs_shape, const TensorShape &rhs_shape, DataType data_type, float alpha, float beta, unsigned int m_h, const ActivationLayerInfo &act_info) { TensorShape dst_shape = lhs_shape; diff --git a/tests/validation/fixtures/GEMMTranspose1xWFixture.h b/tests/validation/fixtures/GEMMTranspose1xWFixture.h index af2a3b278d..89d2238344 100644 --- a/tests/validation/fixtures/GEMMTranspose1xWFixture.h +++ b/tests/validation/fixtures/GEMMTranspose1xWFixture.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -54,7 +54,7 @@ public: const unsigned int transpose_w = 16 / data_size_from_type(data_type); const TensorShape shape_b(static_cast(y * transpose_w), static_cast(std::ceil(x / static_cast(transpose_w)))); _target = compute_target(shape_a, shape_b, data_type); - _reference = compute_reference(shape_a, shape_b, data_type); + _reference = compute_reference(shape_a, data_type); } protected: @@ -106,7 +106,7 @@ protected: return b; } - SimpleTensor compute_reference(const TensorShape &shape_a, const TensorShape &shape_b, DataType data_type) + SimpleTensor compute_reference(const TensorShape &shape_a, DataType data_type) { // Create reference SimpleTensor a{ shape_a, data_type, 1 }; diff --git a/tests/validation/fixtures/InstanceNormalizationLayerFixture.h b/tests/validation/fixtures/InstanceNormalizationLayerFixture.h index 175ef2fb90..5e230d4430 100644 --- a/tests/validation/fixtures/InstanceNormalizationLayerFixture.h +++ b/tests/validation/fixtures/InstanceNormalizationLayerFixture.h @@ -48,7 +48,7 @@ public: void setup(TensorShape shape, DataType data_type, DataLayout data_layout, bool in_place) { _target = compute_target(shape, data_type, data_layout, in_place); - _reference = compute_reference(shape, data_type, data_layout); + _reference = compute_reference(shape, data_type); } protected: @@ -118,7 +118,7 @@ protected: } } - SimpleTensor compute_reference(const TensorShape &shape, DataType data_type, DataLayout data_layout) + SimpleTensor compute_reference(const TensorShape &shape, DataType data_type) { std::mt19937 gen(library->seed()); std::uniform_real_distribution dist_gamma(1.f, 2.f); diff --git a/tests/validation/fixtures/PermuteFixture.h b/tests/validation/fixtures/PermuteFixture.h index 92d01a5654..76351734d5 100644 --- a/tests/validation/fixtures/PermuteFixture.h +++ b/tests/validation/fixtures/PermuteFixture.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -46,9 +46,9 @@ class PermuteValidationFixture : public framework::Fixture { public: template - void setup(TensorShape input_shape, DataLayout input_layout, PermutationVector perm, DataType data_type) + void setup(TensorShape input_shape, PermutationVector perm, DataType data_type) { - _target = compute_target(input_shape, input_layout, data_type, perm); + _target = compute_target(input_shape, data_type, perm); _reference = compute_reference(input_shape, data_type, perm); } @@ -59,7 +59,7 @@ protected: library->fill_tensor_uniform(tensor, 0); } - TensorType compute_target(const TensorShape &input_shape, DataLayout input_layout, DataType data_type, PermutationVector perm) + TensorType compute_target(const TensorShape &input_shape, DataType data_type, PermutationVector perm) { // Permute shapes TensorShape output_shape = input_shape; diff --git a/tests/validation/fixtures/PoolingLayerFixture.h b/tests/validation/fixtures/PoolingLayerFixture.h index cdc2cae584..18577edc66 100644 --- a/tests/validation/fixtures/PoolingLayerFixture.h +++ b/tests/validation/fixtures/PoolingLayerFixture.h @@ -182,7 +182,7 @@ public: template void setup(TensorShape shape, PoolingType pool_type, DataType data_type, DataLayout data_layout = DataLayout::NCHW) { - PoolingLayerValidationGenericFixture::setup(shape, PoolingLayerInfo(pool_type), data_type, DataLayout::NCHW); + PoolingLayerValidationGenericFixture::setup(shape, PoolingLayerInfo(pool_type), data_type, data_layout); } }; diff --git a/tests/validation/fixtures/UNIT/DynamicTensorFixture.h b/tests/validation/fixtures/UNIT/DynamicTensorFixture.h index b2600f13f0..08b90c5b52 100644 --- a/tests/validation/fixtures/UNIT/DynamicTensorFixture.h +++ b/tests/validation/fixtures/UNIT/DynamicTensorFixture.h @@ -104,6 +104,7 @@ public: } void configure(ITensorType *src, ITensorType *dst) { + ARM_COMPUTE_UNUSED(src, dst); } void run() { diff --git a/tests/validation/fixtures/WarpPerspectiveFixture.h b/tests/validation/fixtures/WarpPerspectiveFixture.h index 0eba97c47c..aa84946e94 100644 --- a/tests/validation/fixtures/WarpPerspectiveFixture.h +++ b/tests/validation/fixtures/WarpPerspectiveFixture.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -58,14 +58,12 @@ public: constant_border_value = distribution_u8(gen); } - const TensorShape vmask_shape(input_shape); - // Create the matrix std::array matrix = { { 0 } }; fill_warp_matrix<9>(matrix); - _target = compute_target(input_shape, vmask_shape, matrix, policy, border_mode, constant_border_value, data_type); - _reference = compute_reference(input_shape, vmask_shape, matrix, policy, border_mode, constant_border_value, data_type); + _target = compute_target(input_shape, matrix, policy, border_mode, constant_border_value, data_type); + _reference = compute_reference(input_shape, matrix, policy, border_mode, constant_border_value, data_type); } protected: @@ -75,7 +73,7 @@ protected: library->fill_tensor_uniform(tensor, 0); } - TensorType compute_target(const TensorShape &shape, const TensorShape &vmask_shape, const std::array &matrix, InterpolationPolicy policy, BorderMode border_mode, + TensorType compute_target(const TensorShape &shape, const std::array &matrix, InterpolationPolicy policy, BorderMode border_mode, uint8_t constant_border_value, DataType data_type) { @@ -106,7 +104,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &shape, const TensorShape &vmask_shape, const std::array &matrix, InterpolationPolicy policy, BorderMode border_mode, + SimpleTensor compute_reference(const TensorShape &shape, const std::array &matrix, InterpolationPolicy policy, BorderMode border_mode, uint8_t constant_border_value, DataType data_type) { diff --git a/tests/validation/fixtures/WinogradConvolutionLayerFixture.h b/tests/validation/fixtures/WinogradConvolutionLayerFixture.h index c0ba57a828..9c2df9ef4b 100644 --- a/tests/validation/fixtures/WinogradConvolutionLayerFixture.h +++ b/tests/validation/fixtures/WinogradConvolutionLayerFixture.h @@ -81,8 +81,6 @@ protected: default: { ARM_COMPUTE_ERROR("Not supported"); - library->fill_tensor_uniform(tensor, i); - break; } } } @@ -168,7 +166,7 @@ public: { ARM_COMPUTE_UNUSED(dilation); _target = compute_target(input_shape, weights_shape, bias_shape, output_shape, info, data_type, act_info, data_layout); - _reference = compute_reference(input_shape, weights_shape, bias_shape, output_shape, info, data_type, act_info); + _reference = compute_reference(input_shape, weights_shape, bias_shape, info, data_type, act_info); } protected: @@ -192,8 +190,6 @@ protected: default: { ARM_COMPUTE_ERROR("Not supported"); - library->fill_tensor_uniform(tensor, i); - break; } } } @@ -247,7 +243,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &weights_shape, const TensorShape &bias_shape, const TensorShape &output_shape, const PadStrideInfo &info, + SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &weights_shape, const TensorShape &bias_shape, const PadStrideInfo &info, DataType data_type, ActivationLayerInfo act_info) { // Create reference @@ -332,7 +328,7 @@ public: TensorShape output_shape = compute_winograd_input_transform_shape(TensorInfo(input_shape, 1, data_type), winograd_info); _target = compute_target(input_shape, output_shape, winograd_info, data_layout, data_type); - _reference = compute_reference(input_shape, output_shape, winograd_info, data_layout, data_type); + _reference = compute_reference(input_shape, output_shape, winograd_info, data_type); } protected: @@ -351,8 +347,6 @@ protected: default: { ARM_COMPUTE_ERROR("Not supported"); - library->fill_tensor_uniform(tensor, i); - break; } } } @@ -390,7 +384,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &output_shape, const WinogradInfo &winograd_info, DataLayout data_layout, DataType data_type) + SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &output_shape, const WinogradInfo &winograd_info, DataType data_type) { // Create reference SimpleTensor src{ input_shape, data_type, 1, QuantizationInfo() }; @@ -416,7 +410,7 @@ public: TensorShape output_shape = compute_winograd_filter_transform_shape(TensorInfo(input_shape, 1, data_type), winograd_info); _target = compute_target(input_shape, output_shape, winograd_info, data_layout, data_type); - _reference = compute_reference(input_shape, output_shape, winograd_info, data_layout, data_type); + _reference = compute_reference(input_shape, output_shape, winograd_info, data_type); } protected: @@ -435,8 +429,6 @@ protected: default: { ARM_COMPUTE_ERROR("Not supported"); - library->fill_tensor_uniform(tensor, i); - break; } } } @@ -474,7 +466,7 @@ protected: return dst; } - SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &output_shape, const WinogradInfo &winograd_info, DataLayout data_layout, DataType data_type) + SimpleTensor compute_reference(const TensorShape &input_shape, const TensorShape &output_shape, const WinogradInfo &winograd_info, DataType data_type) { // Create reference SimpleTensor src{ input_shape, data_type, 1, QuantizationInfo() }; @@ -516,8 +508,6 @@ protected: default: { ARM_COMPUTE_ERROR("Not supported"); - library->fill_tensor_uniform(tensor, i); - break; } } } diff --git a/tests/validation/reference/ColorConvert.cpp b/tests/validation/reference/ColorConvert.cpp index 9090319a86..a759594cfa 100644 --- a/tests/validation/reference/ColorConvert.cpp +++ b/tests/validation/reference/ColorConvert.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017-2018 ARM Limited. + * Copyright (c) 2017-2019 ARM Limited. * * SPDX-License-Identifier: MIT * @@ -170,7 +170,7 @@ std::vector> color_convert(const TensorShape &shape, const std:: { case Format::RGB888: case Format::RGBA8888: - colorconvert_helper::detail::colorconvert_iyuv_to_rgb(shape, tensor_planes, dst[0]); + colorconvert_helper::detail::colorconvert_iyuv_to_rgb(tensor_planes, dst[0]); break; default: ARM_COMPUTE_ERROR("Not Supported"); @@ -185,7 +185,7 @@ std::vector> color_convert(const TensorShape &shape, const std:: { case Format::RGB888: case Format::RGBA8888: - colorconvert_helper::detail::colorconvert_nv12_to_rgb(shape, src_format, tensor_planes, dst[0]); + colorconvert_helper::detail::colorconvert_nv12_to_rgb(src_format, tensor_planes, dst[0]); break; case Format::IYUV: colorconvert_helper::detail::colorconvert_nv_to_iyuv(tensor_planes, src_format, dst); diff --git a/tests/validation/reference/ColorConvertHelper.h b/tests/validation/reference/ColorConvertHelper.h index abd1f5d1fe..8dd961c0f4 100644 --- a/tests/validation/reference/ColorConvertHelper.h +++ b/tests/validation/reference/ColorConvertHelper.h @@ -306,7 +306,7 @@ inline void colorconvert_yuyv_to_rgb(const SimpleTensor src, const Format for } template -inline void colorconvert_iyuv_to_rgb(const TensorShape &shape, const std::vector> &tensor_planes, SimpleTensor &dst) +inline void colorconvert_iyuv_to_rgb(const std::vector> &tensor_planes, SimpleTensor &dst) { SimpleTensor yvec(TensorShape{ tensor_planes[0].shape().x() / 2, tensor_planes[0].shape().y() }, Format::U8); SimpleTensor uvec(TensorShape{ tensor_planes[0].shape().x() / 2, tensor_planes[0].shape().y() }, Format::U8); @@ -361,7 +361,7 @@ inline void colorconvert_iyuv_to_rgb(const TensorShape &shape, const std::vector } template -inline void colorconvert_nv12_to_rgb(const TensorShape &shape, const Format format, const std::vector> &tensor_planes, SimpleTensor &dst) +inline void colorconvert_nv12_to_rgb(const Format format, const std::vector> &tensor_planes, SimpleTensor &dst) { SimpleTensor yvec(TensorShape{ tensor_planes[0].shape().x() / 2, tensor_planes[0].shape().y() }, Format::U8); SimpleTensor uvec(TensorShape{ tensor_planes[0].shape().x() / 2, tensor_planes[0].shape().y() }, Format::U8); diff --git a/tests/validation/reference/ROIAlignLayer.cpp b/tests/validation/reference/ROIAlignLayer.cpp index 415b483bc0..c32dce72e1 100644 --- a/tests/validation/reference/ROIAlignLayer.cpp +++ b/tests/validation/reference/ROIAlignLayer.cpp @@ -132,6 +132,8 @@ SimpleTensor convert_rois_from_asymmetric(SimpleTensor rois) template SimpleTensor roi_align_layer(const SimpleTensor &src, const SimpleTensor &rois, const ROIPoolingLayerInfo &pool_info, const QuantizationInfo &output_qinfo) { + ARM_COMPUTE_UNUSED(output_qinfo); + const size_t values_per_roi = rois.shape()[0]; const size_t num_rois = rois.shape()[1]; DataType dst_data_type = src.data_type(); diff --git a/utils/GraphUtils.cpp b/utils/GraphUtils.cpp index 3646facab2..eaa7d79778 100644 --- a/utils/GraphUtils.cpp +++ b/utils/GraphUtils.cpp @@ -28,7 +28,11 @@ #include "arm_compute/core/Types.h" #include "arm_compute/graph/Logger.h" #include "arm_compute/runtime/SubTensor.h" + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" #include "utils/ImageLoader.h" +#pragma GCC diagnostic pop #include "utils/Utils.h" #include diff --git a/utils/GraphUtils.h b/utils/GraphUtils.h index 4c25dd2460..826ffff8c3 100644 --- a/utils/GraphUtils.h +++ b/utils/GraphUtils.h @@ -518,6 +518,7 @@ inline std::unique_ptr get_output_accessor(const arm_com bool is_validation = false, std::ostream &output_stream = std::cout) { + ARM_COMPUTE_UNUSED(is_validation); if(!graph_parameters.validation_file.empty()) { return arm_compute::support::cpp14::make_unique(graph_parameters.validation_file, @@ -551,6 +552,7 @@ inline std::unique_ptr get_detection_output_accessor(con bool is_validation = false, std::ostream &output_stream = std::cout) { + ARM_COMPUTE_UNUSED(is_validation); if(!graph_parameters.validation_file.empty()) { return arm_compute::support::cpp14::make_unique(graph_parameters.validation_file, diff --git a/utils/ImageLoader.h b/utils/ImageLoader.h index 5d3a84c59a..5a2825ebc3 100644 --- a/utils/ImageLoader.h +++ b/utils/ImageLoader.h @@ -203,7 +203,7 @@ public: unsigned char green = 0; unsigned char blue = 0; - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { red = _feeder->get(); green = _feeder->get(); @@ -225,7 +225,7 @@ public: Iterator out(&image, window); size_t row_size = _width * image.info()->element_size(); - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { _feeder->get_row(out.ptr(), row_size); }, @@ -302,7 +302,7 @@ public: unsigned char green = 0; unsigned char blue = 0; - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { red = _feeder->get(); green = _feeder->get(); @@ -352,6 +352,7 @@ protected: /** Validate metadata */ virtual void validate_info(const ITensorInfo *tensor_info) { + ARM_COMPUTE_UNUSED(tensor_info); } protected: @@ -418,7 +419,7 @@ protected: ARM_COMPUTE_ERROR_ON_MSG((end_position - current_position) < tensor_info->tensor_shape().total_size(), "Not enough data in file"); - ARM_COMPUTE_UNUSED(end_position); + ARM_COMPUTE_UNUSED(end_position, tensor_info); } private: diff --git a/utils/Utils.cpp b/utils/Utils.cpp index baf829b473..b0e162accd 100644 --- a/utils/Utils.cpp +++ b/utils/Utils.cpp @@ -34,6 +34,7 @@ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wswitch-default" +#pragma GCC diagnostic ignored "-Wunused-parameter" #define STB_IMAGE_IMPLEMENTATION #include "stb/stb_image.h" #pragma GCC diagnostic pop @@ -313,6 +314,8 @@ void restore_program_cache_from_file(const std::string &filename) } cache_file.close(); } +#else /* ARM_COMPUTE_CL */ + ARM_COMPUTE_UNUSED(filename); #endif /* ARM_COMPUTE_CL */ } @@ -347,6 +350,8 @@ void save_program_cache_to_file(const std::string &filename) ARM_COMPUTE_ERROR("Cannot open cache file"); } } +#else /* ARM_COMPUTE_CL */ + ARM_COMPUTE_UNUSED(filename); #endif /* ARM_COMPUTE_CL */ } } // namespace utils diff --git a/utils/Utils.h b/utils/Utils.h index 7fa74ab08b..d669730a3e 100644 --- a/utils/Utils.h +++ b/utils/Utils.h @@ -30,7 +30,10 @@ #include "arm_compute/core/Validate.h" #include "arm_compute/core/Window.h" #include "arm_compute/runtime/Tensor.h" +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wunused-parameter" #include "libnpy/npy.hpp" +#pragma GCC diagnostic pop #include "support/ToolchainSupport.h" #ifdef ARM_COMPUTE_CL @@ -79,6 +82,7 @@ public: */ virtual bool do_setup(int argc, char **argv) { + ARM_COMPUTE_UNUSED(argc, argv); return true; }; /** Run the example. */ @@ -570,7 +574,7 @@ void save_to_ppm(T &tensor, const std::string &ppm_filename) arm_compute::Iterator in(&tensor, window); - arm_compute::execute_window_loop(window, [&](const arm_compute::Coordinates & id) + arm_compute::execute_window_loop(window, [&](const arm_compute::Coordinates &) { const unsigned char value = *in.ptr(); @@ -588,7 +592,7 @@ void save_to_ppm(T &tensor, const std::string &ppm_filename) arm_compute::Iterator in(&tensor, window); - arm_compute::execute_window_loop(window, [&](const arm_compute::Coordinates & id) + arm_compute::execute_window_loop(window, [&](const arm_compute::Coordinates &) { fs.write(reinterpret_cast(in.ptr()), width * tensor.info()->element_size()); }, @@ -653,7 +657,7 @@ void save_to_npy(T &tensor, const std::string &npy_filename, bool fortran_order) arm_compute::Iterator in(&tensor, window); - arm_compute::execute_window_loop(window, [&](const arm_compute::Coordinates & id) + arm_compute::execute_window_loop(window, [&](const arm_compute::Coordinates &) { stream.write(reinterpret_cast(in.ptr()), sizeof(typestring_type)); }, @@ -705,7 +709,7 @@ void load_trained_data(T &tensor, const std::string &filename) arm_compute::Iterator in(&tensor, window); - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { fs.read(reinterpret_cast(in.ptr()), tensor.info()->tensor_shape()[0] * tensor.info()->element_size()); }, @@ -739,7 +743,7 @@ void fill_random_tensor(T &tensor, float lower_bound, float upper_bound) { std::uniform_real_distribution dist(lower_bound, upper_bound); - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { *reinterpret_cast(it.ptr()) = (half)dist(gen); }, @@ -751,7 +755,7 @@ void fill_random_tensor(T &tensor, float lower_bound, float upper_bound) { std::uniform_real_distribution dist(lower_bound, upper_bound); - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { *reinterpret_cast(it.ptr()) = dist(gen); }, @@ -803,7 +807,7 @@ int compare_tensor(ITensor &tensor1, ITensor &tensor2, T tolerance) Iterator itensor1(&tensor1, window); Iterator itensor2(&tensor2, window); - execute_window_loop(window, [&](const Coordinates & id) + execute_window_loop(window, [&](const Coordinates &) { if(std::abs(*reinterpret_cast(itensor1.ptr()) - *reinterpret_cast(itensor2.ptr())) > tolerance) { -- cgit v1.2.1