summaryrefslogtreecommitdiffstats
path: root/crypto/s390xcpuid.S
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/s390xcpuid.S
parent2a4d0dcb89499854a51b20c4b80a355f5f34eb55 (diff)
s390x assembler update: add support for run-time facility detection [from HEAD].
Diffstat (limited to 'crypto/s390xcpuid.S')
-rw-r--r--crypto/s390xcpuid.S14
1 files changed, 7 insertions, 7 deletions
diff --git a/crypto/s390xcpuid.S b/crypto/s390xcpuid.S
index 8500133ad0..aa704c033a 100644
--- a/crypto/s390xcpuid.S
+++ b/crypto/s390xcpuid.S
@@ -1,12 +1,5 @@
.text
-.globl OPENSSL_cpuid_setup
-.type OPENSSL_cpuid_setup,@function
-.align 16
-OPENSSL_cpuid_setup:
- br %r14 # reserved for future
-.size OPENSSL_cpuid_setup,.-OPENSSL_cpuid_setup
-
.globl OPENSSL_s390x_facilities
.type OPENSSL_s390x_facilities,@function
.align 16
@@ -14,6 +7,8 @@ OPENSSL_s390x_facilities:
lghi %r0,0
.long 0xb2b0f010 # stfle 16(%r15)
lg %r2,16(%r15)
+ larl %r1,OPENSSL_s390xcap_P
+ stg %r2,0(%r1)
br %r14
.size OPENSSL_s390x_facilities,.-OPENSSL_s390x_facilities
@@ -88,3 +83,8 @@ OPENSSL_cleanse:
jnz .Little
br %r14
.size OPENSSL_cleanse,.-OPENSSL_cleanse
+
+.section .init
+ brasl %r14,OPENSSL_cpuid_setup
+
+.comm OPENSSL_s390xcap_P,8,8