mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-02-16 11:47:04 +00:00
x86: Only use optimizations with cmov if the CPU supports the instruction
Also fill in missing hash for AV_CPU_FLAG_CMOV addition in APIChanges.
(cherry picked from commit fe07c9c6b5
)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Conflicts:
libavcodec/x86/dsputil_mmx.c
This commit is contained in:
parent
8637f4edee
commit
893b353362
@ -13,7 +13,7 @@ libavutil: 2011-04-18
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2014-09-16 - xxxxxxx - lavu 51.22.3 - cpu.h
|
||||
2014-09-16 - 8637f4e - lavu 51.22.3 - cpu.h
|
||||
Add AV_CPU_FLAG_CMOV.
|
||||
|
||||
2012-03-04 - 7f3f855 - lavu 51.22.1 - error.h
|
||||
|
@ -2683,7 +2683,8 @@ void dsputil_init_mmx(DSPContext* c, AVCodecContext *avctx)
|
||||
c->add_hfyu_median_prediction = ff_add_hfyu_median_prediction_mmx2;
|
||||
#endif
|
||||
#if HAVE_7REGS
|
||||
if (HAVE_AMD3DNOW && (mm_flags & AV_CPU_FLAG_3DNOW))
|
||||
if (HAVE_AMD3DNOW && (mm_flags & AV_CPU_FLAG_3DNOW) &&
|
||||
(mm_flags & AV_CPU_FLAG_CMOV))
|
||||
c->add_hfyu_median_prediction = add_hfyu_median_prediction_cmov;
|
||||
#endif
|
||||
|
||||
|
@ -188,7 +188,8 @@ void ff_h264_pred_init_x86(H264PredContext *h, int codec_id, const int bit_depth
|
||||
if (chroma_format_idc <= 1)
|
||||
h->pred8x8 [PLANE_PRED8x8] = ff_pred8x8_plane_mmx;
|
||||
if (codec_id == CODEC_ID_SVQ3) {
|
||||
h->pred16x16[PLANE_PRED8x8] = ff_pred16x16_plane_svq3_mmx;
|
||||
if (mm_flags & AV_CPU_FLAG_CMOV)
|
||||
h->pred16x16[PLANE_PRED8x8] = ff_pred16x16_plane_svq3_mmx;
|
||||
} else if (codec_id == CODEC_ID_RV40) {
|
||||
h->pred16x16[PLANE_PRED8x8] = ff_pred16x16_plane_rv40_mmx;
|
||||
} else {
|
||||
|
@ -361,7 +361,8 @@ void ff_h264dsp_init_x86(H264DSPContext *c, const int bit_depth, const int chrom
|
||||
if (chroma_format_idc <= 1)
|
||||
c->h264_idct_add8 = ff_h264_idct_add8_8_mmx;
|
||||
c->h264_idct_add16intra = ff_h264_idct_add16intra_8_mmx;
|
||||
c->h264_luma_dc_dequant_idct= ff_h264_luma_dc_dequant_idct_mmx;
|
||||
if (mm_flags & AV_CPU_FLAG_CMOV)
|
||||
c->h264_luma_dc_dequant_idct = ff_h264_luma_dc_dequant_idct_mmx;
|
||||
|
||||
if (mm_flags & AV_CPU_FLAG_MMX2) {
|
||||
c->h264_idct_dc_add = ff_h264_idct_dc_add_8_mmx2;
|
||||
|
Loading…
Reference in New Issue
Block a user