[Ffmpeg-devel] Re: [Ffmpeg-cvslog] r5899 - in trunk/libavcodec: Makefile ppc/dsputil_ppc.c ppc/vc1dsp_altivec.c
Guillaume POIRIER
poirierg
Sun Oct 8 19:37:42 CEST 2006
Hi,
On 8/3/06, kostya <subversion at mplayerhq.hu> wrote:
> Author: kostya
> Date: Thu Aug 3 07:02:31 2006
> New Revision: 5899
>
> Added:
> trunk/libavcodec/ppc/vc1dsp_altivec.c
> Modified:
> trunk/libavcodec/Makefile
> trunk/libavcodec/ppc/dsputil_ppc.c
>
> Log:
> Some AltiVec optimizations for VC-1
[..]
==============================================================================
> --- (empty file)
> +++ trunk/libavcodec/ppc/vc1dsp_altivec.c Thu Aug 3 07:02:31 2006
[..]
> +// Transpose 8x8 matrix of 16-bit elements. Borrowed from mpegvideo_altivec.c
> +#define TRANSPOSE8(a,b,c,d,e,f,g,h) \
> +do { \
> + vector signed short A1, B1, C1, D1, E1, F1, G1, H1; \
> + vector signed short A2, B2, C2, D2, E2, F2, G2, H2; \
> + \
> + A1 = vec_mergeh (a, e); \
> + B1 = vec_mergel (a, e); \
> + C1 = vec_mergeh (b, f); \
> + D1 = vec_mergel (b, f); \
> + E1 = vec_mergeh (c, g); \
> + F1 = vec_mergel (c, g); \
> + G1 = vec_mergeh (d, h); \
> + H1 = vec_mergel (d, h); \
> + \
> + A2 = vec_mergeh (A1, E1); \
> + B2 = vec_mergel (A1, E1); \
> + C2 = vec_mergeh (B1, F1); \
> + D2 = vec_mergel (B1, F1); \
> + E2 = vec_mergeh (C1, G1); \
> + F2 = vec_mergel (C1, G1); \
> + G2 = vec_mergeh (D1, H1); \
> + H2 = vec_mergel (D1, H1); \
> + \
> + a = vec_mergeh (A2, E2); \
> + b = vec_mergel (A2, E2); \
> + c = vec_mergeh (B2, F2); \
> + d = vec_mergel (B2, F2); \
> + e = vec_mergeh (C2, G2); \
> + f = vec_mergel (C2, G2); \
> + g = vec_mergeh (D2, H2); \
> + h = vec_mergel (D2, H2); \
> +} while (0)
Is there a reason why this macro has been duplicated here?
I have implemented a IDCT8 routine for H264 decoding that uses
TRANSPOSE8, and I really don't think it would be wise to duplicate it
yet another time there.
Would someone mind if I was moving TRANSPOSE8 to dsputil_altivec.h?
Sorry if I don't have a patch to show, I forgot to put it on my
usbstick before going to the cyber-caf? ;-)
Guillaume
--
With DADVSI (http://en.wikipedia.org/wiki/DADVSI), France finally has
a lead on USA on selling out individuals right to corporations!
Vive la France!
More information about the ffmpeg-devel
mailing list