diff --git a/libswscale/x86/swscale_template.c b/libswscale/x86/swscale_template.c index 6196e98561..cfaf847f93 100644 --- a/libswscale/x86/swscale_template.c +++ b/libswscale/x86/swscale_template.c @@ -192,11 +192,6 @@ static void RENAME(yuv2yuvX)(SwsContext *c, const int16_t *lumFilter, static av_always_inline void dither_8to32(SwsContext *c, const uint8_t *srcDither, int rot) { -int i; -if(rot) for(i=0; i<8; i++) c->dither32[i] = srcDither[(i+3)&7]<<12; -else for(i=0; i<8; i++) c->dither32[i] = srcDither[i&7]<<12; -return; - if (rot) { __asm__ volatile("pxor %%mm0, %%mm0\n\t" "movq (%0), %%mm4\n\t" @@ -213,10 +208,10 @@ return; "punpckhwd %%mm0, %%mm5\n\t" "punpcklwd %%mm0, %%mm6\n\t" "punpckhwd %%mm0, %%mm7\n\t" - "psllw $12, %%mm4\n\t" - "psllw $12, %%mm5\n\t" - "psllw $12, %%mm6\n\t" - "psllw $12, %%mm7\n\t" + "pslld $12, %%mm4\n\t" + "pslld $12, %%mm5\n\t" + "pslld $12, %%mm6\n\t" + "pslld $12, %%mm7\n\t" "movq %%mm4, "DITHER32"+0(%1)\n\t" "movq %%mm5, "DITHER32"+8(%1)\n\t" "movq %%mm6, "DITHER32"+16(%1)\n\t" @@ -235,10 +230,10 @@ return; "punpckhwd %%mm0, %%mm5\n\t" "punpcklwd %%mm0, %%mm6\n\t" "punpckhwd %%mm0, %%mm7\n\t" - "psllw $12, %%mm4\n\t" - "psllw $12, %%mm5\n\t" - "psllw $12, %%mm6\n\t" - "psllw $12, %%mm7\n\t" + "pslld $12, %%mm4\n\t" + "pslld $12, %%mm5\n\t" + "pslld $12, %%mm6\n\t" + "pslld $12, %%mm7\n\t" "movq %%mm4, "DITHER32"+0(%1)\n\t" "movq %%mm5, "DITHER32"+8(%1)\n\t" "movq %%mm6, "DITHER32"+16(%1)\n\t"