On Sun, Jan 27, 2013 at 06:45:29AM +0100, Daniel Kang wrote: > Module: libav > Branch: master > Commit: 71155d7b4157fee44c0d3d0fc1b660ebfb9ccf46 > > Author: Daniel Kang <[email protected]> > Committer: Luca Barbato <[email protected]> > Date: Sun Jan 27 03:45:43 2013 +0000 > > dsputil: x86: Convert mpeg4 qpel and dsputil avg to yasm > > Signed-off-by: Luca Barbato <[email protected]> > > --- > > libavcodec/x86/Makefile | 2 + > libavcodec/x86/dsputil_avg_template.c | 789 ++---------------------------- > libavcodec/x86/dsputil_mmx.c | 874 > ++++++++++++--------------------- > libavcodec/x86/hpeldsp.asm | 465 ++++++++++++++++++ > libavcodec/x86/mpeg4qpel.asm | 558 +++++++++++++++++++++ > libavcodec/x86/vc1dsp_mmx.c | 4 + > 6 files changed, 1380 insertions(+), 1312 deletions(-)
This breaks linking in many minimal configurations, c.f. Bugzilla #447. To reproduce, try --disable-everything --enable-decoder=aasc --disable-doc --disable-programs --enable-avprobe > --- /dev/null > +++ b/libavcodec/x86/hpeldsp.asm > @@ -0,0 +1,465 @@ > + > +; avg_pixels8(uint8_t *block, const uint8_t *pixels, int line_size, int h) > +%macro AVG_PIXELS8 0 > +cglobal avg_pixels8, 4,5 > + movsxdifnidn r2, edx > + lea r4, [r2+r2] > +.loop: > + mova m0, [r0] > + mova m1, [r0+r2] > + PAVGB m0, [r1] > + PAVGB m1, [r1+r2] > + mova [r0], m0 > + mova [r0+r2], m1 > + add r1, r4 > + add r0, r4 > + mova m0, [r0] > + mova m1, [r0+r2] > + PAVGB m0, [r1] > + PAVGB m1, [r1+r2] > + add r1, r4 > + mova [r0], m0 > + mova [r0+r2], m1 > + add r0, r4 > + sub r3d, 4 > + jne .loop > + REP_RET > +%endmacro > + > +INIT_MMX 3dnow > +AVG_PIXELS8 Only the 3dnow version of this function is assembled? Why? Diego _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
