The branch master has been updated
       via  2dfb52d3968e838876406d47861488324d5990b4 (commit)
      from  5c72e5ea7a9ce343e4cd595c3fc82956843185c8 (commit)


- Log -----------------------------------------------------------------
commit 2dfb52d3968e838876406d47861488324d5990b4
Author: Andy Polyakov <ap...@openssl.org>
Date:   Sat Feb 11 22:31:47 2017 +0100

    {md5,rc4}/asm/*-x86_64.pl: add CFI annotations.
    
    Reviewed-by: Rich Salz <rs...@openssl.org>

-----------------------------------------------------------------------

Summary of changes:
 crypto/md5/asm/md5-x86_64.pl     | 13 +++++++++++++
 crypto/rc4/asm/rc4-md5-x86_64.pl | 16 ++++++++++++++++
 crypto/rc4/asm/rc4-x86_64.pl     |  9 +++++++++
 3 files changed, 38 insertions(+)

diff --git a/crypto/md5/asm/md5-x86_64.pl b/crypto/md5/asm/md5-x86_64.pl
index 3f656dc..386d804 100755
--- a/crypto/md5/asm/md5-x86_64.pl
+++ b/crypto/md5/asm/md5-x86_64.pl
@@ -140,11 +140,17 @@ $code .= <<EOF;
 .globl md5_block_asm_data_order
 .type md5_block_asm_data_order,\@function,3
 md5_block_asm_data_order:
+.cfi_startproc
        push    %rbp
+.cfi_push      %rbp
        push    %rbx
+.cfi_push      %rbx
        push    %r12
+.cfi_push      %r12
        push    %r14
+.cfi_push      %r14
        push    %r15
+.cfi_push      %r15
 .Lprologue:
 
        # rdi = arg #1 (ctx, MD5_CTX pointer)
@@ -261,13 +267,20 @@ $code .= <<EOF;
        mov     %edx,           3*4(%rbp)       # ctx->D = D
 
        mov     (%rsp),%r15
+.cfi_restore   %r15
        mov     8(%rsp),%r14
+.cfi_restore   %r14
        mov     16(%rsp),%r12
+.cfi_restore   %r12
        mov     24(%rsp),%rbx
+.cfi_restore   %rbx
        mov     32(%rsp),%rbp
+.cfi_restore   %rbp
        add     \$40,%rsp
+.cfi_adjust_cfa_offset -40
 .Lepilogue:
        ret
+.cfi_endproc
 .size md5_block_asm_data_order,.-md5_block_asm_data_order
 EOF
 
diff --git a/crypto/rc4/asm/rc4-md5-x86_64.pl b/crypto/rc4/asm/rc4-md5-x86_64.pl
index 433ed85..74e5191 100644
--- a/crypto/rc4/asm/rc4-md5-x86_64.pl
+++ b/crypto/rc4/asm/rc4-md5-x86_64.pl
@@ -124,15 +124,23 @@ $code.=<<___;
 .globl $func
 .type  $func,\@function,$nargs
 $func:
+.cfi_startproc
        cmp     \$0,$len
        je      .Labort
        push    %rbx
+.cfi_push      %rbx
        push    %rbp
+.cfi_push      %rbp
        push    %r12
+.cfi_push      %r12
        push    %r13
+.cfi_push      %r13
        push    %r14
+.cfi_push      %r14
        push    %r15
+.cfi_push      %r15
        sub     \$40,%rsp
+.cfi_adjust_cfa_offset 40
 .Lbody:
 ___
 if ($rc4) {
@@ -444,15 +452,23 @@ $code.=<<___;
 #rc4#  movl    $YY#d,-4($dat)
 
        mov     40(%rsp),%r15
+.cfi_restore   %r15
        mov     48(%rsp),%r14
+.cfi_restore   %r14
        mov     56(%rsp),%r13
+.cfi_restore   %r13
        mov     64(%rsp),%r12
+.cfi_restore   %r12
        mov     72(%rsp),%rbp
+.cfi_restore   %rbp
        mov     80(%rsp),%rbx
+.cfi_restore   %rbx
        lea     88(%rsp),%rsp
+.cfi_adjust_cfa_offset -88
 .Lepilogue:
 .Labort:
        ret
+.cfi_endproc
 .size $func,.-$func
 ___
 
diff --git a/crypto/rc4/asm/rc4-x86_64.pl b/crypto/rc4/asm/rc4-x86_64.pl
index 6e07c7c..9ccb70e 100755
--- a/crypto/rc4/asm/rc4-x86_64.pl
+++ b/crypto/rc4/asm/rc4-x86_64.pl
@@ -142,9 +142,13 @@ RC4:       or      $len,$len
        jne     .Lentry
        ret
 .Lentry:
+.cfi_startproc
        push    %rbx
+.cfi_push      %rbx
        push    %r12
+.cfi_push      %r12
        push    %r13
+.cfi_push      %r13
 .Lprologue:
        mov     $len,%r11
        mov     $inp,%r12
@@ -427,11 +431,16 @@ $code.=<<___;
        movl    $YY#d,-4($dat)
 
        mov     (%rsp),%r13
+.cfi_restore   %r13
        mov     8(%rsp),%r12
+.cfi_restore   %r12
        mov     16(%rsp),%rbx
+.cfi_restore   %rbx
        add     \$24,%rsp
+.cfi_adjust_cfa_offset -24
 .Lepilogue:
        ret
+.cfi_endproc
 .size  RC4,.-RC4
 ___
 }
_____
openssl-commits mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits

Reply via email to