summaryrefslogtreecommitdiffstats
path: root/crypto/modes/asm/ghash-s390x.pl
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2016-04-15 16:39:22 +0200
committerAndy Polyakov <appro@openssl.org>2016-04-25 11:53:45 +0200
commit670ad0fbf6ebcf113e278d8174081a7e2d2fa44c (patch)
treeb113688a273d8dcc2e70148a4265c5fd8a6c381c /crypto/modes/asm/ghash-s390x.pl
parent299ccadcdb99001c618d188fb243c1caaaa86a1c (diff)
s390x assembly pack: cache capability query results.
IBM argues that in certain scenarios capability query is really expensive. At the same time it's asserted that query results can be safely cached, because disabling CPACF is incompatible with reboot-free operation. Reviewed-by: Tim Hudson <tjh@openssl.org>
Diffstat (limited to 'crypto/modes/asm/ghash-s390x.pl')
-rw-r--r--crypto/modes/asm/ghash-s390x.pl4
1 files changed, 1 insertions, 3 deletions
diff --git a/crypto/modes/asm/ghash-s390x.pl b/crypto/modes/asm/ghash-s390x.pl
index a46f3eba6a..8c3ce6928d 100644
--- a/crypto/modes/asm/ghash-s390x.pl
+++ b/crypto/modes/asm/ghash-s390x.pl
@@ -85,9 +85,7 @@ $code.=<<___ if(!$softonly && 0); # hardware is slow for single block...
tmhl %r0,0x4000 # check for message-security-assist
jz .Lsoft_gmult
lghi %r0,0
- la %r1,16($sp)
- .long 0xb93e0004 # kimd %r0,%r4
- lg %r1,24($sp)
+ lg %r1,24(%r1) # load second word of kimd capabilities vector
tmhh %r1,0x4000 # check for function 65
jz .Lsoft_gmult
stg %r0,16($sp) # arrange 16 bytes of zero input