aboutsummaryrefslogtreecommitdiff
path: root/arm_compute/core/NEON/kernels/convolution
diff options
context:
space:
mode:
authorMichalis Spyrou <michalis.spyrou@arm.com>2019-12-12 16:16:09 +0000
committerMichalis Spyrou <michalis.spyrou@arm.com>2019-12-19 16:58:40 +0000
commite7be8a072967f9ae547468a7625e11477ea32221 (patch)
tree1ea27ef9ac9d4896decfac4e5431e80ec84e3885 /arm_compute/core/NEON/kernels/convolution
parent62bdd8c4d605d75214ac3ca674cd647911ea9bbc (diff)
downloadComputeLibrary-e7be8a072967f9ae547468a7625e11477ea32221.tar.gz
COMPMID-2980 (Nightly) armv7a build failures
Change-Id: I8c2a20fc345694d1ad6e0fe63e4f22fb73e6c1df Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com> Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-on: https://review.mlplatform.org/c/2463 Tested-by: Arm Jenkins <bsgcomp@arm.com>
Diffstat (limited to 'arm_compute/core/NEON/kernels/convolution')
-rw-r--r--arm_compute/core/NEON/kernels/convolution/depthwise/depthwise_quantized.hpp13
1 files changed, 0 insertions, 13 deletions
diff --git a/arm_compute/core/NEON/kernels/convolution/depthwise/depthwise_quantized.hpp b/arm_compute/core/NEON/kernels/convolution/depthwise/depthwise_quantized.hpp
index ef3adc4c0c..37c1f1bc84 100644
--- a/arm_compute/core/NEON/kernels/convolution/depthwise/depthwise_quantized.hpp
+++ b/arm_compute/core/NEON/kernels/convolution/depthwise/depthwise_quantized.hpp
@@ -31,31 +31,21 @@
using namespace neon_convolution_kernels;
using namespace qasymm8;
-template <typename T, typename U = int32_t>
-inline T saturating_doubling_high_mul(const T&, const U&);
-
-template <>
inline int32x4_t saturating_doubling_high_mul(const int32x4_t& a, const int32x4_t& b)
{
return vqrdmulhq_s32(a, b);
}
-template <>
inline int32x4_t saturating_doubling_high_mul(const int32x4_t& a, const int32_t& b)
{
return vqrdmulhq_n_s32(a, b);
}
-template <>
inline int32_t saturating_doubling_high_mul(const int32_t& a, const int32_t& b)
{
return vget_lane_s32(vqrdmulh_n_s32(vdup_n_s32(a), b), 0);
}
-template <typename T, typename U = int32_t>
-inline T rounding_divide_by_exp2(const T& x, const U exponent);
-
-template <>
inline int32x4_t rounding_divide_by_exp2(const int32x4_t& x, const int32x4_t shift)
{
const int32x4_t fixup = vshrq_n_s32(vandq_s32(x, shift), 31);
@@ -63,7 +53,6 @@ inline int32x4_t rounding_divide_by_exp2(const int32x4_t& x, const int32x4_t shi
return vrshlq_s32(fixed, shift);
}
-template <>
inline int32x4_t rounding_divide_by_exp2(const int32x4_t& x, const int exponent)
{
const int32x4_t shift = vdupq_n_s32(-exponent);
@@ -72,7 +61,6 @@ inline int32x4_t rounding_divide_by_exp2(const int32x4_t& x, const int exponent)
return vrshlq_s32(fixed, shift);
}
-template <>
inline int32x2_t rounding_divide_by_exp2(const int32x2_t& x, const int exponent)
{
const int32x2_t shift = vdup_n_s32(-exponent);
@@ -81,7 +69,6 @@ inline int32x2_t rounding_divide_by_exp2(const int32x2_t& x, const int exponent)
return vrshl_s32(fixed, shift);
}
-template <>
inline int32_t rounding_divide_by_exp2(const int32_t& x, const int exponent)
{
const int32x2_t xs = vdup_n_s32(x);