aboutsummaryrefslogtreecommitdiffstats
path: root/crypto/perlasm
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/perlasm
parent30b9c2348d79dc1e58a8a2d8e5bac6e36191b012 (diff)
downloadopenssl-d6019e165497962a0751469441c680aa17349668.tar.gz
PPC assembly pack: add .size directives.
Diffstat (limited to 'crypto/perlasm')
-rwxr-xr-xcrypto/perlasm/ppc-xlate.pl8
1 files changed, 5 insertions, 3 deletions
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
{ ""; }