On Fri, Jan 27, 2012 at 04:56:24PM +0000, Måns Rullgård wrote:
> Diego Biurrun <[email protected]> writes:
> > On Fri, Jan 27, 2012 at 07:54:36AM +0800, Ronald S. Bultje wrote:
> >> Also convert to yasm, add a loop to add_png_paeth_pred() to handle
> >> the case where bpp>4 (e.g. RGB48), and add a SSE2 version for
> >> add_bytes_l2().
> >
> >> --- /dev/null
> >> +++ b/libavcodec/pngdsp.c
> >> @@ -0,0 +1,50 @@
> >> +
> >> +    if (HAVE_MMX)
> >> +        ff_pngdsp_x86_init(dsp);
> >
> > The arch-independent code should not have to care about x86 implementation
> > details like MMX, YASM or whatever, so just ARCH_X86 should be enough.
> > That said, we are not currently consistent about this.  See also my remark
> > on the x86 build part below.
> >
> > And yes, I have made a mental remark to look into this.
> 
> Almost all the x86 init functions use if(HAVE_MMX).  I looked into it
> once, and changing it to ARCH_X86 got rather messy.

Unlike ARM there is not always an init function available that is compiled
unconditionally, but AFAICT there is nothing more to it.  I mean all that
should be necessary is writing x86-specific init functions for png and all
the others that get compiled unconditionally and themselves contain all
necessary and appropriate #ifdefs.  Then the arch-independent C code would
call those init functions under an ARCH_X86 check.

Am I overlooking something?

Diego
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to