diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-12-05 11:55:38 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-12-05 11:55:41 +0100 |
commit | 5b4d57455d5b587fb0141823e2d08c9117ad1817 (patch) | |
tree | cbda11a429baa7ad5ff7f9c8c78270fdcae657ea | |
parent | be99054e77f1a0380d3597406d042f8e8e52b315 (diff) | |
parent | 3d7c84747d4b68f3929c98a6e09efea8e53634dc (diff) | |
download | ffmpeg-5b4d57455d5b587fb0141823e2d08c9117ad1817.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
x86: Initialize mmxext after amd3dnow optimizations
Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/x86/cavsdsp.c | 8 | ||||
-rw-r--r-- | libavcodec/x86/dsputilenc_mmx.c | 14 | ||||
-rw-r--r-- | libavcodec/x86/hpeldsp_init.c | 6 |
3 files changed, 14 insertions, 14 deletions
diff --git a/libavcodec/x86/cavsdsp.c b/libavcodec/x86/cavsdsp.c index 068995dbc5..aaa09d1784 100644 --- a/libavcodec/x86/cavsdsp.c +++ b/libavcodec/x86/cavsdsp.c @@ -547,12 +547,12 @@ av_cold void ff_cavsdsp_init_x86(CAVSDSPContext *c, AVCodecContext *avctx) if (INLINE_MMX(cpu_flags)) cavsdsp_init_mmx(c, avctx); #endif /* HAVE_MMX_INLINE */ -#if HAVE_MMXEXT_INLINE - if (INLINE_MMXEXT(cpu_flags)) - cavsdsp_init_mmxext(c, avctx); -#endif /* HAVE_MMXEXT_INLINE */ #if HAVE_AMD3DNOW_INLINE if (INLINE_AMD3DNOW(cpu_flags)) cavsdsp_init_3dnow(c, avctx); #endif /* HAVE_AMD3DNOW_INLINE */ +#if HAVE_MMXEXT_INLINE + if (INLINE_MMXEXT(cpu_flags)) + cavsdsp_init_mmxext(c, avctx); +#endif /* HAVE_MMXEXT_INLINE */ } diff --git a/libavcodec/x86/dsputilenc_mmx.c b/libavcodec/x86/dsputilenc_mmx.c index 6205577c57..5de8ade8b1 100644 --- a/libavcodec/x86/dsputilenc_mmx.c +++ b/libavcodec/x86/dsputilenc_mmx.c @@ -992,6 +992,13 @@ av_cold void ff_dsputilenc_init_mmx(DSPContext *c, AVCodecContext *avctx) c->ssd_int8_vs_int16 = ssd_int8_vs_int16_mmx; } + if (INLINE_AMD3DNOW(cpu_flags)) { + if (!(avctx->flags & CODEC_FLAG_BITEXACT)) { + c->try_8x8basis = try_8x8basis_3dnow; + } + c->add_8x8basis = add_8x8basis_3dnow; + } + if (INLINE_MMXEXT(cpu_flags)) { if (avctx->bits_per_raw_sample <= 8 && (dct_algo == FF_DCT_AUTO || dct_algo == FF_DCT_MMX)) @@ -1024,13 +1031,6 @@ av_cold void ff_dsputilenc_init_mmx(DSPContext *c, AVCodecContext *avctx) c->sum_abs_dctelem = sum_abs_dctelem_ssse3; } #endif - - if (INLINE_AMD3DNOW(cpu_flags)) { - if (!(avctx->flags & CODEC_FLAG_BITEXACT)) { - c->try_8x8basis = try_8x8basis_3dnow; - } - c->add_8x8basis = add_8x8basis_3dnow; - } #endif /* HAVE_INLINE_ASM */ if (EXTERNAL_MMX(cpu_flags)) { diff --git a/libavcodec/x86/hpeldsp_init.c b/libavcodec/x86/hpeldsp_init.c index 7db06833a5..8ecf909133 100644 --- a/libavcodec/x86/hpeldsp_init.c +++ b/libavcodec/x86/hpeldsp_init.c @@ -258,12 +258,12 @@ void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags) if (INLINE_MMX(cpu_flags)) hpeldsp_init_mmx(c, flags, cpu_flags); - if (EXTERNAL_MMXEXT(cpu_flags)) - hpeldsp_init_mmxext(c, flags, cpu_flags); - if (EXTERNAL_AMD3DNOW(cpu_flags)) hpeldsp_init_3dnow(c, flags, cpu_flags); + if (EXTERNAL_MMXEXT(cpu_flags)) + hpeldsp_init_mmxext(c, flags, cpu_flags); + if (EXTERNAL_SSE2(cpu_flags)) hpeldsp_init_sse2(c, flags, cpu_flags); } |