]> git.sesse.net Git - ffmpeg/commitdiff
Merge commit 'de452e503734ebb0fdbce86e9d16693b3530fad3'
authorClément Bœsch <u@pkh.me>
Mon, 20 Mar 2017 12:47:29 +0000 (13:47 +0100)
committerClément Bœsch <u@pkh.me>
Mon, 20 Mar 2017 14:58:32 +0000 (15:58 +0100)
* commit 'de452e503734ebb0fdbce86e9d16693b3530fad3':
  pixblockdsp: Change type of stride parameters to ptrdiff_t

Merged-by: Clément Bœsch <u@pkh.me>
13 files changed:
libavcodec/alpha/pixblockdsp_alpha.c
libavcodec/arm/pixblockdsp_init_arm.c
libavcodec/dv.h
libavcodec/dvenc.c
libavcodec/mips/pixblockdsp_mips.h
libavcodec/mips/pixblockdsp_mmi.c
libavcodec/mips/pixblockdsp_msa.c
libavcodec/pixblockdsp.c
libavcodec/pixblockdsp.h
libavcodec/ppc/pixblockdsp.c
libavcodec/x86/pixblockdsp.asm
libavcodec/x86/pixblockdsp_init.c
tests/checkasm/pixblockdsp.c

index 866b762b162754c7b0358e70228db2b25e50b344..c2f1a1d79c539f19dfe28e5e7bdf8bc87c243a9f 100644 (file)
@@ -23,7 +23,7 @@
 #include "asm.h"
 
 static void get_pixels_mvi(int16_t *restrict block,
-                           const uint8_t *restrict pixels, ptrdiff_t line_size)
+                           const uint8_t *restrict pixels, ptrdiff_t stride)
 {
     int h = 8;
 
@@ -34,13 +34,14 @@ static void get_pixels_mvi(int16_t *restrict block,
         stq(unpkbw(p),       block);
         stq(unpkbw(p >> 32), block + 4);
 
-        pixels += line_size;
+        pixels += stride;
         block += 8;
     } while (--h);
 }
 
 static void diff_pixels_mvi(int16_t *block, const uint8_t *s1, const uint8_t *s2,
-                            int stride) {
+                            ptrdiff_t stride)
+{
     int h = 8;
     uint64_t mask = 0x4040;
 
index 76d75097286e19d95079a9efb5d2bb6fc5ab413f..59d2b493816eeb551c35f0c0013e67eab27da705 100644 (file)
 #include "libavcodec/avcodec.h"
 #include "libavcodec/pixblockdsp.h"
 
-void ff_get_pixels_armv6(int16_t *block, const uint8_t *pixels, ptrdiff_t stride);
+void ff_get_pixels_armv6(int16_t *block, const uint8_t *pixels,
+                         ptrdiff_t stride);
 void ff_diff_pixels_armv6(int16_t *block, const uint8_t *s1,
-                          const uint8_t *s2, int stride);
+                          const uint8_t *s2, ptrdiff_t stride);
 
 av_cold void ff_pixblockdsp_init_arm(PixblockDSPContext *c,
                                      AVCodecContext *avctx,
index 3367f9252a92e2d1b9671d282df635ec84d9ec4d..d5482d1aa6c1e47a4dbd90ea1e438ffffc5fb2b7 100644 (file)
@@ -45,7 +45,7 @@ typedef struct DVVideoContext {
 
     uint8_t dv_zigzag[2][64];
 
-    void (*get_pixels)(int16_t *block, const uint8_t *pixels, ptrdiff_t line_size);
+    void (*get_pixels)(int16_t *block, const uint8_t *pixels, ptrdiff_t linesize);
     void (*fdct[2])(int16_t *block);
     void (*idct_put[2])(uint8_t *dest, int line_size, int16_t *block);
     me_cmp_func ildct_cmp;
index a27b9ef0daa0319b460794769fc8dd465547bdc2..e3de18a510502d6b53dae8c95047e4c5ec39bcbc 100644 (file)
@@ -204,7 +204,7 @@ static av_always_inline PutBitContext *dv_encode_ac(EncBlockInfo *bi,
 }
 
 static av_always_inline int dv_guess_dct_mode(DVVideoContext *s, uint8_t *data,
-                                              int linesize)
+                                              ptrdiff_t linesize)
 {
     if (s->avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) {
         int ps = s->ildct_cmp(NULL, data, NULL, linesize, 8) - 400;
@@ -241,8 +241,8 @@ static const int dv_weight_248[64] = {
 };
 
 static av_always_inline int dv_init_enc_block(EncBlockInfo *bi, uint8_t *data,
-                                              int linesize, DVVideoContext *s,
-                                              int bias)
+                                              ptrdiff_t linesize,
+                                              DVVideoContext *s, int bias)
 {
     const int *weight;
     const uint8_t *zigzag_scan;
@@ -420,7 +420,8 @@ static int dv_encode_video_segment(AVCodecContext *avctx, void *arg)
     DVVideoContext *s = avctx->priv_data;
     DVwork_chunk *work_chunk = arg;
     int mb_index, i, j;
-    int mb_x, mb_y, c_offset, linesize, y_stride;
+    int mb_x, mb_y, c_offset;
+    ptrdiff_t linesize, y_stride;
     uint8_t *y_ptr;
     uint8_t *dif;
     LOCAL_ALIGNED_8(uint8_t, scratch, [128]);
index 7f8cc96683da6ee1ef146fcc7c1dd93d72cbaa7c..a12b1a6949b01db4aa7d0d3885ea1010be572050 100644 (file)
 #include "../mpegvideo.h"
 
 void ff_diff_pixels_msa(int16_t *av_restrict block, const uint8_t *src1,
-                        const uint8_t *src2, int stride);
+                        const uint8_t *src2, ptrdiff_t stride);
 void ff_get_pixels_16_msa(int16_t *restrict dst, const uint8_t *src,
                           ptrdiff_t stride);
 void ff_get_pixels_8_msa(int16_t *restrict dst, const uint8_t *src,
                          ptrdiff_t stride);
 
 void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
-        ptrdiff_t line_size);
+                         ptrdiff_t stride);
 void ff_diff_pixels_mmi(int16_t *av_restrict block, const uint8_t *src1,
-        const uint8_t *src2, int stride);
+                        const uint8_t *src2, ptrdiff_t stride);
 
 #endif  // #ifndef AVCODEC_MIPS_PIXBLOCKDSP_MIPS_H
index 9f2eac36ec6aca0657c6218f45a8663b58e622fb..a915a3c28bc9f78d6e208f68e401a06e61812b5b 100644 (file)
@@ -26,7 +26,7 @@
 #include "libavutil/mips/mmiutils.h"
 
 void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
-        ptrdiff_t line_size)
+                         ptrdiff_t stride)
 {
     double ftmp[7];
     DECLARE_VAR_ALL64;
@@ -36,7 +36,7 @@ void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
         "xor        %[ftmp0],   %[ftmp0],       %[ftmp0]                \n\t"
 
         MMI_LDC1(%[ftmp1], %[pixels], 0x00)
-        MMI_LDXC1(%[ftmp2], %[pixels], %[line_size], 0x00)
+        MMI_LDXC1(%[ftmp2], %[pixels], %[stride], 0x00)
         "punpcklbh  %[ftmp3],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpckhbh  %[ftmp4],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpcklbh  %[ftmp5],   %[ftmp2],       %[ftmp0]                \n\t"
@@ -45,10 +45,10 @@ void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
         MMI_SDC1(%[ftmp4], %[block], 0x08)
         MMI_SDC1(%[ftmp5], %[block], 0x10)
         MMI_SDC1(%[ftmp6], %[block], 0x18)
-        PTR_ADDU   "%[pixels],  %[pixels],      %[line_size_x2]         \n\t"
+        PTR_ADDU   "%[pixels],  %[pixels],      %[stride_x2]            \n\t"
 
         MMI_LDC1(%[ftmp1], %[pixels], 0x00)
-        MMI_LDXC1(%[ftmp2], %[pixels], %[line_size], 0x00)
+        MMI_LDXC1(%[ftmp2], %[pixels], %[stride], 0x00)
         "punpcklbh  %[ftmp3],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpckhbh  %[ftmp4],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpcklbh  %[ftmp5],   %[ftmp2],       %[ftmp0]                \n\t"
@@ -57,10 +57,10 @@ void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
         MMI_SDC1(%[ftmp4], %[block], 0x28)
         MMI_SDC1(%[ftmp5], %[block], 0x30)
         MMI_SDC1(%[ftmp6], %[block], 0x38)
-        PTR_ADDU   "%[pixels],  %[pixels],      %[line_size_x2]         \n\t"
+        PTR_ADDU   "%[pixels],  %[pixels],      %[stride_x2]            \n\t"
 
         MMI_LDC1(%[ftmp1], %[pixels], 0x00)
-        MMI_LDXC1(%[ftmp2], %[pixels], %[line_size], 0x00)
+        MMI_LDXC1(%[ftmp2], %[pixels], %[stride], 0x00)
         "punpcklbh  %[ftmp3],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpckhbh  %[ftmp4],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpcklbh  %[ftmp5],   %[ftmp2],       %[ftmp0]                \n\t"
@@ -69,10 +69,10 @@ void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
         MMI_SDC1(%[ftmp4], %[block], 0x48)
         MMI_SDC1(%[ftmp5], %[block], 0x50)
         MMI_SDC1(%[ftmp6], %[block], 0x58)
-        PTR_ADDU   "%[pixels],  %[pixels],      %[line_size_x2]         \n\t"
+        PTR_ADDU   "%[pixels],  %[pixels],      %[stride_x2]            \n\t"
 
         MMI_LDC1(%[ftmp1], %[pixels], 0x00)
-        MMI_LDXC1(%[ftmp2], %[pixels], %[line_size], 0x00)
+        MMI_LDXC1(%[ftmp2], %[pixels], %[stride], 0x00)
         "punpcklbh  %[ftmp3],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpckhbh  %[ftmp4],   %[ftmp1],       %[ftmp0]                \n\t"
         "punpcklbh  %[ftmp5],   %[ftmp2],       %[ftmp0]                \n\t"
@@ -88,14 +88,14 @@ void ff_get_pixels_8_mmi(int16_t *av_restrict block, const uint8_t *pixels,
           RESTRICT_ASM_ALL64
           RESTRICT_ASM_ADDRT
           [pixels]"+&r"(pixels)
-        : [block]"r"((mips_reg)block),      [line_size]"r"((mips_reg)line_size),
-          [line_size_x2]"r"((mips_reg)(line_size<<1))
+        : [block]"r"((mips_reg)block),      [stride]"r"((mips_reg)stride),
+          [stride_x2]"r"((mips_reg)(stride<<1))
         : "memory"
     );
 }
 
 void ff_diff_pixels_mmi(int16_t *av_restrict block, const uint8_t *src1,
-        const uint8_t *src2, int stride)
+        const uint8_t *src2, ptrdiff_t stride)
 {
     double ftmp[5];
     mips_reg tmp[1];
index 966e11a7f587efaef997568b09948ac3af650f53..86a4576c1ddb19e57b6bee90f05d7482a738c628 100644 (file)
@@ -137,7 +137,7 @@ void ff_get_pixels_8_msa(int16_t *av_restrict dest, const uint8_t *src,
 }
 
 void ff_diff_pixels_msa(int16_t *av_restrict block, const uint8_t *src1,
-                        const uint8_t *src2, int stride)
+                        const uint8_t *src2, ptrdiff_t stride)
 {
     diff_pixels_msa(block, src1, src2, stride);
 }
index f0883d3d08484ff0f96cdebfb47891022eb5f513..417c944e00bb0904bd1fd9669c64afac47c558c2 100644 (file)
 #include "pixblockdsp.h"
 
 static void get_pixels_16_c(int16_t *av_restrict block, const uint8_t *pixels,
-                            ptrdiff_t line_size)
+                            ptrdiff_t stride)
 {
-    AV_COPY128U(block + 0 * 8, pixels + 0 * line_size);
-    AV_COPY128U(block + 1 * 8, pixels + 1 * line_size);
-    AV_COPY128U(block + 2 * 8, pixels + 2 * line_size);
-    AV_COPY128U(block + 3 * 8, pixels + 3 * line_size);
-    AV_COPY128U(block + 4 * 8, pixels + 4 * line_size);
-    AV_COPY128U(block + 5 * 8, pixels + 5 * line_size);
-    AV_COPY128U(block + 6 * 8, pixels + 6 * line_size);
-    AV_COPY128U(block + 7 * 8, pixels + 7 * line_size);
+    AV_COPY128U(block + 0 * 8, pixels + 0 * stride);
+    AV_COPY128U(block + 1 * 8, pixels + 1 * stride);
+    AV_COPY128U(block + 2 * 8, pixels + 2 * stride);
+    AV_COPY128U(block + 3 * 8, pixels + 3 * stride);
+    AV_COPY128U(block + 4 * 8, pixels + 4 * stride);
+    AV_COPY128U(block + 5 * 8, pixels + 5 * stride);
+    AV_COPY128U(block + 6 * 8, pixels + 6 * stride);
+    AV_COPY128U(block + 7 * 8, pixels + 7 * stride);
 }
 
 static void get_pixels_8_c(int16_t *av_restrict block, const uint8_t *pixels,
-                           ptrdiff_t line_size)
+                           ptrdiff_t stride)
 {
     int i;
 
@@ -52,13 +52,13 @@ static void get_pixels_8_c(int16_t *av_restrict block, const uint8_t *pixels,
         block[5] = pixels[5];
         block[6] = pixels[6];
         block[7] = pixels[7];
-        pixels  += line_size;
+        pixels  += stride;
         block   += 8;
     }
 }
 
 static void diff_pixels_c(int16_t *av_restrict block, const uint8_t *s1,
-                          const uint8_t *s2, int stride)
+                          const uint8_t *s2, ptrdiff_t stride)
 {
     int i;
 
index 79ed86c3a6ca0712d4ed8b5cf579bd43c1627f99..278accb1d493a4864f43c12b9a2fff1f340bcf58 100644 (file)
 typedef struct PixblockDSPContext {
     void (*get_pixels)(int16_t *block /* align 16 */,
                        const uint8_t *pixels /* align 8 */,
-                       ptrdiff_t line_size);
+                       ptrdiff_t stride);
     void (*diff_pixels)(int16_t *block /* align 16 */,
                         const uint8_t *s1 /* align 8 */,
                         const uint8_t *s2 /* align 8 */,
-                        int stride);
+                        ptrdiff_t stride);
 } PixblockDSPContext;
 
 void ff_pixblockdsp_init(PixblockDSPContext *c, AVCodecContext *avctx);
index f3a5050469baddc4cc10092ffdae481ce82506ef..f5ac8509f0c821f56b488e7ce4b77a5f9a5736c4 100644 (file)
@@ -37,7 +37,7 @@
 
 #if HAVE_VSX
 static void get_pixels_altivec(int16_t *restrict block, const uint8_t *pixels,
-                               ptrdiff_t line_size)
+                               ptrdiff_t stride)
 {
     int i;
     vector unsigned char perm =
@@ -59,12 +59,12 @@ static void get_pixels_altivec(int16_t *restrict block, const uint8_t *pixels,
         // Save the data to the block, we assume the block is 16-byte aligned.
         vec_vsx_st(shorts, i * 16, (vector signed short *) block);
 
-        pixels += line_size;
+        pixels += stride;
     }
 }
 #else
 static void get_pixels_altivec(int16_t *restrict block, const uint8_t *pixels,
-                               ptrdiff_t line_size)
+                               ptrdiff_t stride)
 {
     int i;
     const vec_u8 zero = (const vec_u8)vec_splat_u8(0);
@@ -84,7 +84,7 @@ static void get_pixels_altivec(int16_t *restrict block, const uint8_t *pixels,
         // Save the data to the block, we assume the block is 16-byte aligned.
         vec_st(shorts, i * 16, (vec_s16 *)block);
 
-        pixels += line_size;
+        pixels += stride;
     }
 }
 
@@ -92,7 +92,7 @@ static void get_pixels_altivec(int16_t *restrict block, const uint8_t *pixels,
 
 #if HAVE_VSX
 static void diff_pixels_altivec(int16_t *restrict block, const uint8_t *s1,
-                                const uint8_t *s2, int stride)
+                                const uint8_t *s2, ptrdiff_t stride)
 {
   int i;
   const vector unsigned char zero =
@@ -154,7 +154,7 @@ static void diff_pixels_altivec(int16_t *restrict block, const uint8_t *s1,
 }
 #else
 static void diff_pixels_altivec(int16_t *restrict block, const uint8_t *s1,
-                                const uint8_t *s2, int stride)
+                                const uint8_t *s2, ptrdiff_t stride)
 {
     int i;
     vec_u8 perm;
@@ -233,7 +233,7 @@ static void diff_pixels_altivec(int16_t *restrict block, const uint8_t *s1,
 
 #if HAVE_VSX
 static void get_pixels_vsx(int16_t *restrict block, const uint8_t *pixels,
-                           ptrdiff_t line_size)
+                           ptrdiff_t stride)
 {
     int i;
     for (i = 0; i < 8; i++) {
@@ -241,12 +241,12 @@ static void get_pixels_vsx(int16_t *restrict block, const uint8_t *pixels,
 
         vec_vsx_st(shorts, i * 16, block);
 
-        pixels += line_size;
+        pixels += stride;
     }
 }
 
 static void diff_pixels_vsx(int16_t *restrict block, const uint8_t *s1,
-                            const uint8_t *s2, int stride)
+                            const uint8_t *s2, ptrdiff_t stride)
 {
     int i;
     vec_s16 shorts1, shorts2;
index 2864d0c977469efd91b2a62dbb90db59bf32be62..440fe29bccdd98205ba3195c7d70fe28f9887e46 100644 (file)
@@ -26,7 +26,7 @@
 SECTION .text
 
 INIT_MMX mmx
-; void ff_get_pixels_mmx(int16_t *block, const uint8_t *pixels, ptrdiff_t line_size)
+; void ff_get_pixels_mmx(int16_t *block, const uint8_t *pixels, ptrdiff_t stride)
 cglobal get_pixels, 3,4
     add          r0, 128
     mov          r3, -128
@@ -81,10 +81,9 @@ cglobal get_pixels, 3, 4, 5
     RET
 
 ; void ff_diff_pixels_mmx(int16_t *block, const uint8_t *s1, const uint8_t *s2,
-;                         int stride);
+;                         ptrdiff_t stride);
 %macro DIFF_PIXELS 0
 cglobal diff_pixels, 4,5,5
-    movsxdifnidn r3, r3d
     pxor         m4, m4
     add          r0,  128
     mov          r4, -128
index 4d06a44c6d442560fe17550145514db151366766..fa9578a2d373a0bb11d19f004ebd065cf6625cc6 100644 (file)
 #include "libavutil/x86/cpu.h"
 #include "libavcodec/pixblockdsp.h"
 
-void ff_get_pixels_mmx(int16_t *block, const uint8_t *pixels, ptrdiff_t line_size);
-void ff_get_pixels_sse2(int16_t *block, const uint8_t *pixels, ptrdiff_t line_size);
+void ff_get_pixels_mmx(int16_t *block, const uint8_t *pixels, ptrdiff_t stride);
+void ff_get_pixels_sse2(int16_t *block, const uint8_t *pixels, ptrdiff_t stride);
 void ff_diff_pixels_mmx(int16_t *block, const uint8_t *s1, const uint8_t *s2,
-                        int stride);
+                        ptrdiff_t stride);
 void ff_diff_pixels_sse2(int16_t *block, const uint8_t *s1, const uint8_t *s2,
-                         int stride);
+                         ptrdiff_t stride);
 
 av_cold void ff_pixblockdsp_init_x86(PixblockDSPContext *c,
                                      AVCodecContext *avctx,
index 2b88e7d1acaada1f5118433bbfe775bdfa08930c..e14b0a90ded4ba34809e558253d436b359f97de8 100644 (file)
@@ -64,7 +64,7 @@
 #define check_diff_pixels(type)                                                            \
     do {                                                                                   \
         int i;                                                                             \
-        declare_func_emms(AV_CPU_FLAG_MMX, void, int16_t *av_restrict block, const uint8_t *s1, const uint8_t *s2, int stride); \
+        declare_func_emms(AV_CPU_FLAG_MMX, void, int16_t *av_restrict block, const uint8_t *s1, const uint8_t *s2, ptrdiff_t stride); \
                                                                                            \
         for (i = 0; i < BUF_UNITS; i++) {                                              \
             int src_offset = i * 64 * sizeof(type) + 8 * i; /* Test various alignments */      \