[MPlayer-dev-eng] Shall we set HAVE_FAST_CMOV in mplayer's configure?

Zuxy Meng zuxy.meng at gmail.com
Tue Jan 30 13:23:47 CET 2007


Hi,

2007/1/30, Guillaume POIRIER <poirierg at gmail.com>:
> Hi,
>
> On 1/30/07, Zuxy Meng <zuxy.meng at gmail.com> wrote:
> > Hi,
> >
> > 2007/1/30, Guillaume POIRIER <poirierg at gmail.com>:
> > > Hi,
> > >
> > > On 1/30/07, Zuxy Meng <zuxy.meng at gmail.com> wrote:
> > > > Hi,
> > > >
> > > > Seems that libavcodec/cabac.h uses this flag to switch among asm routines.
> > >
> > > Yep, that would be a nice thing to have.
> > >
> > > It's quite simple, HAVE_FAST_CMOV should be set whenever HAVE_CMOV is
> > > set and target CPU isn't a Netburst-based CPU.
> >
> > Should Netburst CPUs use branchless or branchy asm?
>
> The benches I ran when this code was introduced telles me that branchy
> ASM is the one that performs best on Netburst-based CPU.

So why HAVE_FAST_CMOV? We can just define something like HAVE_TRACE_CACHE and

#ifdef HAVE_TRACE_CACHE
use branchy asm (for P4s)
#elif defined(HAVE_CMOV)
use branchless cmov asm (for P6s and Athlons)
#else
use branchless setcc asm (for P5s and K6s)
endif

-- 
Zuxy
Beauty is truth,
While truth is beauty.
PGP KeyID: E8555ED6



More information about the MPlayer-dev-eng mailing list