[FFmpeg-devel] [PATCH 02/12] mips/float_dsp: replace assembly with C implementations
James Cowgill
james410 at cowgill.org.uk
Thu Feb 26 14:55:48 CET 2015
On Thu, 2015-02-26 at 13:51 +0000, Derek Buitenhuis wrote:
> On 2/26/2015 1:42 PM, James Cowgill wrote:
> > The assembly versions have a few problems
> > - They only work with mips32r2 enabled
> > - They don't work on 64-bits
> > - They're massive and complex
> >
> > So replace them with C implementations which solve these problems and let GCC
> > magically optimize for different platforms. All the functions are manually
> > unrolled 4 times (like the assembly code). With the addition of a few restrict
> > keywords, the functions produce almost identical assembly to the original
> > versions when compiled with gcc -O3.
>
> Why have C implementations in the *MIPS* DSP code? That's silly.
Hmm maybe a little. I was just worried that if I moved all the loop
unrolling stuff into generic code it might go slower on other arches I
haven't tested.
James
More information about the ffmpeg-devel
mailing list