[MPlayer-dev-eng] Re: dsputil_mmx.c: -O2

Carl Eugen Hoyos cehoyos at ag.or.at
Tue Sep 19 03:36:54 CEST 2006


Uoti Urpala <uoti.urpala <at> pp1.inet.fi> writes:

> After changing all occurrences of "static void OPNAME" in dsputil_mmx.c
> and h264dsp_mmx.c to "static __attribute__((noinline)) void OPNAME"
> there is no significant difference between -O2, -O4 and -O4
> -fno-inline-functions (all with only dsputil_mmx recompiled without
> affecting other files).

Yes, but it's not the fastest solution, at least for me.

Compiled with -O2 (or -fno-inline-functions but *without* your patch), MPlayer
plays H264 ~1% faster than with the replace (38x in dsputil_mmx.c and 31x in
h264dsp_mmx.c - correct?).

With your patch applied, the resulting dsputil_mmx.o is much larger than without
your patch (both compiled with -fno-inline-functions).

Alternativ patch applied.

Carl Eugen

Index: libavcodec/Makefile
===================================================================
--- libavcodec/Makefile (Revision 6289)
+++ libavcodec/Makefile (Arbeitskopie)
@@ -295,6 +295,7 @@
        i386/motion_est_mmx.o \
        i386/simple_idct_mmx.o i386/fft_sse.o i386/vp3dsp_mmx.o \
        i386/vp3dsp_sse2.o i386/fft_3dn.o i386/fft_3dn2.o i386/snowdsp_mmx.o
+i386/dsputil_mmx.o: CFLAGS+= -fno-inline-functions
 ifeq ($(CONFIG_GPL),yes)
 OBJS += i386/idct_mmx.o i386/idct_mmx_xvid.o
 endif





More information about the MPlayer-dev-eng mailing list