mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 11:19:55 +00:00
Merge commit '8db00081a37d5b7e23918ee500bb16bc59b57197'
* commit '8db00081a37d5b7e23918ee500bb16bc59b57197': 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: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
d0aa60da10
@ -54,7 +54,8 @@ av_cold void ff_hpeldsp_init(HpelDSPContext *c, int flags)
|
||||
hpel_funcs(avg, [3], 2);
|
||||
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 (HAVE_VIS) ff_hpeldsp_init_vis (c, flags);
|
||||
if (ARCH_ALPHA) ff_hpeldsp_init_alpha (c, flags);
|
||||
|
@ -53,9 +53,9 @@ YASM-OBJS-$(CONFIG_DCT) += x86/dct32.o
|
||||
YASM-OBJS-$(CONFIG_DIRAC_DECODER) += x86/diracdsp_mmx.o x86/diracdsp_yasm.o\
|
||||
x86/dwt_yasm.o
|
||||
YASM-OBJS-$(CONFIG_DSPUTIL) += x86/dsputil.o \
|
||||
x86/fpelbase.o \
|
||||
x86/fpel.o \
|
||||
x86/mpeg4qpel.o \
|
||||
x86/qpelbase.o
|
||||
x86/qpel.o
|
||||
YASM-OBJS-$(CONFIG_ENCODERS) += x86/dsputilenc.o
|
||||
YASM-OBJS-$(CONFIG_FFT) += x86/fft.o
|
||||
YASM-OBJS-$(CONFIG_H263_DECODER) += x86/h263_loopfilter.o
|
||||
@ -72,10 +72,10 @@ YASM-OBJS-$(CONFIG_H264PRED) += x86/h264_intrapred.o \
|
||||
x86/h264_intrapred_10bit.o
|
||||
YASM-OBJS-$(CONFIG_H264QPEL) += x86/h264_qpel_8bit.o \
|
||||
x86/h264_qpel_10bit.o \
|
||||
x86/qpelbase.o \
|
||||
x86/fpelbase.o
|
||||
YASM-OBJS-$(CONFIG_HPELDSP) += x86/hpeldsp.o \
|
||||
x86/fpelbase.o
|
||||
x86/fpel.o \
|
||||
x86/qpel.o
|
||||
YASM-OBJS-$(CONFIG_HPELDSP) += x86/fpel.o \
|
||||
x86/hpeldsp.o
|
||||
YASM-OBJS-$(CONFIG_MPEGAUDIODSP) += x86/imdct36.o
|
||||
YASM-OBJS-$(CONFIG_PNG_DECODER) += x86/pngdsp.o
|
||||
YASM-OBJS-$(CONFIG_PRORES_DECODER) += x86/proresdsp.o
|
||||
|
@ -27,10 +27,6 @@
|
||||
#include "libavcodec/hpeldsp.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,
|
||||
ptrdiff_t line_size, int h);
|
||||
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,
|
||||
ptrdiff_t line_size, int h);
|
||||
void ff_avg_pixels8_xy2_3dnow(uint8_t *block, const uint8_t *pixels,
|
||||
ptrdiff_t line_size, int h);
|
||||
#endif /* HAVE_YASM */
|
||||
|
||||
|
||||
#if HAVE_INLINE_ASM
|
||||
@ -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[1][3] = ff_avg_pixels8_xy2_mmxext;
|
||||
}
|
||||
#endif /* HAVE_YASM */
|
||||
|
||||
#if HAVE_MMXEXT_EXTERNAL
|
||||
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][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)
|
||||
@ -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)
|
||||
{
|
||||
#if HAVE_SSE2_EXTERNAL
|
||||
#if HAVE_YASM
|
||||
if (!(mm_flags & AV_CPU_FLAG_SSE2SLOW)) {
|
||||
// these functions are slower than mmx on AMD, but faster on Intel
|
||||
c->put_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;
|
||||
}
|
||||
#endif /* HAVE_SSE2_EXTERNAL */
|
||||
#endif /* HAVE_YASM */
|
||||
}
|
||||
|
||||
void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags)
|
||||
|
Loading…
Reference in New Issue
Block a user