[Ffmpeg-cvslog] r6586 - in trunk/libavcodec: cabac.c cabac.h h264.c

Uoti Urpala uoti.urpala
Sun Oct 8 23:32:50 CEST 2006


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.





More information about the ffmpeg-cvslog mailing list