Fix a bug in vpx_hadamard_32x32_neon()
authorWan-Teh Chang <wtc@google.com>
Mon, 26 Jun 2023 21:57:53 +0000 (14:57 -0700)
committerWan-Teh Chang <wtc@google.com>
Mon, 26 Jun 2023 22:48:03 +0000 (15:48 -0700)
commit19f3a754d62dcd21e400a3c715f2ed4235d1c4ec
tree613aab75d0b1a2ce69aa2b2f2ce1b52bc03833fd
parent14e52008edbf2e91386423fdd53310fe49654991
Fix a bug in vpx_hadamard_32x32_neon()

A right shift by 2 is equivalent to two halving operations if there is
no no addition or subtraction between the two halving operations.

Note: Since vhaddq_s16() and vhsubq_s16() have 17-bit intermediate
precision, the Neon code doesn't need to go to int32_t as was done in
https://chromium-review.googlesource.com/c/webm/libvpx/+/4604169.

Change-Id: Ibe0691cde0fd3b94ee7c497845ba459d30d503b0
vpx_dsp/arm/hadamard_neon.c