summaryrefslogtreecommitdiffstats
path: root/crypto/md5/asm
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2012-10-25 14:07:32 +0200
committerAndy Polyakov <appro@openssl.org>2012-10-25 14:07:32 +0200
commit1efd583085ffefb4d5d11e1e599e4123351df386 (patch)
treee6986fc9ceaf5e337c152eaae73a415e658bf64a /crypto/md5/asm
parent[aes|cmll]t4-sparcv9.pl: unify argument handling. (diff)
downloadopenssl-1efd583085ffefb4d5d11e1e599e4123351df386.tar.xz
openssl-1efd583085ffefb4d5d11e1e599e4123351df386.zip
SPARCv9 assembly pack: harmonize ABI handling (so that it's handled in one
place at a time, by pre-processor in .S case and perl - in .s).
Diffstat (limited to 'crypto/md5/asm')
-rw-r--r--crypto/md5/asm/md5-sparcv9.pl22
1 files changed, 9 insertions, 13 deletions
diff --git a/crypto/md5/asm/md5-sparcv9.pl b/crypto/md5/asm/md5-sparcv9.pl
index ef16666cc3..407da3c1b0 100644
--- a/crypto/md5/asm/md5-sparcv9.pl
+++ b/crypto/md5/asm/md5-sparcv9.pl
@@ -17,11 +17,6 @@
# single-process result on 8-core processor, or ~11GBps per 2.85GHz
# socket.
-$bits=32;
-for (@ARGV) { $bits=64 if (/\-m64/ || /\-xarch\=v9/); }
-if ($bits==64) { $bias=2047; $frame=192; }
-else { $bias=0; $frame=112; }
-
$output=shift;
open STDOUT,">$output";
@@ -198,13 +193,14 @@ $code.=<<___;
___
}
-$code.=<<___ if ($bits==64);
-.register %g2,#scratch
-.register %g3,#scratch
-___
$code.=<<___;
#include "sparc_arch.h"
+#ifdef __arch64__
+.register %g2,#scratch
+.register %g3,#scratch
+#endif
+
.section ".text",#alloc,#execinstr
#ifdef __PIC__
@@ -246,7 +242,7 @@ md5_block_asm_data_order:
.word 0x81b02800 ! MD5
- bne,pt `$bits==64?"%xcc":"%icc"`, .Lhw_loop
+ bne,pt SIZE_T_CC, .Lhw_loop
nop
.Lhwfinish:
@@ -287,7 +283,7 @@ md5_block_asm_data_order:
.word 0x81b02800 ! MD5
- bne,pt `$bits==64?"%xcc":"%icc"`, .Lhwunaligned_loop
+ bne,pt SIZE_T_CC, .Lhwunaligned_loop
for %f26, %f26, %f10 ! %f10=%f26
ba .Lhwfinish
@@ -295,7 +291,7 @@ md5_block_asm_data_order:
.align 16
.Lsoftware:
- save %sp,-$frame,%sp
+ save %sp,-STACK_FRAME,%sp
rd %asi,$saved_asi
wr %g0,0x88,%asi ! ASI_PRIMARY_LITTLE
@@ -355,7 +351,7 @@ $code.=<<___;
add $t2,$C,$C
add $CD,$D,$D
srl $B,0,$B ! clruw $B
- bne `$bits==64?"%xcc":"%icc"`,.Loop
+ bne SIZE_T_CC,.Loop
srl $D,0,$D ! clruw $D
st $A,[$ctx+0] ! write out ctx