[x265] [PATCH] asm: reduce count of register in calSign, 213c -> 202c

Min Chen chenm003 at 163.com
Thu Apr 2 13:33:25 CEST 2015


# HG changeset patch
# User Min Chen <chenm003 at 163.com>
# Date 1427974391 -28800
# Node ID 280aee913f669ea674ded4aeb2d71af977ad4b7d
# Parent  ac85c775620f1dcb0df056874633cbf916098bd2
asm: reduce count of register in calSign, 213c -> 202c
---
 source/common/x86/loopfilter.asm |   24 +++++++++++-------------
 1 files changed, 11 insertions(+), 13 deletions(-)

diff -r ac85c775620f -r 280aee913f66 source/common/x86/loopfilter.asm
--- a/source/common/x86/loopfilter.asm	Tue Mar 31 20:04:28 2015 -0500
+++ b/source/common/x86/loopfilter.asm	Thu Apr 02 19:33:11 2015 +0800
@@ -324,9 +324,7 @@
 ; void calSign(int8_t *dst, const Pixel *src1, const Pixel *src2, const int endX)
 ;============================================================================================================
 INIT_XMM sse4
-cglobal calSign, 4, 5, 7
-
-    mov         r4,    16
+cglobal calSign, 4, 4, 6
     mova        m1,    [pb_128]
     mova        m0,    [pb_1]
     shr         r3d,   4
@@ -335,17 +333,17 @@
     movu        m3,    [r2]        ; m3 = pTmpU[x]
 
     pxor        m4,    m2,    m1
-    pxor        m5,    m3,    m1
-    pcmpgtb     m6,    m4,    m5
-    pcmpgtb     m5,    m4
-    pand        m6,    m0
-    por         m6,    m5
+    pxor        m3,    m1
+    pcmpgtb     m5,    m4,    m3
+    pcmpgtb     m3,    m4
+    pand        m5,    m0
+    por         m5,    m3
 
-    movu        [r0],  m6
+    movu        [r0],  m5
 
-    add         r0,    r4
-    add         r1,    r4
-    add         r2,    r4
+    add         r0,    16
+    add         r1,    16
+    add         r2,    16
     dec         r3d
-    jnz         .loop
+    jnz        .loop
     RET



More information about the x265-devel mailing list