[FFmpeg-cvslog] x86: lpc: fix a segfault in av_evaluate_lls_sse2()

Loren Merritt git at videolan.org
Mon Jul 1 02:34:41 CEST 2013


ffmpeg | branch: master | Loren Merritt <pengvado at akuvian.org> | Sun Jun 30 22:56:58 2013 +0000| [1221bb623978c013046bcb8e5af7f6b9b418a10e] | committer: Loren Merritt

x86: lpc: fix a segfault in av_evaluate_lls_sse2()

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=1221bb623978c013046bcb8e5af7f6b9b418a10e
---

 libavcodec/lpc.c      |    2 +-
 libavutil/x86/lls.asm |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/lpc.c b/libavcodec/lpc.c
index 995e4e2..fbd1bdf 100644
--- a/libavcodec/lpc.c
+++ b/libavcodec/lpc.c
@@ -221,7 +221,7 @@ int ff_lpc_calc_coefs(LPCContext *s,
 
                 if(pass){
                     double eval, inv, rinv;
-                    eval= m[(pass-1)&1].evaluate_lls(&m[(pass-1)&1], var+1, max_order-1);
+                    eval= m[pass&1].evaluate_lls(&m[(pass-1)&1], var+1, max_order-1);
                     eval= (512>>pass) + fabs(eval - var[0]);
                     inv = 1/eval;
                     rinv = sqrt(inv);
diff --git a/libavutil/x86/lls.asm b/libavutil/x86/lls.asm
index 92b7f95..058a7dc 100644
--- a/libavutil/x86/lls.asm
+++ b/libavutil/x86/lls.asm
@@ -197,7 +197,7 @@ cglobal update_lls, 3,6,8, ctx, var, count, i, j, count2
 
 
 INIT_XMM sse2
-cglobal evaluate_lls, 2,4,2, ctx, var, order, i
+cglobal evaluate_lls, 3,4,2, ctx, var, order, i
     ; This function is often called on the same buffer as update_lls, but with
     ; an offset. They can't both be aligned.
     ; Load halves rather than movu to avoid store-forwarding stalls, since the



More information about the ffmpeg-cvslog mailing list