fix chroma mc2 bug, this is based on a patch by (Oleg Metelitsa oleg hitron co kr)

and does slow the mc2 chroma put down, avg interrestingly seems unaffected speedwise on duron
this of course should be rather done in a way which doesnt slow it down but its better a few %
slower but correct then incorrect

Originally committed as revision 8093 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Michael Niedermayer 2007-02-23 14:29:13 +00:00
parent 89daa6b8b6
commit 61240ae556

View File

@ -293,11 +293,14 @@ static void H264_CHROMA_MC2_TMPL(uint8_t *dst/*align 2*/, uint8_t *src/*align 1*
/* writes garbage to the right of dst. /* writes garbage to the right of dst.
* ok because partitions are processed from left to right. */ * ok because partitions are processed from left to right. */
H264_CHROMA_OP4((%0), %%mm1, %%mm3) H264_CHROMA_OP4((%0), %%mm1, %%mm3)
"movd %%mm1, (%0)\n\t" "movd %%mm1, %%esi\n\t"
"movw %%si, (%0)\n\t"
"add %4, %0\n\t" "add %4, %0\n\t"
"sub $1, %2\n\t" "sub $1, %2\n\t"
"jnz 1b\n\t" "jnz 1b\n\t"
: "+r" (dst), "+r"(src), "+r"(h) : "m" (ff_pw_32), "r"(stride)); : "+r" (dst), "+r"(src), "+r"(h)
: "m" (ff_pw_32), "r"(stride)
: "%esi");
} }
#endif #endif