summaryrefslogtreecommitdiff
path: root/libavutil/x86/lls_init.c
diff options
context:
space:
mode:
authorLoren Merritt <lorenm@u.washington.edu>2013-06-18 21:30:43 +0000
committerLuca Barbato <lu_zero@gentoo.org>2013-06-29 13:23:57 +0200
commitb545179fdff1ccfbbb9d422e4e9720cb6c6d9191 (patch)
tree0476bc87fd03fd512c49103a36ff05681a000e00 /libavutil/x86/lls_init.c
parent502ab21af0ca68f76d6112722c46d2f35c004053 (diff)
downloadffmpeg-b545179fdff1ccfbbb9d422e4e9720cb6c6d9191.tar.gz
x86: lpc: simd av_evaluate_lls
1.5x-1.8x faster on sandybridge Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diffstat (limited to 'libavutil/x86/lls_init.c')
-rw-r--r--libavutil/x86/lls_init.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavutil/x86/lls_init.c b/libavutil/x86/lls_init.c
index 8a80f83002..888bc54a39 100644
--- a/libavutil/x86/lls_init.c
+++ b/libavutil/x86/lls_init.c
@@ -25,12 +25,15 @@
void ff_update_lls_sse2(LLSModel *m, double *var);
void ff_update_lls_avx(LLSModel *m, double *var);
+double ff_evaluate_lls_sse2(LLSModel *m, double *var, int order);
av_cold void ff_init_lls_x86(LLSModel *m)
{
int cpu_flags = av_get_cpu_flags();
if (EXTERNAL_SSE2(cpu_flags)) {
m->update_lls = ff_update_lls_sse2;
+ if (m->indep_count >= 4)
+ m->evaluate_lls = ff_evaluate_lls_sse2;
}
if (EXTERNAL_AVX(cpu_flags)) {
m->update_lls = ff_update_lls_avx;