shithub: libvpx

Download patch

ref: 675298216d24c7c9ad73140cd7d81acf28648a30
parent: 38a20e030f442fb8dfa1e596c98500bd35919e6f
parent: 7d243701d986b8b7fa2d3148e7a09b52cffd272a
author: John Koleszar <jkoleszar@google.com>
date: Mon Aug 2 02:16:26 EDT 2010

Merge "Replace pinsrw (SSE) with MMX instructions"

--- a/vp8/decoder/x86/dequantize_mmx.asm
+++ b/vp8/decoder/x86/dequantize_mmx.asm
@@ -261,8 +261,6 @@
         mov         rax,    arg(0) ;input
         mov         rdx,    arg(1) ;dq
 
-        movsxd      rcx,    dword ptr arg(6) ;Dc
-
         movq        mm0,    [rax   ]
         pmullw      mm0,    [rdx]
 
@@ -286,8 +284,13 @@
         movq        [rax+16],mm7
         movq        [rax+24],mm7
 
+        ; move lower word of Dc to lower word of mm0
+        psrlq       mm0,    16
+        movzx       rcx,    word ptr arg(6) ;Dc
+        psllq       mm0,    16
+        movd        mm7,    rcx
+        por         mm0,    mm7
 
-        pinsrw      mm0,    rcx,  0
         movsxd      rax,            dword ptr arg(4) ;pitch
         movsxd      rdi,            dword ptr arg(5) ;stride