]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/x86/qpeldsp_init.c
Merge commit 'd8520d3ee032bf18f28897e0109f44b405caf5e3'
[ffmpeg] / libavcodec / x86 / qpeldsp_init.c
index 06b8960266fc82a597966eb7e8c122f568f5a322..3268d907ab45f9e087e53cd02101d146f0b99cc5 100644 (file)
 #include "libavcodec/qpeldsp.h"
 #include "fpel.h"
 
-void ff_put_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2,
+void ff_put_pixels8_l2_mmxext(uint8_t *dst,
+                              const uint8_t *src1, const uint8_t *src2,
                               int dstStride, int src1Stride, int h);
-void ff_put_no_rnd_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1,
-                                     uint8_t *src2, int dstStride,
-                                     int src1Stride, int h);
-void ff_avg_pixels8_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2,
+void ff_put_no_rnd_pixels8_l2_mmxext(uint8_t *dst,
+                                     const uint8_t *src1, const uint8_t *src2,
+                                     int dstStride, int src1Stride, int h);
+void ff_avg_pixels8_l2_mmxext(uint8_t *dst,
+                              const uint8_t *src1, const uint8_t *src2,
                               int dstStride, int src1Stride, int h);
-void ff_put_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2,
+void ff_put_pixels16_l2_mmxext(uint8_t *dst,
+                               const uint8_t *src1, const uint8_t *src2,
                                int dstStride, int src1Stride, int h);
-void ff_avg_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2,
+void ff_avg_pixels16_l2_mmxext(uint8_t *dst,
+                               const uint8_t *src1, const uint8_t *src2,
                                int dstStride, int src1Stride, int h);
-void ff_put_no_rnd_pixels16_l2_mmxext(uint8_t *dst, uint8_t *src1, uint8_t *src2,
+void ff_put_no_rnd_pixels16_l2_mmxext(uint8_t *dst,
+                                      const uint8_t *src1, const uint8_t *src2,
                                       int dstStride, int src1Stride, int h);
-void ff_put_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                           int dstStride, int srcStride, int h);
-void ff_avg_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_avg_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                           int dstStride, int srcStride, int h);
-void ff_put_no_rnd_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_no_rnd_mpeg4_qpel16_h_lowpass_mmxext(uint8_t *dst,
+                                                 const uint8_t *src,
                                                  int dstStride, int srcStride,
                                                  int h);
-void ff_put_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                          int dstStride, int srcStride, int h);
-void ff_avg_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_avg_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                          int dstStride, int srcStride, int h);
-void ff_put_no_rnd_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_no_rnd_mpeg4_qpel8_h_lowpass_mmxext(uint8_t *dst,
+                                                const uint8_t *src,
                                                 int dstStride, int srcStride,
                                                 int h);
-void ff_put_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                           int dstStride, int srcStride);
-void ff_avg_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_avg_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                           int dstStride, int srcStride);
-void ff_put_no_rnd_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_no_rnd_mpeg4_qpel16_v_lowpass_mmxext(uint8_t *dst,
+                                                 const uint8_t *src,
                                                  int dstStride, int srcStride);
-void ff_put_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                          int dstStride, int srcStride);
-void ff_avg_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_avg_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, const uint8_t *src,
                                          int dstStride, int srcStride);
-void ff_put_no_rnd_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
+void ff_put_no_rnd_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst,
+                                                const uint8_t *src,
                                                 int dstStride, int srcStride);
 #define ff_put_no_rnd_pixels16_mmxext ff_put_pixels16_mmx
 #define ff_put_no_rnd_pixels8_mmxext ff_put_pixels8_mmx
@@ -79,13 +88,15 @@ void ff_put_no_rnd_mpeg4_qpel8_v_lowpass_mmxext(uint8_t *dst, uint8_t *src,
 #define ff_put_pixels8_mmxext  ff_put_pixels8_mmx
 
 #define QPEL_OP(OPNAME, RND, MMX)                                       \
-static void OPNAME ## qpel8_mc00_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc00_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     ff_ ## OPNAME ## pixels8_ ## MMX(dst, src, stride, 8);              \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc10_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc10_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t temp[8];                                                   \
@@ -96,14 +107,16 @@ static void OPNAME ## qpel8_mc10_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, stride, 8);             \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc20_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc20_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     ff_ ## OPNAME ## mpeg4_qpel8_h_lowpass_ ## MMX(dst, src, stride,    \
                                                    stride, 8);          \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc30_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc30_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t temp[8];                                                   \
@@ -114,7 +127,8 @@ static void OPNAME ## qpel8_mc30_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8);                     \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc01_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc01_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t temp[8];                                                   \
@@ -125,14 +139,16 @@ static void OPNAME ## qpel8_mc01_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, stride, 8);             \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc02_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc02_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     ff_ ## OPNAME ## mpeg4_qpel8_v_lowpass_ ## MMX(dst, src,            \
                                                    stride, stride);     \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc03_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc03_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t temp[8];                                                   \
@@ -143,7 +159,8 @@ static void OPNAME ## qpel8_mc03_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8);                     \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc11_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc11_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -158,7 +175,8 @@ static void OPNAME ## qpel8_mc11_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8, 8);                  \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc31_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc31_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -173,7 +191,8 @@ static void OPNAME ## qpel8_mc31_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8, 8);                  \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc13_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc13_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -188,7 +207,8 @@ static void OPNAME ## qpel8_mc13_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8, 8);                  \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc33_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc33_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -203,7 +223,8 @@ static void OPNAME ## qpel8_mc33_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8, 8);                  \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc21_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc21_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -216,7 +237,8 @@ static void OPNAME ## qpel8_mc21_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8, 8);                  \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc23_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc23_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -229,7 +251,8 @@ static void OPNAME ## qpel8_mc23_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                         stride, 8, 8);                  \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc12_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc12_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -242,7 +265,8 @@ static void OPNAME ## qpel8_mc12_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                                    stride, 8);          \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc32_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc32_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[8 + 9];                                               \
@@ -255,7 +279,8 @@ static void OPNAME ## qpel8_mc32_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                                    stride, 8);          \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel8_mc22_ ## MMX(uint8_t *dst, uint8_t *src,    \
+static void OPNAME ## qpel8_mc22_ ## MMX(uint8_t *dst,                  \
+                                         const uint8_t *src,            \
                                          ptrdiff_t stride)              \
 {                                                                       \
     uint64_t half[9];                                                   \
@@ -266,13 +291,15 @@ static void OPNAME ## qpel8_mc22_ ## MMX(uint8_t *dst, uint8_t *src,    \
                                                    stride, 8);          \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc00_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc00_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     ff_ ## OPNAME ## pixels16_ ## MMX(dst, src, stride, 16);            \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc10_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc10_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t temp[32];                                                  \
@@ -283,14 +310,16 @@ static void OPNAME ## qpel16_mc10_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16);                   \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc20_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc20_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     ff_ ## OPNAME ## mpeg4_qpel16_h_lowpass_ ## MMX(dst, src,           \
                                                     stride, stride, 16);\
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc30_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc30_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t temp[32];                                                  \
@@ -301,7 +330,8 @@ static void OPNAME ## qpel16_mc30_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, stride, 16);           \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc01_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc01_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t temp[32];                                                  \
@@ -312,14 +342,16 @@ static void OPNAME ## qpel16_mc01_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16);                   \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc02_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc02_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     ff_ ## OPNAME ## mpeg4_qpel16_v_lowpass_ ## MMX(dst, src,           \
                                                     stride, stride);    \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc03_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc03_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t temp[32];                                                  \
@@ -330,7 +362,8 @@ static void OPNAME ## qpel16_mc03_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, stride, 16);           \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc11_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc11_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[16 * 2 + 17 * 2];                                     \
@@ -346,7 +379,8 @@ static void OPNAME ## qpel16_mc11_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16, 16);               \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc31_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc31_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[16 * 2 + 17 * 2];                                     \
@@ -362,7 +396,8 @@ static void OPNAME ## qpel16_mc31_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16, 16);               \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc13_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc13_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[16 * 2 + 17 * 2];                                     \
@@ -378,7 +413,8 @@ static void OPNAME ## qpel16_mc13_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16, 16);               \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc33_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc33_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[16 * 2 + 17 * 2];                                     \
@@ -394,7 +430,8 @@ static void OPNAME ## qpel16_mc33_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16, 16);               \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc21_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc21_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[16 * 2 + 17 * 2];                                     \
@@ -408,7 +445,8 @@ static void OPNAME ## qpel16_mc21_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16, 16);               \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc23_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc23_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[16 * 2 + 17 * 2];                                     \
@@ -422,7 +460,8 @@ static void OPNAME ## qpel16_mc23_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                          stride, 16, 16);               \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc12_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc12_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[17 * 2];                                              \
@@ -435,7 +474,8 @@ static void OPNAME ## qpel16_mc12_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                                     stride, 16);        \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc32_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc32_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[17 * 2];                                              \
@@ -448,7 +488,8 @@ static void OPNAME ## qpel16_mc32_ ## MMX(uint8_t *dst, uint8_t *src,   \
                                                     stride, 16);        \
 }                                                                       \
                                                                         \
-static void OPNAME ## qpel16_mc22_ ## MMX(uint8_t *dst, uint8_t *src,   \
+static void OPNAME ## qpel16_mc22_ ## MMX(uint8_t *dst,                 \
+                                          const uint8_t *src,           \
                                           ptrdiff_t stride)             \
 {                                                                       \
     uint64_t half[17 * 2];                                              \