A new Linux ABI, called ELFv2, was created for the little-endian PPC64
platform. It includes several changes to the current ABI and affects
mainly how functions are called between modules/objects. Functions
descriptors are not used in the new ABI and this patch updates how the
directives .globl and .size generates code to LE.

Further information can be found at
http://gcc.gnu.org/ml/gcc-patches/2013-11/msg01141.html
---
 crypto/perlasm/ppc-xlate.pl | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/crypto/perlasm/ppc-xlate.pl b/crypto/perlasm/ppc-xlate.pl
index 118da16..7a3f858 100755
--- a/crypto/perlasm/ppc-xlate.pl
+++ b/crypto/perlasm/ppc-xlate.pl
@@ -27,7 +27,8 @@ my $globl = sub {
        /osx/           && do { $name = "_$name";
                                last;
                              };
-       /linux.*32/     && do { $ret .= ".globl $name\n";
+       /linux.*32/     ||
+       /linux.*64le/   && do { $ret .= ".globl $name\n";
                                $ret .= ".type  $name,\@function";
                                last;
                              };
@@ -64,8 +65,8 @@ my $size = sub {
     if ($flavour =~ /linux/)
     {  shift;
        my $name = shift; $name =~ s|^[\.\_]||;
-       my $ret  = ".size       $name,.-".($flavour=~/64/?".":"").$name;
-       $ret .= "\n.size        .$name,.-.$name" if ($flavour=~/64/);
+       my $ret  = ".size       $name,.-".($flavour=~/64$/?".":"").$name;
+       $ret .= "\n.size        .$name,.-.$name" if ($flavour=~/64$/);
        $ret;
     }
     else
-- 
1.7.12

______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to