Browse code

avfilter/vf_pullup: use ptrdiff_t as stride argument for dsp functions

This should avoid issues on x86_64

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

Michael Niedermayer authored on 2014/06/26 00:49:03
Showing 3 changed files
... ...
@@ -69,7 +69,7 @@ static int query_formats(AVFilterContext *ctx)
69 69
 
70 70
 #define ABS(a) (((a) ^ ((a) >> 31)) - ((a) >> 31))
71 71
 
72
-static int diff_c(const uint8_t *a, const uint8_t *b, int s)
72
+static int diff_c(const uint8_t *a, const uint8_t *b, ptrdiff_t s)
73 73
 {
74 74
     int i, j, diff = 0;
75 75
 
... ...
@@ -83,7 +83,7 @@ static int diff_c(const uint8_t *a, const uint8_t *b, int s)
83 83
     return diff;
84 84
 }
85 85
 
86
-static int comb_c(const uint8_t *a, const uint8_t *b, int s)
86
+static int comb_c(const uint8_t *a, const uint8_t *b, ptrdiff_t s)
87 87
 {
88 88
     int i, j, comb = 0;
89 89
 
... ...
@@ -98,7 +98,7 @@ static int comb_c(const uint8_t *a, const uint8_t *b, int s)
98 98
     return comb;
99 99
 }
100 100
 
101
-static int var_c(const uint8_t *a, const uint8_t *b, int s)
101
+static int var_c(const uint8_t *a, const uint8_t *b, ptrdiff_t s)
102 102
 {
103 103
     int i, j, var = 0;
104 104
 
... ...
@@ -531,7 +531,7 @@ static void pullup_release_frame(PullupFrame *f)
531 531
 
532 532
 static void compute_metric(PullupContext *s, int *dest,
533 533
                            PullupField *fa, int pa, PullupField *fb, int pb,
534
-                           int (*func)(const uint8_t *, const uint8_t *, int))
534
+                           int (*func)(const uint8_t *, const uint8_t *, ptrdiff_t))
535 535
 {
536 536
     int mp = s->metric_plane;
537 537
     int xstep = 8;
... ...
@@ -61,9 +61,9 @@ typedef struct PullupContext {
61 61
     PullupBuffer buffers[10];
62 62
     PullupFrame frame;
63 63
 
64
-    int (*diff)(const uint8_t *a, const uint8_t *b, int s);
65
-    int (*comb)(const uint8_t *a, const uint8_t *b, int s);
66
-    int (*var )(const uint8_t *a, const uint8_t *b, int s);
64
+    int (*diff)(const uint8_t *a, const uint8_t *b, ptrdiff_t s);
65
+    int (*comb)(const uint8_t *a, const uint8_t *b, ptrdiff_t s);
66
+    int (*var )(const uint8_t *a, const uint8_t *b, ptrdiff_t s);
67 67
 } PullupContext;
68 68
 
69 69
 void ff_pullup_init_x86(PullupContext *s);
... ...
@@ -23,9 +23,9 @@
23 23
 #include "libavutil/x86/cpu.h"
24 24
 #include "libavfilter/vf_pullup.h"
25 25
 
26
-int ff_pullup_filter_diff_mmx(const uint8_t *a, const uint8_t *b, int s);
27
-int ff_pullup_filter_comb_mmx(const uint8_t *a, const uint8_t *b, int s);
28
-int ff_pullup_filter_var_mmx (const uint8_t *a, const uint8_t *b, int s);
26
+int ff_pullup_filter_diff_mmx(const uint8_t *a, const uint8_t *b, ptrdiff_t s);
27
+int ff_pullup_filter_comb_mmx(const uint8_t *a, const uint8_t *b, ptrdiff_t s);
28
+int ff_pullup_filter_var_mmx (const uint8_t *a, const uint8_t *b, ptrdiff_t s);
29 29
 
30 30
 av_cold void ff_pullup_init_x86(PullupContext *s)
31 31
 {