summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2013-10-15 00:14:39 +0200
committerAndy Polyakov <appro@openssl.org>2013-10-15 00:14:39 +0200
commitd6019e165497962a0751469441c680aa17349668 (patch)
tree518511a77446db7464a49dc6c9b1cf2e175339d5 /crypto
parent30b9c2348d79dc1e58a8a2d8e5bac6e36191b012 (diff)
PPC assembly pack: add .size directives.
Diffstat (limited to 'crypto')
-rw-r--r--crypto/aes/asm/aes-ppc.pl2
-rw-r--r--crypto/bn/asm/ppc-mont.pl1
-rw-r--r--crypto/bn/asm/ppc.pl10
-rw-r--r--crypto/bn/asm/ppc64-mont.pl1
-rwxr-xr-xcrypto/perlasm/ppc-xlate.pl8
-rwxr-xr-xcrypto/ppccpuid.pl8
-rwxr-xr-xcrypto/sha/asm/sha1-ppc.pl1
-rwxr-xr-xcrypto/sha/asm/sha512-ppc.pl1
8 files changed, 29 insertions, 3 deletions
diff --git a/crypto/aes/asm/aes-ppc.pl b/crypto/aes/asm/aes-ppc.pl
index e10ce880c2..89059d49f4 100644
--- a/crypto/aes/asm/aes-ppc.pl
+++ b/crypto/aes/asm/aes-ppc.pl
@@ -471,6 +471,7 @@ Lenc_done:
.long 0
.byte 0,12,4,1,0x80,18,3,0
.long 0
+.size .AES_encrypt,.-.AES_encrypt
.align 5
Lppc_AES_encrypt:
@@ -904,6 +905,7 @@ Ldec_done:
.long 0
.byte 0,12,4,1,0x80,18,3,0
.long 0
+.size .AES_decrypt,.-.AES_decrypt
.align 5
Lppc_AES_decrypt:
diff --git a/crypto/bn/asm/ppc-mont.pl b/crypto/bn/asm/ppc-mont.pl
index f9b6992ccc..da69c6aaaf 100644
--- a/crypto/bn/asm/ppc-mont.pl
+++ b/crypto/bn/asm/ppc-mont.pl
@@ -325,6 +325,7 @@ Lcopy: ; copy or in-place refresh
.long 0
.byte 0,12,4,0,0x80,12,6,0
.long 0
+.size .bn_mul_mont_int,.-.bn_mul_mont_int
.asciz "Montgomery Multiplication for PPC, CRYPTOGAMS by <appro\@openssl.org>"
___
diff --git a/crypto/bn/asm/ppc.pl b/crypto/bn/asm/ppc.pl
index 1249ce2299..04df1fe5cc 100644
--- a/crypto/bn/asm/ppc.pl
+++ b/crypto/bn/asm/ppc.pl
@@ -392,6 +392,7 @@ $data=<<EOF;
.long 0
.byte 0,12,0x14,0,0,0,2,0
.long 0
+.size .bn_sqr_comba4,.-.bn_sqr_comba4
#
# NOTE: The following label name should be changed to
@@ -819,6 +820,7 @@ $data=<<EOF;
.long 0
.byte 0,12,0x14,0,0,0,2,0
.long 0
+.size .bn_sqr_comba8,.-.bn_sqr_comba8
#
# NOTE: The following label name should be changed to
@@ -972,6 +974,7 @@ $data=<<EOF;
.long 0
.byte 0,12,0x14,0,0,0,3,0
.long 0
+.size .bn_mul_comba4,.-.bn_mul_comba4
#
# NOTE: The following label name should be changed to
@@ -1510,6 +1513,7 @@ $data=<<EOF;
.long 0
.byte 0,12,0x14,0,0,0,3,0
.long 0
+.size .bn_mul_comba8,.-.bn_mul_comba8
#
# NOTE: The following label name should be changed to
@@ -1560,6 +1564,7 @@ Lppcasm_sub_adios:
.long 0
.byte 0,12,0x14,0,0,0,4,0
.long 0
+.size .bn_sub_words,.-.bn_sub_words
#
# NOTE: The following label name should be changed to
@@ -1605,6 +1610,7 @@ Lppcasm_add_adios:
.long 0
.byte 0,12,0x14,0,0,0,4,0
.long 0
+.size .bn_add_words,.-.bn_add_words
#
# NOTE: The following label name should be changed to
@@ -1720,6 +1726,7 @@ Lppcasm_div9:
.long 0
.byte 0,12,0x14,0,0,0,3,0
.long 0
+.size .bn_div_words,.-.bn_div_words
#
# NOTE: The following label name should be changed to
@@ -1761,6 +1768,7 @@ Lppcasm_sqr_adios:
.long 0
.byte 0,12,0x14,0,0,0,3,0
.long 0
+.size .bn_sqr_words,.-.bn_sqr_words
#
# NOTE: The following label name should be changed to
@@ -1866,6 +1874,7 @@ Lppcasm_mw_OVER:
.long 0
.byte 0,12,0x14,0,0,0,4,0
.long 0
+.size bn_mul_words,.-bn_mul_words
#
# NOTE: The following label name should be changed to
@@ -1991,6 +2000,7 @@ Lppcasm_maw_adios:
.long 0
.byte 0,12,0x14,0,0,0,4,0
.long 0
+.size .bn_mul_add_words,.-.bn_mul_add_words
.align 4
EOF
$data =~ s/\`([^\`]*)\`/eval $1/gem;
diff --git a/crypto/bn/asm/ppc64-mont.pl b/crypto/bn/asm/ppc64-mont.pl
index a14e769ad0..fc2f354cfc 100644
--- a/crypto/bn/asm/ppc64-mont.pl
+++ b/crypto/bn/asm/ppc64-mont.pl
@@ -1079,6 +1079,7 @@ $code.=<<___;
.long 0
.byte 0,12,4,0,0x8c,10,6,0
.long 0
+.size .$fname,.-.$fname
.asciz "Montgomery Multiplication for PPC64, CRYPTOGAMS by <appro\@openssl.org>"
___
diff --git a/crypto/perlasm/ppc-xlate.pl b/crypto/perlasm/ppc-xlate.pl
index a3edd982b6..3ed7bd9665 100755
--- a/crypto/perlasm/ppc-xlate.pl
+++ b/crypto/perlasm/ppc-xlate.pl
@@ -37,7 +37,6 @@ my $globl = sub {
$ret .= ".align 3\n";
$ret .= "$name:\n";
$ret .= ".quad .$name,.TOC.\@tocbase,0\n";
- $ret .= ".size $name,24\n";
$ret .= ".previous\n";
$name = ".$name";
@@ -62,9 +61,12 @@ my $machine = sub {
".machine $arch";
};
my $size = sub {
- if ($flavour =~ /linux.*32/)
+ if ($flavour =~ /linux/)
{ shift;
- ".size " . join(",",@_);
+ my $name = shift; $name =~ s|^[\.\_]||;
+ my $ret = ".size $name,.-".($flavour=~/64/?".":"").$name;
+ $ret .= "\n.size .$name,.-.$name" if ($flavour=~/64/);
+ $ret;
}
else
{ ""; }
diff --git a/crypto/ppccpuid.pl b/crypto/ppccpuid.pl
index 9f2d96c709..b4990ded85 100755
--- a/crypto/ppccpuid.pl
+++ b/crypto/ppccpuid.pl
@@ -31,6 +31,7 @@ $code=<<___;
blr
.long 0
.byte 0,12,0x14,0,0,0,0,0
+.size .OPENSSL_ppc64_probe,.-.OPENSSL_ppc64_probe
.globl .OPENSSL_altivec_probe
.align 4
@@ -39,6 +40,7 @@ $code=<<___;
blr
.long 0
.byte 0,12,0x14,0,0,0,0,0
+.size .OPENSSL_altivec_probe,.-..OPENSSL_altivec_probe
.globl .OPENSSL_wipe_cpu
.align 4
@@ -71,6 +73,7 @@ $code=<<___;
blr
.long 0
.byte 0,12,0x14,0,0,0,0,0
+.size .OPENSSL_wipe_cpu,.-.OPENSSL_wipe_cpu
.globl .OPENSSL_atomic_add
.align 4
@@ -84,6 +87,7 @@ Ladd: lwarx r5,0,r3
.long 0
.byte 0,12,0x14,0,0,0,2,0
.long 0
+.size .OPENSSL_atomic_add,.-.OPENSSL_atomic_add
.globl .OPENSSL_rdtsc
.align 4
@@ -93,6 +97,7 @@ Ladd: lwarx r5,0,r3
blr
.long 0
.byte 0,12,0x14,0,0,0,0,0
+.size .OPENSSL_rdtsc,.-.OPENSSL_rdtsc
.globl .OPENSSL_cleanse
.align 4
@@ -125,6 +130,7 @@ Laligned:
.long 0
.byte 0,12,0x14,0,0,0,2,0
.long 0
+.size .OPENSSL_cleanse,.-.OPENSSL_cleanse
___
{
my ($out,$cnt,$max)=("r3","r4","r5");
@@ -162,6 +168,7 @@ Loop: mftb $tick
.long 0
.byte 0,12,0x14,0,0,0,2,0
.long 0
+.size .OPENSSL_instrument_bus,.-.OPENSSL_instrument_bus
.globl .OPENSSL_instrument_bus2
.align 4
@@ -213,6 +220,7 @@ Ldone2:
.long 0
.byte 0,12,0x14,0,0,0,3,0
.long 0
+.size .OPENSSL_instrument_bus2,.-.OPENSSL_instrument_bus2
___
}
diff --git a/crypto/sha/asm/sha1-ppc.pl b/crypto/sha/asm/sha1-ppc.pl
index 2140dd2f8d..2a374807f7 100755
--- a/crypto/sha/asm/sha1-ppc.pl
+++ b/crypto/sha/asm/sha1-ppc.pl
@@ -265,6 +265,7 @@ Ldone:
.long 0
.byte 0,12,4,1,0x80,18,3,0
.long 0
+.size .sha1_block_data_order,.-.sha1_block_data_order
___
# This is private block function, which uses tailored calling
diff --git a/crypto/sha/asm/sha512-ppc.pl b/crypto/sha/asm/sha512-ppc.pl
index 125a19df8a..d34cd2d033 100755
--- a/crypto/sha/asm/sha512-ppc.pl
+++ b/crypto/sha/asm/sha512-ppc.pl
@@ -344,6 +344,7 @@ Ldone:
.long 0
.byte 0,12,4,1,0x80,18,3,0
.long 0
+.size $func,.-$func
___
if ($SZ==4 || $SIZE_T==8) {