summaryrefslogtreecommitdiff
path: root/libavcodec/x86/h264_chromamc_10bit.asm
diff options
context:
space:
mode:
authorDiego Biurrun <diego@biurrun.de>2016-09-01 21:41:01 +0200
committerDiego Biurrun <diego@biurrun.de>2016-09-29 14:48:04 +0200
commite4a94d8b36c48d95a7d412c40d7b558422ff659c (patch)
tree754724de182b2d0379f14d2a347d1e4f78d52648 /libavcodec/x86/h264_chromamc_10bit.asm
parent2ec9fa5ec60dcd10e1cb10d8b4e4437e634ea428 (diff)
h264chroma: Change type of stride parameters to ptrdiff_t
This avoids SIMD-optimized functions having to sign-extend their stride argument manually to be able to do pointer arithmetic.
Diffstat (limited to 'libavcodec/x86/h264_chromamc_10bit.asm')
-rw-r--r--libavcodec/x86/h264_chromamc_10bit.asm15
1 files changed, 6 insertions, 9 deletions
diff --git a/libavcodec/x86/h264_chromamc_10bit.asm b/libavcodec/x86/h264_chromamc_10bit.asm
index 7b003515cc..ff53b91c42 100644
--- a/libavcodec/x86/h264_chromamc_10bit.asm
+++ b/libavcodec/x86/h264_chromamc_10bit.asm
@@ -57,12 +57,11 @@ SECTION .text
%endmacro
;-----------------------------------------------------------------------------
-; void ff_put/avg_h264_chroma_mc8(pixel *dst, pixel *src, int stride, int h,
-; int mx, int my)
+; void ff_put/avg_h264_chroma_mc8(pixel *dst, pixel *src, ptrdiff_t stride,
+; int h, int mx, int my)
;-----------------------------------------------------------------------------
%macro CHROMA_MC8 1
cglobal %1_h264_chroma_mc8_10, 6,7,8
- movsxdifnidn r2, r2d
mov r6d, r5d
or r6d, r4d
jne .at_least_one_non_zero
@@ -149,8 +148,8 @@ cglobal %1_h264_chroma_mc8_10, 6,7,8
%endmacro
;-----------------------------------------------------------------------------
-; void ff_put/avg_h264_chroma_mc4(pixel *dst, pixel *src, int stride, int h,
-; int mx, int my)
+; void ff_put/avg_h264_chroma_mc4(pixel *dst, pixel *src, ptrdiff_t stride,
+; int h, int mx, int my)
;-----------------------------------------------------------------------------
;TODO: xmm mc4
%macro MC4_OP 2
@@ -174,7 +173,6 @@ cglobal %1_h264_chroma_mc8_10, 6,7,8
%macro CHROMA_MC4 1
cglobal %1_h264_chroma_mc4_10, 6,6,7
- movsxdifnidn r2, r2d
movd m2, r4m ; x
movd m3, r5m ; y
mova m4, [pw_8]
@@ -200,12 +198,11 @@ cglobal %1_h264_chroma_mc4_10, 6,6,7
%endmacro
;-----------------------------------------------------------------------------
-; void ff_put/avg_h264_chroma_mc2(pixel *dst, pixel *src, int stride, int h,
-; int mx, int my)
+; void ff_put/avg_h264_chroma_mc2(pixel *dst, pixel *src, ptrdiff_t stride,
+; int h, int mx, int my)
;-----------------------------------------------------------------------------
%macro CHROMA_MC2 1
cglobal %1_h264_chroma_mc2_10, 6,7
- movsxdifnidn r2, r2d
mov r6d, r4d
shl r4d, 16
sub r4d, r6d