aboutsummaryrefslogtreecommitdiffstats
path: root/libavfilter/x86
diff options
context:
space:
mode:
authorJames Darnley <james.darnley@gmail.com>2013-03-10 15:08:50 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-03-13 22:07:25 +0100
commit0735b5088055896cb48574ad417b0cf796820d25 (patch)
tree1738cebe04a601502c9bc8f09c1c4e586b7a47cd /libavfilter/x86
parentae732640ab3415a661a88b7c9cbd9691a07a67ca (diff)
downloadffmpeg-0735b5088055896cb48574ad417b0cf796820d25.tar.gz
yadif: restore speed of the C filtering code
Always use the special filter for the first and last 3 columns (only). Changes made in 64ed397 slowed the filter to just under 3/4 of what it was. This commit restores the speed while maintaining identical output. For reference, on my Athlon64: 1733222 decicycles in old 2358563 decicycles in new 1727558 decicycles in this Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/x86')
-rw-r--r--libavfilter/x86/vf_yadif_init.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/libavfilter/x86/vf_yadif_init.c b/libavfilter/x86/vf_yadif_init.c
index 2873744d4b..8d5e76833f 100644
--- a/libavfilter/x86/vf_yadif_init.c
+++ b/libavfilter/x86/vf_yadif_init.c
@@ -42,18 +42,12 @@ av_cold void ff_yadif_init_x86(YADIFContext *yadif)
#if HAVE_YASM
#if ARCH_X86_32
- if (EXTERNAL_MMXEXT(cpu_flags)) {
+ if (EXTERNAL_MMXEXT(cpu_flags))
yadif->filter_line = ff_yadif_filter_line_mmxext;
- yadif->req_align = 8;
- }
#endif /* ARCH_X86_32 */
- if (EXTERNAL_SSE2(cpu_flags)) {
+ if (EXTERNAL_SSE2(cpu_flags))
yadif->filter_line = ff_yadif_filter_line_sse2;
- yadif->req_align = 16;
- }
- if (EXTERNAL_SSSE3(cpu_flags)) {
+ if (EXTERNAL_SSSE3(cpu_flags))
yadif->filter_line = ff_yadif_filter_line_ssse3;
- yadif->req_align = 16;
- }
#endif /* HAVE_YASM */
}