summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2002-12-27 14:51:49 +0000
committerAndy Polyakov <appro@openssl.org>2002-12-27 14:51:49 +0000
commit0a2407a8514a2b4580a691aaeff71b328fb6d119 (patch)
tree89bf05c3b238cfc79c4d8942f879e7af23e2f644
parent76a03d568e9592d41cc0b8b2ced16dc612bff130 (diff)
UltraSPARC performance "tune-up."
-rw-r--r--PROBLEMS8
-rw-r--r--crypto/md5/md5_locl.h2
2 files changed, 9 insertions, 1 deletions
diff --git a/PROBLEMS b/PROBLEMS
index 56bc73816b..4bf31303be 100644
--- a/PROBLEMS
+++ b/PROBLEMS
@@ -62,3 +62,11 @@ What happens is that gcc might optimize a little too agressively, and
you end up with an extra incrementation when *header != '4'.
We recommend that you upgrade gcc to as high a 3.x version as you can.
+
+* solaris64-sparcv9-cc SHA-1 performance with WorkShop 6 compiler.
+
+As subject suggests SHA-1 might perform poorly (4 times slower)
+if compiled with WorkShop 6 compiler and -xarch=v9. The cause for
+this seems to be the fact that compiler emits multiplication to
+perform shift operations:-( To work the problem around configure
+with './Configure solaris64-sparcv9-cc -DMD32_REG_T=int'.
diff --git a/crypto/md5/md5_locl.h b/crypto/md5/md5_locl.h
index 34c5257306..85ae99210c 100644
--- a/crypto/md5/md5_locl.h
+++ b/crypto/md5/md5_locl.h
@@ -68,7 +68,7 @@
#ifdef MD5_ASM
# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__)
# define md5_block_host_order md5_block_asm_host_order
-# elif defined(__sparc) && defined(OPENSSL_SYS_ULTRASPARC)
+# elif defined(__sparc) && defined(OPENSSL_SYSNAME_ULTRASPARC)
void md5_block_asm_data_order_aligned (MD5_CTX *c, const MD5_LONG *p,int num);
# define HASH_BLOCK_DATA_ORDER_ALIGNED md5_block_asm_data_order_aligned
# endif