X-Git-Url: https://git.openssl.org/?p=openssl.git;a=blobdiff_plain;f=crypto%2Fsha%2Fasm%2Fsha512-s390x.pl;h=e7ef2d5a9f59dd2c810ee799e7952dbee667cc43;hp=e4f1812c68a269a4733069964ecc74ea722af2e1;hb=3e719c99f588095568c6cd83098c4b1364f2d8e2;hpb=8626230a0227b15c0e0542f5a65f802ee32772b6 diff --git a/crypto/sha/asm/sha512-s390x.pl b/crypto/sha/asm/sha512-s390x.pl index e4f1812c68..e7ef2d5a9f 100644 --- a/crypto/sha/asm/sha512-s390x.pl +++ b/crypto/sha/asm/sha512-s390x.pl @@ -214,6 +214,10 @@ $code.=<<___; $Func: ___ $code.=<<___ if ($kimdfunc); + larl %r1,OPENSSL_s390xcap_P + lg %r0,0(%r1) + tmhl %r0,0x4000 # check for message-security assist + jz .Lsoftware lghi %r0,0 la %r1,16($sp) .long 0xb93e0002 # kimd %r0,%r2 @@ -227,6 +231,7 @@ $code.=<<___ if ($kimdfunc); .long 0xb93e0002 # kimd %r0,%r2 brc 1,.-4 # pay attention to "partial completion" br %r14 +.align 16 .Lsoftware: ___ $code.=<<___; @@ -285,6 +290,7 @@ $code.=<<___; br %r14 .size $Func,.-$Func .string "SHA${label} block transform for s390x, CRYPTOGAMS by " +.comm OPENSSL_s390xcap_P,8,8 ___ $code =~ s/\`([^\`]*)\`/eval $1/gem;