From b230a1f9bc53bf6b3bd74789e0085ff48336f348 Mon Sep 17 00:00:00 2001 From: Omar Al Khatib Date: Tue, 1 Nov 2022 17:01:24 +0000 Subject: Fixed Arm NN unit test failure caused by quantised multiplication patch. Resolves : [COMPMID-5698] Signed-off-by: Omar Al Khatib Change-Id: I21ce976473e0e8807c14989e98e68aca69c7f1f3 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/8603 Benchmark: Arm Jenkins Tested-by: Arm Jenkins Reviewed-by: Gunes Bayir Comments-Addressed: Arm Jenkins --- src/core/NEON/wrapper/intrinsics/shr.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'src/core/NEON/wrapper/intrinsics') diff --git a/src/core/NEON/wrapper/intrinsics/shr.h b/src/core/NEON/wrapper/intrinsics/shr.h index e41e9b8b31..73ca9c56c6 100644 --- a/src/core/NEON/wrapper/intrinsics/shr.h +++ b/src/core/NEON/wrapper/intrinsics/shr.h @@ -107,6 +107,19 @@ VSHRQ_IMPL(uint32x4_t, vshrq_n, u32) VSHRQ_IMPL(int32x4_t, vshrq_n, s32) #undef VSHRQ_IMPL +#ifdef __aarch64__ +#define VSHRQ_SCALAR_IMPL(vtype, prefix, postfix) \ + template \ + inline vtype vshrq_n(const vtype &a) \ + { \ + return prefix##_##postfix(a, b); \ + } +VSHRQ_SCALAR_IMPL(uint32_t, vshrd_n, u64) +VSHRQ_SCALAR_IMPL(int32_t, vshrd_n, s64) + +#undef VSHRQ_SCALAR_IMPL +#endif // __aarch64__ + #ifdef __aarch64__ #define VQRSHRN_EX_SCALAR_IMPL(half_vtype, vtype, prefix_signed, prefix_unsigned, postfix) \ template \ @@ -115,7 +128,7 @@ VSHRQ_IMPL(int32x4_t, vshrq_n, s32) { \ return prefix_signed##_##postfix(a, b); \ } \ - \ + \ template \ inline typename std::enable_if::value && !std::is_signed::value, u##half_vtype>::type \ vqrshrn_ex(const vtype &a) \ -- cgit v1.2.1