summaryrefslogtreecommitdiffstats
path: root/crypto/poly1305
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2016-03-08 09:46:19 +0100
committerAndy Polyakov <appro@openssl.org>2016-03-08 15:51:06 +0100
commiteb77e8886df84526f42f566632be71d4ed373308 (patch)
tree1b00377caae997512838c8e532e7a6c662847162 /crypto/poly1305
parentb76998b86c3f63bea7f8b85c8b62fda91fb8f4b7 (diff)
SPARCv9 assembly pack: unify build rules and argument handling.
Make all scripts produce .S, make interpretation of $(CFLAGS) pre-processor's responsibility, start accepting $(PERLASM_SCHEME). [$(PERLASM_SCHEME) is redundant in this case, because there are no deviataions between Solaris and Linux assemblers. This is purely to unify .pl->.S handling across all targets.] Reviewed-by: Richard Levitte <levitte@openssl.org>
Diffstat (limited to 'crypto/poly1305')
-rw-r--r--crypto/poly1305/Makefile.in2
-rwxr-xr-xcrypto/poly1305/asm/poly1305-sparcv9.pl3
-rw-r--r--crypto/poly1305/build.info2
3 files changed, 5 insertions, 2 deletions
diff --git a/crypto/poly1305/Makefile.in b/crypto/poly1305/Makefile.in
index 10f009ffec..2f1b256578 100644
--- a/crypto/poly1305/Makefile.in
+++ b/crypto/poly1305/Makefile.in
@@ -37,7 +37,7 @@ lib: $(LIBOBJ)
@touch lib
poly1305-sparcv9.S: asm/poly1305-sparcv9.pl
- $(PERL) asm/poly1305-sparcv9.pl > $@
+ $(PERL) asm/poly1305-sparcv9.pl $(PERLASM_SCHEME) $@
poly1305-x86.s: asm/poly1305-x86.pl
$(PERL) asm/poly1305-x86.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
poly1305-x86_64.s: asm/poly1305-x86_64.pl
diff --git a/crypto/poly1305/asm/poly1305-sparcv9.pl b/crypto/poly1305/asm/poly1305-sparcv9.pl
index a4f883ea3a..f0ce259c02 100755
--- a/crypto/poly1305/asm/poly1305-sparcv9.pl
+++ b/crypto/poly1305/asm/poly1305-sparcv9.pl
@@ -34,6 +34,9 @@
# (***) Multi-process benchmark saturates at ~12.5x single-process
# result on 8-core processor, or ~21GBps per 2.85GHz socket.
+my $output = pop;
+open STDOUT,">$output";
+
my ($ctx,$inp,$len,$padbit,$shl,$shr) = map("%i$_",(0..5));
my ($r0,$r1,$r2,$r3,$s1,$s2,$s3,$h4) = map("%l$_",(0..7));
my ($h0,$h1,$h2,$h3, $t0,$t1,$t2) = map("%o$_",(0..5,7));
diff --git a/crypto/poly1305/build.info b/crypto/poly1305/build.info
index 5d389dc492..c93c5724f8 100644
--- a/crypto/poly1305/build.info
+++ b/crypto/poly1305/build.info
@@ -4,7 +4,7 @@ SOURCE[../../libcrypto]=\
BEGINRAW[Makefile(unix)]
{- $builddir -}/poly1305-sparcv9.S: {- $sourcedir -}/asm/poly1305-sparcv9.pl
- CC="$(CC)" $(PERL) {- $sourcedir -}/asm/poly1305-sparcv9.pl > $@
+ CC="$(CC)" $(PERL) {- $sourcedir -}/asm/poly1305-sparcv9.pl $(PERLASM_SCHEME) $@
{- $builddir -}/poly1305-x86.s: {- $sourcedir -}/asm/poly1305-x86.pl
CC="$(CC)" $(PERL) {- $sourcedir -}/asm/poly1305-x86.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
{- $builddir -}/poly1305-x86_64.s: {- $sourcedir -}/asm/poly1305-x86_64.pl