From a4f876a1a2595e99f682b68a4eabaa95a61b47fa Mon Sep 17 00:00:00 2001
From: James Almer <jamrial@gmail.com>
Date: Fri, 26 Dec 2014 17:09:02 -0300
Subject: [PATCH] x86/vf_fspp: move pxor in store slice functions out of the
 loop

m7 is not overwritten, so we only need to clear it once.
Found by Christophe Gisquet.

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavfilter/x86/vf_fspp.asm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavfilter/x86/vf_fspp.asm b/libavfilter/x86/vf_fspp.asm
index 5ad4275ed85..fbf531b22c9 100644
--- a/libavfilter/x86/vf_fspp.asm
+++ b/libavfilter/x86/vf_fspp.asm
@@ -77,11 +77,11 @@ cglobal store_slice, 2, 7, 0, dst, src, width, dither_height, dither, tmp, tmp2
     mov       src_strideq, tmp2q
     shl       tmpq, 4
     lea       dither_heightq, [ditherq+dither_heightq*8]
+    pxor      m7, m7
 
 .loop_height:
     movq      m3, [ditherq]
     movq      m4, m3
-    pxor      m7, m7
     punpcklbw m3, m7
     punpckhbw m4, m7
     mov       tmp2q, widthq
@@ -143,11 +143,11 @@ cglobal store_slice2, 0, 7, 0, dst, src, width, dither_height, dither, tmp, tmp2
     mov       src_strideq, tmp2q
     shl       tmpq, 5
     lea       dither_heightq, [ditherq+dither_heightq*8]
+    pxor      m7, m7
 
 .loop_height:
     movq      m3, [ditherq]
     movq      m4, m3
-    pxor      m7, m7
     punpcklbw m3, m7
     punpckhbw m4, m7
     mov       tmp2q,widthq
-- 
GitLab