On Wed, 24 Aug 2016, Diego Biurrun wrote:

This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.
---
libavcodec/arm/vp6dsp_init_arm.c |  4 ++--
libavcodec/vp56.h                |  4 ++--
libavcodec/vp56dsp.c             |  3 ++-
libavcodec/vp56dsp.h             | 10 ++++++----
libavcodec/vp6.c                 |  8 ++++----
libavcodec/vp6dsp.c              |  2 +-
libavcodec/x86/vp6dsp.asm        |  2 +-
libavcodec/x86/vp6dsp_init.c     |  4 ++--
8 files changed, 20 insertions(+), 17 deletions(-)

diff --git a/libavcodec/x86/vp6dsp.asm b/libavcodec/x86/vp6dsp.asm
index 80f8ca5..364d560 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

This patch does not remove the actual sign extension a few lines below here - not ok.

We really don't need to increase the amount of contradiction in the code by changing the parameter type, and even updating the comment in the asm as if the code were updated, but not actually updating it.

Also check if we have corresponding asm for other 64 bit arches for all the patches (e.g. aarch64) - I doubt it though.

// Martin
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to