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
This commit is contained in:
James Zern 2017-10-30 20:14:56 -07:00
parent 08af967025
commit 0af22e17d6

View File

@ -119,7 +119,7 @@ static WEBP_INLINE int16x8 _mulhi_int16x8(const int16x8 in, const int32x4 k) {
#elif defined(ENABLE_NEON_BUILTIN_MULHI_INT16X8) #elif defined(ENABLE_NEON_BUILTIN_MULHI_INT16X8)
const int16x8 k_16bit = splat_int16(k[0]); const int16x8 k_16bit = splat_int16(k[0]);
const int16x8 one = (int16x8){1, 1, 1, 1, 1, 1, 1, 1}; 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; 33)) >> one;
#else #else
const int16x8 zero = (int16x8){0, 0, 0, 0, 0, 0, 0, 0}; const int16x8 zero = (int16x8){0, 0, 0, 0, 0, 0, 0, 0};