aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/x86/h264_chromamc.asm
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2010-12-24 17:23:22 +0000
committerRonald S. Bultje <rsbultje@gmail.com>2010-12-24 17:23:22 +0000
commit8d147f1f60f8912fa21b09c60973b9758e953295 (patch)
tree05d6a0a321a38ab06080f774d653173bf5d996c4 /libavcodec/x86/h264_chromamc.asm
parent95ee581a9501df9783b2682dd12aaa43680686d5 (diff)
downloadffmpeg-8d147f1f60f8912fa21b09c60973b9758e953295.tar.gz
For rounding in chroma MC SSSE3, use 16-byte pw_3/4 instead of reading 8 bytes
and then using movlhps to dup it into the higher half of the register. Originally committed as revision 26086 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/x86/h264_chromamc.asm')
-rw-r--r--libavcodec/x86/h264_chromamc.asm6
1 files changed, 2 insertions, 4 deletions
diff --git a/libavcodec/x86/h264_chromamc.asm b/libavcodec/x86/h264_chromamc.asm
index 6df82cc523..3bb5ed4855 100644
--- a/libavcodec/x86/h264_chromamc.asm
+++ b/libavcodec/x86/h264_chromamc.asm
@@ -530,9 +530,8 @@ cglobal %1_%2_chroma_mc8_%3, 6, 7, 8
add r4, 8
sub r4, r5 ; 255*x+8 = x<<8 | (8-x)
movd m7, r4d
- movq m6, [rnd_1d_%2]
+ movdqa m6, [rnd_1d_%2]
pshuflw m7, m7, 0
- movlhps m6, m6
movlhps m7, m7
.next2xrows
@@ -568,9 +567,8 @@ cglobal %1_%2_chroma_mc8_%3, 6, 7, 8
add r5, 8
sub r5, r4 ; 255*y+8 = y<<8 | (8-y)
movd m7, r5d
- movq m6, [rnd_1d_%2]
+ movdqa m6, [rnd_1d_%2]
pshuflw m7, m7, 0
- movlhps m6, m6
movlhps m7, m7
.next2yrows