diff options
Diffstat (limited to 'src/lib/libcrypto/whrlpool')
| -rw-r--r-- | src/lib/libcrypto/whrlpool/asm/wp-x86_64.pl | 109 |
1 files changed, 0 insertions, 109 deletions
diff --git a/src/lib/libcrypto/whrlpool/asm/wp-x86_64.pl b/src/lib/libcrypto/whrlpool/asm/wp-x86_64.pl index 24b2ff60c3..afadd5d2f1 100644 --- a/src/lib/libcrypto/whrlpool/asm/wp-x86_64.pl +++ b/src/lib/libcrypto/whrlpool/asm/wp-x86_64.pl | |||
| @@ -34,8 +34,6 @@ $flavour = shift; | |||
| 34 | $output = shift; | 34 | $output = shift; |
| 35 | if ($flavour =~ /\./) { $output = $flavour; undef $flavour; } | 35 | if ($flavour =~ /\./) { $output = $flavour; undef $flavour; } |
| 36 | 36 | ||
| 37 | $win64=0; $win64=1 if ($flavour =~ /[nm]asm|mingw64/ || $output =~ /\.asm$/); | ||
| 38 | |||
| 39 | $0 =~ m/(.*[\/\\])[^\/\\]+$/; my $dir=$1; my $xlate; | 37 | $0 =~ m/(.*[\/\\])[^\/\\]+$/; my $dir=$1; my $xlate; |
| 40 | ( $xlate="${dir}x86_64-xlate.pl" and -f $xlate ) or | 38 | ( $xlate="${dir}x86_64-xlate.pl" and -f $xlate ) or |
| 41 | ( $xlate="${dir}../../perlasm/x86_64-xlate.pl" and -f $xlate) or | 39 | ( $xlate="${dir}../../perlasm/x86_64-xlate.pl" and -f $xlate) or |
| @@ -478,113 +476,6 @@ ___ | |||
| 478 | &L(0xfb,0xee,0x7c,0x66,0xdd,0x17,0x47,0x9e); | 476 | &L(0xfb,0xee,0x7c,0x66,0xdd,0x17,0x47,0x9e); |
| 479 | &L(0xca,0x2d,0xbf,0x07,0xad,0x5a,0x83,0x33); | 477 | &L(0xca,0x2d,0xbf,0x07,0xad,0x5a,0x83,0x33); |
| 480 | 478 | ||
| 481 | # EXCEPTION_DISPOSITION handler (EXCEPTION_RECORD *rec,ULONG64 frame, | ||
| 482 | # CONTEXT *context,DISPATCHER_CONTEXT *disp) | ||
| 483 | if ($win64) { | ||
| 484 | $rec="%rcx"; | ||
| 485 | $frame="%rdx"; | ||
| 486 | $context="%r8"; | ||
| 487 | $disp="%r9"; | ||
| 488 | |||
| 489 | $code.=<<___; | ||
| 490 | .extern __imp_RtlVirtualUnwind | ||
| 491 | .type se_handler,\@abi-omnipotent | ||
| 492 | .align 16 | ||
| 493 | se_handler: | ||
| 494 | push %rsi | ||
| 495 | push %rdi | ||
| 496 | push %rbx | ||
| 497 | push %rbp | ||
| 498 | push %r12 | ||
| 499 | push %r13 | ||
| 500 | push %r14 | ||
| 501 | push %r15 | ||
| 502 | pushfq | ||
| 503 | sub \$64,%rsp | ||
| 504 | |||
| 505 | mov 120($context),%rax # pull context->Rax | ||
| 506 | mov 248($context),%rbx # pull context->Rip | ||
| 507 | |||
| 508 | lea .Lprologue(%rip),%r10 | ||
| 509 | cmp %r10,%rbx # context->Rip<.Lprologue | ||
| 510 | jb .Lin_prologue | ||
| 511 | |||
| 512 | mov 152($context),%rax # pull context->Rsp | ||
| 513 | |||
| 514 | lea .Lepilogue(%rip),%r10 | ||
| 515 | cmp %r10,%rbx # context->Rip>=.Lepilogue | ||
| 516 | jae .Lin_prologue | ||
| 517 | |||
| 518 | mov 128+32(%rax),%rax # pull saved stack pointer | ||
| 519 | lea 48(%rax),%rax | ||
| 520 | |||
| 521 | mov -8(%rax),%rbx | ||
| 522 | mov -16(%rax),%rbp | ||
| 523 | mov -24(%rax),%r12 | ||
| 524 | mov -32(%rax),%r13 | ||
| 525 | mov -40(%rax),%r14 | ||
| 526 | mov -48(%rax),%r15 | ||
| 527 | mov %rbx,144($context) # restore context->Rbx | ||
| 528 | mov %rbp,160($context) # restore context->Rbp | ||
| 529 | mov %r12,216($context) # restore context->R12 | ||
| 530 | mov %r13,224($context) # restore context->R13 | ||
| 531 | mov %r14,232($context) # restore context->R14 | ||
| 532 | mov %r15,240($context) # restore context->R15 | ||
| 533 | |||
| 534 | .Lin_prologue: | ||
| 535 | mov 8(%rax),%rdi | ||
| 536 | mov 16(%rax),%rsi | ||
| 537 | mov %rax,152($context) # restore context->Rsp | ||
| 538 | mov %rsi,168($context) # restore context->Rsi | ||
| 539 | mov %rdi,176($context) # restore context->Rdi | ||
| 540 | |||
| 541 | mov 40($disp),%rdi # disp->ContextRecord | ||
| 542 | mov $context,%rsi # context | ||
| 543 | mov \$154,%ecx # sizeof(CONTEXT) | ||
| 544 | .long 0xa548f3fc # cld; rep movsq | ||
| 545 | |||
| 546 | mov $disp,%rsi | ||
| 547 | xor %rcx,%rcx # arg1, UNW_FLAG_NHANDLER | ||
| 548 | mov 8(%rsi),%rdx # arg2, disp->ImageBase | ||
| 549 | mov 0(%rsi),%r8 # arg3, disp->ControlPc | ||
| 550 | mov 16(%rsi),%r9 # arg4, disp->FunctionEntry | ||
| 551 | mov 40(%rsi),%r10 # disp->ContextRecord | ||
| 552 | lea 56(%rsi),%r11 # &disp->HandlerData | ||
| 553 | lea 24(%rsi),%r12 # &disp->EstablisherFrame | ||
| 554 | mov %r10,32(%rsp) # arg5 | ||
| 555 | mov %r11,40(%rsp) # arg6 | ||
| 556 | mov %r12,48(%rsp) # arg7 | ||
| 557 | mov %rcx,56(%rsp) # arg8, (NULL) | ||
| 558 | call *__imp_RtlVirtualUnwind(%rip) | ||
| 559 | |||
| 560 | mov \$1,%eax # ExceptionContinueSearch | ||
| 561 | add \$64,%rsp | ||
| 562 | popfq | ||
| 563 | pop %r15 | ||
| 564 | pop %r14 | ||
| 565 | pop %r13 | ||
| 566 | pop %r12 | ||
| 567 | pop %rbp | ||
| 568 | pop %rbx | ||
| 569 | pop %rdi | ||
| 570 | pop %rsi | ||
| 571 | ret | ||
| 572 | .size se_handler,.-se_handler | ||
| 573 | |||
| 574 | .section .pdata | ||
| 575 | .align 4 | ||
| 576 | .rva .LSEH_begin_$func | ||
| 577 | .rva .LSEH_end_$func | ||
| 578 | .rva .LSEH_info_$func | ||
| 579 | |||
| 580 | .section .xdata | ||
| 581 | .align 8 | ||
| 582 | .LSEH_info_$func: | ||
| 583 | .byte 9,0,0,0 | ||
| 584 | .rva se_handler | ||
| 585 | ___ | ||
| 586 | } | ||
| 587 | |||
| 588 | $code =~ s/\`([^\`]*)\`/eval $1/gem; | 479 | $code =~ s/\`([^\`]*)\`/eval $1/gem; |
| 589 | print $code; | 480 | print $code; |
| 590 | close STDOUT; | 481 | close STDOUT; |
