View Single Post
Old 9th March 2005, 23:18   #20  |  Link
akupenguin
x264 developer
 
akupenguin's Avatar
 
Join Date: Sep 2004
Posts: 2,392
There are two ways to support all these cpu extensions:
There's the hand-optimized dsp functions (e.g. motion compensation, DCT) that come in several versions. Usually all versions are included in the executable, and it decides at runtime which to use. These will never cause compatibility problems. Currently there are no SSE or 3DNOW functions used in x264 (they're just known by the cpu recognition code), only MMX and Altivec.
Then there's compiler flags, which tell gcc that it can use the extra opcodes for the C part of the program. This is where cpu-specific builds come in. Since most of the parallelizable computations are in said dsp functions, cpu extensions don't make so much difference here.
akupenguin is offline   Reply With Quote