Fix C and x86 inverse ADST clipping
Fixes #324 (closed). The rest of the x86 iadst asm uses pmulhrsw
with a negative constant to combine negation and downshifting, and thus shouldn't run into any issues dealing with intermediate +32768
values without having to use more than 16-bit precision.
The Neon asm should be fine since it uses saturated 16-bit negation instructions which ends up being equivalent to "infinite precision" due to the rounding in the downshifting : (satsw(-(-0x8000)) + 1) >> 1 == (0x7fff + 1) >> 1 == 0x4000
.
Edited by Ronald S. Bultje