You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
x86: hpeldsp: Use EXTERNAL_SSE2_FAST where appropriate
This commit is contained in:
@@ -229,15 +229,12 @@ static void hpeldsp_init_3dnow(HpelDSPContext *c, int flags, int cpu_flags)
|
|||||||
#endif /* HAVE_AMD3DNOW_EXTERNAL */
|
#endif /* HAVE_AMD3DNOW_EXTERNAL */
|
||||||
}
|
}
|
||||||
|
|
||||||
static void hpeldsp_init_sse2(HpelDSPContext *c, int flags, int cpu_flags)
|
static void hpeldsp_init_sse2_fast(HpelDSPContext *c, int flags, int cpu_flags)
|
||||||
{
|
{
|
||||||
#if HAVE_SSE2_EXTERNAL
|
#if HAVE_SSE2_EXTERNAL
|
||||||
if (!(cpu_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_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_SSE2_EXTERNAL */
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -254,8 +251,8 @@ av_cold void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags)
|
|||||||
if (EXTERNAL_MMXEXT(cpu_flags))
|
if (EXTERNAL_MMXEXT(cpu_flags))
|
||||||
hpeldsp_init_mmxext(c, flags, cpu_flags);
|
hpeldsp_init_mmxext(c, flags, cpu_flags);
|
||||||
|
|
||||||
if (EXTERNAL_SSE2(cpu_flags))
|
if (EXTERNAL_SSE2_FAST(cpu_flags))
|
||||||
hpeldsp_init_sse2(c, flags, cpu_flags);
|
hpeldsp_init_sse2_fast(c, flags, cpu_flags);
|
||||||
|
|
||||||
if (CONFIG_VP3_DECODER)
|
if (CONFIG_VP3_DECODER)
|
||||||
ff_hpeldsp_vp3_init_x86(c, cpu_flags, flags);
|
ff_hpeldsp_vp3_init_x86(c, cpu_flags, flags);
|
||||||
|
Reference in New Issue
Block a user