[FFmpeg-cvslog] x86: dsputil: Move rv40-specific functions where they belong
Diego Biurrun
git at videolan.org
Wed May 8 14:12:40 CEST 2013
ffmpeg | branch: master | Diego Biurrun <diego at biurrun.de> | Sat Apr 27 21:30:06 2013 +0200| [63bac48f734fc69cca2ef2cfada92cd9a222734d] | committer: Diego Biurrun
x86: dsputil: Move rv40-specific functions where they belong
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=63bac48f734fc69cca2ef2cfada92cd9a222734d
---
libavcodec/x86/dsputil_mmx.c | 17 -----------------
libavcodec/x86/dsputil_mmx.h | 5 -----
libavcodec/x86/rv40dsp_init.c | 31 +++++++++++++++++++++++++++----
3 files changed, 27 insertions(+), 26 deletions(-)
diff --git a/libavcodec/x86/dsputil_mmx.c b/libavcodec/x86/dsputil_mmx.c
index bd19947..807c836 100644
--- a/libavcodec/x86/dsputil_mmx.c
+++ b/libavcodec/x86/dsputil_mmx.c
@@ -860,23 +860,6 @@ QPEL_OP(put_no_rnd_, ff_pw_15, _no_rnd_, mmxext)
#if HAVE_INLINE_ASM
-void ff_put_rv40_qpel8_mc33_mmx(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
-{
- ff_put_pixels8_xy2_mmx(dst, src, stride, 8);
-}
-void ff_put_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
-{
- ff_put_pixels16_xy2_mmx(dst, src, stride, 16);
-}
-void ff_avg_rv40_qpel8_mc33_mmx(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
-{
- ff_avg_pixels8_xy2_mmx(dst, src, stride, 8);
-}
-void ff_avg_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src, ptrdiff_t stride)
-{
- ff_avg_pixels16_xy2_mmx(dst, src, stride, 16);
-}
-
static void gmc_mmx(uint8_t *dst, uint8_t *src,
int stride, int h, int ox, int oy,
int dxx, int dxy, int dyx, int dyy,
diff --git a/libavcodec/x86/dsputil_mmx.h b/libavcodec/x86/dsputil_mmx.h
index 28cc07b..2977bfe 100644
--- a/libavcodec/x86/dsputil_mmx.h
+++ b/libavcodec/x86/dsputil_mmx.h
@@ -186,11 +186,6 @@ void ff_put_pixels8_xy2_mmx(uint8_t *block, const uint8_t *pixels,
void ff_put_pixels16_xy2_mmx(uint8_t *block, const uint8_t *pixels,
ptrdiff_t line_size, int h);
-void ff_put_rv40_qpel8_mc33_mmx(uint8_t *block, uint8_t *pixels, ptrdiff_t stride);
-void ff_put_rv40_qpel16_mc33_mmx(uint8_t *block, uint8_t *pixels, ptrdiff_t stride);
-void ff_avg_rv40_qpel8_mc33_mmx(uint8_t *block, uint8_t *pixels, ptrdiff_t stride);
-void ff_avg_rv40_qpel16_mc33_mmx(uint8_t *block, uint8_t *pixels, ptrdiff_t stride);
-
void ff_deinterlace_line_mmx(uint8_t *dst,
const uint8_t *lum_m4, const uint8_t *lum_m3,
const uint8_t *lum_m2, const uint8_t *lum_m1,
diff --git a/libavcodec/x86/rv40dsp_init.c b/libavcodec/x86/rv40dsp_init.c
index 37f6c26..3a785b3 100644
--- a/libavcodec/x86/rv40dsp_init.c
+++ b/libavcodec/x86/rv40dsp_init.c
@@ -188,6 +188,29 @@ QPEL_FUNCS_SET (OP, 3, 2, OPT)
#endif /* HAVE_YASM */
+#if HAVE_MMX_INLINE
+static void put_rv40_qpel8_mc33_mmx(uint8_t *dst, uint8_t *src,
+ ptrdiff_t stride)
+{
+ ff_put_pixels8_xy2_mmx(dst, src, stride, 8);
+}
+static void put_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src,
+ ptrdiff_t stride)
+{
+ ff_put_pixels16_xy2_mmx(dst, src, stride, 16);
+}
+static void avg_rv40_qpel8_mc33_mmx(uint8_t *dst, uint8_t *src,
+ ptrdiff_t stride)
+{
+ ff_avg_pixels8_xy2_mmx(dst, src, stride, 8);
+}
+static void avg_rv40_qpel16_mc33_mmx(uint8_t *dst, uint8_t *src,
+ ptrdiff_t stride)
+{
+ ff_avg_pixels16_xy2_mmx(dst, src, stride, 16);
+}
+#endif /* HAVE_MMX_INLINE */
+
av_cold void ff_rv40dsp_init_x86(RV34DSPContext *c)
{
#if HAVE_YASM
@@ -197,10 +220,10 @@ av_cold void ff_rv40dsp_init_x86(RV34DSPContext *c)
c->put_chroma_pixels_tab[0] = ff_put_rv40_chroma_mc8_mmx;
c->put_chroma_pixels_tab[1] = ff_put_rv40_chroma_mc4_mmx;
#if HAVE_MMX_INLINE
- c->put_pixels_tab[0][15] = ff_put_rv40_qpel16_mc33_mmx;
- c->put_pixels_tab[1][15] = ff_put_rv40_qpel8_mc33_mmx;
- c->avg_pixels_tab[0][15] = ff_avg_rv40_qpel16_mc33_mmx;
- c->avg_pixels_tab[1][15] = ff_avg_rv40_qpel8_mc33_mmx;
+ c->put_pixels_tab[0][15] = put_rv40_qpel16_mc33_mmx;
+ c->put_pixels_tab[1][15] = put_rv40_qpel8_mc33_mmx;
+ c->avg_pixels_tab[0][15] = avg_rv40_qpel16_mc33_mmx;
+ c->avg_pixels_tab[1][15] = avg_rv40_qpel8_mc33_mmx;
#endif /* HAVE_MMX_INLINE */
#if ARCH_X86_32
QPEL_MC_SET(put_, _mmx)
More information about the ffmpeg-cvslog
mailing list