Commit d0aa60da authored by Michael Niedermayer's avatar Michael Niedermayer

Merge commit '8db00081'

* commit '8db00081':
  x86: hpeldsp: Move half-pel assembly from dsputil to hpeldsp

Conflicts:
	libavcodec/hpeldsp.c
	libavcodec/hpeldsp.h
	libavcodec/x86/Makefile
	libavcodec/x86/dsputil_mmx.c
	libavcodec/x86/hpeldsp_init.c
	libavcodec/x86/hpeldsp_rnd_template.c
Merged-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parents 3fee9fa0 8db00081
...@@ -54,7 +54,8 @@ av_cold void ff_hpeldsp_init(HpelDSPContext *c, int flags) ...@@ -54,7 +54,8 @@ av_cold void ff_hpeldsp_init(HpelDSPContext *c, int flags)
hpel_funcs(avg, [3], 2); hpel_funcs(avg, [3], 2);
hpel_funcs(avg_no_rnd,, 16); hpel_funcs(avg_no_rnd,, 16);
if (ARCH_X86) ff_hpeldsp_init_x86 (c, flags); if (ARCH_X86)
ff_hpeldsp_init_x86(c, flags);
if (ARCH_ARM) ff_hpeldsp_init_arm (c, flags); if (ARCH_ARM) ff_hpeldsp_init_arm (c, flags);
if (HAVE_VIS) ff_hpeldsp_init_vis (c, flags); if (HAVE_VIS) ff_hpeldsp_init_vis (c, flags);
if (ARCH_ALPHA) ff_hpeldsp_init_alpha (c, flags); if (ARCH_ALPHA) ff_hpeldsp_init_alpha (c, flags);
......
...@@ -53,9 +53,9 @@ YASM-OBJS-$(CONFIG_DCT) += x86/dct32.o ...@@ -53,9 +53,9 @@ YASM-OBJS-$(CONFIG_DCT) += x86/dct32.o
YASM-OBJS-$(CONFIG_DIRAC_DECODER) += x86/diracdsp_mmx.o x86/diracdsp_yasm.o\ YASM-OBJS-$(CONFIG_DIRAC_DECODER) += x86/diracdsp_mmx.o x86/diracdsp_yasm.o\
x86/dwt_yasm.o x86/dwt_yasm.o
YASM-OBJS-$(CONFIG_DSPUTIL) += x86/dsputil.o \ YASM-OBJS-$(CONFIG_DSPUTIL) += x86/dsputil.o \
x86/fpelbase.o \ x86/fpel.o \
x86/mpeg4qpel.o \ x86/mpeg4qpel.o \
x86/qpelbase.o x86/qpel.o
YASM-OBJS-$(CONFIG_ENCODERS) += x86/dsputilenc.o YASM-OBJS-$(CONFIG_ENCODERS) += x86/dsputilenc.o
YASM-OBJS-$(CONFIG_FFT) += x86/fft.o YASM-OBJS-$(CONFIG_FFT) += x86/fft.o
YASM-OBJS-$(CONFIG_H263_DECODER) += x86/h263_loopfilter.o YASM-OBJS-$(CONFIG_H263_DECODER) += x86/h263_loopfilter.o
...@@ -72,10 +72,10 @@ YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o \ ...@@ -72,10 +72,10 @@ YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o \
x86/h264_intrapred_10bit.o x86/h264_intrapred_10bit.o
YASM-OBJS-$(CONFIG_H264QPEL) += x86/h264_qpel_8bit.o \ YASM-OBJS-$(CONFIG_H264QPEL) += x86/h264_qpel_8bit.o \
x86/h264_qpel_10bit.o \ x86/h264_qpel_10bit.o \
x86/qpelbase.o \ x86/fpel.o \
x86/fpelbase.o x86/qpel.o
YASM-OBJS-$(CONFIG_HPELDSP) += x86/hpeldsp.o \ YASM-OBJS-$(CONFIG_HPELDSP) += x86/fpel.o \
x86/fpelbase.o x86/hpeldsp.o
YASM-OBJS-$(CONFIG_MPEGAUDIODSP) += x86/imdct36.o YASM-OBJS-$(CONFIG_MPEGAUDIODSP) += x86/imdct36.o
YASM-OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp.o YASM-OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp.o
YASM-OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp.o YASM-OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp.o
......
...@@ -27,10 +27,6 @@ ...@@ -27,10 +27,6 @@
#include "libavcodec/hpeldsp.h" #include "libavcodec/hpeldsp.h"
#include "dsputil_mmx.h" #include "dsputil_mmx.h"
//#undef NDEBUG
//#include <assert.h>
#if HAVE_YASM
void ff_put_pixels8_x2_mmxext(uint8_t *block, const uint8_t *pixels, void ff_put_pixels8_x2_mmxext(uint8_t *block, const uint8_t *pixels,
ptrdiff_t line_size, int h); ptrdiff_t line_size, int h);
void ff_put_pixels8_x2_3dnow(uint8_t *block, const uint8_t *pixels, void ff_put_pixels8_x2_3dnow(uint8_t *block, const uint8_t *pixels,
...@@ -77,7 +73,6 @@ void ff_avg_pixels8_xy2_mmxext(uint8_t *block, const uint8_t *pixels, ...@@ -77,7 +73,6 @@ void ff_avg_pixels8_xy2_mmxext(uint8_t *block, const uint8_t *pixels,
ptrdiff_t line_size, int h); ptrdiff_t line_size, int h);
void ff_avg_pixels8_xy2_3dnow(uint8_t *block, const uint8_t *pixels, void ff_avg_pixels8_xy2_3dnow(uint8_t *block, const uint8_t *pixels,
ptrdiff_t line_size, int h); ptrdiff_t line_size, int h);
#endif /* HAVE_YASM */
#if HAVE_INLINE_ASM #if HAVE_INLINE_ASM
...@@ -341,14 +336,12 @@ static void hpeldsp_init_mmxext(HpelDSPContext *c, int flags, int mm_flags) ...@@ -341,14 +336,12 @@ static void hpeldsp_init_mmxext(HpelDSPContext *c, int flags, int mm_flags)
c->avg_pixels_tab[0][3] = ff_avg_pixels16_xy2_mmxext; c->avg_pixels_tab[0][3] = ff_avg_pixels16_xy2_mmxext;
c->avg_pixels_tab[1][3] = ff_avg_pixels8_xy2_mmxext; c->avg_pixels_tab[1][3] = ff_avg_pixels8_xy2_mmxext;
} }
#endif /* HAVE_YASM */
#if HAVE_MMXEXT_EXTERNAL
if (flags & CODEC_FLAG_BITEXACT && CONFIG_VP3_DECODER) { if (flags & CODEC_FLAG_BITEXACT && CONFIG_VP3_DECODER) {
c->put_no_rnd_pixels_tab[1][1] = ff_put_no_rnd_pixels8_x2_exact_mmxext; c->put_no_rnd_pixels_tab[1][1] = ff_put_no_rnd_pixels8_x2_exact_mmxext;
c->put_no_rnd_pixels_tab[1][2] = ff_put_no_rnd_pixels8_y2_exact_mmxext; c->put_no_rnd_pixels_tab[1][2] = ff_put_no_rnd_pixels8_y2_exact_mmxext;
} }
#endif /* HAVE_MMXEXT_EXTERNAL */ #endif /* HAVE_YASM */
} }
static void hpeldsp_init_3dnow(HpelDSPContext *c, int flags, int mm_flags) static void hpeldsp_init_3dnow(HpelDSPContext *c, int flags, int mm_flags)
...@@ -387,14 +380,14 @@ static void hpeldsp_init_3dnow(HpelDSPContext *c, int flags, int mm_flags) ...@@ -387,14 +380,14 @@ static void hpeldsp_init_3dnow(HpelDSPContext *c, int flags, int mm_flags)
static void hpeldsp_init_sse2(HpelDSPContext *c, int flags, int mm_flags) static void hpeldsp_init_sse2(HpelDSPContext *c, int flags, int mm_flags)
{ {
#if HAVE_SSE2_EXTERNAL #if HAVE_YASM
if (!(mm_flags & AV_CPU_FLAG_SSE2SLOW)) { if (!(mm_flags & AV_CPU_FLAG_SSE2SLOW)) {
// these functions are slower than mmx on AMD, but faster on Intel // these functions are slower than mmx on AMD, but faster on Intel
c->put_pixels_tab[0][0] = ff_put_pixels16_sse2; c->put_pixels_tab[0][0] = ff_put_pixels16_sse2;
c->put_no_rnd_pixels_tab[0][0] = ff_put_pixels16_sse2; c->put_no_rnd_pixels_tab[0][0] = ff_put_pixels16_sse2;
c->avg_pixels_tab[0][0] = ff_avg_pixels16_sse2; c->avg_pixels_tab[0][0] = ff_avg_pixels16_sse2;
} }
#endif /* HAVE_SSE2_EXTERNAL */ #endif /* HAVE_YASM */
} }
void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags) void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment