[git] GCRYPT - branch, master, updated. libgcrypt-1.6.0-264-gfa94b61

by Jussi Kivilinna cvs at cvs.gnupg.org
Tue Oct 13 07:48:04 CEST 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "The GNU crypto library".

The branch, master has been updated
       via  fa94b6111948a614ebdcb67f7942eced8b84c579 (commit)
      from  73374fdd27c7ba28b19f9672c68a6f5b72252fe5 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit fa94b6111948a614ebdcb67f7942eced8b84c579
Author: Jussi Kivilinna <jussi.kivilinna at iki.fi>
Date:   Tue Oct 13 08:33:00 2015 +0300

    Fix compiling AES/AES-NI implementation on linux-i386
    
    * cipher/rijndael-aesni.c (do_aesni_ctr_4): Split assembly block in
    two parts to reduce number of register constraints needed.
    --
    
    Signed-off-by: Jussi Kivilinna <jussi.kivilinna at iki.fi>

diff --git a/cipher/rijndael-aesni.c b/cipher/rijndael-aesni.c
index 5c85903..97e0ad0 100644
--- a/cipher/rijndael-aesni.c
+++ b/cipher/rijndael-aesni.c
@@ -961,8 +961,17 @@ do_aesni_ctr_4 (const RIJNDAEL_context *ctx,
                 aesenclast_xmm1_xmm2
                 aesenclast_xmm1_xmm3
                 aesenclast_xmm1_xmm4
+                :
+                : [ctr] "r" (ctr),
+                  [key] "r" (ctx->keyschenc),
+                  [rounds] "g" (ctx->rounds),
+                  [addb_1] "m" (bige_addb_const[0][0]),
+                  [addb_2] "m" (bige_addb_const[1][0]),
+                  [addb_3] "m" (bige_addb_const[2][0]),
+                  [addb_4] "m" (bige_addb_const[3][0])
+                : "%esi", "cc", "memory");
 
-                "movdqu (%[src]), %%xmm1\n\t"    /* Get block 1.      */
+  asm volatile ("movdqu (%[src]), %%xmm1\n\t"    /* Get block 1.      */
                 "pxor %%xmm1, %%xmm0\n\t"        /* EncCTR-1 ^= input */
                 "movdqu %%xmm0, (%[dst])\n\t"    /* Store block 1     */
 
@@ -977,18 +986,10 @@ do_aesni_ctr_4 (const RIJNDAEL_context *ctx,
                 "movdqu 48(%[src]), %%xmm1\n\t"  /* Get block 4.      */
                 "pxor %%xmm1, %%xmm4\n\t"        /* EncCTR-4 ^= input */
                 "movdqu %%xmm4, 48(%[dst])"      /* Store block 4.   */
-
                 :
-                : [ctr] "r" (ctr),
-                  [src] "r" (a),
-                  [dst] "r" (b),
-                  [key] "r" (ctx->keyschenc),
-                  [rounds] "g" (ctx->rounds),
-                  [addb_1] "m" (bige_addb_const[0][0]),
-                  [addb_2] "m" (bige_addb_const[1][0]),
-                  [addb_3] "m" (bige_addb_const[2][0]),
-                  [addb_4] "m" (bige_addb_const[3][0])
-                : "%esi", "cc", "memory");
+                : [src] "r" (a),
+                  [dst] "r" (b)
+                : "memory");
 #undef aesenc_xmm1_xmm0
 #undef aesenc_xmm1_xmm2
 #undef aesenc_xmm1_xmm3

-----------------------------------------------------------------------

Summary of changes:
 cipher/rijndael-aesni.c | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)


hooks/post-receive
-- 
The GNU crypto library
http://git.gnupg.org


_______________________________________________
Gnupg-commits mailing list
Gnupg-commits at gnupg.org
http://lists.gnupg.org/mailman/listinfo/gnupg-commits




More information about the Gcrypt-devel mailing list