mirror of
https://github.com/QuasarApp/openssl.git
synced 2025-05-10 08:29:40 +00:00
s390x assembly pack: enable clang build
clang imposes some restrictions on the assembler code that gcc does not. Signed-off-by: Patrick Steuer <patrick.steuer@de.ibm.com> Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/10330)
This commit is contained in:
parent
909ef4de31
commit
6f93f06135
@ -147,7 +147,7 @@ $code.=<<___;
|
|||||||
lghi $NHI,0
|
lghi $NHI,0
|
||||||
alcgr $NHI,$nhi
|
alcgr $NHI,$nhi
|
||||||
|
|
||||||
la $j,8(%r0) # j=1
|
la $j,8 # j=1
|
||||||
lr $count,$num
|
lr $count,$num
|
||||||
|
|
||||||
.align 16
|
.align 16
|
||||||
@ -199,7 +199,7 @@ $code.=<<___;
|
|||||||
lghi $NHI,0
|
lghi $NHI,0
|
||||||
alcgr $NHI,$nhi
|
alcgr $NHI,$nhi
|
||||||
|
|
||||||
la $j,8(%r0) # j=1
|
la $j,8 # j=1
|
||||||
lr $count,$num
|
lr $count,$num
|
||||||
|
|
||||||
.align 16
|
.align 16
|
||||||
@ -243,7 +243,7 @@ $code.=<<___;
|
|||||||
la $ap,$stdframe($sp)
|
la $ap,$stdframe($sp)
|
||||||
ahi $num,1 # restore $num, incidentally clears "borrow"
|
ahi $num,1 # restore $num, incidentally clears "borrow"
|
||||||
|
|
||||||
la $j,0(%r0)
|
la $j,0
|
||||||
lr $count,$num
|
lr $count,$num
|
||||||
.Lsub: lg $alo,0($j,$ap)
|
.Lsub: lg $alo,0($j,$ap)
|
||||||
lg $nlo,0($j,$np)
|
lg $nlo,0($j,$np)
|
||||||
@ -257,7 +257,7 @@ $code.=<<___;
|
|||||||
lghi $NHI,-1
|
lghi $NHI,-1
|
||||||
xgr $NHI,$AHI
|
xgr $NHI,$AHI
|
||||||
|
|
||||||
la $j,0(%r0)
|
la $j,0
|
||||||
lgr $count,$num
|
lgr $count,$num
|
||||||
.Lcopy: lg $ahi,$stdframe($j,$sp) # conditional copy
|
.Lcopy: lg $ahi,$stdframe($j,$sp) # conditional copy
|
||||||
lg $alo,0($j,$rp)
|
lg $alo,0($j,$rp)
|
||||||
|
@ -130,7 +130,7 @@ sub AUTOLOAD {
|
|||||||
confess(err("PARSE")) if (grep(!defined($_),@_));
|
confess(err("PARSE")) if (grep(!defined($_),@_));
|
||||||
my $token;
|
my $token;
|
||||||
for ($AUTOLOAD) {
|
for ($AUTOLOAD) {
|
||||||
$token=".$1" if (/^.*::([A-Z_]+)$/); # uppercase: directive
|
$token=lc(".$1") if (/^.*::([A-Z_]+)$/);# uppercase: directive
|
||||||
$token="\t$1" if (/^.*::([a-z]+)$/); # lowercase: mnemonic
|
$token="\t$1" if (/^.*::([a-z]+)$/); # lowercase: mnemonic
|
||||||
confess(err("PARSE")) if (!defined($token));
|
confess(err("PARSE")) if (!defined($token));
|
||||||
}
|
}
|
||||||
|
@ -186,7 +186,7 @@ $code.=<<___;
|
|||||||
RC4_set_key:
|
RC4_set_key:
|
||||||
stm${g} %r6,%r8,6*$SIZE_T($sp)
|
stm${g} %r6,%r8,6*$SIZE_T($sp)
|
||||||
lhi $cnt,256
|
lhi $cnt,256
|
||||||
la $idx,0(%r0)
|
la $idx,0
|
||||||
sth $idx,0($key)
|
sth $idx,0($key)
|
||||||
.align 4
|
.align 4
|
||||||
.L1stloop:
|
.L1stloop:
|
||||||
@ -196,8 +196,8 @@ RC4_set_key:
|
|||||||
|
|
||||||
lghi $ikey,-256
|
lghi $ikey,-256
|
||||||
lr $cnt,$len
|
lr $cnt,$len
|
||||||
la $iinp,0(%r0)
|
la $iinp,0
|
||||||
la $idx,0(%r0)
|
la $idx,0
|
||||||
.align 16
|
.align 16
|
||||||
.L2ndloop:
|
.L2ndloop:
|
||||||
llgc $acc,2+256($ikey,$key)
|
llgc $acc,2+256($ikey,$key)
|
||||||
@ -214,7 +214,7 @@ RC4_set_key:
|
|||||||
jz .Ldone
|
jz .Ldone
|
||||||
brct $cnt,.L2ndloop
|
brct $cnt,.L2ndloop
|
||||||
lr $cnt,$len
|
lr $cnt,$len
|
||||||
la $iinp,0(%r0)
|
la $iinp,0
|
||||||
j .L2ndloop
|
j .L2ndloop
|
||||||
.Ldone:
|
.Ldone:
|
||||||
lm${g} %r6,%r8,6*$SIZE_T($sp)
|
lm${g} %r6,%r8,6*$SIZE_T($sp)
|
||||||
|
@ -504,14 +504,14 @@ $code.=<<___;
|
|||||||
.type s390x_flip_endian32,\@function
|
.type s390x_flip_endian32,\@function
|
||||||
.align 16
|
.align 16
|
||||||
s390x_flip_endian32:
|
s390x_flip_endian32:
|
||||||
lrvg %r0,0(%r0,$src)
|
lrvg %r0,0($src)
|
||||||
lrvg %r1,8(%r0,$src)
|
lrvg %r1,8($src)
|
||||||
lrvg %r4,16(%r0,$src)
|
lrvg %r4,16($src)
|
||||||
lrvg %r5,24(%r0,$src)
|
lrvg %r5,24($src)
|
||||||
stg %r0,24(%r0,$dst)
|
stg %r0,24($dst)
|
||||||
stg %r1,16(%r0,$dst)
|
stg %r1,16($dst)
|
||||||
stg %r4,8(%r0,$dst)
|
stg %r4,8($dst)
|
||||||
stg %r5,0(%r0,$dst)
|
stg %r5,0($dst)
|
||||||
br $ra
|
br $ra
|
||||||
.size s390x_flip_endian32,.-s390x_flip_endian32
|
.size s390x_flip_endian32,.-s390x_flip_endian32
|
||||||
___
|
___
|
||||||
@ -528,22 +528,22 @@ $code.=<<___;
|
|||||||
s390x_flip_endian64:
|
s390x_flip_endian64:
|
||||||
stmg %r6,%r9,6*$SIZE_T($sp)
|
stmg %r6,%r9,6*$SIZE_T($sp)
|
||||||
|
|
||||||
lrvg %r0,0(%r0,$src)
|
lrvg %r0,0($src)
|
||||||
lrvg %r1,8(%r0,$src)
|
lrvg %r1,8($src)
|
||||||
lrvg %r4,16(%r0,$src)
|
lrvg %r4,16($src)
|
||||||
lrvg %r5,24(%r0,$src)
|
lrvg %r5,24($src)
|
||||||
lrvg %r6,32(%r0,$src)
|
lrvg %r6,32($src)
|
||||||
lrvg %r7,40(%r0,$src)
|
lrvg %r7,40($src)
|
||||||
lrvg %r8,48(%r0,$src)
|
lrvg %r8,48($src)
|
||||||
lrvg %r9,56(%r0,$src)
|
lrvg %r9,56($src)
|
||||||
stg %r0,56(%r0,$dst)
|
stg %r0,56($dst)
|
||||||
stg %r1,48(%r0,$dst)
|
stg %r1,48($dst)
|
||||||
stg %r4,40(%r0,$dst)
|
stg %r4,40($dst)
|
||||||
stg %r5,32(%r0,$dst)
|
stg %r5,32($dst)
|
||||||
stg %r6,24(%r0,$dst)
|
stg %r6,24($dst)
|
||||||
stg %r7,16(%r0,$dst)
|
stg %r7,16($dst)
|
||||||
stg %r8,8(%r0,$dst)
|
stg %r8,8($dst)
|
||||||
stg %r9,0(%r0,$dst)
|
stg %r9,0($dst)
|
||||||
|
|
||||||
lmg %r6,%r9,6*$SIZE_T($sp)
|
lmg %r6,%r9,6*$SIZE_T($sp)
|
||||||
br $ra
|
br $ra
|
||||||
|
Loading…
x
Reference in New Issue
Block a user