... | ... |
@@ -26,73 +26,73 @@ |
26 | 26 |
#include "libavutil/arm/cpu.h" |
27 | 27 |
#include "libavcodec/h264qpel.h" |
28 | 28 |
|
29 |
-void ff_put_h264_qpel16_mc00_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
30 |
-void ff_put_h264_qpel16_mc10_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
31 |
-void ff_put_h264_qpel16_mc20_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
32 |
-void ff_put_h264_qpel16_mc30_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
33 |
-void ff_put_h264_qpel16_mc01_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
34 |
-void ff_put_h264_qpel16_mc11_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
35 |
-void ff_put_h264_qpel16_mc21_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
36 |
-void ff_put_h264_qpel16_mc31_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
37 |
-void ff_put_h264_qpel16_mc02_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
38 |
-void ff_put_h264_qpel16_mc12_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
39 |
-void ff_put_h264_qpel16_mc22_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
40 |
-void ff_put_h264_qpel16_mc32_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
41 |
-void ff_put_h264_qpel16_mc03_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
42 |
-void ff_put_h264_qpel16_mc13_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
43 |
-void ff_put_h264_qpel16_mc23_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
44 |
-void ff_put_h264_qpel16_mc33_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
29 |
+void ff_put_h264_qpel16_mc00_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
30 |
+void ff_put_h264_qpel16_mc10_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
31 |
+void ff_put_h264_qpel16_mc20_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
32 |
+void ff_put_h264_qpel16_mc30_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
33 |
+void ff_put_h264_qpel16_mc01_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
34 |
+void ff_put_h264_qpel16_mc11_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
35 |
+void ff_put_h264_qpel16_mc21_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
36 |
+void ff_put_h264_qpel16_mc31_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
37 |
+void ff_put_h264_qpel16_mc02_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
38 |
+void ff_put_h264_qpel16_mc12_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
39 |
+void ff_put_h264_qpel16_mc22_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
40 |
+void ff_put_h264_qpel16_mc32_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
41 |
+void ff_put_h264_qpel16_mc03_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
42 |
+void ff_put_h264_qpel16_mc13_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
43 |
+void ff_put_h264_qpel16_mc23_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
44 |
+void ff_put_h264_qpel16_mc33_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
45 | 45 |
|
46 |
-void ff_put_h264_qpel8_mc00_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
47 |
-void ff_put_h264_qpel8_mc10_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
48 |
-void ff_put_h264_qpel8_mc20_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
49 |
-void ff_put_h264_qpel8_mc30_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
50 |
-void ff_put_h264_qpel8_mc01_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
51 |
-void ff_put_h264_qpel8_mc11_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
52 |
-void ff_put_h264_qpel8_mc21_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
53 |
-void ff_put_h264_qpel8_mc31_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
54 |
-void ff_put_h264_qpel8_mc02_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
55 |
-void ff_put_h264_qpel8_mc12_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
56 |
-void ff_put_h264_qpel8_mc22_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
57 |
-void ff_put_h264_qpel8_mc32_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
58 |
-void ff_put_h264_qpel8_mc03_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
59 |
-void ff_put_h264_qpel8_mc13_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
60 |
-void ff_put_h264_qpel8_mc23_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
61 |
-void ff_put_h264_qpel8_mc33_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
46 |
+void ff_put_h264_qpel8_mc00_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
47 |
+void ff_put_h264_qpel8_mc10_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
48 |
+void ff_put_h264_qpel8_mc20_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
49 |
+void ff_put_h264_qpel8_mc30_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
50 |
+void ff_put_h264_qpel8_mc01_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
51 |
+void ff_put_h264_qpel8_mc11_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
52 |
+void ff_put_h264_qpel8_mc21_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
53 |
+void ff_put_h264_qpel8_mc31_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
54 |
+void ff_put_h264_qpel8_mc02_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
55 |
+void ff_put_h264_qpel8_mc12_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
56 |
+void ff_put_h264_qpel8_mc22_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
57 |
+void ff_put_h264_qpel8_mc32_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
58 |
+void ff_put_h264_qpel8_mc03_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
59 |
+void ff_put_h264_qpel8_mc13_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
60 |
+void ff_put_h264_qpel8_mc23_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
61 |
+void ff_put_h264_qpel8_mc33_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
62 | 62 |
|
63 |
-void ff_avg_h264_qpel16_mc00_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
64 |
-void ff_avg_h264_qpel16_mc10_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
65 |
-void ff_avg_h264_qpel16_mc20_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
66 |
-void ff_avg_h264_qpel16_mc30_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
67 |
-void ff_avg_h264_qpel16_mc01_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
68 |
-void ff_avg_h264_qpel16_mc11_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
69 |
-void ff_avg_h264_qpel16_mc21_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
70 |
-void ff_avg_h264_qpel16_mc31_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
71 |
-void ff_avg_h264_qpel16_mc02_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
72 |
-void ff_avg_h264_qpel16_mc12_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
73 |
-void ff_avg_h264_qpel16_mc22_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
74 |
-void ff_avg_h264_qpel16_mc32_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
75 |
-void ff_avg_h264_qpel16_mc03_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
76 |
-void ff_avg_h264_qpel16_mc13_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
77 |
-void ff_avg_h264_qpel16_mc23_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
78 |
-void ff_avg_h264_qpel16_mc33_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
63 |
+void ff_avg_h264_qpel16_mc00_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
64 |
+void ff_avg_h264_qpel16_mc10_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
65 |
+void ff_avg_h264_qpel16_mc20_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
66 |
+void ff_avg_h264_qpel16_mc30_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
67 |
+void ff_avg_h264_qpel16_mc01_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
68 |
+void ff_avg_h264_qpel16_mc11_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
69 |
+void ff_avg_h264_qpel16_mc21_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
70 |
+void ff_avg_h264_qpel16_mc31_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
71 |
+void ff_avg_h264_qpel16_mc02_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
72 |
+void ff_avg_h264_qpel16_mc12_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
73 |
+void ff_avg_h264_qpel16_mc22_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
74 |
+void ff_avg_h264_qpel16_mc32_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
75 |
+void ff_avg_h264_qpel16_mc03_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
76 |
+void ff_avg_h264_qpel16_mc13_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
77 |
+void ff_avg_h264_qpel16_mc23_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
78 |
+void ff_avg_h264_qpel16_mc33_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
79 | 79 |
|
80 |
-void ff_avg_h264_qpel8_mc00_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
81 |
-void ff_avg_h264_qpel8_mc10_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
82 |
-void ff_avg_h264_qpel8_mc20_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
83 |
-void ff_avg_h264_qpel8_mc30_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
84 |
-void ff_avg_h264_qpel8_mc01_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
85 |
-void ff_avg_h264_qpel8_mc11_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
86 |
-void ff_avg_h264_qpel8_mc21_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
87 |
-void ff_avg_h264_qpel8_mc31_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
88 |
-void ff_avg_h264_qpel8_mc02_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
89 |
-void ff_avg_h264_qpel8_mc12_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
90 |
-void ff_avg_h264_qpel8_mc22_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
91 |
-void ff_avg_h264_qpel8_mc32_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
92 |
-void ff_avg_h264_qpel8_mc03_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
93 |
-void ff_avg_h264_qpel8_mc13_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
94 |
-void ff_avg_h264_qpel8_mc23_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
95 |
-void ff_avg_h264_qpel8_mc33_neon(uint8_t *, uint8_t *, ptrdiff_t); |
|
80 |
+void ff_avg_h264_qpel8_mc00_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
81 |
+void ff_avg_h264_qpel8_mc10_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
82 |
+void ff_avg_h264_qpel8_mc20_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
83 |
+void ff_avg_h264_qpel8_mc30_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
84 |
+void ff_avg_h264_qpel8_mc01_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
85 |
+void ff_avg_h264_qpel8_mc11_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
86 |
+void ff_avg_h264_qpel8_mc21_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
87 |
+void ff_avg_h264_qpel8_mc31_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
88 |
+void ff_avg_h264_qpel8_mc02_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
89 |
+void ff_avg_h264_qpel8_mc12_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
90 |
+void ff_avg_h264_qpel8_mc22_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
91 |
+void ff_avg_h264_qpel8_mc32_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
92 |
+void ff_avg_h264_qpel8_mc03_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
93 |
+void ff_avg_h264_qpel8_mc13_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
94 |
+void ff_avg_h264_qpel8_mc23_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
95 |
+void ff_avg_h264_qpel8_mc33_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
96 | 96 |
|
97 | 97 |
av_cold void ff_h264qpel_init_arm(H264QpelContext *c, int bit_depth) |
98 | 98 |
{ |
... | ... |
@@ -26,8 +26,10 @@ |
26 | 26 |
#include "libavutil/arm/cpu.h" |
27 | 27 |
|
28 | 28 |
#define DECL_QPEL3(type, w, pos) \ |
29 |
- void ff_##type##_rv40_qpel##w##_mc##pos##_neon(uint8_t *dst, uint8_t *src,\ |
|
30 |
- ptrdiff_t stride) |
|
29 |
+void ff_ ## type ## _rv40_qpel ## w ## _mc ## pos ## _neon(uint8_t *dst, \ |
|
30 |
+ const uint8_t *src, \ |
|
31 |
+ ptrdiff_t stride) |
|
32 |
+ |
|
31 | 33 |
#define DECL_QPEL2(w, pos) \ |
32 | 34 |
DECL_QPEL3(put, w, pos); \ |
33 | 35 |
DECL_QPEL3(avg, w, pos) |
... | ... |
@@ -261,7 +261,7 @@ static void cavs_idct8_add_c(uint8_t *dst, int16_t *block, int stride) { |
261 | 261 |
****************************************************************************/ |
262 | 262 |
|
263 | 263 |
#define CAVS_SUBPIX(OPNAME, OP, NAME, A, B, C, D, E, F) \ |
264 |
-static void OPNAME ## cavs_filt8_h_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
264 |
+static void OPNAME ## cavs_filt8_h_ ## NAME(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
265 | 265 |
const int h=8;\ |
266 | 266 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
267 | 267 |
int i;\ |
... | ... |
@@ -280,7 +280,7 @@ static void OPNAME ## cavs_filt8_h_ ## NAME(uint8_t *dst, uint8_t *src, int dstS |
280 | 280 |
}\ |
281 | 281 |
}\ |
282 | 282 |
\ |
283 |
-static void OPNAME ## cavs_filt8_v_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
283 |
+static void OPNAME ## cavs_filt8_v_ ## NAME(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
284 | 284 |
const int w=8;\ |
285 | 285 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
286 | 286 |
int i;\ |
... | ... |
@@ -312,7 +312,7 @@ static void OPNAME ## cavs_filt8_v_ ## NAME(uint8_t *dst, uint8_t *src, int dst |
312 | 312 |
}\ |
313 | 313 |
}\ |
314 | 314 |
\ |
315 |
-static void OPNAME ## cavs_filt16_v_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
315 |
+static void OPNAME ## cavs_filt16_v_ ## NAME(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
316 | 316 |
OPNAME ## cavs_filt8_v_ ## NAME(dst , src , dstStride, srcStride);\ |
317 | 317 |
OPNAME ## cavs_filt8_v_ ## NAME(dst+8, src+8, dstStride, srcStride);\ |
318 | 318 |
src += 8*srcStride;\ |
... | ... |
@@ -321,7 +321,7 @@ static void OPNAME ## cavs_filt16_v_ ## NAME(uint8_t *dst, uint8_t *src, int dst |
321 | 321 |
OPNAME ## cavs_filt8_v_ ## NAME(dst+8, src+8, dstStride, srcStride);\ |
322 | 322 |
}\ |
323 | 323 |
\ |
324 |
-static void OPNAME ## cavs_filt16_h_ ## NAME(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
324 |
+static void OPNAME ## cavs_filt16_h_ ## NAME(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
325 | 325 |
OPNAME ## cavs_filt8_h_ ## NAME(dst , src , dstStride, srcStride);\ |
326 | 326 |
OPNAME ## cavs_filt8_h_ ## NAME(dst+8, src+8, dstStride, srcStride);\ |
327 | 327 |
src += 8*srcStride;\ |
... | ... |
@@ -331,7 +331,7 @@ static void OPNAME ## cavs_filt16_h_ ## NAME(uint8_t *dst, uint8_t *src, int dst |
331 | 331 |
}\ |
332 | 332 |
|
333 | 333 |
#define CAVS_SUBPIX_HV(OPNAME, OP, NAME, AH, BH, CH, DH, EH, FH, AV, BV, CV, DV, EV, FV, FULL) \ |
334 |
-static void OPNAME ## cavs_filt8_hv_ ## NAME(uint8_t *dst, uint8_t *src1, uint8_t *src2, int dstStride, int srcStride){\ |
|
334 |
+static void OPNAME ## cavs_filt8_hv_ ## NAME(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dstStride, int srcStride){\ |
|
335 | 335 |
int16_t temp[8*(8+5)];\ |
336 | 336 |
int16_t *tmp = temp;\ |
337 | 337 |
const int h=8;\ |
... | ... |
@@ -412,7 +412,7 @@ static void OPNAME ## cavs_filt8_hv_ ## NAME(uint8_t *dst, uint8_t *src1, uint8_ |
412 | 412 |
}\ |
413 | 413 |
}\ |
414 | 414 |
\ |
415 |
-static void OPNAME ## cavs_filt16_hv_ ## NAME(uint8_t *dst, uint8_t *src1, uint8_t *src2, int dstStride, int srcStride){ \ |
|
415 |
+static void OPNAME ## cavs_filt16_hv_ ## NAME(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, int dstStride, int srcStride){ \ |
|
416 | 416 |
OPNAME ## cavs_filt8_hv_ ## NAME(dst , src1, src2 , dstStride, srcStride); \ |
417 | 417 |
OPNAME ## cavs_filt8_hv_ ## NAME(dst+8, src1+8, src2+8, dstStride, srcStride); \ |
418 | 418 |
src1 += 8*srcStride;\ |
... | ... |
@@ -423,77 +423,77 @@ static void OPNAME ## cavs_filt16_hv_ ## NAME(uint8_t *dst, uint8_t *src1, uint8 |
423 | 423 |
}\ |
424 | 424 |
|
425 | 425 |
#define CAVS_MC(OPNAME, SIZE) \ |
426 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc10_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
426 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc10_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
427 | 427 |
{\ |
428 | 428 |
OPNAME ## cavs_filt ## SIZE ## _h_qpel_l(dst, src, stride, stride);\ |
429 | 429 |
}\ |
430 | 430 |
\ |
431 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc20_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
431 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc20_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
432 | 432 |
{\ |
433 | 433 |
OPNAME ## cavs_filt ## SIZE ## _h_hpel(dst, src, stride, stride);\ |
434 | 434 |
}\ |
435 | 435 |
\ |
436 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc30_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
436 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc30_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
437 | 437 |
{\ |
438 | 438 |
OPNAME ## cavs_filt ## SIZE ## _h_qpel_r(dst, src, stride, stride);\ |
439 | 439 |
}\ |
440 | 440 |
\ |
441 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc01_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
441 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc01_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
442 | 442 |
{\ |
443 | 443 |
OPNAME ## cavs_filt ## SIZE ## _v_qpel_l(dst, src, stride, stride);\ |
444 | 444 |
}\ |
445 | 445 |
\ |
446 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc02_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
446 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc02_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
447 | 447 |
{\ |
448 | 448 |
OPNAME ## cavs_filt ## SIZE ## _v_hpel(dst, src, stride, stride);\ |
449 | 449 |
}\ |
450 | 450 |
\ |
451 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc03_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
451 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc03_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
452 | 452 |
{\ |
453 | 453 |
OPNAME ## cavs_filt ## SIZE ## _v_qpel_r(dst, src, stride, stride);\ |
454 | 454 |
}\ |
455 | 455 |
\ |
456 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc22_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
456 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc22_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
457 | 457 |
{\ |
458 | 458 |
OPNAME ## cavs_filt ## SIZE ## _hv_jj(dst, src, NULL, stride, stride); \ |
459 | 459 |
}\ |
460 | 460 |
\ |
461 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc11_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
461 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc11_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
462 | 462 |
{\ |
463 | 463 |
OPNAME ## cavs_filt ## SIZE ## _hv_egpr(dst, src, src, stride, stride); \ |
464 | 464 |
}\ |
465 | 465 |
\ |
466 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc13_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
466 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc13_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
467 | 467 |
{\ |
468 | 468 |
OPNAME ## cavs_filt ## SIZE ## _hv_egpr(dst, src, src+stride, stride, stride); \ |
469 | 469 |
}\ |
470 | 470 |
\ |
471 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc31_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
471 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc31_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
472 | 472 |
{\ |
473 | 473 |
OPNAME ## cavs_filt ## SIZE ## _hv_egpr(dst, src, src+1, stride, stride); \ |
474 | 474 |
}\ |
475 | 475 |
\ |
476 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc33_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
476 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc33_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
477 | 477 |
{\ |
478 | 478 |
OPNAME ## cavs_filt ## SIZE ## _hv_egpr(dst, src, src+stride+1,stride, stride); \ |
479 | 479 |
}\ |
480 | 480 |
\ |
481 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc21_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
481 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc21_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
482 | 482 |
{\ |
483 | 483 |
OPNAME ## cavs_filt ## SIZE ## _hv_ff(dst, src, src+stride+1,stride, stride); \ |
484 | 484 |
}\ |
485 | 485 |
\ |
486 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc12_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
486 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc12_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
487 | 487 |
{\ |
488 | 488 |
OPNAME ## cavs_filt ## SIZE ## _hv_ii(dst, src, src+stride+1,stride, stride); \ |
489 | 489 |
}\ |
490 | 490 |
\ |
491 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc32_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
491 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc32_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
492 | 492 |
{\ |
493 | 493 |
OPNAME ## cavs_filt ## SIZE ## _hv_kk(dst, src, src+stride+1,stride, stride); \ |
494 | 494 |
}\ |
495 | 495 |
\ |
496 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc23_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
496 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc23_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
497 | 497 |
{\ |
498 | 498 |
OPNAME ## cavs_filt ## SIZE ## _hv_qq(dst, src, src+stride+1,stride, stride); \ |
499 | 499 |
}\ |
... | ... |
@@ -75,12 +75,12 @@ static inline void FUNC(copy_block16)(uint8_t *dst, const uint8_t *src, int dstS |
75 | 75 |
} |
76 | 76 |
|
77 | 77 |
#define H264_LOWPASS(OPNAME, OP, OP2) \ |
78 |
-static av_unused void FUNC(OPNAME ## h264_qpel2_h_lowpass)(uint8_t *_dst, uint8_t *_src, int dstStride, int srcStride){\ |
|
78 |
+static av_unused void FUNC(OPNAME ## h264_qpel2_h_lowpass)(uint8_t *_dst, const uint8_t *_src, int dstStride, int srcStride){\ |
|
79 | 79 |
const int h=2;\ |
80 | 80 |
INIT_CLIP\ |
81 | 81 |
int i;\ |
82 | 82 |
pixel *dst = (pixel*)_dst;\ |
83 |
- pixel *src = (pixel*)_src;\ |
|
83 |
+ const pixel *src = (const pixel*)_src;\ |
|
84 | 84 |
dstStride /= sizeof(pixel);\ |
85 | 85 |
srcStride /= sizeof(pixel);\ |
86 | 86 |
for(i=0; i<h; i++)\ |
... | ... |
@@ -92,12 +92,12 @@ static av_unused void FUNC(OPNAME ## h264_qpel2_h_lowpass)(uint8_t *_dst, uint8_ |
92 | 92 |
}\ |
93 | 93 |
}\ |
94 | 94 |
\ |
95 |
-static av_unused void FUNC(OPNAME ## h264_qpel2_v_lowpass)(uint8_t *_dst, uint8_t *_src, int dstStride, int srcStride){\ |
|
95 |
+static av_unused void FUNC(OPNAME ## h264_qpel2_v_lowpass)(uint8_t *_dst, const uint8_t *_src, int dstStride, int srcStride){\ |
|
96 | 96 |
const int w=2;\ |
97 | 97 |
INIT_CLIP\ |
98 | 98 |
int i;\ |
99 | 99 |
pixel *dst = (pixel*)_dst;\ |
100 |
- pixel *src = (pixel*)_src;\ |
|
100 |
+ const pixel *src = (const pixel*)_src;\ |
|
101 | 101 |
dstStride /= sizeof(pixel);\ |
102 | 102 |
srcStride /= sizeof(pixel);\ |
103 | 103 |
for(i=0; i<w; i++)\ |
... | ... |
@@ -116,14 +116,14 @@ static av_unused void FUNC(OPNAME ## h264_qpel2_v_lowpass)(uint8_t *_dst, uint8_ |
116 | 116 |
}\ |
117 | 117 |
}\ |
118 | 118 |
\ |
119 |
-static av_unused void FUNC(OPNAME ## h264_qpel2_hv_lowpass)(uint8_t *_dst, int16_t *tmp, uint8_t *_src, int dstStride, int tmpStride, int srcStride){\ |
|
119 |
+static av_unused void FUNC(OPNAME ## h264_qpel2_hv_lowpass)(uint8_t *_dst, int16_t *tmp, const uint8_t *_src, int dstStride, int tmpStride, int srcStride){\ |
|
120 | 120 |
const int h=2;\ |
121 | 121 |
const int w=2;\ |
122 | 122 |
const int pad = (BIT_DEPTH > 9) ? (-10 * ((1<<BIT_DEPTH)-1)) : 0;\ |
123 | 123 |
INIT_CLIP\ |
124 | 124 |
int i;\ |
125 | 125 |
pixel *dst = (pixel*)_dst;\ |
126 |
- pixel *src = (pixel*)_src;\ |
|
126 |
+ const pixel *src = (const pixel*)_src;\ |
|
127 | 127 |
dstStride /= sizeof(pixel);\ |
128 | 128 |
srcStride /= sizeof(pixel);\ |
129 | 129 |
src -= 2*srcStride;\ |
... | ... |
@@ -150,12 +150,12 @@ static av_unused void FUNC(OPNAME ## h264_qpel2_hv_lowpass)(uint8_t *_dst, int16 |
150 | 150 |
tmp++;\ |
151 | 151 |
}\ |
152 | 152 |
}\ |
153 |
-static void FUNC(OPNAME ## h264_qpel4_h_lowpass)(uint8_t *_dst, uint8_t *_src, int dstStride, int srcStride){\ |
|
153 |
+static void FUNC(OPNAME ## h264_qpel4_h_lowpass)(uint8_t *_dst, const uint8_t *_src, int dstStride, int srcStride){\ |
|
154 | 154 |
const int h=4;\ |
155 | 155 |
INIT_CLIP\ |
156 | 156 |
int i;\ |
157 | 157 |
pixel *dst = (pixel*)_dst;\ |
158 |
- pixel *src = (pixel*)_src;\ |
|
158 |
+ const pixel *src = (const pixel*)_src;\ |
|
159 | 159 |
dstStride /= sizeof(pixel);\ |
160 | 160 |
srcStride /= sizeof(pixel);\ |
161 | 161 |
for(i=0; i<h; i++)\ |
... | ... |
@@ -169,12 +169,12 @@ static void FUNC(OPNAME ## h264_qpel4_h_lowpass)(uint8_t *_dst, uint8_t *_src, i |
169 | 169 |
}\ |
170 | 170 |
}\ |
171 | 171 |
\ |
172 |
-static void FUNC(OPNAME ## h264_qpel4_v_lowpass)(uint8_t *_dst, uint8_t *_src, int dstStride, int srcStride){\ |
|
172 |
+static void FUNC(OPNAME ## h264_qpel4_v_lowpass)(uint8_t *_dst, const uint8_t *_src, int dstStride, int srcStride){\ |
|
173 | 173 |
const int w=4;\ |
174 | 174 |
INIT_CLIP\ |
175 | 175 |
int i;\ |
176 | 176 |
pixel *dst = (pixel*)_dst;\ |
177 |
- pixel *src = (pixel*)_src;\ |
|
177 |
+ const pixel *src = (const pixel*)_src;\ |
|
178 | 178 |
dstStride /= sizeof(pixel);\ |
179 | 179 |
srcStride /= sizeof(pixel);\ |
180 | 180 |
for(i=0; i<w; i++)\ |
... | ... |
@@ -197,14 +197,14 @@ static void FUNC(OPNAME ## h264_qpel4_v_lowpass)(uint8_t *_dst, uint8_t *_src, i |
197 | 197 |
}\ |
198 | 198 |
}\ |
199 | 199 |
\ |
200 |
-static void FUNC(OPNAME ## h264_qpel4_hv_lowpass)(uint8_t *_dst, int16_t *tmp, uint8_t *_src, int dstStride, int tmpStride, int srcStride){\ |
|
200 |
+static void FUNC(OPNAME ## h264_qpel4_hv_lowpass)(uint8_t *_dst, int16_t *tmp, const uint8_t *_src, int dstStride, int tmpStride, int srcStride){\ |
|
201 | 201 |
const int h=4;\ |
202 | 202 |
const int w=4;\ |
203 | 203 |
const int pad = (BIT_DEPTH > 9) ? (-10 * ((1<<BIT_DEPTH)-1)) : 0;\ |
204 | 204 |
INIT_CLIP\ |
205 | 205 |
int i;\ |
206 | 206 |
pixel *dst = (pixel*)_dst;\ |
207 |
- pixel *src = (pixel*)_src;\ |
|
207 |
+ const pixel *src = (const pixel*)_src;\ |
|
208 | 208 |
dstStride /= sizeof(pixel);\ |
209 | 209 |
srcStride /= sizeof(pixel);\ |
210 | 210 |
src -= 2*srcStride;\ |
... | ... |
@@ -238,12 +238,12 @@ static void FUNC(OPNAME ## h264_qpel4_hv_lowpass)(uint8_t *_dst, int16_t *tmp, u |
238 | 238 |
}\ |
239 | 239 |
}\ |
240 | 240 |
\ |
241 |
-static void FUNC(OPNAME ## h264_qpel8_h_lowpass)(uint8_t *_dst, uint8_t *_src, int dstStride, int srcStride){\ |
|
241 |
+static void FUNC(OPNAME ## h264_qpel8_h_lowpass)(uint8_t *_dst, const uint8_t *_src, int dstStride, int srcStride){\ |
|
242 | 242 |
const int h=8;\ |
243 | 243 |
INIT_CLIP\ |
244 | 244 |
int i;\ |
245 | 245 |
pixel *dst = (pixel*)_dst;\ |
246 |
- pixel *src = (pixel*)_src;\ |
|
246 |
+ const pixel *src = (const pixel*)_src;\ |
|
247 | 247 |
dstStride /= sizeof(pixel);\ |
248 | 248 |
srcStride /= sizeof(pixel);\ |
249 | 249 |
for(i=0; i<h; i++)\ |
... | ... |
@@ -261,12 +261,12 @@ static void FUNC(OPNAME ## h264_qpel8_h_lowpass)(uint8_t *_dst, uint8_t *_src, i |
261 | 261 |
}\ |
262 | 262 |
}\ |
263 | 263 |
\ |
264 |
-static void FUNC(OPNAME ## h264_qpel8_v_lowpass)(uint8_t *_dst, uint8_t *_src, int dstStride, int srcStride){\ |
|
264 |
+static void FUNC(OPNAME ## h264_qpel8_v_lowpass)(uint8_t *_dst, const uint8_t *_src, int dstStride, int srcStride){\ |
|
265 | 265 |
const int w=8;\ |
266 | 266 |
INIT_CLIP\ |
267 | 267 |
int i;\ |
268 | 268 |
pixel *dst = (pixel*)_dst;\ |
269 |
- pixel *src = (pixel*)_src;\ |
|
269 |
+ const pixel *src = (const pixel*)_src;\ |
|
270 | 270 |
dstStride /= sizeof(pixel);\ |
271 | 271 |
srcStride /= sizeof(pixel);\ |
272 | 272 |
for(i=0; i<w; i++)\ |
... | ... |
@@ -297,14 +297,14 @@ static void FUNC(OPNAME ## h264_qpel8_v_lowpass)(uint8_t *_dst, uint8_t *_src, i |
297 | 297 |
}\ |
298 | 298 |
}\ |
299 | 299 |
\ |
300 |
-static void FUNC(OPNAME ## h264_qpel8_hv_lowpass)(uint8_t *_dst, int16_t *tmp, uint8_t *_src, int dstStride, int tmpStride, int srcStride){\ |
|
300 |
+static void FUNC(OPNAME ## h264_qpel8_hv_lowpass)(uint8_t *_dst, int16_t *tmp, const uint8_t *_src, int dstStride, int tmpStride, int srcStride){\ |
|
301 | 301 |
const int h=8;\ |
302 | 302 |
const int w=8;\ |
303 | 303 |
const int pad = (BIT_DEPTH > 9) ? (-10 * ((1<<BIT_DEPTH)-1)) : 0;\ |
304 | 304 |
INIT_CLIP\ |
305 | 305 |
int i;\ |
306 | 306 |
pixel *dst = (pixel*)_dst;\ |
307 |
- pixel *src = (pixel*)_src;\ |
|
307 |
+ const pixel *src = (const pixel*)_src;\ |
|
308 | 308 |
dstStride /= sizeof(pixel);\ |
309 | 309 |
srcStride /= sizeof(pixel);\ |
310 | 310 |
src -= 2*srcStride;\ |
... | ... |
@@ -350,7 +350,7 @@ static void FUNC(OPNAME ## h264_qpel8_hv_lowpass)(uint8_t *_dst, int16_t *tmp, u |
350 | 350 |
}\ |
351 | 351 |
}\ |
352 | 352 |
\ |
353 |
-static void FUNC(OPNAME ## h264_qpel16_v_lowpass)(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
353 |
+static void FUNC(OPNAME ## h264_qpel16_v_lowpass)(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
354 | 354 |
FUNC(OPNAME ## h264_qpel8_v_lowpass)(dst , src , dstStride, srcStride);\ |
355 | 355 |
FUNC(OPNAME ## h264_qpel8_v_lowpass)(dst+8*sizeof(pixel), src+8*sizeof(pixel), dstStride, srcStride);\ |
356 | 356 |
src += 8*srcStride;\ |
... | ... |
@@ -359,7 +359,7 @@ static void FUNC(OPNAME ## h264_qpel16_v_lowpass)(uint8_t *dst, uint8_t *src, in |
359 | 359 |
FUNC(OPNAME ## h264_qpel8_v_lowpass)(dst+8*sizeof(pixel), src+8*sizeof(pixel), dstStride, srcStride);\ |
360 | 360 |
}\ |
361 | 361 |
\ |
362 |
-static void FUNC(OPNAME ## h264_qpel16_h_lowpass)(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
362 |
+static void FUNC(OPNAME ## h264_qpel16_h_lowpass)(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
363 | 363 |
FUNC(OPNAME ## h264_qpel8_h_lowpass)(dst , src , dstStride, srcStride);\ |
364 | 364 |
FUNC(OPNAME ## h264_qpel8_h_lowpass)(dst+8*sizeof(pixel), src+8*sizeof(pixel), dstStride, srcStride);\ |
365 | 365 |
src += 8*srcStride;\ |
... | ... |
@@ -368,7 +368,7 @@ static void FUNC(OPNAME ## h264_qpel16_h_lowpass)(uint8_t *dst, uint8_t *src, in |
368 | 368 |
FUNC(OPNAME ## h264_qpel8_h_lowpass)(dst+8*sizeof(pixel), src+8*sizeof(pixel), dstStride, srcStride);\ |
369 | 369 |
}\ |
370 | 370 |
\ |
371 |
-static void FUNC(OPNAME ## h264_qpel16_hv_lowpass)(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
371 |
+static void FUNC(OPNAME ## h264_qpel16_hv_lowpass)(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
372 | 372 |
FUNC(OPNAME ## h264_qpel8_hv_lowpass)(dst , tmp , src , dstStride, tmpStride, srcStride);\ |
373 | 373 |
FUNC(OPNAME ## h264_qpel8_hv_lowpass)(dst+8*sizeof(pixel), tmp+8, src+8*sizeof(pixel), dstStride, tmpStride, srcStride);\ |
374 | 374 |
src += 8*srcStride;\ |
... | ... |
@@ -378,31 +378,31 @@ static void FUNC(OPNAME ## h264_qpel16_hv_lowpass)(uint8_t *dst, int16_t *tmp, u |
378 | 378 |
}\ |
379 | 379 |
|
380 | 380 |
#define H264_MC(OPNAME, SIZE) \ |
381 |
-static av_unused void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc00)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
381 |
+static av_unused void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc00)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
382 | 382 |
{\ |
383 | 383 |
FUNCC(OPNAME ## pixels ## SIZE)(dst, src, stride, SIZE);\ |
384 | 384 |
}\ |
385 | 385 |
\ |
386 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc10)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
386 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc10)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
387 | 387 |
{\ |
388 | 388 |
uint8_t half[SIZE*SIZE*sizeof(pixel)];\ |
389 | 389 |
FUNC(put_h264_qpel ## SIZE ## _h_lowpass)(half, src, SIZE*sizeof(pixel), stride);\ |
390 | 390 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, src, half, stride, stride, SIZE*sizeof(pixel), SIZE);\ |
391 | 391 |
}\ |
392 | 392 |
\ |
393 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc20)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
393 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc20)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
394 | 394 |
{\ |
395 | 395 |
FUNC(OPNAME ## h264_qpel ## SIZE ## _h_lowpass)(dst, src, stride, stride);\ |
396 | 396 |
}\ |
397 | 397 |
\ |
398 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc30)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
398 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc30)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
399 | 399 |
{\ |
400 | 400 |
uint8_t half[SIZE*SIZE*sizeof(pixel)];\ |
401 | 401 |
FUNC(put_h264_qpel ## SIZE ## _h_lowpass)(half, src, SIZE*sizeof(pixel), stride);\ |
402 | 402 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, src+sizeof(pixel), half, stride, stride, SIZE*sizeof(pixel), SIZE);\ |
403 | 403 |
}\ |
404 | 404 |
\ |
405 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc01)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
405 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc01)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
406 | 406 |
{\ |
407 | 407 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
408 | 408 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -412,7 +412,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc01)(uint8_t *dst, uint8_t *s |
412 | 412 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, full_mid, half, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
413 | 413 |
}\ |
414 | 414 |
\ |
415 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc02)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
415 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc02)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
416 | 416 |
{\ |
417 | 417 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
418 | 418 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -420,7 +420,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc02)(uint8_t *dst, uint8_t *s |
420 | 420 |
FUNC(OPNAME ## h264_qpel ## SIZE ## _v_lowpass)(dst, full_mid, stride, SIZE*sizeof(pixel));\ |
421 | 421 |
}\ |
422 | 422 |
\ |
423 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc03)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
423 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc03)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
424 | 424 |
{\ |
425 | 425 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
426 | 426 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -430,7 +430,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc03)(uint8_t *dst, uint8_t *s |
430 | 430 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, full_mid+SIZE*sizeof(pixel), half, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
431 | 431 |
}\ |
432 | 432 |
\ |
433 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc11)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
433 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc11)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
434 | 434 |
{\ |
435 | 435 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
436 | 436 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -442,7 +442,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc11)(uint8_t *dst, uint8_t *s |
442 | 442 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfH, halfV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
443 | 443 |
}\ |
444 | 444 |
\ |
445 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc31)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
445 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc31)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
446 | 446 |
{\ |
447 | 447 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
448 | 448 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -454,7 +454,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc31)(uint8_t *dst, uint8_t *s |
454 | 454 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfH, halfV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
455 | 455 |
}\ |
456 | 456 |
\ |
457 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc13)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
457 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc13)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
458 | 458 |
{\ |
459 | 459 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
460 | 460 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -466,7 +466,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc13)(uint8_t *dst, uint8_t *s |
466 | 466 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfH, halfV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
467 | 467 |
}\ |
468 | 468 |
\ |
469 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc33)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
469 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc33)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
470 | 470 |
{\ |
471 | 471 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
472 | 472 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -478,13 +478,13 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc33)(uint8_t *dst, uint8_t *s |
478 | 478 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfH, halfV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
479 | 479 |
}\ |
480 | 480 |
\ |
481 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc22)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
481 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc22)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
482 | 482 |
{\ |
483 | 483 |
int16_t tmp[SIZE*(SIZE+5)*sizeof(pixel)];\ |
484 | 484 |
FUNC(OPNAME ## h264_qpel ## SIZE ## _hv_lowpass)(dst, tmp, src, stride, SIZE*sizeof(pixel), stride);\ |
485 | 485 |
}\ |
486 | 486 |
\ |
487 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc21)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
487 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc21)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
488 | 488 |
{\ |
489 | 489 |
int16_t tmp[SIZE*(SIZE+5)*sizeof(pixel)];\ |
490 | 490 |
uint8_t halfH[SIZE*SIZE*sizeof(pixel)];\ |
... | ... |
@@ -494,7 +494,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc21)(uint8_t *dst, uint8_t *s |
494 | 494 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfH, halfHV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
495 | 495 |
}\ |
496 | 496 |
\ |
497 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc23)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
497 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc23)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
498 | 498 |
{\ |
499 | 499 |
int16_t tmp[SIZE*(SIZE+5)*sizeof(pixel)];\ |
500 | 500 |
uint8_t halfH[SIZE*SIZE*sizeof(pixel)];\ |
... | ... |
@@ -504,7 +504,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc23)(uint8_t *dst, uint8_t *s |
504 | 504 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfH, halfHV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
505 | 505 |
}\ |
506 | 506 |
\ |
507 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc12)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
507 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc12)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
508 | 508 |
{\ |
509 | 509 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
510 | 510 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -517,7 +517,7 @@ static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc12)(uint8_t *dst, uint8_t *s |
517 | 517 |
FUNC(OPNAME ## pixels ## SIZE ## _l2)(dst, halfV, halfHV, stride, SIZE*sizeof(pixel), SIZE*sizeof(pixel), SIZE);\ |
518 | 518 |
}\ |
519 | 519 |
\ |
520 |
-static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc32)(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
520 |
+static void FUNCC(OPNAME ## h264_qpel ## SIZE ## _mc32)(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
521 | 521 |
{\ |
522 | 522 |
uint8_t full[SIZE*(SIZE+5)*sizeof(pixel)];\ |
523 | 523 |
uint8_t * const full_mid= full + SIZE*2*sizeof(pixel);\ |
... | ... |
@@ -66,50 +66,50 @@ |
66 | 66 |
#undef PREFIX_h264_qpel16_hv_lowpass_num |
67 | 67 |
|
68 | 68 |
#define H264_MC(OPNAME, SIZE, CODETYPE) \ |
69 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc00_ ## CODETYPE (uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
69 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc00_ ## CODETYPE (uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
70 | 70 |
{\ |
71 | 71 |
ff_ ## OPNAME ## pixels ## SIZE ## _ ## CODETYPE(dst, src, stride, SIZE);\ |
72 | 72 |
}\ |
73 | 73 |
\ |
74 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc10_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
74 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc10_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
75 | 75 |
{ \ |
76 | 76 |
DECLARE_ALIGNED(16, uint8_t, half)[SIZE*SIZE];\ |
77 | 77 |
put_h264_qpel ## SIZE ## _h_lowpass_ ## CODETYPE(half, src, SIZE, stride);\ |
78 | 78 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, src, half, stride, stride, SIZE);\ |
79 | 79 |
}\ |
80 | 80 |
\ |
81 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc20_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
81 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc20_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
82 | 82 |
{\ |
83 | 83 |
OPNAME ## h264_qpel ## SIZE ## _h_lowpass_ ## CODETYPE(dst, src, stride, stride);\ |
84 | 84 |
}\ |
85 | 85 |
\ |
86 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc30_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
86 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc30_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
87 | 87 |
{\ |
88 | 88 |
DECLARE_ALIGNED(16, uint8_t, half)[SIZE*SIZE];\ |
89 | 89 |
put_h264_qpel ## SIZE ## _h_lowpass_ ## CODETYPE(half, src, SIZE, stride);\ |
90 | 90 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, src+1, half, stride, stride, SIZE);\ |
91 | 91 |
}\ |
92 | 92 |
\ |
93 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc01_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
93 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc01_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
94 | 94 |
{\ |
95 | 95 |
DECLARE_ALIGNED(16, uint8_t, half)[SIZE*SIZE];\ |
96 | 96 |
put_h264_qpel ## SIZE ## _v_lowpass_ ## CODETYPE(half, src, SIZE, stride);\ |
97 | 97 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, src, half, stride, stride, SIZE);\ |
98 | 98 |
}\ |
99 | 99 |
\ |
100 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc02_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
100 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc02_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
101 | 101 |
{\ |
102 | 102 |
OPNAME ## h264_qpel ## SIZE ## _v_lowpass_ ## CODETYPE(dst, src, stride, stride);\ |
103 | 103 |
}\ |
104 | 104 |
\ |
105 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc03_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
105 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc03_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
106 | 106 |
{\ |
107 | 107 |
DECLARE_ALIGNED(16, uint8_t, half)[SIZE*SIZE];\ |
108 | 108 |
put_h264_qpel ## SIZE ## _v_lowpass_ ## CODETYPE(half, src, SIZE, stride);\ |
109 | 109 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, src+stride, half, stride, stride, SIZE);\ |
110 | 110 |
}\ |
111 | 111 |
\ |
112 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc11_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
112 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc11_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
113 | 113 |
{\ |
114 | 114 |
DECLARE_ALIGNED(16, uint8_t, halfH)[SIZE*SIZE];\ |
115 | 115 |
DECLARE_ALIGNED(16, uint8_t, halfV)[SIZE*SIZE];\ |
... | ... |
@@ -118,7 +118,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc11_ ## CODETYPE(uint8_t *dst, uint |
118 | 118 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfH, halfV, stride, SIZE, SIZE);\ |
119 | 119 |
}\ |
120 | 120 |
\ |
121 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc31_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
121 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc31_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
122 | 122 |
{\ |
123 | 123 |
DECLARE_ALIGNED(16, uint8_t, halfH)[SIZE*SIZE];\ |
124 | 124 |
DECLARE_ALIGNED(16, uint8_t, halfV)[SIZE*SIZE];\ |
... | ... |
@@ -127,7 +127,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc31_ ## CODETYPE(uint8_t *dst, uint |
127 | 127 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfH, halfV, stride, SIZE, SIZE);\ |
128 | 128 |
}\ |
129 | 129 |
\ |
130 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc13_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
130 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc13_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
131 | 131 |
{\ |
132 | 132 |
DECLARE_ALIGNED(16, uint8_t, halfH)[SIZE*SIZE];\ |
133 | 133 |
DECLARE_ALIGNED(16, uint8_t, halfV)[SIZE*SIZE];\ |
... | ... |
@@ -136,7 +136,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc13_ ## CODETYPE(uint8_t *dst, uint |
136 | 136 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfH, halfV, stride, SIZE, SIZE);\ |
137 | 137 |
}\ |
138 | 138 |
\ |
139 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc33_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
139 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc33_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
140 | 140 |
{\ |
141 | 141 |
DECLARE_ALIGNED(16, uint8_t, halfH)[SIZE*SIZE];\ |
142 | 142 |
DECLARE_ALIGNED(16, uint8_t, halfV)[SIZE*SIZE];\ |
... | ... |
@@ -145,13 +145,13 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc33_ ## CODETYPE(uint8_t *dst, uint |
145 | 145 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfH, halfV, stride, SIZE, SIZE);\ |
146 | 146 |
}\ |
147 | 147 |
\ |
148 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc22_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
148 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc22_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
149 | 149 |
{\ |
150 | 150 |
DECLARE_ALIGNED(16, int16_t, tmp)[SIZE*(SIZE+8)];\ |
151 | 151 |
OPNAME ## h264_qpel ## SIZE ## _hv_lowpass_ ## CODETYPE(dst, tmp, src, stride, SIZE, stride);\ |
152 | 152 |
}\ |
153 | 153 |
\ |
154 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc21_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
154 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc21_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
155 | 155 |
{\ |
156 | 156 |
DECLARE_ALIGNED(16, uint8_t, halfH)[SIZE*SIZE];\ |
157 | 157 |
DECLARE_ALIGNED(16, uint8_t, halfHV)[SIZE*SIZE];\ |
... | ... |
@@ -161,7 +161,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc21_ ## CODETYPE(uint8_t *dst, uint |
161 | 161 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfH, halfHV, stride, SIZE, SIZE);\ |
162 | 162 |
}\ |
163 | 163 |
\ |
164 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc23_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
164 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc23_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
165 | 165 |
{\ |
166 | 166 |
DECLARE_ALIGNED(16, uint8_t, halfH)[SIZE*SIZE];\ |
167 | 167 |
DECLARE_ALIGNED(16, uint8_t, halfHV)[SIZE*SIZE];\ |
... | ... |
@@ -171,7 +171,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc23_ ## CODETYPE(uint8_t *dst, uint |
171 | 171 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfH, halfHV, stride, SIZE, SIZE);\ |
172 | 172 |
}\ |
173 | 173 |
\ |
174 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc12_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
174 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc12_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
175 | 175 |
{\ |
176 | 176 |
DECLARE_ALIGNED(16, uint8_t, halfV)[SIZE*SIZE];\ |
177 | 177 |
DECLARE_ALIGNED(16, uint8_t, halfHV)[SIZE*SIZE];\ |
... | ... |
@@ -181,7 +181,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc12_ ## CODETYPE(uint8_t *dst, uint |
181 | 181 |
OPNAME ## pixels ## SIZE ## _l2_ ## CODETYPE(dst, halfV, halfHV, stride, SIZE, SIZE);\ |
182 | 182 |
}\ |
183 | 183 |
\ |
184 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc32_ ## CODETYPE(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
184 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc32_ ## CODETYPE(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
185 | 185 |
{\ |
186 | 186 |
DECLARE_ALIGNED(16, uint8_t, halfV)[SIZE*SIZE];\ |
187 | 187 |
DECLARE_ALIGNED(16, uint8_t, halfHV)[SIZE*SIZE];\ |
... | ... |
@@ -28,7 +28,10 @@ |
28 | 28 |
|
29 | 29 |
/* this code assume stride % 16 == 0 */ |
30 | 30 |
#ifdef PREFIX_h264_qpel16_h_lowpass_altivec |
31 |
-static void PREFIX_h264_qpel16_h_lowpass_altivec(uint8_t * dst, uint8_t * src, int dstStride, int srcStride) { |
|
31 |
+static void PREFIX_h264_qpel16_h_lowpass_altivec(uint8_t *dst, |
|
32 |
+ const uint8_t *src, |
|
33 |
+ int dstStride, int srcStride) |
|
34 |
+{ |
|
32 | 35 |
register int i; |
33 | 36 |
|
34 | 37 |
LOAD_ZERO; |
... | ... |
@@ -168,7 +171,10 @@ static void PREFIX_h264_qpel16_h_lowpass_altivec(uint8_t * dst, uint8_t * src, i |
168 | 168 |
|
169 | 169 |
/* this code assume stride % 16 == 0 */ |
170 | 170 |
#ifdef PREFIX_h264_qpel16_v_lowpass_altivec |
171 |
-static void PREFIX_h264_qpel16_v_lowpass_altivec(uint8_t * dst, uint8_t * src, int dstStride, int srcStride) { |
|
171 |
+static void PREFIX_h264_qpel16_v_lowpass_altivec(uint8_t *dst, |
|
172 |
+ const uint8_t *src, |
|
173 |
+ int dstStride, int srcStride) |
|
174 |
+{ |
|
172 | 175 |
register int i; |
173 | 176 |
|
174 | 177 |
LOAD_ZERO; |
... | ... |
@@ -178,7 +184,7 @@ static void PREFIX_h264_qpel16_v_lowpass_altivec(uint8_t * dst, uint8_t * src, i |
178 | 178 |
const vec_s16 v5ss = vec_splat_s16(5); |
179 | 179 |
const vec_s16 v16ss = vec_sl(vec_splat_s16(1),vec_splat_u16(4)); |
180 | 180 |
|
181 |
- uint8_t *srcbis = src - (srcStride * 2); |
|
181 |
+ const uint8_t *srcbis = src - (srcStride * 2); |
|
182 | 182 |
|
183 | 183 |
const vec_u8 srcM2a = vec_ld(0, srcbis); |
184 | 184 |
const vec_u8 srcM2b = vec_ld(16, srcbis); |
... | ... |
@@ -275,7 +281,11 @@ static void PREFIX_h264_qpel16_v_lowpass_altivec(uint8_t * dst, uint8_t * src, i |
275 | 275 |
|
276 | 276 |
/* this code assume stride % 16 == 0 *and* tmp is properly aligned */ |
277 | 277 |
#ifdef PREFIX_h264_qpel16_hv_lowpass_altivec |
278 |
-static void PREFIX_h264_qpel16_hv_lowpass_altivec(uint8_t * dst, int16_t * tmp, uint8_t * src, int dstStride, int tmpStride, int srcStride) { |
|
278 |
+static void PREFIX_h264_qpel16_hv_lowpass_altivec(uint8_t *dst, int16_t *tmp, |
|
279 |
+ const uint8_t *src, |
|
280 |
+ int dstStride, int tmpStride, |
|
281 |
+ int srcStride) |
|
282 |
+{ |
|
279 | 283 |
register int i; |
280 | 284 |
LOAD_ZERO; |
281 | 285 |
const vec_u8 permM2 = vec_lvsl(-2, src); |
... | ... |
@@ -37,7 +37,7 @@ |
37 | 37 |
#include "qpel_template.c" |
38 | 38 |
|
39 | 39 |
#define QPEL_MC(r, OPNAME, RND, OP) \ |
40 |
-static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, \ |
|
40 |
+static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, const uint8_t *src, \ |
|
41 | 41 |
int dstStride, int srcStride, \ |
42 | 42 |
int h) \ |
43 | 43 |
{ \ |
... | ... |
@@ -58,7 +58,7 @@ static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, \ |
58 | 58 |
} \ |
59 | 59 |
} \ |
60 | 60 |
\ |
61 |
-static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, \ |
|
61 |
+static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, const uint8_t *src, \ |
|
62 | 62 |
int dstStride, int srcStride) \ |
63 | 63 |
{ \ |
64 | 64 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; \ |
... | ... |
@@ -88,7 +88,8 @@ static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, \ |
88 | 88 |
} \ |
89 | 89 |
} \ |
90 | 90 |
\ |
91 |
-static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, \ |
|
91 |
+static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, \ |
|
92 |
+ const uint8_t *src, \ |
|
92 | 93 |
int dstStride, int srcStride, \ |
93 | 94 |
int h) \ |
94 | 95 |
{ \ |
... | ... |
@@ -117,7 +118,8 @@ static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, \ |
117 | 117 |
} \ |
118 | 118 |
} \ |
119 | 119 |
\ |
120 |
-static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, \ |
|
120 |
+static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, \ |
|
121 |
+ const uint8_t *src, \ |
|
121 | 122 |
int dstStride, int srcStride) \ |
122 | 123 |
{ \ |
123 | 124 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; \ |
... | ... |
@@ -163,7 +165,7 @@ static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, \ |
163 | 163 |
} \ |
164 | 164 |
} \ |
165 | 165 |
\ |
166 |
-static void OPNAME ## qpel8_mc10_c(uint8_t *dst, uint8_t *src, \ |
|
166 |
+static void OPNAME ## qpel8_mc10_c(uint8_t *dst, const uint8_t *src, \ |
|
167 | 167 |
ptrdiff_t stride) \ |
168 | 168 |
{ \ |
169 | 169 |
uint8_t half[64]; \ |
... | ... |
@@ -172,13 +174,13 @@ static void OPNAME ## qpel8_mc10_c(uint8_t *dst, uint8_t *src, \ |
172 | 172 |
OPNAME ## pixels8_l2_8(dst, src, half, stride, stride, 8, 8); \ |
173 | 173 |
} \ |
174 | 174 |
\ |
175 |
-static void OPNAME ## qpel8_mc20_c(uint8_t *dst, uint8_t *src, \ |
|
175 |
+static void OPNAME ## qpel8_mc20_c(uint8_t *dst, const uint8_t *src, \ |
|
176 | 176 |
ptrdiff_t stride) \ |
177 | 177 |
{ \ |
178 | 178 |
OPNAME ## mpeg4_qpel8_h_lowpass(dst, src, stride, stride, 8); \ |
179 | 179 |
} \ |
180 | 180 |
\ |
181 |
-static void OPNAME ## qpel8_mc30_c(uint8_t *dst, uint8_t *src, \ |
|
181 |
+static void OPNAME ## qpel8_mc30_c(uint8_t *dst, const uint8_t *src, \ |
|
182 | 182 |
ptrdiff_t stride) \ |
183 | 183 |
{ \ |
184 | 184 |
uint8_t half[64]; \ |
... | ... |
@@ -187,7 +189,7 @@ static void OPNAME ## qpel8_mc30_c(uint8_t *dst, uint8_t *src, \ |
187 | 187 |
OPNAME ## pixels8_l2_8(dst, src + 1, half, stride, stride, 8, 8); \ |
188 | 188 |
} \ |
189 | 189 |
\ |
190 |
-static void OPNAME ## qpel8_mc01_c(uint8_t *dst, uint8_t *src, \ |
|
190 |
+static void OPNAME ## qpel8_mc01_c(uint8_t *dst, const uint8_t *src, \ |
|
191 | 191 |
ptrdiff_t stride) \ |
192 | 192 |
{ \ |
193 | 193 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -198,7 +200,7 @@ static void OPNAME ## qpel8_mc01_c(uint8_t *dst, uint8_t *src, \ |
198 | 198 |
OPNAME ## pixels8_l2_8(dst, full, half, stride, 16, 8, 8); \ |
199 | 199 |
} \ |
200 | 200 |
\ |
201 |
-static void OPNAME ## qpel8_mc02_c(uint8_t *dst, uint8_t *src, \ |
|
201 |
+static void OPNAME ## qpel8_mc02_c(uint8_t *dst, const uint8_t *src, \ |
|
202 | 202 |
ptrdiff_t stride) \ |
203 | 203 |
{ \ |
204 | 204 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -207,7 +209,7 @@ static void OPNAME ## qpel8_mc02_c(uint8_t *dst, uint8_t *src, \ |
207 | 207 |
OPNAME ## mpeg4_qpel8_v_lowpass(dst, full, stride, 16); \ |
208 | 208 |
} \ |
209 | 209 |
\ |
210 |
-static void OPNAME ## qpel8_mc03_c(uint8_t *dst, uint8_t *src, \ |
|
210 |
+static void OPNAME ## qpel8_mc03_c(uint8_t *dst, const uint8_t *src, \ |
|
211 | 211 |
ptrdiff_t stride) \ |
212 | 212 |
{ \ |
213 | 213 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -218,7 +220,7 @@ static void OPNAME ## qpel8_mc03_c(uint8_t *dst, uint8_t *src, \ |
218 | 218 |
OPNAME ## pixels8_l2_8(dst, full + 16, half, stride, 16, 8, 8); \ |
219 | 219 |
} \ |
220 | 220 |
\ |
221 |
-void ff_ ## OPNAME ## qpel8_mc11_old_c(uint8_t *dst, uint8_t *src, \ |
|
221 |
+void ff_ ## OPNAME ## qpel8_mc11_old_c(uint8_t *dst, const uint8_t *src, \ |
|
222 | 222 |
ptrdiff_t stride) \ |
223 | 223 |
{ \ |
224 | 224 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -234,7 +236,7 @@ void ff_ ## OPNAME ## qpel8_mc11_old_c(uint8_t *dst, uint8_t *src, \ |
234 | 234 |
stride, 16, 8, 8, 8, 8); \ |
235 | 235 |
} \ |
236 | 236 |
\ |
237 |
-static void OPNAME ## qpel8_mc11_c(uint8_t *dst, uint8_t *src, \ |
|
237 |
+static void OPNAME ## qpel8_mc11_c(uint8_t *dst, const uint8_t *src, \ |
|
238 | 238 |
ptrdiff_t stride) \ |
239 | 239 |
{ \ |
240 | 240 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -248,7 +250,7 @@ static void OPNAME ## qpel8_mc11_c(uint8_t *dst, uint8_t *src, \ |
248 | 248 |
OPNAME ## pixels8_l2_8(dst, halfH, halfHV, stride, 8, 8, 8); \ |
249 | 249 |
} \ |
250 | 250 |
\ |
251 |
-void ff_ ## OPNAME ## qpel8_mc31_old_c(uint8_t *dst, uint8_t *src, \ |
|
251 |
+void ff_ ## OPNAME ## qpel8_mc31_old_c(uint8_t *dst, const uint8_t *src, \ |
|
252 | 252 |
ptrdiff_t stride) \ |
253 | 253 |
{ \ |
254 | 254 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -264,7 +266,7 @@ void ff_ ## OPNAME ## qpel8_mc31_old_c(uint8_t *dst, uint8_t *src, \ |
264 | 264 |
stride, 16, 8, 8, 8, 8); \ |
265 | 265 |
} \ |
266 | 266 |
\ |
267 |
-static void OPNAME ## qpel8_mc31_c(uint8_t *dst, uint8_t *src, \ |
|
267 |
+static void OPNAME ## qpel8_mc31_c(uint8_t *dst, const uint8_t *src, \ |
|
268 | 268 |
ptrdiff_t stride) \ |
269 | 269 |
{ \ |
270 | 270 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -278,7 +280,7 @@ static void OPNAME ## qpel8_mc31_c(uint8_t *dst, uint8_t *src, \ |
278 | 278 |
OPNAME ## pixels8_l2_8(dst, halfH, halfHV, stride, 8, 8, 8); \ |
279 | 279 |
} \ |
280 | 280 |
\ |
281 |
-void ff_ ## OPNAME ## qpel8_mc13_old_c(uint8_t *dst, uint8_t *src, \ |
|
281 |
+void ff_ ## OPNAME ## qpel8_mc13_old_c(uint8_t *dst, const uint8_t *src, \ |
|
282 | 282 |
ptrdiff_t stride) \ |
283 | 283 |
{ \ |
284 | 284 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -294,7 +296,7 @@ void ff_ ## OPNAME ## qpel8_mc13_old_c(uint8_t *dst, uint8_t *src, \ |
294 | 294 |
stride, 16, 8, 8, 8, 8); \ |
295 | 295 |
} \ |
296 | 296 |
\ |
297 |
-static void OPNAME ## qpel8_mc13_c(uint8_t *dst, uint8_t *src, \ |
|
297 |
+static void OPNAME ## qpel8_mc13_c(uint8_t *dst, const uint8_t *src, \ |
|
298 | 298 |
ptrdiff_t stride) \ |
299 | 299 |
{ \ |
300 | 300 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -308,7 +310,7 @@ static void OPNAME ## qpel8_mc13_c(uint8_t *dst, uint8_t *src, \ |
308 | 308 |
OPNAME ## pixels8_l2_8(dst, halfH + 8, halfHV, stride, 8, 8, 8); \ |
309 | 309 |
} \ |
310 | 310 |
\ |
311 |
-void ff_ ## OPNAME ## qpel8_mc33_old_c(uint8_t *dst, uint8_t *src, \ |
|
311 |
+void ff_ ## OPNAME ## qpel8_mc33_old_c(uint8_t *dst, const uint8_t *src, \ |
|
312 | 312 |
ptrdiff_t stride) \ |
313 | 313 |
{ \ |
314 | 314 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -324,7 +326,7 @@ void ff_ ## OPNAME ## qpel8_mc33_old_c(uint8_t *dst, uint8_t *src, \ |
324 | 324 |
stride, 16, 8, 8, 8, 8); \ |
325 | 325 |
} \ |
326 | 326 |
\ |
327 |
-static void OPNAME ## qpel8_mc33_c(uint8_t *dst, uint8_t *src, \ |
|
327 |
+static void OPNAME ## qpel8_mc33_c(uint8_t *dst, const uint8_t *src, \ |
|
328 | 328 |
ptrdiff_t stride) \ |
329 | 329 |
{ \ |
330 | 330 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -338,7 +340,7 @@ static void OPNAME ## qpel8_mc33_c(uint8_t *dst, uint8_t *src, \ |
338 | 338 |
OPNAME ## pixels8_l2_8(dst, halfH + 8, halfHV, stride, 8, 8, 8); \ |
339 | 339 |
} \ |
340 | 340 |
\ |
341 |
-static void OPNAME ## qpel8_mc21_c(uint8_t *dst, uint8_t *src, \ |
|
341 |
+static void OPNAME ## qpel8_mc21_c(uint8_t *dst, const uint8_t *src, \ |
|
342 | 342 |
ptrdiff_t stride) \ |
343 | 343 |
{ \ |
344 | 344 |
uint8_t halfH[72]; \ |
... | ... |
@@ -349,7 +351,7 @@ static void OPNAME ## qpel8_mc21_c(uint8_t *dst, uint8_t *src, \ |
349 | 349 |
OPNAME ## pixels8_l2_8(dst, halfH, halfHV, stride, 8, 8, 8); \ |
350 | 350 |
} \ |
351 | 351 |
\ |
352 |
-static void OPNAME ## qpel8_mc23_c(uint8_t *dst, uint8_t *src, \ |
|
352 |
+static void OPNAME ## qpel8_mc23_c(uint8_t *dst, const uint8_t *src, \ |
|
353 | 353 |
ptrdiff_t stride) \ |
354 | 354 |
{ \ |
355 | 355 |
uint8_t halfH[72]; \ |
... | ... |
@@ -360,7 +362,7 @@ static void OPNAME ## qpel8_mc23_c(uint8_t *dst, uint8_t *src, \ |
360 | 360 |
OPNAME ## pixels8_l2_8(dst, halfH + 8, halfHV, stride, 8, 8, 8); \ |
361 | 361 |
} \ |
362 | 362 |
\ |
363 |
-void ff_ ## OPNAME ## qpel8_mc12_old_c(uint8_t *dst, uint8_t *src, \ |
|
363 |
+void ff_ ## OPNAME ## qpel8_mc12_old_c(uint8_t *dst, const uint8_t *src, \ |
|
364 | 364 |
ptrdiff_t stride) \ |
365 | 365 |
{ \ |
366 | 366 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -375,7 +377,7 @@ void ff_ ## OPNAME ## qpel8_mc12_old_c(uint8_t *dst, uint8_t *src, \ |
375 | 375 |
OPNAME ## pixels8_l2_8(dst, halfV, halfHV, stride, 8, 8, 8); \ |
376 | 376 |
} \ |
377 | 377 |
\ |
378 |
-static void OPNAME ## qpel8_mc12_c(uint8_t *dst, uint8_t *src, \ |
|
378 |
+static void OPNAME ## qpel8_mc12_c(uint8_t *dst, const uint8_t *src, \ |
|
379 | 379 |
ptrdiff_t stride) \ |
380 | 380 |
{ \ |
381 | 381 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -387,7 +389,7 @@ static void OPNAME ## qpel8_mc12_c(uint8_t *dst, uint8_t *src, \ |
387 | 387 |
OPNAME ## mpeg4_qpel8_v_lowpass(dst, halfH, stride, 8); \ |
388 | 388 |
} \ |
389 | 389 |
\ |
390 |
-void ff_ ## OPNAME ## qpel8_mc32_old_c(uint8_t *dst, uint8_t *src, \ |
|
390 |
+void ff_ ## OPNAME ## qpel8_mc32_old_c(uint8_t *dst, const uint8_t *src, \ |
|
391 | 391 |
ptrdiff_t stride) \ |
392 | 392 |
{ \ |
393 | 393 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -402,7 +404,7 @@ void ff_ ## OPNAME ## qpel8_mc32_old_c(uint8_t *dst, uint8_t *src, \ |
402 | 402 |
OPNAME ## pixels8_l2_8(dst, halfV, halfHV, stride, 8, 8, 8); \ |
403 | 403 |
} \ |
404 | 404 |
\ |
405 |
-static void OPNAME ## qpel8_mc32_c(uint8_t *dst, uint8_t *src, \ |
|
405 |
+static void OPNAME ## qpel8_mc32_c(uint8_t *dst, const uint8_t *src, \ |
|
406 | 406 |
ptrdiff_t stride) \ |
407 | 407 |
{ \ |
408 | 408 |
uint8_t full[16 * 9]; \ |
... | ... |
@@ -414,7 +416,7 @@ static void OPNAME ## qpel8_mc32_c(uint8_t *dst, uint8_t *src, \ |
414 | 414 |
OPNAME ## mpeg4_qpel8_v_lowpass(dst, halfH, stride, 8); \ |
415 | 415 |
} \ |
416 | 416 |
\ |
417 |
-static void OPNAME ## qpel8_mc22_c(uint8_t *dst, uint8_t *src, \ |
|
417 |
+static void OPNAME ## qpel8_mc22_c(uint8_t *dst, const uint8_t *src, \ |
|
418 | 418 |
ptrdiff_t stride) \ |
419 | 419 |
{ \ |
420 | 420 |
uint8_t halfH[72]; \ |
... | ... |
@@ -423,7 +425,7 @@ static void OPNAME ## qpel8_mc22_c(uint8_t *dst, uint8_t *src, \ |
423 | 423 |
OPNAME ## mpeg4_qpel8_v_lowpass(dst, halfH, stride, 8); \ |
424 | 424 |
} \ |
425 | 425 |
\ |
426 |
-static void OPNAME ## qpel16_mc10_c(uint8_t *dst, uint8_t *src, \ |
|
426 |
+static void OPNAME ## qpel16_mc10_c(uint8_t *dst, const uint8_t *src, \ |
|
427 | 427 |
ptrdiff_t stride) \ |
428 | 428 |
{ \ |
429 | 429 |
uint8_t half[256]; \ |
... | ... |
@@ -432,13 +434,13 @@ static void OPNAME ## qpel16_mc10_c(uint8_t *dst, uint8_t *src, \ |
432 | 432 |
OPNAME ## pixels16_l2_8(dst, src, half, stride, stride, 16, 16); \ |
433 | 433 |
} \ |
434 | 434 |
\ |
435 |
-static void OPNAME ## qpel16_mc20_c(uint8_t *dst, uint8_t *src, \ |
|
435 |
+static void OPNAME ## qpel16_mc20_c(uint8_t *dst, const uint8_t *src, \ |
|
436 | 436 |
ptrdiff_t stride) \ |
437 | 437 |
{ \ |
438 | 438 |
OPNAME ## mpeg4_qpel16_h_lowpass(dst, src, stride, stride, 16); \ |
439 | 439 |
} \ |
440 | 440 |
\ |
441 |
-static void OPNAME ## qpel16_mc30_c(uint8_t *dst, uint8_t *src, \ |
|
441 |
+static void OPNAME ## qpel16_mc30_c(uint8_t *dst, const uint8_t *src, \ |
|
442 | 442 |
ptrdiff_t stride) \ |
443 | 443 |
{ \ |
444 | 444 |
uint8_t half[256]; \ |
... | ... |
@@ -447,7 +449,7 @@ static void OPNAME ## qpel16_mc30_c(uint8_t *dst, uint8_t *src, \ |
447 | 447 |
OPNAME ## pixels16_l2_8(dst, src + 1, half, stride, stride, 16, 16); \ |
448 | 448 |
} \ |
449 | 449 |
\ |
450 |
-static void OPNAME ## qpel16_mc01_c(uint8_t *dst, uint8_t *src, \ |
|
450 |
+static void OPNAME ## qpel16_mc01_c(uint8_t *dst, const uint8_t *src, \ |
|
451 | 451 |
ptrdiff_t stride) \ |
452 | 452 |
{ \ |
453 | 453 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -458,7 +460,7 @@ static void OPNAME ## qpel16_mc01_c(uint8_t *dst, uint8_t *src, \ |
458 | 458 |
OPNAME ## pixels16_l2_8(dst, full, half, stride, 24, 16, 16); \ |
459 | 459 |
} \ |
460 | 460 |
\ |
461 |
-static void OPNAME ## qpel16_mc02_c(uint8_t *dst, uint8_t *src, \ |
|
461 |
+static void OPNAME ## qpel16_mc02_c(uint8_t *dst, const uint8_t *src, \ |
|
462 | 462 |
ptrdiff_t stride) \ |
463 | 463 |
{ \ |
464 | 464 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -467,7 +469,7 @@ static void OPNAME ## qpel16_mc02_c(uint8_t *dst, uint8_t *src, \ |
467 | 467 |
OPNAME ## mpeg4_qpel16_v_lowpass(dst, full, stride, 24); \ |
468 | 468 |
} \ |
469 | 469 |
\ |
470 |
-static void OPNAME ## qpel16_mc03_c(uint8_t *dst, uint8_t *src, \ |
|
470 |
+static void OPNAME ## qpel16_mc03_c(uint8_t *dst, const uint8_t *src, \ |
|
471 | 471 |
ptrdiff_t stride) \ |
472 | 472 |
{ \ |
473 | 473 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -478,7 +480,7 @@ static void OPNAME ## qpel16_mc03_c(uint8_t *dst, uint8_t *src, \ |
478 | 478 |
OPNAME ## pixels16_l2_8(dst, full + 24, half, stride, 24, 16, 16); \ |
479 | 479 |
} \ |
480 | 480 |
\ |
481 |
-void ff_ ## OPNAME ## qpel16_mc11_old_c(uint8_t *dst, uint8_t *src, \ |
|
481 |
+void ff_ ## OPNAME ## qpel16_mc11_old_c(uint8_t *dst, const uint8_t *src, \ |
|
482 | 482 |
ptrdiff_t stride) \ |
483 | 483 |
{ \ |
484 | 484 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -494,7 +496,7 @@ void ff_ ## OPNAME ## qpel16_mc11_old_c(uint8_t *dst, uint8_t *src, \ |
494 | 494 |
stride, 24, 16, 16, 16, 16); \ |
495 | 495 |
} \ |
496 | 496 |
\ |
497 |
-static void OPNAME ## qpel16_mc11_c(uint8_t *dst, uint8_t *src, \ |
|
497 |
+static void OPNAME ## qpel16_mc11_c(uint8_t *dst, const uint8_t *src, \ |
|
498 | 498 |
ptrdiff_t stride) \ |
499 | 499 |
{ \ |
500 | 500 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -508,7 +510,7 @@ static void OPNAME ## qpel16_mc11_c(uint8_t *dst, uint8_t *src, \ |
508 | 508 |
OPNAME ## pixels16_l2_8(dst, halfH, halfHV, stride, 16, 16, 16); \ |
509 | 509 |
} \ |
510 | 510 |
\ |
511 |
-void ff_ ## OPNAME ## qpel16_mc31_old_c(uint8_t *dst, uint8_t *src, \ |
|
511 |
+void ff_ ## OPNAME ## qpel16_mc31_old_c(uint8_t *dst, const uint8_t *src, \ |
|
512 | 512 |
ptrdiff_t stride) \ |
513 | 513 |
{ \ |
514 | 514 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -524,7 +526,7 @@ void ff_ ## OPNAME ## qpel16_mc31_old_c(uint8_t *dst, uint8_t *src, \ |
524 | 524 |
stride, 24, 16, 16, 16, 16); \ |
525 | 525 |
} \ |
526 | 526 |
\ |
527 |
-static void OPNAME ## qpel16_mc31_c(uint8_t *dst, uint8_t *src, \ |
|
527 |
+static void OPNAME ## qpel16_mc31_c(uint8_t *dst, const uint8_t *src, \ |
|
528 | 528 |
ptrdiff_t stride) \ |
529 | 529 |
{ \ |
530 | 530 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -538,7 +540,7 @@ static void OPNAME ## qpel16_mc31_c(uint8_t *dst, uint8_t *src, \ |
538 | 538 |
OPNAME ## pixels16_l2_8(dst, halfH, halfHV, stride, 16, 16, 16); \ |
539 | 539 |
} \ |
540 | 540 |
\ |
541 |
-void ff_ ## OPNAME ## qpel16_mc13_old_c(uint8_t *dst, uint8_t *src, \ |
|
541 |
+void ff_ ## OPNAME ## qpel16_mc13_old_c(uint8_t *dst, const uint8_t *src, \ |
|
542 | 542 |
ptrdiff_t stride) \ |
543 | 543 |
{ \ |
544 | 544 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -554,7 +556,7 @@ void ff_ ## OPNAME ## qpel16_mc13_old_c(uint8_t *dst, uint8_t *src, \ |
554 | 554 |
stride, 24, 16, 16, 16, 16); \ |
555 | 555 |
} \ |
556 | 556 |
\ |
557 |
-static void OPNAME ## qpel16_mc13_c(uint8_t *dst, uint8_t *src, \ |
|
557 |
+static void OPNAME ## qpel16_mc13_c(uint8_t *dst, const uint8_t *src, \ |
|
558 | 558 |
ptrdiff_t stride) \ |
559 | 559 |
{ \ |
560 | 560 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -568,7 +570,7 @@ static void OPNAME ## qpel16_mc13_c(uint8_t *dst, uint8_t *src, \ |
568 | 568 |
OPNAME ## pixels16_l2_8(dst, halfH + 16, halfHV, stride, 16, 16, 16); \ |
569 | 569 |
} \ |
570 | 570 |
\ |
571 |
-void ff_ ## OPNAME ## qpel16_mc33_old_c(uint8_t *dst, uint8_t *src, \ |
|
571 |
+void ff_ ## OPNAME ## qpel16_mc33_old_c(uint8_t *dst, const uint8_t *src, \ |
|
572 | 572 |
ptrdiff_t stride) \ |
573 | 573 |
{ \ |
574 | 574 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -584,7 +586,7 @@ void ff_ ## OPNAME ## qpel16_mc33_old_c(uint8_t *dst, uint8_t *src, \ |
584 | 584 |
stride, 24, 16, 16, 16, 16); \ |
585 | 585 |
} \ |
586 | 586 |
\ |
587 |
-static void OPNAME ## qpel16_mc33_c(uint8_t *dst, uint8_t *src, \ |
|
587 |
+static void OPNAME ## qpel16_mc33_c(uint8_t *dst, const uint8_t *src, \ |
|
588 | 588 |
ptrdiff_t stride) \ |
589 | 589 |
{ \ |
590 | 590 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -598,7 +600,7 @@ static void OPNAME ## qpel16_mc33_c(uint8_t *dst, uint8_t *src, \ |
598 | 598 |
OPNAME ## pixels16_l2_8(dst, halfH + 16, halfHV, stride, 16, 16, 16); \ |
599 | 599 |
} \ |
600 | 600 |
\ |
601 |
-static void OPNAME ## qpel16_mc21_c(uint8_t *dst, uint8_t *src, \ |
|
601 |
+static void OPNAME ## qpel16_mc21_c(uint8_t *dst, const uint8_t *src, \ |
|
602 | 602 |
ptrdiff_t stride) \ |
603 | 603 |
{ \ |
604 | 604 |
uint8_t halfH[272]; \ |
... | ... |
@@ -609,7 +611,7 @@ static void OPNAME ## qpel16_mc21_c(uint8_t *dst, uint8_t *src, \ |
609 | 609 |
OPNAME ## pixels16_l2_8(dst, halfH, halfHV, stride, 16, 16, 16); \ |
610 | 610 |
} \ |
611 | 611 |
\ |
612 |
-static void OPNAME ## qpel16_mc23_c(uint8_t *dst, uint8_t *src, \ |
|
612 |
+static void OPNAME ## qpel16_mc23_c(uint8_t *dst, const uint8_t *src, \ |
|
613 | 613 |
ptrdiff_t stride) \ |
614 | 614 |
{ \ |
615 | 615 |
uint8_t halfH[272]; \ |
... | ... |
@@ -620,7 +622,7 @@ static void OPNAME ## qpel16_mc23_c(uint8_t *dst, uint8_t *src, \ |
620 | 620 |
OPNAME ## pixels16_l2_8(dst, halfH + 16, halfHV, stride, 16, 16, 16); \ |
621 | 621 |
} \ |
622 | 622 |
\ |
623 |
-void ff_ ## OPNAME ## qpel16_mc12_old_c(uint8_t *dst, uint8_t *src, \ |
|
623 |
+void ff_ ## OPNAME ## qpel16_mc12_old_c(uint8_t *dst, const uint8_t *src, \ |
|
624 | 624 |
ptrdiff_t stride) \ |
625 | 625 |
{ \ |
626 | 626 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -635,7 +637,7 @@ void ff_ ## OPNAME ## qpel16_mc12_old_c(uint8_t *dst, uint8_t *src, \ |
635 | 635 |
OPNAME ## pixels16_l2_8(dst, halfV, halfHV, stride, 16, 16, 16); \ |
636 | 636 |
} \ |
637 | 637 |
\ |
638 |
-static void OPNAME ## qpel16_mc12_c(uint8_t *dst, uint8_t *src, \ |
|
638 |
+static void OPNAME ## qpel16_mc12_c(uint8_t *dst, const uint8_t *src, \ |
|
639 | 639 |
ptrdiff_t stride) \ |
640 | 640 |
{ \ |
641 | 641 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -647,7 +649,7 @@ static void OPNAME ## qpel16_mc12_c(uint8_t *dst, uint8_t *src, \ |
647 | 647 |
OPNAME ## mpeg4_qpel16_v_lowpass(dst, halfH, stride, 16); \ |
648 | 648 |
} \ |
649 | 649 |
\ |
650 |
-void ff_ ## OPNAME ## qpel16_mc32_old_c(uint8_t *dst, uint8_t *src, \ |
|
650 |
+void ff_ ## OPNAME ## qpel16_mc32_old_c(uint8_t *dst, const uint8_t *src, \ |
|
651 | 651 |
ptrdiff_t stride) \ |
652 | 652 |
{ \ |
653 | 653 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -662,7 +664,7 @@ void ff_ ## OPNAME ## qpel16_mc32_old_c(uint8_t *dst, uint8_t *src, \ |
662 | 662 |
OPNAME ## pixels16_l2_8(dst, halfV, halfHV, stride, 16, 16, 16); \ |
663 | 663 |
} \ |
664 | 664 |
\ |
665 |
-static void OPNAME ## qpel16_mc32_c(uint8_t *dst, uint8_t *src, \ |
|
665 |
+static void OPNAME ## qpel16_mc32_c(uint8_t *dst, const uint8_t *src, \ |
|
666 | 666 |
ptrdiff_t stride) \ |
667 | 667 |
{ \ |
668 | 668 |
uint8_t full[24 * 17]; \ |
... | ... |
@@ -674,7 +676,7 @@ static void OPNAME ## qpel16_mc32_c(uint8_t *dst, uint8_t *src, \ |
674 | 674 |
OPNAME ## mpeg4_qpel16_v_lowpass(dst, halfH, stride, 16); \ |
675 | 675 |
} \ |
676 | 676 |
\ |
677 |
-static void OPNAME ## qpel16_mc22_c(uint8_t *dst, uint8_t *src, \ |
|
677 |
+static void OPNAME ## qpel16_mc22_c(uint8_t *dst, const uint8_t *src, \ |
|
678 | 678 |
ptrdiff_t stride) \ |
679 | 679 |
{ \ |
680 | 680 |
uint8_t halfH[272]; \ |
... | ... |
@@ -695,22 +697,22 @@ QPEL_MC(0, avg_, _, op_avg) |
695 | 695 |
#undef op_put |
696 | 696 |
#undef op_put_no_rnd |
697 | 697 |
|
698 |
-void ff_put_pixels8x8_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
698 |
+void ff_put_pixels8x8_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
699 | 699 |
{ |
700 | 700 |
put_pixels8_8_c(dst, src, stride, 8); |
701 | 701 |
} |
702 | 702 |
|
703 |
-void ff_avg_pixels8x8_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
703 |
+void ff_avg_pixels8x8_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
704 | 704 |
{ |
705 | 705 |
avg_pixels8_8_c(dst, src, stride, 8); |
706 | 706 |
} |
707 | 707 |
|
708 |
-void ff_put_pixels16x16_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
708 |
+void ff_put_pixels16x16_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
709 | 709 |
{ |
710 | 710 |
put_pixels16_8_c(dst, src, stride, 16); |
711 | 711 |
} |
712 | 712 |
|
713 |
-void ff_avg_pixels16x16_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
713 |
+void ff_avg_pixels16x16_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
714 | 714 |
{ |
715 | 715 |
avg_pixels16_8_c(dst, src, stride, 16); |
716 | 716 |
} |
... | ... |
@@ -29,22 +29,25 @@ |
29 | 29 |
#include <stddef.h> |
30 | 30 |
#include <stdint.h> |
31 | 31 |
|
32 |
-void ff_put_pixels8x8_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride); |
|
33 |
-void ff_avg_pixels8x8_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride); |
|
34 |
-void ff_put_pixels16x16_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride); |
|
35 |
-void ff_avg_pixels16x16_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride); |
|
32 |
+void ff_put_pixels8x8_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
33 |
+void ff_avg_pixels8x8_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
34 |
+void ff_put_pixels16x16_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
35 |
+void ff_avg_pixels16x16_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
36 | 36 |
|
37 | 37 |
void ff_put_pixels8_l2_8(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
38 | 38 |
int dst_stride, int src_stride1, int src_stride2, |
39 | 39 |
int h); |
40 | 40 |
|
41 |
-#define DEF_OLD_QPEL(name) \ |
|
42 |
- void ff_put_ ## name(uint8_t *dst /* align width (8 or 16) */, \ |
|
43 |
- uint8_t *src /* align 1 */, ptrdiff_t stride); \ |
|
44 |
- void ff_put_no_rnd_ ## name(uint8_t *dst /* align width (8 or 16) */, \ |
|
45 |
- uint8_t *src /* align 1 */, ptrdiff_t stride); \ |
|
46 |
- void ff_avg_ ## name(uint8_t *dst /* align width (8 or 16) */, \ |
|
47 |
- uint8_t *src /* align 1 */, ptrdiff_t stride); |
|
41 |
+#define DEF_OLD_QPEL(name) \ |
|
42 |
+void ff_put_ ## name(uint8_t *dst /* align width (8 or 16) */, \ |
|
43 |
+ const uint8_t *src /* align 1 */, \ |
|
44 |
+ ptrdiff_t stride); \ |
|
45 |
+void ff_put_no_rnd_ ## name(uint8_t *dst /* align width (8 or 16) */, \ |
|
46 |
+ const uint8_t *src /* align 1 */, \ |
|
47 |
+ ptrdiff_t stride); \ |
|
48 |
+void ff_avg_ ## name(uint8_t *dst /* align width (8 or 16) */, \ |
|
49 |
+ const uint8_t *src /* align 1 */, \ |
|
50 |
+ ptrdiff_t stride); |
|
48 | 51 |
|
49 | 52 |
DEF_OLD_QPEL(qpel16_mc11_old_c) |
50 | 53 |
DEF_OLD_QPEL(qpel16_mc31_old_c) |
... | ... |
@@ -60,7 +63,8 @@ DEF_OLD_QPEL(qpel8_mc13_old_c) |
60 | 60 |
DEF_OLD_QPEL(qpel8_mc33_old_c) |
61 | 61 |
|
62 | 62 |
typedef void (*qpel_mc_func)(uint8_t *dst /* align width (8 or 16) */, |
63 |
- uint8_t *src /* align 1 */, ptrdiff_t stride); |
|
63 |
+ const uint8_t *src /* align 1 */, |
|
64 |
+ ptrdiff_t stride); |
|
64 | 65 |
|
65 | 66 |
/** |
66 | 67 |
* quarterpel DSP context |
... | ... |
@@ -31,7 +31,7 @@ |
31 | 31 |
#include "rv34dsp.h" |
32 | 32 |
|
33 | 33 |
#define RV30_LOWPASS(OPNAME, OP) \ |
34 |
-static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
34 |
+static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
35 | 35 |
const int h = 8;\ |
36 | 36 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
37 | 37 |
int i;\ |
... | ... |
@@ -50,7 +50,7 @@ static av_unused void OPNAME ## rv30_tpel8_h_lowpass(uint8_t *dst, uint8_t *src, |
50 | 50 |
}\ |
51 | 51 |
}\ |
52 | 52 |
\ |
53 |
-static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
53 |
+static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
54 | 54 |
const int w = 8;\ |
55 | 55 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
56 | 56 |
int i;\ |
... | ... |
@@ -80,7 +80,7 @@ static void OPNAME ## rv30_tpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstSt |
80 | 80 |
}\ |
81 | 81 |
}\ |
82 | 82 |
\ |
83 |
-static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
83 |
+static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
84 | 84 |
const int w = 8;\ |
85 | 85 |
const int h = 8;\ |
86 | 86 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
... | ... |
@@ -99,7 +99,7 @@ static void OPNAME ## rv30_tpel8_hv_lowpass(uint8_t *dst, uint8_t *src, int dstS |
99 | 99 |
}\ |
100 | 100 |
}\ |
101 | 101 |
\ |
102 |
-static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
102 |
+static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
103 | 103 |
const int w = 8;\ |
104 | 104 |
const int h = 8;\ |
105 | 105 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
... | ... |
@@ -118,7 +118,7 @@ static void OPNAME ## rv30_tpel8_hhv_lowpass(uint8_t *dst, uint8_t *src, int dst |
118 | 118 |
}\ |
119 | 119 |
}\ |
120 | 120 |
\ |
121 |
-static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
121 |
+static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
122 | 122 |
const int w = 8;\ |
123 | 123 |
const int h = 8;\ |
124 | 124 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
... | ... |
@@ -137,7 +137,7 @@ static void OPNAME ## rv30_tpel8_hvv_lowpass(uint8_t *dst, uint8_t *src, int dst |
137 | 137 |
}\ |
138 | 138 |
}\ |
139 | 139 |
\ |
140 |
-static void OPNAME ## rv30_tpel8_hhvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
140 |
+static void OPNAME ## rv30_tpel8_hhvv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
141 | 141 |
const int w = 8;\ |
142 | 142 |
const int h = 8;\ |
143 | 143 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
... | ... |
@@ -155,7 +155,7 @@ static void OPNAME ## rv30_tpel8_hhvv_lowpass(uint8_t *dst, uint8_t *src, int ds |
155 | 155 |
}\ |
156 | 156 |
}\ |
157 | 157 |
\ |
158 |
-static void OPNAME ## rv30_tpel16_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
158 |
+static void OPNAME ## rv30_tpel16_v_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
159 | 159 |
OPNAME ## rv30_tpel8_v_lowpass(dst , src , dstStride, srcStride, C1, C2);\ |
160 | 160 |
OPNAME ## rv30_tpel8_v_lowpass(dst+8, src+8, dstStride, srcStride, C1, C2);\ |
161 | 161 |
src += 8*srcStride;\ |
... | ... |
@@ -164,7 +164,7 @@ static void OPNAME ## rv30_tpel16_v_lowpass(uint8_t *dst, uint8_t *src, int dstS |
164 | 164 |
OPNAME ## rv30_tpel8_v_lowpass(dst+8, src+8, dstStride, srcStride, C1, C2);\ |
165 | 165 |
}\ |
166 | 166 |
\ |
167 |
-static void OPNAME ## rv30_tpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
167 |
+static void OPNAME ## rv30_tpel16_h_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, const int C1, const int C2){\ |
|
168 | 168 |
OPNAME ## rv30_tpel8_h_lowpass(dst , src , dstStride, srcStride, C1, C2);\ |
169 | 169 |
OPNAME ## rv30_tpel8_h_lowpass(dst+8, src+8, dstStride, srcStride, C1, C2);\ |
170 | 170 |
src += 8*srcStride;\ |
... | ... |
@@ -173,7 +173,7 @@ static void OPNAME ## rv30_tpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dstS |
173 | 173 |
OPNAME ## rv30_tpel8_h_lowpass(dst+8, src+8, dstStride, srcStride, C1, C2);\ |
174 | 174 |
}\ |
175 | 175 |
\ |
176 |
-static void OPNAME ## rv30_tpel16_hv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
176 |
+static void OPNAME ## rv30_tpel16_hv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
177 | 177 |
OPNAME ## rv30_tpel8_hv_lowpass(dst , src , dstStride, srcStride);\ |
178 | 178 |
OPNAME ## rv30_tpel8_hv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
179 | 179 |
src += 8*srcStride;\ |
... | ... |
@@ -182,7 +182,7 @@ static void OPNAME ## rv30_tpel16_hv_lowpass(uint8_t *dst, uint8_t *src, int dst |
182 | 182 |
OPNAME ## rv30_tpel8_hv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
183 | 183 |
}\ |
184 | 184 |
\ |
185 |
-static void OPNAME ## rv30_tpel16_hhv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
185 |
+static void OPNAME ## rv30_tpel16_hhv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
186 | 186 |
OPNAME ## rv30_tpel8_hhv_lowpass(dst , src , dstStride, srcStride);\ |
187 | 187 |
OPNAME ## rv30_tpel8_hhv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
188 | 188 |
src += 8*srcStride;\ |
... | ... |
@@ -191,7 +191,7 @@ static void OPNAME ## rv30_tpel16_hhv_lowpass(uint8_t *dst, uint8_t *src, int ds |
191 | 191 |
OPNAME ## rv30_tpel8_hhv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
192 | 192 |
}\ |
193 | 193 |
\ |
194 |
-static void OPNAME ## rv30_tpel16_hvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
194 |
+static void OPNAME ## rv30_tpel16_hvv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
195 | 195 |
OPNAME ## rv30_tpel8_hvv_lowpass(dst , src , dstStride, srcStride);\ |
196 | 196 |
OPNAME ## rv30_tpel8_hvv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
197 | 197 |
src += 8*srcStride;\ |
... | ... |
@@ -200,7 +200,7 @@ static void OPNAME ## rv30_tpel16_hvv_lowpass(uint8_t *dst, uint8_t *src, int ds |
200 | 200 |
OPNAME ## rv30_tpel8_hvv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
201 | 201 |
}\ |
202 | 202 |
\ |
203 |
-static void OPNAME ## rv30_tpel16_hhvv_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
203 |
+static void OPNAME ## rv30_tpel16_hhvv_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
204 | 204 |
OPNAME ## rv30_tpel8_hhvv_lowpass(dst , src , dstStride, srcStride);\ |
205 | 205 |
OPNAME ## rv30_tpel8_hhvv_lowpass(dst+8, src+8, dstStride, srcStride);\ |
206 | 206 |
src += 8*srcStride;\ |
... | ... |
@@ -211,42 +211,42 @@ static void OPNAME ## rv30_tpel16_hhvv_lowpass(uint8_t *dst, uint8_t *src, int d |
211 | 211 |
\ |
212 | 212 |
|
213 | 213 |
#define RV30_MC(OPNAME, SIZE) \ |
214 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc10_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
214 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc10_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
215 | 215 |
{\ |
216 | 216 |
OPNAME ## rv30_tpel ## SIZE ## _h_lowpass(dst, src, stride, stride, 12, 6);\ |
217 | 217 |
}\ |
218 | 218 |
\ |
219 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc20_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
219 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc20_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
220 | 220 |
{\ |
221 | 221 |
OPNAME ## rv30_tpel ## SIZE ## _h_lowpass(dst, src, stride, stride, 6, 12);\ |
222 | 222 |
}\ |
223 | 223 |
\ |
224 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc01_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
224 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc01_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
225 | 225 |
{\ |
226 | 226 |
OPNAME ## rv30_tpel ## SIZE ## _v_lowpass(dst, src, stride, stride, 12, 6);\ |
227 | 227 |
}\ |
228 | 228 |
\ |
229 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc02_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
229 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc02_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
230 | 230 |
{\ |
231 | 231 |
OPNAME ## rv30_tpel ## SIZE ## _v_lowpass(dst, src, stride, stride, 6, 12);\ |
232 | 232 |
}\ |
233 | 233 |
\ |
234 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc11_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
234 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc11_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
235 | 235 |
{\ |
236 | 236 |
OPNAME ## rv30_tpel ## SIZE ## _hv_lowpass(dst, src, stride, stride);\ |
237 | 237 |
}\ |
238 | 238 |
\ |
239 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc12_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
239 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc12_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
240 | 240 |
{\ |
241 | 241 |
OPNAME ## rv30_tpel ## SIZE ## _hvv_lowpass(dst, src, stride, stride);\ |
242 | 242 |
}\ |
243 | 243 |
\ |
244 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc21_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
244 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc21_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
245 | 245 |
{\ |
246 | 246 |
OPNAME ## rv30_tpel ## SIZE ## _hhv_lowpass(dst, src, stride, stride);\ |
247 | 247 |
}\ |
248 | 248 |
\ |
249 |
-static void OPNAME ## rv30_tpel ## SIZE ## _mc22_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
249 |
+static void OPNAME ## rv30_tpel ## SIZE ## _mc22_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
250 | 250 |
{\ |
251 | 251 |
OPNAME ## rv30_tpel ## SIZE ## _hhvv_lowpass(dst, src, stride, stride);\ |
252 | 252 |
}\ |
... | ... |
@@ -34,7 +34,7 @@ |
34 | 34 |
#include "rv34dsp.h" |
35 | 35 |
|
36 | 36 |
#define RV40_LOWPASS(OPNAME, OP) \ |
37 |
-static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\ |
|
37 |
+static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride,\ |
|
38 | 38 |
const int h, const int C1, const int C2, const int SHIFT){\ |
39 | 39 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
40 | 40 |
int i;\ |
... | ... |
@@ -53,7 +53,7 @@ static av_unused void OPNAME ## rv40_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, |
53 | 53 |
}\ |
54 | 54 |
}\ |
55 | 55 |
\ |
56 |
-static void OPNAME ## rv40_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\ |
|
56 |
+static void OPNAME ## rv40_qpel8_v_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride,\ |
|
57 | 57 |
const int w, const int C1, const int C2, const int SHIFT){\ |
58 | 58 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP;\ |
59 | 59 |
int i;\ |
... | ... |
@@ -85,7 +85,7 @@ static void OPNAME ## rv40_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, int dstSt |
85 | 85 |
}\ |
86 | 86 |
}\ |
87 | 87 |
\ |
88 |
-static void OPNAME ## rv40_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\ |
|
88 |
+static void OPNAME ## rv40_qpel16_v_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride,\ |
|
89 | 89 |
const int w, const int C1, const int C2, const int SHIFT){\ |
90 | 90 |
OPNAME ## rv40_qpel8_v_lowpass(dst , src , dstStride, srcStride, 8, C1, C2, SHIFT);\ |
91 | 91 |
OPNAME ## rv40_qpel8_v_lowpass(dst+8, src+8, dstStride, srcStride, 8, C1, C2, SHIFT);\ |
... | ... |
@@ -95,7 +95,7 @@ static void OPNAME ## rv40_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, int dstS |
95 | 95 |
OPNAME ## rv40_qpel8_v_lowpass(dst+8, src+8, dstStride, srcStride, w-8, C1, C2, SHIFT);\ |
96 | 96 |
}\ |
97 | 97 |
\ |
98 |
-static void OPNAME ## rv40_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dstStride, int srcStride,\ |
|
98 |
+static void OPNAME ## rv40_qpel16_h_lowpass(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride,\ |
|
99 | 99 |
const int h, const int C1, const int C2, const int SHIFT){\ |
100 | 100 |
OPNAME ## rv40_qpel8_h_lowpass(dst , src , dstStride, srcStride, 8, C1, C2, SHIFT);\ |
101 | 101 |
OPNAME ## rv40_qpel8_h_lowpass(dst+8, src+8, dstStride, srcStride, 8, C1, C2, SHIFT);\ |
... | ... |
@@ -107,22 +107,22 @@ static void OPNAME ## rv40_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, int dstS |
107 | 107 |
\ |
108 | 108 |
|
109 | 109 |
#define RV40_MC(OPNAME, SIZE) \ |
110 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc10_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
110 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc10_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
111 | 111 |
{\ |
112 | 112 |
OPNAME ## rv40_qpel ## SIZE ## _h_lowpass(dst, src, stride, stride, SIZE, 52, 20, 6);\ |
113 | 113 |
}\ |
114 | 114 |
\ |
115 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc30_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
115 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc30_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
116 | 116 |
{\ |
117 | 117 |
OPNAME ## rv40_qpel ## SIZE ## _h_lowpass(dst, src, stride, stride, SIZE, 20, 52, 6);\ |
118 | 118 |
}\ |
119 | 119 |
\ |
120 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc01_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
120 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc01_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
121 | 121 |
{\ |
122 | 122 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, src, stride, stride, SIZE, 52, 20, 6);\ |
123 | 123 |
}\ |
124 | 124 |
\ |
125 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc11_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
125 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc11_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
126 | 126 |
{\ |
127 | 127 |
uint8_t full[SIZE*(SIZE+5)];\ |
128 | 128 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -130,7 +130,7 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc11_c(uint8_t *dst, uint8_t *src, p |
130 | 130 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 52, 20, 6);\ |
131 | 131 |
}\ |
132 | 132 |
\ |
133 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc21_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
133 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc21_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
134 | 134 |
{\ |
135 | 135 |
uint8_t full[SIZE*(SIZE+5)];\ |
136 | 136 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -138,7 +138,7 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc21_c(uint8_t *dst, uint8_t *src, p |
138 | 138 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 52, 20, 6);\ |
139 | 139 |
}\ |
140 | 140 |
\ |
141 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc31_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
141 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc31_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
142 | 142 |
{\ |
143 | 143 |
uint8_t full[SIZE*(SIZE+5)];\ |
144 | 144 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -146,7 +146,7 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc31_c(uint8_t *dst, uint8_t *src, p |
146 | 146 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 52, 20, 6);\ |
147 | 147 |
}\ |
148 | 148 |
\ |
149 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc12_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
149 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc12_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
150 | 150 |
{\ |
151 | 151 |
uint8_t full[SIZE*(SIZE+5)];\ |
152 | 152 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -154,7 +154,7 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc12_c(uint8_t *dst, uint8_t *src, p |
154 | 154 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 20, 20, 5);\ |
155 | 155 |
}\ |
156 | 156 |
\ |
157 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc22_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
157 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc22_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
158 | 158 |
{\ |
159 | 159 |
uint8_t full[SIZE*(SIZE+5)];\ |
160 | 160 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -162,7 +162,7 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc22_c(uint8_t *dst, uint8_t *src, p |
162 | 162 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 20, 20, 5);\ |
163 | 163 |
}\ |
164 | 164 |
\ |
165 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc32_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
165 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc32_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
166 | 166 |
{\ |
167 | 167 |
uint8_t full[SIZE*(SIZE+5)];\ |
168 | 168 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -170,12 +170,12 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc32_c(uint8_t *dst, uint8_t *src, p |
170 | 170 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 20, 20, 5);\ |
171 | 171 |
}\ |
172 | 172 |
\ |
173 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc03_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
173 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc03_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
174 | 174 |
{\ |
175 | 175 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, src, stride, stride, SIZE, 20, 52, 6);\ |
176 | 176 |
}\ |
177 | 177 |
\ |
178 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc13_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
178 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc13_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
179 | 179 |
{\ |
180 | 180 |
uint8_t full[SIZE*(SIZE+5)];\ |
181 | 181 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -183,7 +183,7 @@ static void OPNAME ## rv40_qpel ## SIZE ## _mc13_c(uint8_t *dst, uint8_t *src, p |
183 | 183 |
OPNAME ## rv40_qpel ## SIZE ## _v_lowpass(dst, full_mid, stride, SIZE, SIZE, 20, 52, 6);\ |
184 | 184 |
}\ |
185 | 185 |
\ |
186 |
-static void OPNAME ## rv40_qpel ## SIZE ## _mc23_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
186 |
+static void OPNAME ## rv40_qpel ## SIZE ## _mc23_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
187 | 187 |
{\ |
188 | 188 |
uint8_t full[SIZE*(SIZE+5)];\ |
189 | 189 |
uint8_t * const full_mid = full + SIZE*2;\ |
... | ... |
@@ -266,19 +266,19 @@ PIXOP2(put, op_put) |
266 | 266 |
#undef op_avg |
267 | 267 |
#undef op_put |
268 | 268 |
|
269 |
-static void put_rv40_qpel16_mc33_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
269 |
+static void put_rv40_qpel16_mc33_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
270 | 270 |
{ |
271 | 271 |
put_pixels16_xy2_8_c(dst, src, stride, 16); |
272 | 272 |
} |
273 |
-static void avg_rv40_qpel16_mc33_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
273 |
+static void avg_rv40_qpel16_mc33_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
274 | 274 |
{ |
275 | 275 |
avg_pixels16_xy2_8_c(dst, src, stride, 16); |
276 | 276 |
} |
277 |
-static void put_rv40_qpel8_mc33_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
277 |
+static void put_rv40_qpel8_mc33_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
278 | 278 |
{ |
279 | 279 |
put_pixels8_xy2_8_c(dst, src, stride, 8); |
280 | 280 |
} |
281 |
-static void avg_rv40_qpel8_mc33_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
281 |
+static void avg_rv40_qpel8_mc33_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
282 | 282 |
{ |
283 | 283 |
avg_pixels8_xy2_8_c(dst, src, stride, 8); |
284 | 284 |
} |
... | ... |
@@ -139,7 +139,7 @@ static void wmv2_idct_put_c(uint8_t *dest, int line_size, int16_t *block) |
139 | 139 |
} |
140 | 140 |
} |
141 | 141 |
|
142 |
-static void wmv2_mspel8_h_lowpass(uint8_t *dst, uint8_t *src, |
|
142 |
+static void wmv2_mspel8_h_lowpass(uint8_t *dst, const uint8_t *src, |
|
143 | 143 |
int dstStride, int srcStride, int h) |
144 | 144 |
{ |
145 | 145 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; |
... | ... |
@@ -159,7 +159,7 @@ static void wmv2_mspel8_h_lowpass(uint8_t *dst, uint8_t *src, |
159 | 159 |
} |
160 | 160 |
} |
161 | 161 |
|
162 |
-static void wmv2_mspel8_v_lowpass(uint8_t *dst, uint8_t *src, |
|
162 |
+static void wmv2_mspel8_v_lowpass(uint8_t *dst, const uint8_t *src, |
|
163 | 163 |
int dstStride, int srcStride, int w) |
164 | 164 |
{ |
165 | 165 |
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; |
... | ... |
@@ -190,7 +190,7 @@ static void wmv2_mspel8_v_lowpass(uint8_t *dst, uint8_t *src, |
190 | 190 |
} |
191 | 191 |
} |
192 | 192 |
|
193 |
-static void put_mspel8_mc10_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
193 |
+static void put_mspel8_mc10_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
194 | 194 |
{ |
195 | 195 |
uint8_t half[64]; |
196 | 196 |
|
... | ... |
@@ -198,12 +198,12 @@ static void put_mspel8_mc10_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
198 | 198 |
ff_put_pixels8_l2_8(dst, src, half, stride, stride, 8, 8); |
199 | 199 |
} |
200 | 200 |
|
201 |
-static void put_mspel8_mc20_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
201 |
+static void put_mspel8_mc20_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
202 | 202 |
{ |
203 | 203 |
wmv2_mspel8_h_lowpass(dst, src, stride, stride, 8); |
204 | 204 |
} |
205 | 205 |
|
206 |
-static void put_mspel8_mc30_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
206 |
+static void put_mspel8_mc30_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
207 | 207 |
{ |
208 | 208 |
uint8_t half[64]; |
209 | 209 |
|
... | ... |
@@ -211,12 +211,12 @@ static void put_mspel8_mc30_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
211 | 211 |
ff_put_pixels8_l2_8(dst, src + 1, half, stride, stride, 8, 8); |
212 | 212 |
} |
213 | 213 |
|
214 |
-static void put_mspel8_mc02_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
214 |
+static void put_mspel8_mc02_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
215 | 215 |
{ |
216 | 216 |
wmv2_mspel8_v_lowpass(dst, src, stride, stride, 8); |
217 | 217 |
} |
218 | 218 |
|
219 |
-static void put_mspel8_mc12_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
219 |
+static void put_mspel8_mc12_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
220 | 220 |
{ |
221 | 221 |
uint8_t halfH[88]; |
222 | 222 |
uint8_t halfV[64]; |
... | ... |
@@ -228,7 +228,7 @@ static void put_mspel8_mc12_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
228 | 228 |
ff_put_pixels8_l2_8(dst, halfV, halfHV, stride, 8, 8, 8); |
229 | 229 |
} |
230 | 230 |
|
231 |
-static void put_mspel8_mc32_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
231 |
+static void put_mspel8_mc32_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
232 | 232 |
{ |
233 | 233 |
uint8_t halfH[88]; |
234 | 234 |
uint8_t halfV[64]; |
... | ... |
@@ -240,7 +240,7 @@ static void put_mspel8_mc32_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
240 | 240 |
ff_put_pixels8_l2_8(dst, halfV, halfHV, stride, 8, 8, 8); |
241 | 241 |
} |
242 | 242 |
|
243 |
-static void put_mspel8_mc22_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride) |
|
243 |
+static void put_mspel8_mc22_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride) |
|
244 | 244 |
{ |
245 | 245 |
uint8_t halfH[88]; |
246 | 246 |
|
... | ... |
@@ -334,7 +334,7 @@ static void cavs_idct8_add_mmx(uint8_t *dst, int16_t *block, int stride) |
334 | 334 |
} |
335 | 335 |
|
336 | 336 |
#define QPEL_CAVS(OPNAME, OP, MMX)\ |
337 |
-static void OPNAME ## cavs_qpel8_h_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
337 |
+static void OPNAME ## cavs_qpel8_h_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
338 | 338 |
int h=8;\ |
339 | 339 |
__asm__ volatile(\ |
340 | 340 |
"pxor %%mm7, %%mm7 \n\t"\ |
... | ... |
@@ -381,43 +381,43 @@ static void OPNAME ## cavs_qpel8_h_ ## MMX(uint8_t *dst, uint8_t *src, int dstSt |
381 | 381 |
);\ |
382 | 382 |
}\ |
383 | 383 |
\ |
384 |
-static inline void OPNAME ## cavs_qpel8or16_v1_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ |
|
384 |
+static inline void OPNAME ## cavs_qpel8or16_v1_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h){\ |
|
385 | 385 |
QPEL_CAVSVNUM(QPEL_CAVSV1,OP,ff_pw_64,ff_pw_96,ff_pw_42) \ |
386 | 386 |
}\ |
387 | 387 |
\ |
388 |
-static inline void OPNAME ## cavs_qpel8or16_v2_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ |
|
388 |
+static inline void OPNAME ## cavs_qpel8or16_v2_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h){\ |
|
389 | 389 |
QPEL_CAVSVNUM(QPEL_CAVSV2,OP,ff_pw_4,ff_pw_5,ff_pw_5) \ |
390 | 390 |
}\ |
391 | 391 |
\ |
392 |
-static inline void OPNAME ## cavs_qpel8or16_v3_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ |
|
392 |
+static inline void OPNAME ## cavs_qpel8or16_v3_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h){\ |
|
393 | 393 |
QPEL_CAVSVNUM(QPEL_CAVSV3,OP,ff_pw_64,ff_pw_96,ff_pw_42) \ |
394 | 394 |
}\ |
395 | 395 |
\ |
396 |
-static void OPNAME ## cavs_qpel8_v1_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
396 |
+static void OPNAME ## cavs_qpel8_v1_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
397 | 397 |
OPNAME ## cavs_qpel8or16_v1_ ## MMX(dst , src , dstStride, srcStride, 8);\ |
398 | 398 |
}\ |
399 |
-static void OPNAME ## cavs_qpel16_v1_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
399 |
+static void OPNAME ## cavs_qpel16_v1_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
400 | 400 |
OPNAME ## cavs_qpel8or16_v1_ ## MMX(dst , src , dstStride, srcStride, 16);\ |
401 | 401 |
OPNAME ## cavs_qpel8or16_v1_ ## MMX(dst+8, src+8, dstStride, srcStride, 16);\ |
402 | 402 |
}\ |
403 | 403 |
\ |
404 |
-static void OPNAME ## cavs_qpel8_v2_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
404 |
+static void OPNAME ## cavs_qpel8_v2_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
405 | 405 |
OPNAME ## cavs_qpel8or16_v2_ ## MMX(dst , src , dstStride, srcStride, 8);\ |
406 | 406 |
}\ |
407 |
-static void OPNAME ## cavs_qpel16_v2_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
407 |
+static void OPNAME ## cavs_qpel16_v2_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
408 | 408 |
OPNAME ## cavs_qpel8or16_v2_ ## MMX(dst , src , dstStride, srcStride, 16);\ |
409 | 409 |
OPNAME ## cavs_qpel8or16_v2_ ## MMX(dst+8, src+8, dstStride, srcStride, 16);\ |
410 | 410 |
}\ |
411 | 411 |
\ |
412 |
-static void OPNAME ## cavs_qpel8_v3_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
412 |
+static void OPNAME ## cavs_qpel8_v3_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
413 | 413 |
OPNAME ## cavs_qpel8or16_v3_ ## MMX(dst , src , dstStride, srcStride, 8);\ |
414 | 414 |
}\ |
415 |
-static void OPNAME ## cavs_qpel16_v3_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
415 |
+static void OPNAME ## cavs_qpel16_v3_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
416 | 416 |
OPNAME ## cavs_qpel8or16_v3_ ## MMX(dst , src , dstStride, srcStride, 16);\ |
417 | 417 |
OPNAME ## cavs_qpel8or16_v3_ ## MMX(dst+8, src+8, dstStride, srcStride, 16);\ |
418 | 418 |
}\ |
419 | 419 |
\ |
420 |
-static void OPNAME ## cavs_qpel16_h_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
420 |
+static void OPNAME ## cavs_qpel16_h_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
421 | 421 |
OPNAME ## cavs_qpel8_h_ ## MMX(dst , src , dstStride, srcStride);\ |
422 | 422 |
OPNAME ## cavs_qpel8_h_ ## MMX(dst+8, src+8, dstStride, srcStride);\ |
423 | 423 |
src += 8*srcStride;\ |
... | ... |
@@ -427,22 +427,22 @@ static void OPNAME ## cavs_qpel16_h_ ## MMX(uint8_t *dst, uint8_t *src, int dstS |
427 | 427 |
}\ |
428 | 428 |
|
429 | 429 |
#define CAVS_MC(OPNAME, SIZE, MMX) \ |
430 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc20_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
430 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc20_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
431 | 431 |
{\ |
432 | 432 |
OPNAME ## cavs_qpel ## SIZE ## _h_ ## MMX(dst, src, stride, stride);\ |
433 | 433 |
}\ |
434 | 434 |
\ |
435 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc01_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
435 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc01_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
436 | 436 |
{\ |
437 | 437 |
OPNAME ## cavs_qpel ## SIZE ## _v1_ ## MMX(dst, src, stride, stride);\ |
438 | 438 |
}\ |
439 | 439 |
\ |
440 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc02_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
440 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc02_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
441 | 441 |
{\ |
442 | 442 |
OPNAME ## cavs_qpel ## SIZE ## _v2_ ## MMX(dst, src, stride, stride);\ |
443 | 443 |
}\ |
444 | 444 |
\ |
445 |
-static void OPNAME ## cavs_qpel ## SIZE ## _mc03_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
445 |
+static void OPNAME ## cavs_qpel ## SIZE ## _mc03_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
446 | 446 |
{\ |
447 | 447 |
OPNAME ## cavs_qpel ## SIZE ## _v3_ ## MMX(dst, src, stride, stride);\ |
448 | 448 |
}\ |
... | ... |
@@ -460,25 +460,25 @@ static void OPNAME ## cavs_qpel ## SIZE ## _mc03_ ## MMX(uint8_t *dst, uint8_t * |
460 | 460 |
#endif /* (HAVE_MMXEXT_INLINE || HAVE_AMD3DNOW_INLINE) */ |
461 | 461 |
|
462 | 462 |
#if HAVE_MMX_INLINE |
463 |
-static void put_cavs_qpel8_mc00_mmx(uint8_t *dst, uint8_t *src, |
|
463 |
+static void put_cavs_qpel8_mc00_mmx(uint8_t *dst, const uint8_t *src, |
|
464 | 464 |
ptrdiff_t stride) |
465 | 465 |
{ |
466 | 466 |
ff_put_pixels8_mmx(dst, src, stride, 8); |
467 | 467 |
} |
468 | 468 |
|
469 |
-static void avg_cavs_qpel8_mc00_mmx(uint8_t *dst, uint8_t *src, |
|
469 |
+static void avg_cavs_qpel8_mc00_mmx(uint8_t *dst, const uint8_t *src, |
|
470 | 470 |
ptrdiff_t stride) |
471 | 471 |
{ |
472 | 472 |
ff_avg_pixels8_mmx(dst, src, stride, 8); |
473 | 473 |
} |
474 | 474 |
|
475 |
-static void put_cavs_qpel16_mc00_mmx(uint8_t *dst, uint8_t *src, |
|
475 |
+static void put_cavs_qpel16_mc00_mmx(uint8_t *dst, const uint8_t *src, |
|
476 | 476 |
ptrdiff_t stride) |
477 | 477 |
{ |
478 | 478 |
ff_put_pixels16_mmx(dst, src, stride, 16); |
479 | 479 |
} |
480 | 480 |
|
481 |
-static void avg_cavs_qpel16_mc00_mmx(uint8_t *dst, uint8_t *src, |
|
481 |
+static void avg_cavs_qpel16_mc00_mmx(uint8_t *dst, const uint8_t *src, |
|
482 | 482 |
ptrdiff_t stride) |
483 | 483 |
{ |
484 | 484 |
ff_avg_pixels16_mmx(dst, src, stride, 16); |
... | ... |
@@ -33,17 +33,17 @@ void ff_put_pixels4_mmxext(uint8_t *block, const uint8_t *pixels, |
33 | 33 |
ptrdiff_t line_size, int h); |
34 | 34 |
void ff_avg_pixels4_mmxext(uint8_t *block, const uint8_t *pixels, |
35 | 35 |
ptrdiff_t line_size, int h); |
36 |
-void ff_put_pixels4_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
36 |
+void ff_put_pixels4_l2_mmxext(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
|
37 | 37 |
int dstStride, int src1Stride, int h); |
38 |
-void ff_avg_pixels4_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
38 |
+void ff_avg_pixels4_l2_mmxext(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
|
39 | 39 |
int dstStride, int src1Stride, int h); |
40 |
-void ff_put_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
40 |
+void ff_put_pixels8_l2_mmxext(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
|
41 | 41 |
int dstStride, int src1Stride, int h); |
42 |
-void ff_avg_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
42 |
+void ff_avg_pixels8_l2_mmxext(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
|
43 | 43 |
int dstStride, int src1Stride, int h); |
44 |
-void ff_put_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
44 |
+void ff_put_pixels16_l2_mmxext(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
|
45 | 45 |
int dstStride, int src1Stride, int h); |
46 |
-void ff_avg_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
46 |
+void ff_avg_pixels16_l2_mmxext(uint8_t *dst, const uint8_t *src1, const uint8_t *src2, |
|
47 | 47 |
int dstStride, int src1Stride, int h); |
48 | 48 |
#define ff_put_pixels8_l2_sse2 ff_put_pixels8_l2_mmxext |
49 | 49 |
#define ff_avg_pixels8_l2_sse2 ff_avg_pixels8_l2_mmxext |
... | ... |
@@ -54,29 +54,29 @@ CALL_2X_PIXELS(ff_avg_pixels16_mmxext, ff_avg_pixels8_mmxext, 8) |
54 | 54 |
CALL_2X_PIXELS(ff_put_pixels16_mmxext, ff_put_pixels8_mmxext, 8) |
55 | 55 |
|
56 | 56 |
#define DEF_QPEL(OPNAME)\ |
57 |
-void ff_ ## OPNAME ## _h264_qpel4_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, int dstStride, int srcStride);\ |
|
58 |
-void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, int dstStride, int srcStride);\ |
|
59 |
-void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_ssse3(uint8_t *dst, uint8_t *src, int dstStride, int srcStride);\ |
|
60 |
-void ff_ ## OPNAME ## _h264_qpel4_h_lowpass_l2_mmxext(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride);\ |
|
61 |
-void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_l2_mmxext(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride);\ |
|
62 |
-void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_l2_ssse3(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride);\ |
|
63 |
-void ff_ ## OPNAME ## _h264_qpel4_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, int dstStride, int srcStride);\ |
|
64 |
-void ff_ ## OPNAME ## _h264_qpel8or16_v_lowpass_op_mmxext(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h);\ |
|
65 |
-void ff_ ## OPNAME ## _h264_qpel8or16_v_lowpass_sse2(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h);\ |
|
66 |
-void ff_ ## OPNAME ## _h264_qpel4_hv_lowpass_v_mmxext(uint8_t *src, int16_t *tmp, int srcStride);\ |
|
57 |
+void ff_ ## OPNAME ## _h264_qpel4_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride);\ |
|
58 |
+void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride);\ |
|
59 |
+void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_ssse3(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride);\ |
|
60 |
+void ff_ ## OPNAME ## _h264_qpel4_h_lowpass_l2_mmxext(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride);\ |
|
61 |
+void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_l2_mmxext(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride);\ |
|
62 |
+void ff_ ## OPNAME ## _h264_qpel8_h_lowpass_l2_ssse3(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride);\ |
|
63 |
+void ff_ ## OPNAME ## _h264_qpel4_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride);\ |
|
64 |
+void ff_ ## OPNAME ## _h264_qpel8or16_v_lowpass_op_mmxext(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h);\ |
|
65 |
+void ff_ ## OPNAME ## _h264_qpel8or16_v_lowpass_sse2(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h);\ |
|
66 |
+void ff_ ## OPNAME ## _h264_qpel4_hv_lowpass_v_mmxext(const uint8_t *src, int16_t *tmp, int srcStride);\ |
|
67 | 67 |
void ff_ ## OPNAME ## _h264_qpel4_hv_lowpass_h_mmxext(int16_t *tmp, uint8_t *dst, int dstStride);\ |
68 |
-void ff_ ## OPNAME ## _h264_qpel8or16_hv1_lowpass_op_mmxext(uint8_t *src, int16_t *tmp, int srcStride, int size);\ |
|
69 |
-void ff_ ## OPNAME ## _h264_qpel8or16_hv1_lowpass_op_sse2(uint8_t *src, int16_t *tmp, int srcStride, int size);\ |
|
68 |
+void ff_ ## OPNAME ## _h264_qpel8or16_hv1_lowpass_op_mmxext(const uint8_t *src, int16_t *tmp, int srcStride, int size);\ |
|
69 |
+void ff_ ## OPNAME ## _h264_qpel8or16_hv1_lowpass_op_sse2(const uint8_t *src, int16_t *tmp, int srcStride, int size);\ |
|
70 | 70 |
void ff_ ## OPNAME ## _h264_qpel8or16_hv2_lowpass_op_mmxext(uint8_t *dst, int16_t *tmp, int dstStride, int unused, int h);\ |
71 | 71 |
void ff_ ## OPNAME ## _h264_qpel8or16_hv2_lowpass_ssse3(uint8_t *dst, int16_t *tmp, int dstStride, int tmpStride, int size);\ |
72 |
-void ff_ ## OPNAME ## _pixels4_l2_shift5_mmxext(uint8_t *dst, int16_t *src16, uint8_t *src8, int dstStride, int src8Stride, int h);\ |
|
73 |
-void ff_ ## OPNAME ## _pixels8_l2_shift5_mmxext(uint8_t *dst, int16_t *src16, uint8_t *src8, int dstStride, int src8Stride, int h); |
|
72 |
+void ff_ ## OPNAME ## _pixels4_l2_shift5_mmxext(uint8_t *dst, const int16_t *src16, const uint8_t *src8, int dstStride, int src8Stride, int h);\ |
|
73 |
+void ff_ ## OPNAME ## _pixels8_l2_shift5_mmxext(uint8_t *dst, const int16_t *src16, const uint8_t *src8, int dstStride, int src8Stride, int h); |
|
74 | 74 |
|
75 | 75 |
DEF_QPEL(avg) |
76 | 76 |
DEF_QPEL(put) |
77 | 77 |
|
78 | 78 |
#define QPEL_H264(OPNAME, OP, MMX)\ |
79 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel4_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
79 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel4_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
80 | 80 |
int w=3;\ |
81 | 81 |
src -= 2*srcStride+2;\ |
82 | 82 |
while(w--){\ |
... | ... |
@@ -88,14 +88,14 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel4_hv_lowpass_ ## MMX(uint |
88 | 88 |
ff_ ## OPNAME ## h264_qpel4_hv_lowpass_h_mmxext(tmp, dst, dstStride);\ |
89 | 89 |
}\ |
90 | 90 |
\ |
91 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride, int h){\ |
|
91 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride, int h){\ |
|
92 | 92 |
src -= 2*srcStride;\ |
93 | 93 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_op_mmxext(dst, src, dstStride, srcStride, h);\ |
94 | 94 |
src += 4;\ |
95 | 95 |
dst += 4;\ |
96 | 96 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_op_mmxext(dst, src, dstStride, srcStride, h);\ |
97 | 97 |
}\ |
98 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv1_lowpass_ ## MMX(int16_t *tmp, uint8_t *src, int tmpStride, int srcStride, int size){\ |
|
98 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv1_lowpass_ ## MMX(int16_t *tmp, const uint8_t *src, int tmpStride, int srcStride, int size){\ |
|
99 | 99 |
int w = (size+8)>>2;\ |
100 | 100 |
src -= 2*srcStride+2;\ |
101 | 101 |
while(w--){\ |
... | ... |
@@ -113,15 +113,15 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv2_lowpass_ ## MMX |
113 | 113 |
}while(w--);\ |
114 | 114 |
}\ |
115 | 115 |
\ |
116 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
116 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8_v_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
117 | 117 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(dst , src , dstStride, srcStride, 8);\ |
118 | 118 |
}\ |
119 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
119 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_v_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
120 | 120 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(dst , src , dstStride, srcStride, 16);\ |
121 | 121 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(dst+8, src+8, dstStride, srcStride, 16);\ |
122 | 122 |
}\ |
123 | 123 |
\ |
124 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
124 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
125 | 125 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_ ## MMX(dst , src , dstStride, srcStride);\ |
126 | 126 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_ ## MMX(dst+8, src+8, dstStride, srcStride);\ |
127 | 127 |
src += 8*srcStride;\ |
... | ... |
@@ -130,7 +130,7 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_ ## MMX(uint |
130 | 130 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_ ## MMX(dst+8, src+8, dstStride, srcStride);\ |
131 | 131 |
}\ |
132 | 132 |
\ |
133 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_l2_ ## MMX(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride){\ |
|
133 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_l2_ ## MMX(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride){\ |
|
134 | 134 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_l2_ ## MMX(dst , src , src2 , dstStride, src2Stride);\ |
135 | 135 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_l2_ ## MMX(dst+8, src+8, src2+8, dstStride, src2Stride);\ |
136 | 136 |
src += 8*dstStride;\ |
... | ... |
@@ -140,19 +140,19 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_l2_ ## MMX(u |
140 | 140 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_l2_ ## MMX(dst+8, src+8, src2+8, dstStride, src2Stride);\ |
141 | 141 |
}\ |
142 | 142 |
\ |
143 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride, int size){\ |
|
143 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride, int size){\ |
|
144 | 144 |
ff_put_h264_qpel8or16_hv1_lowpass_ ## MMX(tmp, src, tmpStride, srcStride, size);\ |
145 | 145 |
ff_ ## OPNAME ## h264_qpel8or16_hv2_lowpass_ ## MMX(dst, tmp, dstStride, tmpStride, size);\ |
146 | 146 |
}\ |
147 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
147 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
148 | 148 |
ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(dst , tmp , src , dstStride, tmpStride, srcStride, 8);\ |
149 | 149 |
}\ |
150 | 150 |
\ |
151 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
151 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
152 | 152 |
ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(dst , tmp , src , dstStride, tmpStride, srcStride, 16);\ |
153 | 153 |
}\ |
154 | 154 |
\ |
155 |
-static av_always_inline void ff_ ## OPNAME ## pixels16_l2_shift5_ ## MMX(uint8_t *dst, int16_t *src16, uint8_t *src8, int dstStride, int src8Stride, int h)\ |
|
155 |
+static av_always_inline void ff_ ## OPNAME ## pixels16_l2_shift5_ ## MMX(uint8_t *dst, const int16_t *src16, const uint8_t *src8, int dstStride, int src8Stride, int h)\ |
|
156 | 156 |
{\ |
157 | 157 |
ff_ ## OPNAME ## pixels8_l2_shift5_ ## MMX(dst , src16 , src8 , dstStride, src8Stride, h);\ |
158 | 158 |
ff_ ## OPNAME ## pixels8_l2_shift5_ ## MMX(dst+8, src16+8, src8+8, dstStride, src8Stride, h);\ |
... | ... |
@@ -162,12 +162,12 @@ static av_always_inline void ff_ ## OPNAME ## pixels16_l2_shift5_ ## MMX(uint8_t |
162 | 162 |
#if ARCH_X86_64 |
163 | 163 |
#define QPEL_H264_H16_XMM(OPNAME, OP, MMX)\ |
164 | 164 |
|
165 |
-void ff_avg_h264_qpel16_h_lowpass_l2_ssse3(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride); |
|
166 |
-void ff_put_h264_qpel16_h_lowpass_l2_ssse3(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride); |
|
165 |
+void ff_avg_h264_qpel16_h_lowpass_l2_ssse3(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride); |
|
166 |
+void ff_put_h264_qpel16_h_lowpass_l2_ssse3(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride); |
|
167 | 167 |
|
168 | 168 |
#else // ARCH_X86_64 |
169 | 169 |
#define QPEL_H264_H16_XMM(OPNAME, OP, MMX)\ |
170 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_l2_ ## MMX(uint8_t *dst, uint8_t *src, uint8_t *src2, int dstStride, int src2Stride){\ |
|
170 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_l2_ ## MMX(uint8_t *dst, const uint8_t *src, const uint8_t *src2, int dstStride, int src2Stride){\ |
|
171 | 171 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_l2_ ## MMX(dst , src , src2 , dstStride, src2Stride);\ |
172 | 172 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_l2_ ## MMX(dst+8, src+8, src2+8, dstStride, src2Stride);\ |
173 | 173 |
src += 8*dstStride;\ |
... | ... |
@@ -180,7 +180,7 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_l2_ ## MMX(u |
180 | 180 |
|
181 | 181 |
#define QPEL_H264_H_XMM(OPNAME, OP, MMX)\ |
182 | 182 |
QPEL_H264_H16_XMM(OPNAME, OP, MMX)\ |
183 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
183 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
184 | 184 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_ ## MMX(dst , src , dstStride, srcStride);\ |
185 | 185 |
ff_ ## OPNAME ## h264_qpel8_h_lowpass_ ## MMX(dst+8, src+8, dstStride, srcStride);\ |
186 | 186 |
src += 8*srcStride;\ |
... | ... |
@@ -190,16 +190,16 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel16_h_lowpass_ ## MMX(uint |
190 | 190 |
}\ |
191 | 191 |
|
192 | 192 |
#define QPEL_H264_V_XMM(OPNAME, OP, MMX)\ |
193 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
193 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8_v_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
194 | 194 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(dst , src , dstStride, srcStride, 8);\ |
195 | 195 |
}\ |
196 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_v_lowpass_ ## MMX(uint8_t *dst, uint8_t *src, int dstStride, int srcStride){\ |
|
196 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_v_lowpass_ ## MMX(uint8_t *dst, const uint8_t *src, int dstStride, int srcStride){\ |
|
197 | 197 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(dst , src , dstStride, srcStride, 16);\ |
198 | 198 |
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(dst+8, src+8, dstStride, srcStride, 16);\ |
199 | 199 |
} |
200 | 200 |
|
201 | 201 |
static av_always_inline void put_h264_qpel8or16_hv1_lowpass_sse2(int16_t *tmp, |
202 |
- uint8_t *src, |
|
202 |
+ const uint8_t *src, |
|
203 | 203 |
int tmpStride, |
204 | 204 |
int srcStride, |
205 | 205 |
int size) |
... | ... |
@@ -214,14 +214,14 @@ static av_always_inline void put_h264_qpel8or16_hv1_lowpass_sse2(int16_t *tmp, |
214 | 214 |
} |
215 | 215 |
|
216 | 216 |
#define QPEL_H264_HV_XMM(OPNAME, OP, MMX)\ |
217 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride, int size){\ |
|
217 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride, int size){\ |
|
218 | 218 |
put_h264_qpel8or16_hv1_lowpass_sse2(tmp, src, tmpStride, srcStride, size);\ |
219 | 219 |
ff_ ## OPNAME ## h264_qpel8or16_hv2_lowpass_ ## MMX(dst, tmp, dstStride, tmpStride, size);\ |
220 | 220 |
}\ |
221 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel8_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
221 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel8_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
222 | 222 |
ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(dst, tmp, src, dstStride, tmpStride, srcStride, 8);\ |
223 | 223 |
}\ |
224 |
-static av_always_inline void ff_ ## OPNAME ## h264_qpel16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
224 |
+static av_always_inline void ff_ ## OPNAME ## h264_qpel16_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\ |
|
225 | 225 |
ff_ ## OPNAME ## h264_qpel8or16_hv_lowpass_ ## MMX(dst, tmp, src, dstStride, tmpStride, srcStride, 16);\ |
226 | 226 |
}\ |
227 | 227 |
|
... | ... |
@@ -244,12 +244,12 @@ H264_MC_V(OPNAME, SIZE, MMX, ALIGN)\ |
244 | 244 |
H264_MC_H(OPNAME, SIZE, MMX, ALIGN)\ |
245 | 245 |
H264_MC_HV(OPNAME, SIZE, MMX, ALIGN)\ |
246 | 246 |
|
247 |
-static void put_h264_qpel16_mc00_sse2 (uint8_t *dst, uint8_t *src, |
|
247 |
+static void put_h264_qpel16_mc00_sse2 (uint8_t *dst, const uint8_t *src, |
|
248 | 248 |
ptrdiff_t stride) |
249 | 249 |
{ |
250 | 250 |
ff_put_pixels16_sse2(dst, src, stride, 16); |
251 | 251 |
} |
252 |
-static void avg_h264_qpel16_mc00_sse2 (uint8_t *dst, uint8_t *src, |
|
252 |
+static void avg_h264_qpel16_mc00_sse2 (uint8_t *dst, const uint8_t *src, |
|
253 | 253 |
ptrdiff_t stride) |
254 | 254 |
{ |
255 | 255 |
ff_avg_pixels16_sse2(dst, src, stride, 16); |
... | ... |
@@ -258,41 +258,41 @@ static void avg_h264_qpel16_mc00_sse2 (uint8_t *dst, uint8_t *src, |
258 | 258 |
#define avg_h264_qpel8_mc00_sse2 avg_h264_qpel8_mc00_mmxext |
259 | 259 |
|
260 | 260 |
#define H264_MC_C(OPNAME, SIZE, MMX, ALIGN) \ |
261 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc00_ ## MMX (uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
261 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc00_ ## MMX (uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
262 | 262 |
{\ |
263 | 263 |
ff_ ## OPNAME ## pixels ## SIZE ## _ ## MMX(dst, src, stride, SIZE);\ |
264 | 264 |
}\ |
265 | 265 |
|
266 | 266 |
#define H264_MC_H(OPNAME, SIZE, MMX, ALIGN) \ |
267 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc10_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
267 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc10_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
268 | 268 |
{\ |
269 | 269 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src, src, stride, stride);\ |
270 | 270 |
}\ |
271 | 271 |
\ |
272 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc20_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
272 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc20_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
273 | 273 |
{\ |
274 | 274 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_ ## MMX(dst, src, stride, stride);\ |
275 | 275 |
}\ |
276 | 276 |
\ |
277 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc30_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
277 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc30_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
278 | 278 |
{\ |
279 | 279 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src, src+1, stride, stride);\ |
280 | 280 |
}\ |
281 | 281 |
|
282 | 282 |
#define H264_MC_V(OPNAME, SIZE, MMX, ALIGN) \ |
283 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc01_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
283 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc01_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
284 | 284 |
{\ |
285 | 285 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*SIZE];\ |
286 | 286 |
ff_put_h264_qpel ## SIZE ## _v_lowpass_ ## MMX(temp, src, SIZE, stride);\ |
287 | 287 |
ff_ ## OPNAME ## pixels ## SIZE ## _l2_ ## MMX(dst, src, temp, stride, stride, SIZE);\ |
288 | 288 |
}\ |
289 | 289 |
\ |
290 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc02_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
290 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc02_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
291 | 291 |
{\ |
292 | 292 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _v_lowpass_ ## MMX(dst, src, stride, stride);\ |
293 | 293 |
}\ |
294 | 294 |
\ |
295 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc03_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
295 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc03_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
296 | 296 |
{\ |
297 | 297 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*SIZE];\ |
298 | 298 |
ff_put_h264_qpel ## SIZE ## _v_lowpass_ ## MMX(temp, src, SIZE, stride);\ |
... | ... |
@@ -300,41 +300,41 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc03_ ## MMX(uint8_t *dst, uint8_t * |
300 | 300 |
}\ |
301 | 301 |
|
302 | 302 |
#define H264_MC_HV(OPNAME, SIZE, MMX, ALIGN) \ |
303 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc11_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
303 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc11_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
304 | 304 |
{\ |
305 | 305 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*SIZE];\ |
306 | 306 |
ff_put_h264_qpel ## SIZE ## _v_lowpass_ ## MMX(temp, src, SIZE, stride);\ |
307 | 307 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src, temp, stride, SIZE);\ |
308 | 308 |
}\ |
309 | 309 |
\ |
310 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc31_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
310 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc31_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
311 | 311 |
{\ |
312 | 312 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*SIZE];\ |
313 | 313 |
ff_put_h264_qpel ## SIZE ## _v_lowpass_ ## MMX(temp, src+1, SIZE, stride);\ |
314 | 314 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src, temp, stride, SIZE);\ |
315 | 315 |
}\ |
316 | 316 |
\ |
317 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc13_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
317 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc13_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
318 | 318 |
{\ |
319 | 319 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*SIZE];\ |
320 | 320 |
ff_put_h264_qpel ## SIZE ## _v_lowpass_ ## MMX(temp, src, SIZE, stride);\ |
321 | 321 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src+stride, temp, stride, SIZE);\ |
322 | 322 |
}\ |
323 | 323 |
\ |
324 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc33_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
324 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc33_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
325 | 325 |
{\ |
326 | 326 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*SIZE];\ |
327 | 327 |
ff_put_h264_qpel ## SIZE ## _v_lowpass_ ## MMX(temp, src+1, SIZE, stride);\ |
328 | 328 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src+stride, temp, stride, SIZE);\ |
329 | 329 |
}\ |
330 | 330 |
\ |
331 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc22_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
331 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc22_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
332 | 332 |
{\ |
333 | 333 |
DECLARE_ALIGNED(ALIGN, uint16_t, temp)[SIZE*(SIZE<8?12:24)];\ |
334 | 334 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _hv_lowpass_ ## MMX(dst, temp, src, stride, SIZE, stride);\ |
335 | 335 |
}\ |
336 | 336 |
\ |
337 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc21_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
337 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc21_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
338 | 338 |
{\ |
339 | 339 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*(SIZE<8?12:24)*2 + SIZE*SIZE];\ |
340 | 340 |
uint8_t * const halfHV= temp;\ |
... | ... |
@@ -344,7 +344,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc21_ ## MMX(uint8_t *dst, uint8_t * |
344 | 344 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src, halfHV, stride, SIZE);\ |
345 | 345 |
}\ |
346 | 346 |
\ |
347 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc23_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
347 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc23_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
348 | 348 |
{\ |
349 | 349 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*(SIZE<8?12:24)*2 + SIZE*SIZE];\ |
350 | 350 |
uint8_t * const halfHV= temp;\ |
... | ... |
@@ -354,7 +354,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc23_ ## MMX(uint8_t *dst, uint8_t * |
354 | 354 |
ff_ ## OPNAME ## h264_qpel ## SIZE ## _h_lowpass_l2_ ## MMX(dst, src+stride, halfHV, stride, SIZE);\ |
355 | 355 |
}\ |
356 | 356 |
\ |
357 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc12_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
357 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc12_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
358 | 358 |
{\ |
359 | 359 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*(SIZE<8?12:24)*2 + SIZE*SIZE];\ |
360 | 360 |
uint8_t * const halfHV= temp;\ |
... | ... |
@@ -364,7 +364,7 @@ static void OPNAME ## h264_qpel ## SIZE ## _mc12_ ## MMX(uint8_t *dst, uint8_t * |
364 | 364 |
ff_ ## OPNAME ## pixels ## SIZE ## _l2_shift5_mmxext(dst, halfV+2, halfHV, stride, SIZE, SIZE);\ |
365 | 365 |
}\ |
366 | 366 |
\ |
367 |
-static void OPNAME ## h264_qpel ## SIZE ## _mc32_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride)\ |
|
367 |
+static void OPNAME ## h264_qpel ## SIZE ## _mc32_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)\ |
|
368 | 368 |
{\ |
369 | 369 |
DECLARE_ALIGNED(ALIGN, uint8_t, temp)[SIZE*(SIZE<8?12:24)*2 + SIZE*SIZE];\ |
370 | 370 |
uint8_t * const halfHV= temp;\ |
... | ... |
@@ -409,7 +409,7 @@ H264_MC_816(H264_MC_HV, ssse3) |
409 | 409 |
//10bit |
410 | 410 |
#define LUMA_MC_OP(OP, NUM, DEPTH, TYPE, OPT) \ |
411 | 411 |
void ff_ ## OP ## _h264_qpel ## NUM ## _ ## TYPE ## _ ## DEPTH ## _ ## OPT \ |
412 |
- (uint8_t *dst, uint8_t *src, ptrdiff_t stride); |
|
412 |
+ (uint8_t *dst, const uint8_t *src, ptrdiff_t stride); |
|
413 | 413 |
|
414 | 414 |
#define LUMA_MC_ALL(DEPTH, TYPE, OPT) \ |
415 | 415 |
LUMA_MC_OP(put, 4, DEPTH, TYPE, OPT) \ |
... | ... |
@@ -466,7 +466,7 @@ LUMA_MC_816(10, mc23, sse2) |
466 | 466 |
LUMA_MC_816(10, mc33, sse2) |
467 | 467 |
|
468 | 468 |
#define QPEL16_OPMC(OP, MC, MMX)\ |
469 |
-void ff_ ## OP ## _h264_qpel16_ ## MC ## _10_ ## MMX(uint8_t *dst, uint8_t *src, ptrdiff_t stride){\ |
|
469 |
+void ff_ ## OP ## _h264_qpel16_ ## MC ## _10_ ## MMX(uint8_t *dst, const uint8_t *src, ptrdiff_t stride){\ |
|
470 | 470 |
ff_ ## OP ## _h264_qpel8_ ## MC ## _10_ ## MMX(dst , src , stride);\ |
471 | 471 |
ff_ ## OP ## _h264_qpel8_ ## MC ## _10_ ## MMX(dst+16, src+16, stride);\ |
472 | 472 |
src += 8*stride;\ |
... | ... |
@@ -29,44 +29,53 @@ |
29 | 29 |
#include "libavcodec/qpeldsp.h" |
30 | 30 |
#include "fpel.h" |
31 | 31 |
|
32 |
-void ff_put_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
32 |
+void ff_put_pixels8_l2_mmxext(uint8_t *dst, |
|
33 |
+ const uint8_t *src1, const uint8_t *src2, |
|
33 | 34 |
int dstStride, int src1Stride, int h); |
34 |
-void ff_put_no_rnd_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, |
|
35 |
- uint8_t *src2, int dstStride, |
|
36 |
- int src1Stride, int h); |
|
37 |
-void ff_avg_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
35 |
+void ff_put_no_rnd_pixels8_l2_mmxext(uint8_t *dst, |
|
36 |
+ const uint8_t *src1, const uint8_t *src2, |
|
37 |
+ int dstStride, int src1Stride, int h); |
|
38 |
+void ff_avg_pixels8_l2_mmxext(uint8_t *dst, |
|
39 |
+ const uint8_t *src1, const uint8_t *src2, |
|
38 | 40 |
int dstStride, int src1Stride, int h); |
39 |
-void ff_put_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
41 |
+void ff_put_pixels16_l2_mmxext(uint8_t *dst, |
|
42 |
+ const uint8_t *src1, const uint8_t *src2, |
|
40 | 43 |
int dstStride, int src1Stride, int h); |
41 |
-void ff_avg_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
44 |
+void ff_avg_pixels16_l2_mmxext(uint8_t *dst, |
|
45 |
+ const uint8_t *src1, const uint8_t *src2, |
|
42 | 46 |
int dstStride, int src1Stride, int h); |
43 |
-void ff_put_no_rnd_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2, |
|
47 |
+void ff_put_no_rnd_pixels16_l2_mmxext(uint8_t *dst, |
|
48 |
+ const uint8_t *src1, const uint8_t *src2, |
|
44 | 49 |
int dstStride, int src1Stride, int h); |
45 |
-void ff_put_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
50 |
+void ff_put_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
46 | 51 |
int dstStride, int srcStride, int h); |
47 |
-void ff_avg_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
52 |
+void ff_avg_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
48 | 53 |
int dstStride, int srcStride, int h); |
49 |
-void ff_put_no_rnd_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
54 |
+void ff_put_no_rnd_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, |
|
55 |
+ const uint8_t *src, |
|
50 | 56 |
int dstStride, int srcStride, |
51 | 57 |
int h); |
52 |
-void ff_put_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
58 |
+void ff_put_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
53 | 59 |
int dstStride, int srcStride, int h); |
54 |
-void ff_avg_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
60 |
+void ff_avg_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
55 | 61 |
int dstStride, int srcStride, int h); |
56 |
-void ff_put_no_rnd_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
62 |
+void ff_put_no_rnd_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, |
|
63 |
+ const uint8_t *src, |
|
57 | 64 |
int dstStride, int srcStride, |
58 | 65 |
int h); |
59 |
-void ff_put_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
66 |
+void ff_put_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
60 | 67 |
int dstStride, int srcStride); |
61 |
-void ff_avg_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
68 |
+void ff_avg_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
62 | 69 |
int dstStride, int srcStride); |
63 |
-void ff_put_no_rnd_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
70 |
+void ff_put_no_rnd_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, |
|
71 |
+ const uint8_t *src, |
|
64 | 72 |
int dstStride, int srcStride); |
65 |
-void ff_put_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
73 |
+void ff_put_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
66 | 74 |
int dstStride, int srcStride); |
67 |
-void ff_avg_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
75 |
+void ff_avg_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src, |
|
68 | 76 |
int dstStride, int srcStride); |
69 |
-void ff_put_no_rnd_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src, |
|
77 |
+void ff_put_no_rnd_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, |
|
78 |
+ const uint8_t *src, |
|
70 | 79 |
int dstStride, int srcStride); |
71 | 80 |
#define ff_put_no_rnd_pixels16_mmxext ff_put_pixels16_mmxext |
72 | 81 |
#define ff_put_no_rnd_pixels8_mmxext ff_put_pixels8_mmxext |
... | ... |
@@ -77,13 +86,15 @@ CALL_2X_PIXELS(ff_avg_pixels16_mmxext, ff_avg_pixels8_mmxext, 8) |
77 | 77 |
CALL_2X_PIXELS(ff_put_pixels16_mmxext, ff_put_pixels8_mmxext, 8) |
78 | 78 |
|
79 | 79 |
#define QPEL_OP(OPNAME, RND, MMX) \ |
80 |
-static void OPNAME ## qpel8_mc00_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
80 |
+static void OPNAME ## qpel8_mc00_ ## MMX(uint8_t *dst, \ |
|
81 |
+ const uint8_t *src, \ |
|
81 | 82 |
ptrdiff_t stride) \ |
82 | 83 |
{ \ |
83 | 84 |
ff_ ## OPNAME ## pixels8_ ## MMX(dst, src, stride, 8); \ |
84 | 85 |
} \ |
85 | 86 |
\ |
86 |
-static void OPNAME ## qpel8_mc10_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
87 |
+static void OPNAME ## qpel8_mc10_ ## MMX(uint8_t *dst, \ |
|
88 |
+ const uint8_t *src, \ |
|
87 | 89 |
ptrdiff_t stride) \ |
88 | 90 |
{ \ |
89 | 91 |
uint64_t temp[8]; \ |
... | ... |
@@ -94,14 +105,16 @@ static void OPNAME ## qpel8_mc10_ ## MMX(uint8_t *dst, uint8_t *src, \ |
94 | 94 |
stride, stride, 8); \ |
95 | 95 |
} \ |
96 | 96 |
\ |
97 |
-static void OPNAME ## qpel8_mc20_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
97 |
+static void OPNAME ## qpel8_mc20_ ## MMX(uint8_t *dst, \ |
|
98 |
+ const uint8_t *src, \ |
|
98 | 99 |
ptrdiff_t stride) \ |
99 | 100 |
{ \ |
100 | 101 |
ff_ ## OPNAME ## mpeg4_qpel8_h_lowpass_ ## MMX(dst, src, stride, \ |
101 | 102 |
stride, 8); \ |
102 | 103 |
} \ |
103 | 104 |
\ |
104 |
-static void OPNAME ## qpel8_mc30_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
105 |
+static void OPNAME ## qpel8_mc30_ ## MMX(uint8_t *dst, \ |
|
106 |
+ const uint8_t *src, \ |
|
105 | 107 |
ptrdiff_t stride) \ |
106 | 108 |
{ \ |
107 | 109 |
uint64_t temp[8]; \ |
... | ... |
@@ -112,7 +125,8 @@ static void OPNAME ## qpel8_mc30_ ## MMX(uint8_t *dst, uint8_t *src, \ |
112 | 112 |
stride, 8); \ |
113 | 113 |
} \ |
114 | 114 |
\ |
115 |
-static void OPNAME ## qpel8_mc01_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
115 |
+static void OPNAME ## qpel8_mc01_ ## MMX(uint8_t *dst, \ |
|
116 |
+ const uint8_t *src, \ |
|
116 | 117 |
ptrdiff_t stride) \ |
117 | 118 |
{ \ |
118 | 119 |
uint64_t temp[8]; \ |
... | ... |
@@ -123,14 +137,16 @@ static void OPNAME ## qpel8_mc01_ ## MMX(uint8_t *dst, uint8_t *src, \ |
123 | 123 |
stride, stride, 8); \ |
124 | 124 |
} \ |
125 | 125 |
\ |
126 |
-static void OPNAME ## qpel8_mc02_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
126 |
+static void OPNAME ## qpel8_mc02_ ## MMX(uint8_t *dst, \ |
|
127 |
+ const uint8_t *src, \ |
|
127 | 128 |
ptrdiff_t stride) \ |
128 | 129 |
{ \ |
129 | 130 |
ff_ ## OPNAME ## mpeg4_qpel8_v_lowpass_ ## MMX(dst, src, \ |
130 | 131 |
stride, stride); \ |
131 | 132 |
} \ |
132 | 133 |
\ |
133 |
-static void OPNAME ## qpel8_mc03_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
134 |
+static void OPNAME ## qpel8_mc03_ ## MMX(uint8_t *dst, \ |
|
135 |
+ const uint8_t *src, \ |
|
134 | 136 |
ptrdiff_t stride) \ |
135 | 137 |
{ \ |
136 | 138 |
uint64_t temp[8]; \ |
... | ... |
@@ -141,7 +157,8 @@ static void OPNAME ## qpel8_mc03_ ## MMX(uint8_t *dst, uint8_t *src, \ |
141 | 141 |
stride, 8); \ |
142 | 142 |
} \ |
143 | 143 |
\ |
144 |
-static void OPNAME ## qpel8_mc11_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
144 |
+static void OPNAME ## qpel8_mc11_ ## MMX(uint8_t *dst, \ |
|
145 |
+ const uint8_t *src, \ |
|
145 | 146 |
ptrdiff_t stride) \ |
146 | 147 |
{ \ |
147 | 148 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -156,7 +173,8 @@ static void OPNAME ## qpel8_mc11_ ## MMX(uint8_t *dst, uint8_t *src, \ |
156 | 156 |
stride, 8, 8); \ |
157 | 157 |
} \ |
158 | 158 |
\ |
159 |
-static void OPNAME ## qpel8_mc31_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
159 |
+static void OPNAME ## qpel8_mc31_ ## MMX(uint8_t *dst, \ |
|
160 |
+ const uint8_t *src, \ |
|
160 | 161 |
ptrdiff_t stride) \ |
161 | 162 |
{ \ |
162 | 163 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -171,7 +189,8 @@ static void OPNAME ## qpel8_mc31_ ## MMX(uint8_t *dst, uint8_t *src, \ |
171 | 171 |
stride, 8, 8); \ |
172 | 172 |
} \ |
173 | 173 |
\ |
174 |
-static void OPNAME ## qpel8_mc13_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
174 |
+static void OPNAME ## qpel8_mc13_ ## MMX(uint8_t *dst, \ |
|
175 |
+ const uint8_t *src, \ |
|
175 | 176 |
ptrdiff_t stride) \ |
176 | 177 |
{ \ |
177 | 178 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -186,7 +205,8 @@ static void OPNAME ## qpel8_mc13_ ## MMX(uint8_t *dst, uint8_t *src, \ |
186 | 186 |
stride, 8, 8); \ |
187 | 187 |
} \ |
188 | 188 |
\ |
189 |
-static void OPNAME ## qpel8_mc33_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
189 |
+static void OPNAME ## qpel8_mc33_ ## MMX(uint8_t *dst, \ |
|
190 |
+ const uint8_t *src, \ |
|
190 | 191 |
ptrdiff_t stride) \ |
191 | 192 |
{ \ |
192 | 193 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -201,7 +221,8 @@ static void OPNAME ## qpel8_mc33_ ## MMX(uint8_t *dst, uint8_t *src, \ |
201 | 201 |
stride, 8, 8); \ |
202 | 202 |
} \ |
203 | 203 |
\ |
204 |
-static void OPNAME ## qpel8_mc21_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
204 |
+static void OPNAME ## qpel8_mc21_ ## MMX(uint8_t *dst, \ |
|
205 |
+ const uint8_t *src, \ |
|
205 | 206 |
ptrdiff_t stride) \ |
206 | 207 |
{ \ |
207 | 208 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -214,7 +235,8 @@ static void OPNAME ## qpel8_mc21_ ## MMX(uint8_t *dst, uint8_t *src, \ |
214 | 214 |
stride, 8, 8); \ |
215 | 215 |
} \ |
216 | 216 |
\ |
217 |
-static void OPNAME ## qpel8_mc23_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
217 |
+static void OPNAME ## qpel8_mc23_ ## MMX(uint8_t *dst, \ |
|
218 |
+ const uint8_t *src, \ |
|
218 | 219 |
ptrdiff_t stride) \ |
219 | 220 |
{ \ |
220 | 221 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -227,7 +249,8 @@ static void OPNAME ## qpel8_mc23_ ## MMX(uint8_t *dst, uint8_t *src, \ |
227 | 227 |
stride, 8, 8); \ |
228 | 228 |
} \ |
229 | 229 |
\ |
230 |
-static void OPNAME ## qpel8_mc12_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
230 |
+static void OPNAME ## qpel8_mc12_ ## MMX(uint8_t *dst, \ |
|
231 |
+ const uint8_t *src, \ |
|
231 | 232 |
ptrdiff_t stride) \ |
232 | 233 |
{ \ |
233 | 234 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -240,7 +263,8 @@ static void OPNAME ## qpel8_mc12_ ## MMX(uint8_t *dst, uint8_t *src, \ |
240 | 240 |
stride, 8); \ |
241 | 241 |
} \ |
242 | 242 |
\ |
243 |
-static void OPNAME ## qpel8_mc32_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
243 |
+static void OPNAME ## qpel8_mc32_ ## MMX(uint8_t *dst, \ |
|
244 |
+ const uint8_t *src, \ |
|
244 | 245 |
ptrdiff_t stride) \ |
245 | 246 |
{ \ |
246 | 247 |
uint64_t half[8 + 9]; \ |
... | ... |
@@ -253,7 +277,8 @@ static void OPNAME ## qpel8_mc32_ ## MMX(uint8_t *dst, uint8_t *src, \ |
253 | 253 |
stride, 8); \ |
254 | 254 |
} \ |
255 | 255 |
\ |
256 |
-static void OPNAME ## qpel8_mc22_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
256 |
+static void OPNAME ## qpel8_mc22_ ## MMX(uint8_t *dst, \ |
|
257 |
+ const uint8_t *src, \ |
|
257 | 258 |
ptrdiff_t stride) \ |
258 | 259 |
{ \ |
259 | 260 |
uint64_t half[9]; \ |
... | ... |
@@ -264,13 +289,15 @@ static void OPNAME ## qpel8_mc22_ ## MMX(uint8_t *dst, uint8_t *src, \ |
264 | 264 |
stride, 8); \ |
265 | 265 |
} \ |
266 | 266 |
\ |
267 |
-static void OPNAME ## qpel16_mc00_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
267 |
+static void OPNAME ## qpel16_mc00_ ## MMX(uint8_t *dst, \ |
|
268 |
+ const uint8_t *src, \ |
|
268 | 269 |
ptrdiff_t stride) \ |
269 | 270 |
{ \ |
270 | 271 |
ff_ ## OPNAME ## pixels16_ ## MMX(dst, src, stride, 16); \ |
271 | 272 |
} \ |
272 | 273 |
\ |
273 |
-static void OPNAME ## qpel16_mc10_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
274 |
+static void OPNAME ## qpel16_mc10_ ## MMX(uint8_t *dst, \ |
|
275 |
+ const uint8_t *src, \ |
|
274 | 276 |
ptrdiff_t stride) \ |
275 | 277 |
{ \ |
276 | 278 |
uint64_t temp[32]; \ |
... | ... |
@@ -281,14 +308,16 @@ static void OPNAME ## qpel16_mc10_ ## MMX(uint8_t *dst, uint8_t *src, \ |
281 | 281 |
stride, 16); \ |
282 | 282 |
} \ |
283 | 283 |
\ |
284 |
-static void OPNAME ## qpel16_mc20_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
284 |
+static void OPNAME ## qpel16_mc20_ ## MMX(uint8_t *dst, \ |
|
285 |
+ const uint8_t *src, \ |
|
285 | 286 |
ptrdiff_t stride) \ |
286 | 287 |
{ \ |
287 | 288 |
ff_ ## OPNAME ## mpeg4_qpel16_h_lowpass_ ## MMX(dst, src, \ |
288 | 289 |
stride, stride, 16);\ |
289 | 290 |
} \ |
290 | 291 |
\ |
291 |
-static void OPNAME ## qpel16_mc30_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
292 |
+static void OPNAME ## qpel16_mc30_ ## MMX(uint8_t *dst, \ |
|
293 |
+ const uint8_t *src, \ |
|
292 | 294 |
ptrdiff_t stride) \ |
293 | 295 |
{ \ |
294 | 296 |
uint64_t temp[32]; \ |
... | ... |
@@ -299,7 +328,8 @@ static void OPNAME ## qpel16_mc30_ ## MMX(uint8_t *dst, uint8_t *src, \ |
299 | 299 |
stride, stride, 16); \ |
300 | 300 |
} \ |
301 | 301 |
\ |
302 |
-static void OPNAME ## qpel16_mc01_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
302 |
+static void OPNAME ## qpel16_mc01_ ## MMX(uint8_t *dst, \ |
|
303 |
+ const uint8_t *src, \ |
|
303 | 304 |
ptrdiff_t stride) \ |
304 | 305 |
{ \ |
305 | 306 |
uint64_t temp[32]; \ |
... | ... |
@@ -310,14 +340,16 @@ static void OPNAME ## qpel16_mc01_ ## MMX(uint8_t *dst, uint8_t *src, \ |
310 | 310 |
stride, 16); \ |
311 | 311 |
} \ |
312 | 312 |
\ |
313 |
-static void OPNAME ## qpel16_mc02_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
313 |
+static void OPNAME ## qpel16_mc02_ ## MMX(uint8_t *dst, \ |
|
314 |
+ const uint8_t *src, \ |
|
314 | 315 |
ptrdiff_t stride) \ |
315 | 316 |
{ \ |
316 | 317 |
ff_ ## OPNAME ## mpeg4_qpel16_v_lowpass_ ## MMX(dst, src, \ |
317 | 318 |
stride, stride); \ |
318 | 319 |
} \ |
319 | 320 |
\ |
320 |
-static void OPNAME ## qpel16_mc03_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
321 |
+static void OPNAME ## qpel16_mc03_ ## MMX(uint8_t *dst, \ |
|
322 |
+ const uint8_t *src, \ |
|
321 | 323 |
ptrdiff_t stride) \ |
322 | 324 |
{ \ |
323 | 325 |
uint64_t temp[32]; \ |
... | ... |
@@ -328,7 +360,8 @@ static void OPNAME ## qpel16_mc03_ ## MMX(uint8_t *dst, uint8_t *src, \ |
328 | 328 |
stride, stride, 16); \ |
329 | 329 |
} \ |
330 | 330 |
\ |
331 |
-static void OPNAME ## qpel16_mc11_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
331 |
+static void OPNAME ## qpel16_mc11_ ## MMX(uint8_t *dst, \ |
|
332 |
+ const uint8_t *src, \ |
|
332 | 333 |
ptrdiff_t stride) \ |
333 | 334 |
{ \ |
334 | 335 |
uint64_t half[16 * 2 + 17 * 2]; \ |
... | ... |
@@ -344,7 +377,8 @@ static void OPNAME ## qpel16_mc11_ ## MMX(uint8_t *dst, uint8_t *src, \ |
344 | 344 |
stride, 16, 16); \ |
345 | 345 |
} \ |
346 | 346 |
\ |
347 |
-static void OPNAME ## qpel16_mc31_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
347 |
+static void OPNAME ## qpel16_mc31_ ## MMX(uint8_t *dst, \ |
|
348 |
+ const uint8_t *src, \ |
|
348 | 349 |
ptrdiff_t stride) \ |
349 | 350 |
{ \ |
350 | 351 |
uint64_t half[16 * 2 + 17 * 2]; \ |
... | ... |
@@ -360,7 +394,8 @@ static void OPNAME ## qpel16_mc31_ ## MMX(uint8_t *dst, uint8_t *src, \ |
360 | 360 |
stride, 16, 16); \ |
361 | 361 |
} \ |
362 | 362 |
\ |
363 |
-static void OPNAME ## qpel16_mc13_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
363 |
+static void OPNAME ## qpel16_mc13_ ## MMX(uint8_t *dst, \ |
|
364 |
+ const uint8_t *src, \ |
|
364 | 365 |
ptrdiff_t stride) \ |
365 | 366 |
{ \ |
366 | 367 |
uint64_t half[16 * 2 + 17 * 2]; \ |
... | ... |
@@ -376,7 +411,8 @@ static void OPNAME ## qpel16_mc13_ ## MMX(uint8_t *dst, uint8_t *src, \ |
376 | 376 |
stride, 16, 16); \ |
377 | 377 |
} \ |
378 | 378 |
\ |
379 |
-static void OPNAME ## qpel16_mc33_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
379 |
+static void OPNAME ## qpel16_mc33_ ## MMX(uint8_t *dst, \ |
|
380 |
+ const uint8_t *src, \ |
|
380 | 381 |
ptrdiff_t stride) \ |
381 | 382 |
{ \ |
382 | 383 |
uint64_t half[16 * 2 + 17 * 2]; \ |
... | ... |
@@ -392,7 +428,8 @@ static void OPNAME ## qpel16_mc33_ ## MMX(uint8_t *dst, uint8_t *src, \ |
392 | 392 |
stride, 16, 16); \ |
393 | 393 |
} \ |
394 | 394 |
\ |
395 |
-static void OPNAME ## qpel16_mc21_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
395 |
+static void OPNAME ## qpel16_mc21_ ## MMX(uint8_t *dst, \ |
|
396 |
+ const uint8_t *src, \ |
|
396 | 397 |
ptrdiff_t stride) \ |
397 | 398 |
{ \ |
398 | 399 |
uint64_t half[16 * 2 + 17 * 2]; \ |
... | ... |
@@ -406,7 +443,8 @@ static void OPNAME ## qpel16_mc21_ ## MMX(uint8_t *dst, uint8_t *src, \ |
406 | 406 |
stride, 16, 16); \ |
407 | 407 |
} \ |
408 | 408 |
\ |
409 |
-static void OPNAME ## qpel16_mc23_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
409 |
+static void OPNAME ## qpel16_mc23_ ## MMX(uint8_t *dst, \ |
|
410 |
+ const uint8_t *src, \ |
|
410 | 411 |
ptrdiff_t stride) \ |
411 | 412 |
{ \ |
412 | 413 |
uint64_t half[16 * 2 + 17 * 2]; \ |
... | ... |
@@ -420,7 +458,8 @@ static void OPNAME ## qpel16_mc23_ ## MMX(uint8_t *dst, uint8_t *src, \ |
420 | 420 |
stride, 16, 16); \ |
421 | 421 |
} \ |
422 | 422 |
\ |
423 |
-static void OPNAME ## qpel16_mc12_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
423 |
+static void OPNAME ## qpel16_mc12_ ## MMX(uint8_t *dst, \ |
|
424 |
+ const uint8_t *src, \ |
|
424 | 425 |
ptrdiff_t stride) \ |
425 | 426 |
{ \ |
426 | 427 |
uint64_t half[17 * 2]; \ |
... | ... |
@@ -433,7 +472,8 @@ static void OPNAME ## qpel16_mc12_ ## MMX(uint8_t *dst, uint8_t *src, \ |
433 | 433 |
stride, 16); \ |
434 | 434 |
} \ |
435 | 435 |
\ |
436 |
-static void OPNAME ## qpel16_mc32_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
436 |
+static void OPNAME ## qpel16_mc32_ ## MMX(uint8_t *dst, \ |
|
437 |
+ const uint8_t *src, \ |
|
437 | 438 |
ptrdiff_t stride) \ |
438 | 439 |
{ \ |
439 | 440 |
uint64_t half[17 * 2]; \ |
... | ... |
@@ -446,7 +486,8 @@ static void OPNAME ## qpel16_mc32_ ## MMX(uint8_t *dst, uint8_t *src, \ |
446 | 446 |
stride, 16); \ |
447 | 447 |
} \ |
448 | 448 |
\ |
449 |
-static void OPNAME ## qpel16_mc22_ ## MMX(uint8_t *dst, uint8_t *src, \ |
|
449 |
+static void OPNAME ## qpel16_mc22_ ## MMX(uint8_t *dst, \ |
|
450 |
+ const uint8_t *src, \ |
|
450 | 451 |
ptrdiff_t stride) \ |
451 | 452 |
{ \ |
452 | 453 |
uint64_t half[17 * 2]; \ |
... | ... |
@@ -70,7 +70,7 @@ DECLARE_WEIGHT(ssse3) |
70 | 70 |
*/ |
71 | 71 |
#define QPEL_FUNC_DECL(OP, SIZE, PH, PV, OPT) \ |
72 | 72 |
static void OP ## rv40_qpel ##SIZE ##_mc ##PH ##PV ##OPT(uint8_t *dst, \ |
73 |
- uint8_t *src, \ |
|
73 |
+ const uint8_t *src, \ |
|
74 | 74 |
ptrdiff_t stride) \ |
75 | 75 |
{ \ |
76 | 76 |
int i; \ |
... | ... |
@@ -189,22 +189,22 @@ QPEL_FUNCS_SET (OP, 3, 2, OPT) |
189 | 189 |
#endif /* HAVE_YASM */ |
190 | 190 |
|
191 | 191 |
#if HAVE_MMX_INLINE |
192 |
-static void put_rv40_qpel8_mc33_mmx(uint8_t *dst, uint8_t *src, |
|
192 |
+static void put_rv40_qpel8_mc33_mmx(uint8_t *dst, const uint8_t *src, |
|
193 | 193 |
ptrdiff_t stride) |
194 | 194 |
{ |
195 | 195 |
ff_put_pixels8_xy2_mmx(dst, src, stride, 8); |
196 | 196 |
} |
197 |
-static void put_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src, |
|
197 |
+static void put_rv40_qpel16_mc33_mmx(uint8_t *dst, const uint8_t *src, |
|
198 | 198 |
ptrdiff_t stride) |
199 | 199 |
{ |
200 | 200 |
ff_put_pixels16_xy2_mmx(dst, src, stride, 16); |
201 | 201 |
} |
202 |
-static void avg_rv40_qpel8_mc33_mmx(uint8_t *dst, uint8_t *src, |
|
202 |
+static void avg_rv40_qpel8_mc33_mmx(uint8_t *dst, const uint8_t *src, |
|
203 | 203 |
ptrdiff_t stride) |
204 | 204 |
{ |
205 | 205 |
ff_avg_pixels8_xy2_mmx(dst, src, stride, 8); |
206 | 206 |
} |
207 |
-static void avg_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src, |
|
207 |
+static void avg_rv40_qpel16_mc33_mmx(uint8_t *dst, const uint8_t *src, |
|
208 | 208 |
ptrdiff_t stride) |
209 | 209 |
{ |
210 | 210 |
ff_avg_pixels16_xy2_mmx(dst, src, stride, 16); |