diff options
author | Diego Biurrun <diego@biurrun.de> | 2016-08-23 23:23:45 +0200 |
---|---|---|
committer | Diego Biurrun <diego@biurrun.de> | 2016-08-26 11:36:26 +0200 |
commit | d9d26a3674f31f482f54e936fcb382160830877a (patch) | |
tree | 027c2a1b7b9258c64f255b37a1ca00889388caf6 /libavcodec/x86 | |
parent | 6892df9294d93322d43255ada299507465bc93c8 (diff) | |
download | ffmpeg-d9d26a3674f31f482f54e936fcb382160830877a.tar.gz |
vp56: Change type of stride parameters to ptrdiff_t
This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.
Diffstat (limited to 'libavcodec/x86')
-rw-r--r-- | libavcodec/x86/vp6dsp.asm | 5 | ||||
-rw-r--r-- | libavcodec/x86/vp6dsp_init.c | 4 |
2 files changed, 3 insertions, 6 deletions
diff --git a/libavcodec/x86/vp6dsp.asm b/libavcodec/x86/vp6dsp.asm index 80f8ca5f38..b667d38aea 100644 --- a/libavcodec/x86/vp6dsp.asm +++ b/libavcodec/x86/vp6dsp.asm @@ -115,7 +115,7 @@ SECTION .text %endmacro %macro vp6_filter_diag4 0 -; void ff_vp6_filter_diag4_<opt>(uint8_t *dst, uint8_t *src, int stride, +; void ff_vp6_filter_diag4_<opt>(uint8_t *dst, uint8_t *src, ptrdiff_t stride, ; const int16_t h_weight[4], const int16_t v_weights[4]) cglobal vp6_filter_diag4, 5, 7, 8 mov r5, rsp ; backup stack pointer @@ -126,9 +126,6 @@ cglobal vp6_filter_diag4, 5, 7, 8 sub rsp, 8*15 movq m6, [pw_64] %endif -%if ARCH_X86_64 - movsxd r2, r2d -%endif sub r1, r2 diff --git a/libavcodec/x86/vp6dsp_init.c b/libavcodec/x86/vp6dsp_init.c index 9bf41783c2..472e03439e 100644 --- a/libavcodec/x86/vp6dsp_init.c +++ b/libavcodec/x86/vp6dsp_init.c @@ -25,9 +25,9 @@ #include "libavutil/x86/cpu.h" #include "libavcodec/vp56dsp.h" -void ff_vp6_filter_diag4_mmx(uint8_t *dst, uint8_t *src, int stride, +void ff_vp6_filter_diag4_mmx(uint8_t *dst, uint8_t *src, ptrdiff_t stride, const int16_t *h_weights,const int16_t *v_weights); -void ff_vp6_filter_diag4_sse2(uint8_t *dst, uint8_t *src, int stride, +void ff_vp6_filter_diag4_sse2(uint8_t *dst, uint8_t *src, ptrdiff_t stride, const int16_t *h_weights,const int16_t *v_weights); av_cold void ff_vp6dsp_init_x86(VP56DSPContext* c, enum AVCodecID codec) |