diff --git a/libavcodec/libpostproc/postprocess_template.c b/libavcodec/libpostproc/postprocess_template.c index 316d9f3884302507ac03f8409026bf2428192b77..fcfff4b704ef94852fe125eccf7b873447977377 100644 --- a/libavcodec/libpostproc/postprocess_template.c +++ b/libavcodec/libpostproc/postprocess_template.c @@ -2707,12 +2707,14 @@ asm volatile( "paddb %%mm2, %%mm0 \n\t" "psubusb %%mm3, %%mm4 \n\t" + "pxor %%mm6, %%mm6 \n\t" "movq %4, %%mm7 \n\t" // QP,..., QP "paddusb %%mm7, %%mm7 \n\t" // 2QP ... 2QP - "pcmpgtb %%mm4, %%mm7 \n\t" // Diff < 2QP -> FF + "psubusb %%mm4, %%mm7 \n\t" // Diff >=2QP -> 0 + "pcmpeqb %%mm6, %%mm7 \n\t" // Diff < 2QP -> 0 + "pcmpeqb %%mm6, %%mm7 \n\t" // Diff < 2QP -> 0 "movq %%mm7, %1 \n\t" - "pxor %%mm6, %%mm6 \n\t" "movq %5, %%mm7 \n\t" "punpcklbw %%mm7, %%mm7 \n\t" "punpcklbw %%mm7, %%mm7 \n\t"