[Ffmpeg-cvslog] CVS: ffmpeg/libavcodec/ppc dsputil_h264_template_altivec.c, 1.3, 1.4

Luca Barbato lu_zero
Wed Feb 22 11:50:42 CET 2006

Michael Niedermayer wrote:

> hmm, this needs to be benchmarked (on a gcc which didnt misscompile it of
> course) as it adds several instructions btw, has our ppc/alitvec maintainter
> agreed to this?

There aren't miscompile. Functiontype(cast) isn't supported on gcc-fsf
since is a C++ism, so you have/should use a array cast, the problem is
that functiontype casts of single items are equal as load of vector with
all the element initialized with the item, array cast will produce a
load of the single item in the first vector place and the rest zeroed.

I fixed the issue using inline produced costants since memory access is
something you must avoid on altivec code as it costs lots more than
other instructions, it should be faster even if they const are produced
using 3 immediate instructions.

( there is a huge table of consts on
http://www.informatik.uni-bremen.de/~hobold/AltiVec.html )



Luca Barbato

Gentoo/linux Developer		Gentoo/PPC Operational Leader

More information about the ffmpeg-cvslog mailing list