提交 d6019e16 编写于 作者: A Andy Polyakov

PPC assembly pack: add .size directives.

上级 30b9c234
...@@ -471,6 +471,7 @@ Lenc_done: ...@@ -471,6 +471,7 @@ Lenc_done:
.long 0 .long 0
.byte 0,12,4,1,0x80,18,3,0 .byte 0,12,4,1,0x80,18,3,0
.long 0 .long 0
.size .AES_encrypt,.-.AES_encrypt
.align 5 .align 5
Lppc_AES_encrypt: Lppc_AES_encrypt:
...@@ -904,6 +905,7 @@ Ldec_done: ...@@ -904,6 +905,7 @@ Ldec_done:
.long 0 .long 0
.byte 0,12,4,1,0x80,18,3,0 .byte 0,12,4,1,0x80,18,3,0
.long 0 .long 0
.size .AES_decrypt,.-.AES_decrypt
.align 5 .align 5
Lppc_AES_decrypt: Lppc_AES_decrypt:
......
...@@ -325,6 +325,7 @@ Lcopy: ; copy or in-place refresh ...@@ -325,6 +325,7 @@ Lcopy: ; copy or in-place refresh
.long 0 .long 0
.byte 0,12,4,0,0x80,12,6,0 .byte 0,12,4,0,0x80,12,6,0
.long 0 .long 0
.size .bn_mul_mont_int,.-.bn_mul_mont_int
.asciz "Montgomery Multiplication for PPC, CRYPTOGAMS by <appro\@openssl.org>" .asciz "Montgomery Multiplication for PPC, CRYPTOGAMS by <appro\@openssl.org>"
___ ___
......
...@@ -392,6 +392,7 @@ $data=<<EOF; ...@@ -392,6 +392,7 @@ $data=<<EOF;
.long 0 .long 0
.byte 0,12,0x14,0,0,0,2,0 .byte 0,12,0x14,0,0,0,2,0
.long 0 .long 0
.size .bn_sqr_comba4,.-.bn_sqr_comba4
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -819,6 +820,7 @@ $data=<<EOF; ...@@ -819,6 +820,7 @@ $data=<<EOF;
.long 0 .long 0
.byte 0,12,0x14,0,0,0,2,0 .byte 0,12,0x14,0,0,0,2,0
.long 0 .long 0
.size .bn_sqr_comba8,.-.bn_sqr_comba8
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -972,6 +974,7 @@ $data=<<EOF; ...@@ -972,6 +974,7 @@ $data=<<EOF;
.long 0 .long 0
.byte 0,12,0x14,0,0,0,3,0 .byte 0,12,0x14,0,0,0,3,0
.long 0 .long 0
.size .bn_mul_comba4,.-.bn_mul_comba4
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1510,6 +1513,7 @@ $data=<<EOF; ...@@ -1510,6 +1513,7 @@ $data=<<EOF;
.long 0 .long 0
.byte 0,12,0x14,0,0,0,3,0 .byte 0,12,0x14,0,0,0,3,0
.long 0 .long 0
.size .bn_mul_comba8,.-.bn_mul_comba8
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1560,6 +1564,7 @@ Lppcasm_sub_adios: ...@@ -1560,6 +1564,7 @@ Lppcasm_sub_adios:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,4,0 .byte 0,12,0x14,0,0,0,4,0
.long 0 .long 0
.size .bn_sub_words,.-.bn_sub_words
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1605,6 +1610,7 @@ Lppcasm_add_adios: ...@@ -1605,6 +1610,7 @@ Lppcasm_add_adios:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,4,0 .byte 0,12,0x14,0,0,0,4,0
.long 0 .long 0
.size .bn_add_words,.-.bn_add_words
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1720,6 +1726,7 @@ Lppcasm_div9: ...@@ -1720,6 +1726,7 @@ Lppcasm_div9:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,3,0 .byte 0,12,0x14,0,0,0,3,0
.long 0 .long 0
.size .bn_div_words,.-.bn_div_words
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1761,6 +1768,7 @@ Lppcasm_sqr_adios: ...@@ -1761,6 +1768,7 @@ Lppcasm_sqr_adios:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,3,0 .byte 0,12,0x14,0,0,0,3,0
.long 0 .long 0
.size .bn_sqr_words,.-.bn_sqr_words
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1866,6 +1874,7 @@ Lppcasm_mw_OVER: ...@@ -1866,6 +1874,7 @@ Lppcasm_mw_OVER:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,4,0 .byte 0,12,0x14,0,0,0,4,0
.long 0 .long 0
.size bn_mul_words,.-bn_mul_words
# #
# NOTE: The following label name should be changed to # NOTE: The following label name should be changed to
...@@ -1991,6 +2000,7 @@ Lppcasm_maw_adios: ...@@ -1991,6 +2000,7 @@ Lppcasm_maw_adios:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,4,0 .byte 0,12,0x14,0,0,0,4,0
.long 0 .long 0
.size .bn_mul_add_words,.-.bn_mul_add_words
.align 4 .align 4
EOF EOF
$data =~ s/\`([^\`]*)\`/eval $1/gem; $data =~ s/\`([^\`]*)\`/eval $1/gem;
......
...@@ -1079,6 +1079,7 @@ $code.=<<___; ...@@ -1079,6 +1079,7 @@ $code.=<<___;
.long 0 .long 0
.byte 0,12,4,0,0x8c,10,6,0 .byte 0,12,4,0,0x8c,10,6,0
.long 0 .long 0
.size .$fname,.-.$fname
.asciz "Montgomery Multiplication for PPC64, CRYPTOGAMS by <appro\@openssl.org>" .asciz "Montgomery Multiplication for PPC64, CRYPTOGAMS by <appro\@openssl.org>"
___ ___
......
...@@ -37,7 +37,6 @@ my $globl = sub { ...@@ -37,7 +37,6 @@ my $globl = sub {
$ret .= ".align 3\n"; $ret .= ".align 3\n";
$ret .= "$name:\n"; $ret .= "$name:\n";
$ret .= ".quad .$name,.TOC.\@tocbase,0\n"; $ret .= ".quad .$name,.TOC.\@tocbase,0\n";
$ret .= ".size $name,24\n";
$ret .= ".previous\n"; $ret .= ".previous\n";
$name = ".$name"; $name = ".$name";
...@@ -62,9 +61,12 @@ my $machine = sub { ...@@ -62,9 +61,12 @@ my $machine = sub {
".machine $arch"; ".machine $arch";
}; };
my $size = sub { my $size = sub {
if ($flavour =~ /linux.*32/) if ($flavour =~ /linux/)
{ shift; { 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 else
{ ""; } { ""; }
......
...@@ -31,6 +31,7 @@ $code=<<___; ...@@ -31,6 +31,7 @@ $code=<<___;
blr blr
.long 0 .long 0
.byte 0,12,0x14,0,0,0,0,0 .byte 0,12,0x14,0,0,0,0,0
.size .OPENSSL_ppc64_probe,.-.OPENSSL_ppc64_probe
.globl .OPENSSL_altivec_probe .globl .OPENSSL_altivec_probe
.align 4 .align 4
...@@ -39,6 +40,7 @@ $code=<<___; ...@@ -39,6 +40,7 @@ $code=<<___;
blr blr
.long 0 .long 0
.byte 0,12,0x14,0,0,0,0,0 .byte 0,12,0x14,0,0,0,0,0
.size .OPENSSL_altivec_probe,.-..OPENSSL_altivec_probe
.globl .OPENSSL_wipe_cpu .globl .OPENSSL_wipe_cpu
.align 4 .align 4
...@@ -71,6 +73,7 @@ $code=<<___; ...@@ -71,6 +73,7 @@ $code=<<___;
blr blr
.long 0 .long 0
.byte 0,12,0x14,0,0,0,0,0 .byte 0,12,0x14,0,0,0,0,0
.size .OPENSSL_wipe_cpu,.-.OPENSSL_wipe_cpu
.globl .OPENSSL_atomic_add .globl .OPENSSL_atomic_add
.align 4 .align 4
...@@ -84,6 +87,7 @@ Ladd: lwarx r5,0,r3 ...@@ -84,6 +87,7 @@ Ladd: lwarx r5,0,r3
.long 0 .long 0
.byte 0,12,0x14,0,0,0,2,0 .byte 0,12,0x14,0,0,0,2,0
.long 0 .long 0
.size .OPENSSL_atomic_add,.-.OPENSSL_atomic_add
.globl .OPENSSL_rdtsc .globl .OPENSSL_rdtsc
.align 4 .align 4
...@@ -93,6 +97,7 @@ Ladd: lwarx r5,0,r3 ...@@ -93,6 +97,7 @@ Ladd: lwarx r5,0,r3
blr blr
.long 0 .long 0
.byte 0,12,0x14,0,0,0,0,0 .byte 0,12,0x14,0,0,0,0,0
.size .OPENSSL_rdtsc,.-.OPENSSL_rdtsc
.globl .OPENSSL_cleanse .globl .OPENSSL_cleanse
.align 4 .align 4
...@@ -125,6 +130,7 @@ Laligned: ...@@ -125,6 +130,7 @@ Laligned:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,2,0 .byte 0,12,0x14,0,0,0,2,0
.long 0 .long 0
.size .OPENSSL_cleanse,.-.OPENSSL_cleanse
___ ___
{ {
my ($out,$cnt,$max)=("r3","r4","r5"); my ($out,$cnt,$max)=("r3","r4","r5");
...@@ -162,6 +168,7 @@ Loop: mftb $tick ...@@ -162,6 +168,7 @@ Loop: mftb $tick
.long 0 .long 0
.byte 0,12,0x14,0,0,0,2,0 .byte 0,12,0x14,0,0,0,2,0
.long 0 .long 0
.size .OPENSSL_instrument_bus,.-.OPENSSL_instrument_bus
.globl .OPENSSL_instrument_bus2 .globl .OPENSSL_instrument_bus2
.align 4 .align 4
...@@ -213,6 +220,7 @@ Ldone2: ...@@ -213,6 +220,7 @@ Ldone2:
.long 0 .long 0
.byte 0,12,0x14,0,0,0,3,0 .byte 0,12,0x14,0,0,0,3,0
.long 0 .long 0
.size .OPENSSL_instrument_bus2,.-.OPENSSL_instrument_bus2
___ ___
} }
......
...@@ -265,6 +265,7 @@ Ldone: ...@@ -265,6 +265,7 @@ Ldone:
.long 0 .long 0
.byte 0,12,4,1,0x80,18,3,0 .byte 0,12,4,1,0x80,18,3,0
.long 0 .long 0
.size .sha1_block_data_order,.-.sha1_block_data_order
___ ___
# This is private block function, which uses tailored calling # This is private block function, which uses tailored calling
......
...@@ -344,6 +344,7 @@ Ldone: ...@@ -344,6 +344,7 @@ Ldone:
.long 0 .long 0
.byte 0,12,4,1,0x80,18,3,0 .byte 0,12,4,1,0x80,18,3,0
.long 0 .long 0
.size $func,.-$func
___ ___
if ($SZ==4 || $SIZE_T==8) { if ($SZ==4 || $SIZE_T==8) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册