On Thu, 4 Aug 2011, Ronald S. Bultje wrote:
>
>>> +%if %2 == 15
>>> + � �packssdw � � �m0, m0
>>> + � �movh � [r1+r2*2], m0
>>> +%else ; %2 == 19
>>> +%if mmsize == 8
>>> + � �PMAXSD_MMX � �m0, m2, m4
>>> +%elifidn %4, sse4
>>> + � �pmaxsd � � � �m0, m2
>>> +%else ; sse2/ssse3
>>> + � �cvtdq2ps � � �m0, m0
>>> + � �maxps � � � � m0, m2
>>> + � �cvtps2dq � � �m0, m0
>>> +%endif ; mmx/sse2/ssse3/sse4
>>> + � �movu � [r1+r2*4], m0
>>> +%endif ; %2 == 15/19
>>
>> You fixed this to CLIPD in response to my previous comments, and then
>> reverted it?
>
> The C code doesn't clip, it only restricts the upper bound. As long as
> it fits in -(1<<19) to +(1<<19)-1 or -(1<<15) to +(1<<15)-1 (which
> happens to be int16_t/SHORT_MIN to SHORT_MAX), it's OK. Thus, clipping
> to 0 made it incompatible to the C code.

Then you meant min, not max.
Also, code duplication.

--Loren Merritt
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to