summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorOskar Arvidsson <oskar@irock.se>2011-06-10 02:40:10 +0200
committerRonald S. Bultje <rsbultje@gmail.com>2011-06-10 14:44:57 -0400
commit6c031a3338d49dd61cf34fd703631f5a47205912 (patch)
treef32619a0f7ea3acc79324dd7add5bfbf9fac636b /libavcodec
parent919d7a345a7e9044c3cdc89cf06dc521a1b01c6c (diff)
h264: Fix 10-bit H.264 x86 chroma v loopfilter asm.
The tc variable was not splatted correctly. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/x86/h264_deblock_10bit.asm9
1 files changed, 8 insertions, 1 deletions
diff --git a/libavcodec/x86/h264_deblock_10bit.asm b/libavcodec/x86/h264_deblock_10bit.asm
index f5a13f1250..baac725eec 100644
--- a/libavcodec/x86/h264_deblock_10bit.asm
+++ b/libavcodec/x86/h264_deblock_10bit.asm
@@ -836,6 +836,13 @@ DEBLOCK_LUMA_INTRA avx
mova [r0+2*r1], m2
%endmacro
+%macro CHROMA_V_LOAD_TC 2
+ movd %1, [%2]
+ punpcklbw %1, %1
+ punpcklwd %1, %1
+ psraw %1, 6
+%endmacro
+
%macro DEBLOCK_CHROMA 1
;-----------------------------------------------------------------------------
; void deblock_v_chroma( uint16_t *pix, int stride, int alpha, int beta, int8_t *tc0 )
@@ -854,7 +861,7 @@ cglobal deblock_v_chroma_10_%1, 5,7-(mmsize/16),8*(mmsize/16)
LOAD_AB m4, m5, r2, r3
LOAD_MASK m0, m1, m2, m3, m4, m5, m7, m6, m4
pxor m4, m4
- LOAD_TC m6, r4
+ CHROMA_V_LOAD_TC m6, r4
psubw m6, [pw_3]
pmaxsw m6, m4
pand m7, m6