Avoid linking error for InitializeCriticalSectionAndSpinCount().
[oweals/openssl.git] / crypto / md5 / asm / md5-x86_64.pl
index be5e879fc8497a9f065f686a57fb25127eba4d5e..386d8048ec02b29a2581bc324f43890b62cb9d79 100755 (executable)
@@ -130,7 +130,7 @@ $0 =~ m/(.*[\/\\])[^\/\\]+$/; my $dir=$1; my $xlate;
 ( $xlate="${dir}../../perlasm/x86_64-xlate.pl" and -f $xlate) or
 die "can't locate x86_64-xlate.pl";
 
-open OUT,"| \"$^X\" $xlate $flavour $output";
+open OUT,"| \"$^X\" \"$xlate\" $flavour \"$output\"";
 *STDOUT=*OUT;
 
 $code .= <<EOF;
@@ -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