summaryrefslogtreecommitdiffstats
path: root/crypto/aes
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2010-01-19 21:40:58 +0000
committerAndy Polyakov <appro@openssl.org>2010-01-19 21:40:58 +0000
commit3e719c99f588095568c6cd83098c4b1364f2d8e2 (patch)
treeb584c09df048ebc88f1c363da9e8180c5e8fb70a /crypto/aes
parent2a4d0dcb89499854a51b20c4b80a355f5f34eb55 (diff)
s390x assembler update: add support for run-time facility detection [from HEAD].
Diffstat (limited to 'crypto/aes')
-rw-r--r--crypto/aes/asm/aes-s390x.pl6
1 files changed, 6 insertions, 0 deletions
diff --git a/crypto/aes/asm/aes-s390x.pl b/crypto/aes/asm/aes-s390x.pl
index 4b27afd92f..7e01889298 100644
--- a/crypto/aes/asm/aes-s390x.pl
+++ b/crypto/aes/asm/aes-s390x.pl
@@ -765,6 +765,11 @@ $code.=<<___ if (!$softonly);
srl %r5,6
ar %r5,%r0
+ larl %r1,OPENSSL_s390xcap_P
+ lg %r0,0(%r1)
+ tmhl %r0,0x4000 # check for message-security assist
+ jz .Lekey_internal
+
lghi %r0,0 # query capability vector
la %r1,16($sp)
.long 0xb92f0042 # kmc %r4,%r2
@@ -1323,6 +1328,7 @@ $code.=<<___;
4: ex $len,0($s1)
j .Lcbc_dec_exit
.size AES_cbc_encrypt,.-AES_cbc_encrypt
+.comm OPENSSL_s390xcap_P,8,8
___
}
$code.=<<___;