Hi, On Sat, Jan 28, 2012 at 5:20 AM, Jason Garrett-Glaser <[email protected]> wrote: > On Fri, Jan 27, 2012 at 7:29 AM, Ronald S. Bultje <[email protected]> wrote: >> --- >> libavcodec/x86/Makefile | 1 + >> libavcodec/x86/pngdsp-init.c | 114 ++++------------------------------ >> libavcodec/x86/pngdsp.asm | 142 >> ++++++++++++++++++++++++++++++++++++++++++ >> 3 files changed, 155 insertions(+), 102 deletions(-) >> create mode 100644 libavcodec/x86/pngdsp.asm > > There's a lot of mova in that second function, maybe some AVX?
Good point; I've been asked to split new functionality and moving into separate patches, so I'll add AVX in a separate patch also (probably the one that adds SSE2). (I'm also wondering to assign function pointers based on the bpp value, so it uses straight C for bpp=1, MMX2/SSSE3/AVX on mmx regs for bpp up to 4, and SSE2/SSSE3/AVX on xmm registers for bpp>4 (e.g. RGB48). However, that adds a lot of code for a relatively obscure use case (let's be honest, 99% of PNG images are RGB24/32), so I wasn't quite sure about that yet.) Ronald _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
