[MPlayer-dev-eng] [PATCH] SSE2 optimizations for libmpeg2

Alexander Strange astrange at ithinksw.com
Thu Apr 3 01:18:39 CEST 2008


On Apr 2, 2008, at 7:15 PM, Diego Biurrun wrote:
> On Wed, Apr 02, 2008 at 05:39:57AM -0400, Alexander Strange wrote:
>>
>> On Apr 1, 2008, at 2:27 PM, Diego Biurrun wrote:
>>> On Tue, Mar 11, 2008 at 11:34:44AM +0800, Zuxy Meng wrote:
>>>>
>>>> 2008/2/19, Diego Biurrun <diego at biurrun.de>:
>>>>>
>>>>> And here is a version without the (apparently ineffectual) motion
>>>>> compensation bits.
>>>>
>>>> Are u going to apply this?
>>>
>>> I'm not at all sure. According to Christophe Massiot on libmpeg2-
>>> devel the output of this IDCT differs from the MMXEXT one even  
>>> though
>>> they use the same algorithm. Thus I'm not sure if it will ever be
>>> acceptable upstream.
>>>
>>> There must still be a bug lurking in there.  Maybe you can find it?
>>
>> This should be rounder_sse2 (0):
>> static const int32_t rounder4_128[] ATTR_ALIGN(16) = rounder (0);
>>
>> Attached patch fixes that and builds with the last change to  
>> libmpeg2.
>
> You also make the following changes respective to the patch I posted:
>
> diff -u libmpeg2/idct_mmx.c libmpeg2/idct_mmx.c
> --- libmpeg2/idct_mmx.c	(working copy)
> +++ libmpeg2/idct_mmx.c	(working copy)
> @@ -869,7 +869,7 @@
>
> -static inline void idct (int16_t * const block)
> +void idct (int16_t * const block)
> {
> @@ -902,7 +902,7 @@
>
> -static inline void sse2_idct (int16_t * const block)
> +void sse2_idct (int16_t * const block)
>
> Is this on purpose?
>
> Diego

That's accidentally left over from testing it. I only meant to change  
rounder(0) and the idct init function.




More information about the MPlayer-dev-eng mailing list