[git commit] tls: further reduce register pressure in i386 assembly

Denys Vlasenko vda.linux at googlemail.com
Tue Apr 20 17:03:55 UTC 2021


commit: https://git.busybox.net/busybox/commit/?id=20b224046c61ccc9a8e847cd0665f9f39e9a8ff9
branch: https://git.busybox.net/busybox/commit/?id=refs/heads/master

function                                             old     new   delta
pstm_montgomery_reduce                               435     431      -4

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 networking/tls_pstm_montgomery_reduce.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/networking/tls_pstm_montgomery_reduce.c b/networking/tls_pstm_montgomery_reduce.c
index e8857f394..4181a0590 100644
--- a/networking/tls_pstm_montgomery_reduce.c
+++ b/networking/tls_pstm_montgomery_reduce.c
@@ -102,11 +102,11 @@ asm(                                                      \
 #define PROPCARRY                           \
 asm(                                        \
    "addl   %1,%0    \n\t"                   \
-   "setb   %%al     \n\t"                   \
-   "movzbl %%al,%1 \n\t"                    \
+   "sbb    %1,%1    \n\t"                   \
+   "neg    %1       \n\t"                   \
 :"=g"(_c[LO]), "=r"(cy)                     \
 :"0"(_c[LO]), "1"(cy)                       \
-: "%eax", "cc")
+:"cc")
 
 /******************************************************************************/
 #elif defined(PSTM_X86_64)


More information about the busybox-cvs mailing list