x86/af_afir: fix processing the last element
authorJames Almer <jamrial@gmail.com>
Wed, 2 Jan 2019 23:48:59 +0000 (20:48 -0300)
committerJames Almer <jamrial@gmail.com>
Thu, 3 Jan 2019 13:12:18 +0000 (10:12 -0300)
ff_fcmul_add_sse3() is now identical to the C version.

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
libavfilter/x86/af_afir.asm

index 849d85e..fcc1f42 100644 (file)
@@ -30,7 +30,6 @@ SECTION .text
 INIT_XMM sse3
 cglobal fcmul_add, 4,4,6, sum, t, c, len
     shl       lend, 3
-    add       lend, mmsize*2
     add         tq, lenq
     add         cq, lenq
     add       sumq, lenq
@@ -57,4 +56,8 @@ ALIGN 16
     movaps    [sumq + lenq+mmsize], m3
     add       lenq, mmsize*2
     jl .loop
-    REP_RET
+    movss xm0, [tq + lenq]
+    mulss xm0, [cq + lenq]
+    addss xm0, [sumq + lenq]
+    movss [sumq + lenq], xm0
+    RET