From 0af22e17d67e6b81fee6d42a53ce6f40aad416e1 Mon Sep 17 00:00:00 2001 From: James Zern Date: Mon, 30 Oct 2017 20:14:56 -0700 Subject: [PATCH] dec_wasm,NEON mulhi: use local vector types in cast fixes the compile with ENABLE_NEON_BUILTIN_MULHI_INT16X8 without relying on arm_neon.h when using __builtin_neon_vqdmulhq_v; the typedefs are assumed to resolve to the same underlying type. Change-Id: I8840e90d894b5045e0742030cff5e800d7d56efc --- src/dsp/dec_wasm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dsp/dec_wasm.c b/src/dsp/dec_wasm.c index 0c2916e3..086f8848 100644 --- a/src/dsp/dec_wasm.c +++ b/src/dsp/dec_wasm.c @@ -119,7 +119,7 @@ static WEBP_INLINE int16x8 _mulhi_int16x8(const int16x8 in, const int32x4 k) { #elif defined(ENABLE_NEON_BUILTIN_MULHI_INT16X8) const int16x8 k_16bit = splat_int16(k[0]); const int16x8 one = (int16x8){1, 1, 1, 1, 1, 1, 1, 1}; - return ((int16x8)__builtin_neon_vqdmulhq_v((int8x16_t)in, (int8x16_t)k_16bit, + return ((int16x8)__builtin_neon_vqdmulhq_v((int8x16)in, (int8x16)k_16bit, 33)) >> one; #else const int16x8 zero = (int16x8){0, 0, 0, 0, 0, 0, 0, 0};