From aec8a13dd982ab6b2d312668cbe56ee0df1783ad Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Sun, 30 Dec 2012 08:10:29 +0100
Subject: [PATCH] Disabled use of sha3-permute.asm

---
 ChangeLog               | 4 ++++
 configure.ac            | 2 +-
 x86_64/sha3-permute.asm | 6 ++++++
 3 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index e1c23c7a..49114116 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2012-12-30  Niels Möller  <nisse@lysator.liu.se>
+
+	* configure.ac: Disabled use of sha3-permute.asm.
+
 2012-12-20  Niels Möller  <nisse@lysator.liu.se>
 
 	From Tim Rühsen:
diff --git a/configure.ac b/configure.ac
index 737febbd..5fc2a5ba 100644
--- a/configure.ac
+++ b/configure.ac
@@ -245,7 +245,7 @@ if test "x$enable_assembler" = xyes ; then
 		 md5-compress.asm memxor.asm \
 		 salsa20-crypt.asm salsa20-core-internal.asm \
 		 serpent-encrypt.asm serpent-decrypt.asm \
-		 sha1-compress.asm sha3-permute.asm machine.m4; do
+		 sha1-compress.asm machine.m4; do
 #       echo "Looking for $srcdir/$asm_path/$tmp_f"
       if test -f "$srcdir/$asm_path/$tmp_f"; then
 #        echo found
diff --git a/x86_64/sha3-permute.asm b/x86_64/sha3-permute.asm
index 34cf6bcc..0ebd70c1 100644
--- a/x86_64/sha3-permute.asm
+++ b/x86_64/sha3-permute.asm
@@ -17,6 +17,12 @@ C along with the nettle library; see the file COPYING.LIB.  If not, write to
 C the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
 C MA 02111-1301, USA.
 
+C NOTE: This code is currently unused. It gives a modest speedup on
+C Intel processors, running at roughly two instructions per cycle, and
+C a large slowdown on AMD processors, running at only a single
+C instruction per cycle. Maybe it can be rewritten to not move data
+C back and forth between xmm registers and regular 64-bit registers.
+
 define(<CTX>, <%rdi>)		C 25 64-bit values, 200 bytes.
 define(<COUNT>, <%r8>)		C Avoid clobbering %rsi, for W64.
 
-- 
GitLab