[Ffmpeg-cvslog] r6586 - in trunk/libavcodec: cabac.c cabac.h h264.c
Michael Niedermayer
michaelni
Mon Oct 9 01:19:15 CEST 2006
Hi
On Mon, Oct 09, 2006 at 12:32:50AM +0300, Uoti Urpala wrote:
> On Sun, 2006-10-08 at 13:24 +0200, michael wrote:
> > +#ifdef ARCH_X86
> > + //P3:627
> > +asm(
> > + "addb $2, %b0 \n\t"
> > + " js 1f \n\t"
> > + "movb %b0, %1 \n\t"
> > + "1: \n\t"
> > + : "+q"(s), "=m"(*state)
> > +);
> > +#else
> > + *state= c->mps_state[s]; //P3:655
> > +/* if(s<126) //P3:657
> > + *state= s+2;*/
> > + s+=2; //P3:631
> > + if(s<128)
> > + *state= s;
> > +#endif
>
> On Athlon the C version "*state= c->mps_state[s];" (without the other
> redundant C there) is faster than the asm. The difference is small,
> around 0.3%, but the times do seem consistent.
with START/STOP_TIMER? without it such small differences are meaningless
IMO, they could be caused by arrays or functions ending up at slightly
more favorable addresses or such aka systematic error
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is
More information about the ffmpeg-cvslog
mailing list