#include "qpel_template.c"
#define QPEL_MC(r, OPNAME, RND, OP) \
-static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## mpeg4_qpel8_h_lowpass(uint8_t *dst, const uint8_t *src, \
int dstStride, int srcStride, \
int h) \
{ \
} \
} \
\
-static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## mpeg4_qpel8_v_lowpass(uint8_t *dst, const uint8_t *src, \
int dstStride, int srcStride) \
{ \
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; \
} \
} \
\
-static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## mpeg4_qpel16_h_lowpass(uint8_t *dst, \
+ const uint8_t *src, \
int dstStride, int srcStride, \
int h) \
{ \
} \
} \
\
-static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## mpeg4_qpel16_v_lowpass(uint8_t *dst, \
+ const uint8_t *src, \
int dstStride, int srcStride) \
{ \
const uint8_t *cm = ff_crop_tab + MAX_NEG_CROP; \
} \
} \
\
-static void OPNAME ## qpel8_mc10_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc10_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t half[64]; \
OPNAME ## pixels8_l2_8(dst, src, half, stride, stride, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc20_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc20_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
OPNAME ## mpeg4_qpel8_h_lowpass(dst, src, stride, stride, 8); \
} \
\
-static void OPNAME ## qpel8_mc30_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc30_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t half[64]; \
OPNAME ## pixels8_l2_8(dst, src + 1, half, stride, stride, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc01_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc01_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, full, half, stride, 16, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc02_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc02_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## mpeg4_qpel8_v_lowpass(dst, full, stride, 16); \
} \
\
-static void OPNAME ## qpel8_mc03_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc03_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, full + 16, half, stride, 16, 8, 8); \
} \
\
-void ff_ ## OPNAME ## qpel8_mc11_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel8_mc11_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
stride, 16, 8, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc11_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc11_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, halfH, halfHV, stride, 8, 8, 8); \
} \
\
-void ff_ ## OPNAME ## qpel8_mc31_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel8_mc31_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
stride, 16, 8, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc31_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc31_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, halfH, halfHV, stride, 8, 8, 8); \
} \
\
-void ff_ ## OPNAME ## qpel8_mc13_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel8_mc13_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
stride, 16, 8, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc13_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc13_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, halfH + 8, halfHV, stride, 8, 8, 8); \
} \
\
-void ff_ ## OPNAME ## qpel8_mc33_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel8_mc33_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
stride, 16, 8, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc33_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc33_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, halfH + 8, halfHV, stride, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc21_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc21_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t halfH[72]; \
OPNAME ## pixels8_l2_8(dst, halfH, halfHV, stride, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc23_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc23_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t halfH[72]; \
OPNAME ## pixels8_l2_8(dst, halfH + 8, halfHV, stride, 8, 8, 8); \
} \
\
-void ff_ ## OPNAME ## qpel8_mc12_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel8_mc12_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, halfV, halfHV, stride, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc12_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc12_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## mpeg4_qpel8_v_lowpass(dst, halfH, stride, 8); \
} \
\
-void ff_ ## OPNAME ## qpel8_mc32_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel8_mc32_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## pixels8_l2_8(dst, halfV, halfHV, stride, 8, 8, 8); \
} \
\
-static void OPNAME ## qpel8_mc32_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc32_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[16 * 9]; \
OPNAME ## mpeg4_qpel8_v_lowpass(dst, halfH, stride, 8); \
} \
\
-static void OPNAME ## qpel8_mc22_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel8_mc22_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t halfH[72]; \
OPNAME ## mpeg4_qpel8_v_lowpass(dst, halfH, stride, 8); \
} \
\
-static void OPNAME ## qpel16_mc10_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc10_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t half[256]; \
OPNAME ## pixels16_l2_8(dst, src, half, stride, stride, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc20_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc20_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
OPNAME ## mpeg4_qpel16_h_lowpass(dst, src, stride, stride, 16); \
} \
\
-static void OPNAME ## qpel16_mc30_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc30_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t half[256]; \
OPNAME ## pixels16_l2_8(dst, src + 1, half, stride, stride, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc01_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc01_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, full, half, stride, 24, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc02_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc02_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## mpeg4_qpel16_v_lowpass(dst, full, stride, 24); \
} \
\
-static void OPNAME ## qpel16_mc03_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc03_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, full + 24, half, stride, 24, 16, 16); \
} \
\
-void ff_ ## OPNAME ## qpel16_mc11_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel16_mc11_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
stride, 24, 16, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc11_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc11_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, halfH, halfHV, stride, 16, 16, 16); \
} \
\
-void ff_ ## OPNAME ## qpel16_mc31_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel16_mc31_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
stride, 24, 16, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc31_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc31_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, halfH, halfHV, stride, 16, 16, 16); \
} \
\
-void ff_ ## OPNAME ## qpel16_mc13_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel16_mc13_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
stride, 24, 16, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc13_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc13_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, halfH + 16, halfHV, stride, 16, 16, 16); \
} \
\
-void ff_ ## OPNAME ## qpel16_mc33_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel16_mc33_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
stride, 24, 16, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc33_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc33_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, halfH + 16, halfHV, stride, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc21_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc21_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t halfH[272]; \
OPNAME ## pixels16_l2_8(dst, halfH, halfHV, stride, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc23_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc23_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t halfH[272]; \
OPNAME ## pixels16_l2_8(dst, halfH + 16, halfHV, stride, 16, 16, 16); \
} \
\
-void ff_ ## OPNAME ## qpel16_mc12_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel16_mc12_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, halfV, halfHV, stride, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc12_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc12_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## mpeg4_qpel16_v_lowpass(dst, halfH, stride, 16); \
} \
\
-void ff_ ## OPNAME ## qpel16_mc32_old_c(uint8_t *dst, uint8_t *src, \
+void ff_ ## OPNAME ## qpel16_mc32_old_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## pixels16_l2_8(dst, halfV, halfHV, stride, 16, 16, 16); \
} \
\
-static void OPNAME ## qpel16_mc32_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc32_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t full[24 * 17]; \
OPNAME ## mpeg4_qpel16_v_lowpass(dst, halfH, stride, 16); \
} \
\
-static void OPNAME ## qpel16_mc22_c(uint8_t *dst, uint8_t *src, \
+static void OPNAME ## qpel16_mc22_c(uint8_t *dst, const uint8_t *src, \
ptrdiff_t stride) \
{ \
uint8_t halfH[272]; \
#undef op_put
#undef op_put_no_rnd
-void ff_put_pixels8x8_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
+void ff_put_pixels8x8_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
{
put_pixels8_8_c(dst, src, stride, 8);
}
-void ff_avg_pixels8x8_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
+void ff_avg_pixels8x8_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
{
avg_pixels8_8_c(dst, src, stride, 8);
}
-void ff_put_pixels16x16_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
+void ff_put_pixels16x16_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
{
put_pixels16_8_c(dst, src, stride, 16);
}
-void ff_avg_pixels16x16_c(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
+void ff_avg_pixels16x16_c(uint8_t *dst, const uint8_t *src, ptrdiff_t stride)
{
avg_pixels16_8_c(dst, src, stride, 16);
}