summaryrefslogtreecommitdiffstats
path: root/crypto/sha
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2018-05-09 12:24:05 +0200
committerAndy Polyakov <appro@openssl.org>2018-05-10 11:44:21 +0200
commit13f6857db107b1b6f68daa7fc4a6dd1293428bb1 (patch)
tree0d2ed90ee0160b2d5ba88a3e409d0ca8e99db0de /crypto/sha
parent41b77d54472b4aac709bd0699dc64d85ae529a94 (diff)
PPC assembly pack: add POWER9 results.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'crypto/sha')
-rwxr-xr-xcrypto/sha/asm/keccak1600-ppc64.pl1
-rwxr-xr-xcrypto/sha/asm/keccak1600p8-ppc.pl2
-rwxr-xr-xcrypto/sha/asm/sha512p8-ppc.pl6
3 files changed, 5 insertions, 4 deletions
diff --git a/crypto/sha/asm/keccak1600-ppc64.pl b/crypto/sha/asm/keccak1600-ppc64.pl
index f89f71c825..60ed2f2326 100755
--- a/crypto/sha/asm/keccak1600-ppc64.pl
+++ b/crypto/sha/asm/keccak1600-ppc64.pl
@@ -30,6 +30,7 @@
# PPC970/G5 14.6/+120%
# POWER7 10.3/+100%
# POWER8 11.5/+85%
+# POWER9 7.2/+45%
#
# (*) Corresponds to SHA3-256. Percentage after slash is improvement
# over gcc-4.x-generated KECCAK_1X_ALT code. Newer compilers do
diff --git a/crypto/sha/asm/keccak1600p8-ppc.pl b/crypto/sha/asm/keccak1600p8-ppc.pl
index feec68839f..95e6242f99 100755
--- a/crypto/sha/asm/keccak1600p8-ppc.pl
+++ b/crypto/sha/asm/keccak1600p8-ppc.pl
@@ -23,7 +23,7 @@
# buffer for r=1088, which matches SHA3-256. This is 17% better than
# scalar PPC64 code. It probably should be noted that if POWER8's
# successor can achieve higher scalar instruction issue rate, then
-# this module will loose...
+# this module will loose... And it does on POWER9 with 8.8 vs. 7.2.
$flavour = shift;
diff --git a/crypto/sha/asm/sha512p8-ppc.pl b/crypto/sha/asm/sha512p8-ppc.pl
index 93dfef20a9..e6e9467905 100755
--- a/crypto/sha/asm/sha512p8-ppc.pl
+++ b/crypto/sha/asm/sha512p8-ppc.pl
@@ -36,9 +36,9 @@
# little-endian system]. Numbers in square brackets are for 64-bit
# build of sha512-ppc.pl, presented for reference.
#
-# POWER8
-# SHA256 9.9 [15.8]
-# SHA512 6.3 [10.3]
+# POWER8 POWER9
+# SHA256 9.9 [15.8] 9.2 [9.3]
+# SHA512 6.3 [10.3] 5.8 [5.9]
$flavour=shift;
$output =shift;