The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/crypto/openssl/amd64/sha1-x86_64.S

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /* $FreeBSD$ */
    2 /* Do not modify. This file is auto-generated from sha1-x86_64.pl. */
    3 .text   
    4 
    5 
    6 .globl  sha1_block_data_order
    7 .type   sha1_block_data_order,@function
    8 .align  16
    9 sha1_block_data_order:
   10 .cfi_startproc  
   11         movl    OPENSSL_ia32cap_P+0(%rip),%r9d
   12         movl    OPENSSL_ia32cap_P+4(%rip),%r8d
   13         movl    OPENSSL_ia32cap_P+8(%rip),%r10d
   14         testl   $512,%r8d
   15         jz      .Lialu
   16         testl   $536870912,%r10d
   17         jnz     _shaext_shortcut
   18         andl    $296,%r10d
   19         cmpl    $296,%r10d
   20         je      _avx2_shortcut
   21         andl    $268435456,%r8d
   22         andl    $1073741824,%r9d
   23         orl     %r9d,%r8d
   24         cmpl    $1342177280,%r8d
   25         je      _avx_shortcut
   26         jmp     _ssse3_shortcut
   27 
   28 .align  16
   29 .Lialu:
   30         movq    %rsp,%rax
   31 .cfi_def_cfa_register   %rax
   32         pushq   %rbx
   33 .cfi_offset     %rbx,-16
   34         pushq   %rbp
   35 .cfi_offset     %rbp,-24
   36         pushq   %r12
   37 .cfi_offset     %r12,-32
   38         pushq   %r13
   39 .cfi_offset     %r13,-40
   40         pushq   %r14
   41 .cfi_offset     %r14,-48
   42         movq    %rdi,%r8
   43         subq    $72,%rsp
   44         movq    %rsi,%r9
   45         andq    $-64,%rsp
   46         movq    %rdx,%r10
   47         movq    %rax,64(%rsp)
   48 .cfi_escape     0x0f,0x06,0x77,0xc0,0x00,0x06,0x23,0x08
   49 .Lprologue:
   50 
   51         movl    0(%r8),%esi
   52         movl    4(%r8),%edi
   53         movl    8(%r8),%r11d
   54         movl    12(%r8),%r12d
   55         movl    16(%r8),%r13d
   56         jmp     .Lloop
   57 
   58 .align  16
   59 .Lloop:
   60         movl    0(%r9),%edx
   61         bswapl  %edx
   62         movl    4(%r9),%ebp
   63         movl    %r12d,%eax
   64         movl    %edx,0(%rsp)
   65         movl    %esi,%ecx
   66         bswapl  %ebp
   67         xorl    %r11d,%eax
   68         roll    $5,%ecx
   69         andl    %edi,%eax
   70         leal    1518500249(%rdx,%r13,1),%r13d
   71         addl    %ecx,%r13d
   72         xorl    %r12d,%eax
   73         roll    $30,%edi
   74         addl    %eax,%r13d
   75         movl    8(%r9),%r14d
   76         movl    %r11d,%eax
   77         movl    %ebp,4(%rsp)
   78         movl    %r13d,%ecx
   79         bswapl  %r14d
   80         xorl    %edi,%eax
   81         roll    $5,%ecx
   82         andl    %esi,%eax
   83         leal    1518500249(%rbp,%r12,1),%r12d
   84         addl    %ecx,%r12d
   85         xorl    %r11d,%eax
   86         roll    $30,%esi
   87         addl    %eax,%r12d
   88         movl    12(%r9),%edx
   89         movl    %edi,%eax
   90         movl    %r14d,8(%rsp)
   91         movl    %r12d,%ecx
   92         bswapl  %edx
   93         xorl    %esi,%eax
   94         roll    $5,%ecx
   95         andl    %r13d,%eax
   96         leal    1518500249(%r14,%r11,1),%r11d
   97         addl    %ecx,%r11d
   98         xorl    %edi,%eax
   99         roll    $30,%r13d
  100         addl    %eax,%r11d
  101         movl    16(%r9),%ebp
  102         movl    %esi,%eax
  103         movl    %edx,12(%rsp)
  104         movl    %r11d,%ecx
  105         bswapl  %ebp
  106         xorl    %r13d,%eax
  107         roll    $5,%ecx
  108         andl    %r12d,%eax
  109         leal    1518500249(%rdx,%rdi,1),%edi
  110         addl    %ecx,%edi
  111         xorl    %esi,%eax
  112         roll    $30,%r12d
  113         addl    %eax,%edi
  114         movl    20(%r9),%r14d
  115         movl    %r13d,%eax
  116         movl    %ebp,16(%rsp)
  117         movl    %edi,%ecx
  118         bswapl  %r14d
  119         xorl    %r12d,%eax
  120         roll    $5,%ecx
  121         andl    %r11d,%eax
  122         leal    1518500249(%rbp,%rsi,1),%esi
  123         addl    %ecx,%esi
  124         xorl    %r13d,%eax
  125         roll    $30,%r11d
  126         addl    %eax,%esi
  127         movl    24(%r9),%edx
  128         movl    %r12d,%eax
  129         movl    %r14d,20(%rsp)
  130         movl    %esi,%ecx
  131         bswapl  %edx
  132         xorl    %r11d,%eax
  133         roll    $5,%ecx
  134         andl    %edi,%eax
  135         leal    1518500249(%r14,%r13,1),%r13d
  136         addl    %ecx,%r13d
  137         xorl    %r12d,%eax
  138         roll    $30,%edi
  139         addl    %eax,%r13d
  140         movl    28(%r9),%ebp
  141         movl    %r11d,%eax
  142         movl    %edx,24(%rsp)
  143         movl    %r13d,%ecx
  144         bswapl  %ebp
  145         xorl    %edi,%eax
  146         roll    $5,%ecx
  147         andl    %esi,%eax
  148         leal    1518500249(%rdx,%r12,1),%r12d
  149         addl    %ecx,%r12d
  150         xorl    %r11d,%eax
  151         roll    $30,%esi
  152         addl    %eax,%r12d
  153         movl    32(%r9),%r14d
  154         movl    %edi,%eax
  155         movl    %ebp,28(%rsp)
  156         movl    %r12d,%ecx
  157         bswapl  %r14d
  158         xorl    %esi,%eax
  159         roll    $5,%ecx
  160         andl    %r13d,%eax
  161         leal    1518500249(%rbp,%r11,1),%r11d
  162         addl    %ecx,%r11d
  163         xorl    %edi,%eax
  164         roll    $30,%r13d
  165         addl    %eax,%r11d
  166         movl    36(%r9),%edx
  167         movl    %esi,%eax
  168         movl    %r14d,32(%rsp)
  169         movl    %r11d,%ecx
  170         bswapl  %edx
  171         xorl    %r13d,%eax
  172         roll    $5,%ecx
  173         andl    %r12d,%eax
  174         leal    1518500249(%r14,%rdi,1),%edi
  175         addl    %ecx,%edi
  176         xorl    %esi,%eax
  177         roll    $30,%r12d
  178         addl    %eax,%edi
  179         movl    40(%r9),%ebp
  180         movl    %r13d,%eax
  181         movl    %edx,36(%rsp)
  182         movl    %edi,%ecx
  183         bswapl  %ebp
  184         xorl    %r12d,%eax
  185         roll    $5,%ecx
  186         andl    %r11d,%eax
  187         leal    1518500249(%rdx,%rsi,1),%esi
  188         addl    %ecx,%esi
  189         xorl    %r13d,%eax
  190         roll    $30,%r11d
  191         addl    %eax,%esi
  192         movl    44(%r9),%r14d
  193         movl    %r12d,%eax
  194         movl    %ebp,40(%rsp)
  195         movl    %esi,%ecx
  196         bswapl  %r14d
  197         xorl    %r11d,%eax
  198         roll    $5,%ecx
  199         andl    %edi,%eax
  200         leal    1518500249(%rbp,%r13,1),%r13d
  201         addl    %ecx,%r13d
  202         xorl    %r12d,%eax
  203         roll    $30,%edi
  204         addl    %eax,%r13d
  205         movl    48(%r9),%edx
  206         movl    %r11d,%eax
  207         movl    %r14d,44(%rsp)
  208         movl    %r13d,%ecx
  209         bswapl  %edx
  210         xorl    %edi,%eax
  211         roll    $5,%ecx
  212         andl    %esi,%eax
  213         leal    1518500249(%r14,%r12,1),%r12d
  214         addl    %ecx,%r12d
  215         xorl    %r11d,%eax
  216         roll    $30,%esi
  217         addl    %eax,%r12d
  218         movl    52(%r9),%ebp
  219         movl    %edi,%eax
  220         movl    %edx,48(%rsp)
  221         movl    %r12d,%ecx
  222         bswapl  %ebp
  223         xorl    %esi,%eax
  224         roll    $5,%ecx
  225         andl    %r13d,%eax
  226         leal    1518500249(%rdx,%r11,1),%r11d
  227         addl    %ecx,%r11d
  228         xorl    %edi,%eax
  229         roll    $30,%r13d
  230         addl    %eax,%r11d
  231         movl    56(%r9),%r14d
  232         movl    %esi,%eax
  233         movl    %ebp,52(%rsp)
  234         movl    %r11d,%ecx
  235         bswapl  %r14d
  236         xorl    %r13d,%eax
  237         roll    $5,%ecx
  238         andl    %r12d,%eax
  239         leal    1518500249(%rbp,%rdi,1),%edi
  240         addl    %ecx,%edi
  241         xorl    %esi,%eax
  242         roll    $30,%r12d
  243         addl    %eax,%edi
  244         movl    60(%r9),%edx
  245         movl    %r13d,%eax
  246         movl    %r14d,56(%rsp)
  247         movl    %edi,%ecx
  248         bswapl  %edx
  249         xorl    %r12d,%eax
  250         roll    $5,%ecx
  251         andl    %r11d,%eax
  252         leal    1518500249(%r14,%rsi,1),%esi
  253         addl    %ecx,%esi
  254         xorl    %r13d,%eax
  255         roll    $30,%r11d
  256         addl    %eax,%esi
  257         xorl    0(%rsp),%ebp
  258         movl    %r12d,%eax
  259         movl    %edx,60(%rsp)
  260         movl    %esi,%ecx
  261         xorl    8(%rsp),%ebp
  262         xorl    %r11d,%eax
  263         roll    $5,%ecx
  264         xorl    32(%rsp),%ebp
  265         andl    %edi,%eax
  266         leal    1518500249(%rdx,%r13,1),%r13d
  267         roll    $30,%edi
  268         xorl    %r12d,%eax
  269         addl    %ecx,%r13d
  270         roll    $1,%ebp
  271         addl    %eax,%r13d
  272         xorl    4(%rsp),%r14d
  273         movl    %r11d,%eax
  274         movl    %ebp,0(%rsp)
  275         movl    %r13d,%ecx
  276         xorl    12(%rsp),%r14d
  277         xorl    %edi,%eax
  278         roll    $5,%ecx
  279         xorl    36(%rsp),%r14d
  280         andl    %esi,%eax
  281         leal    1518500249(%rbp,%r12,1),%r12d
  282         roll    $30,%esi
  283         xorl    %r11d,%eax
  284         addl    %ecx,%r12d
  285         roll    $1,%r14d
  286         addl    %eax,%r12d
  287         xorl    8(%rsp),%edx
  288         movl    %edi,%eax
  289         movl    %r14d,4(%rsp)
  290         movl    %r12d,%ecx
  291         xorl    16(%rsp),%edx
  292         xorl    %esi,%eax
  293         roll    $5,%ecx
  294         xorl    40(%rsp),%edx
  295         andl    %r13d,%eax
  296         leal    1518500249(%r14,%r11,1),%r11d
  297         roll    $30,%r13d
  298         xorl    %edi,%eax
  299         addl    %ecx,%r11d
  300         roll    $1,%edx
  301         addl    %eax,%r11d
  302         xorl    12(%rsp),%ebp
  303         movl    %esi,%eax
  304         movl    %edx,8(%rsp)
  305         movl    %r11d,%ecx
  306         xorl    20(%rsp),%ebp
  307         xorl    %r13d,%eax
  308         roll    $5,%ecx
  309         xorl    44(%rsp),%ebp
  310         andl    %r12d,%eax
  311         leal    1518500249(%rdx,%rdi,1),%edi
  312         roll    $30,%r12d
  313         xorl    %esi,%eax
  314         addl    %ecx,%edi
  315         roll    $1,%ebp
  316         addl    %eax,%edi
  317         xorl    16(%rsp),%r14d
  318         movl    %r13d,%eax
  319         movl    %ebp,12(%rsp)
  320         movl    %edi,%ecx
  321         xorl    24(%rsp),%r14d
  322         xorl    %r12d,%eax
  323         roll    $5,%ecx
  324         xorl    48(%rsp),%r14d
  325         andl    %r11d,%eax
  326         leal    1518500249(%rbp,%rsi,1),%esi
  327         roll    $30,%r11d
  328         xorl    %r13d,%eax
  329         addl    %ecx,%esi
  330         roll    $1,%r14d
  331         addl    %eax,%esi
  332         xorl    20(%rsp),%edx
  333         movl    %edi,%eax
  334         movl    %r14d,16(%rsp)
  335         movl    %esi,%ecx
  336         xorl    28(%rsp),%edx
  337         xorl    %r12d,%eax
  338         roll    $5,%ecx
  339         xorl    52(%rsp),%edx
  340         leal    1859775393(%r14,%r13,1),%r13d
  341         xorl    %r11d,%eax
  342         addl    %ecx,%r13d
  343         roll    $30,%edi
  344         addl    %eax,%r13d
  345         roll    $1,%edx
  346         xorl    24(%rsp),%ebp
  347         movl    %esi,%eax
  348         movl    %edx,20(%rsp)
  349         movl    %r13d,%ecx
  350         xorl    32(%rsp),%ebp
  351         xorl    %r11d,%eax
  352         roll    $5,%ecx
  353         xorl    56(%rsp),%ebp
  354         leal    1859775393(%rdx,%r12,1),%r12d
  355         xorl    %edi,%eax
  356         addl    %ecx,%r12d
  357         roll    $30,%esi
  358         addl    %eax,%r12d
  359         roll    $1,%ebp
  360         xorl    28(%rsp),%r14d
  361         movl    %r13d,%eax
  362         movl    %ebp,24(%rsp)
  363         movl    %r12d,%ecx
  364         xorl    36(%rsp),%r14d
  365         xorl    %edi,%eax
  366         roll    $5,%ecx
  367         xorl    60(%rsp),%r14d
  368         leal    1859775393(%rbp,%r11,1),%r11d
  369         xorl    %esi,%eax
  370         addl    %ecx,%r11d
  371         roll    $30,%r13d
  372         addl    %eax,%r11d
  373         roll    $1,%r14d
  374         xorl    32(%rsp),%edx
  375         movl    %r12d,%eax
  376         movl    %r14d,28(%rsp)
  377         movl    %r11d,%ecx
  378         xorl    40(%rsp),%edx
  379         xorl    %esi,%eax
  380         roll    $5,%ecx
  381         xorl    0(%rsp),%edx
  382         leal    1859775393(%r14,%rdi,1),%edi
  383         xorl    %r13d,%eax
  384         addl    %ecx,%edi
  385         roll    $30,%r12d
  386         addl    %eax,%edi
  387         roll    $1,%edx
  388         xorl    36(%rsp),%ebp
  389         movl    %r11d,%eax
  390         movl    %edx,32(%rsp)
  391         movl    %edi,%ecx
  392         xorl    44(%rsp),%ebp
  393         xorl    %r13d,%eax
  394         roll    $5,%ecx
  395         xorl    4(%rsp),%ebp
  396         leal    1859775393(%rdx,%rsi,1),%esi
  397         xorl    %r12d,%eax
  398         addl    %ecx,%esi
  399         roll    $30,%r11d
  400         addl    %eax,%esi
  401         roll    $1,%ebp
  402         xorl    40(%rsp),%r14d
  403         movl    %edi,%eax
  404         movl    %ebp,36(%rsp)
  405         movl    %esi,%ecx
  406         xorl    48(%rsp),%r14d
  407         xorl    %r12d,%eax
  408         roll    $5,%ecx
  409         xorl    8(%rsp),%r14d
  410         leal    1859775393(%rbp,%r13,1),%r13d
  411         xorl    %r11d,%eax
  412         addl    %ecx,%r13d
  413         roll    $30,%edi
  414         addl    %eax,%r13d
  415         roll    $1,%r14d
  416         xorl    44(%rsp),%edx
  417         movl    %esi,%eax
  418         movl    %r14d,40(%rsp)
  419         movl    %r13d,%ecx
  420         xorl    52(%rsp),%edx
  421         xorl    %r11d,%eax
  422         roll    $5,%ecx
  423         xorl    12(%rsp),%edx
  424         leal    1859775393(%r14,%r12,1),%r12d
  425         xorl    %edi,%eax
  426         addl    %ecx,%r12d
  427         roll    $30,%esi
  428         addl    %eax,%r12d
  429         roll    $1,%edx
  430         xorl    48(%rsp),%ebp
  431         movl    %r13d,%eax
  432         movl    %edx,44(%rsp)
  433         movl    %r12d,%ecx
  434         xorl    56(%rsp),%ebp
  435         xorl    %edi,%eax
  436         roll    $5,%ecx
  437         xorl    16(%rsp),%ebp
  438         leal    1859775393(%rdx,%r11,1),%r11d
  439         xorl    %esi,%eax
  440         addl    %ecx,%r11d
  441         roll    $30,%r13d
  442         addl    %eax,%r11d
  443         roll    $1,%ebp
  444         xorl    52(%rsp),%r14d
  445         movl    %r12d,%eax
  446         movl    %ebp,48(%rsp)
  447         movl    %r11d,%ecx
  448         xorl    60(%rsp),%r14d
  449         xorl    %esi,%eax
  450         roll    $5,%ecx
  451         xorl    20(%rsp),%r14d
  452         leal    1859775393(%rbp,%rdi,1),%edi
  453         xorl    %r13d,%eax
  454         addl    %ecx,%edi
  455         roll    $30,%r12d
  456         addl    %eax,%edi
  457         roll    $1,%r14d
  458         xorl    56(%rsp),%edx
  459         movl    %r11d,%eax
  460         movl    %r14d,52(%rsp)
  461         movl    %edi,%ecx
  462         xorl    0(%rsp),%edx
  463         xorl    %r13d,%eax
  464         roll    $5,%ecx
  465         xorl    24(%rsp),%edx
  466         leal    1859775393(%r14,%rsi,1),%esi
  467         xorl    %r12d,%eax
  468         addl    %ecx,%esi
  469         roll    $30,%r11d
  470         addl    %eax,%esi
  471         roll    $1,%edx
  472         xorl    60(%rsp),%ebp
  473         movl    %edi,%eax
  474         movl    %edx,56(%rsp)
  475         movl    %esi,%ecx
  476         xorl    4(%rsp),%ebp
  477         xorl    %r12d,%eax
  478         roll    $5,%ecx
  479         xorl    28(%rsp),%ebp
  480         leal    1859775393(%rdx,%r13,1),%r13d
  481         xorl    %r11d,%eax
  482         addl    %ecx,%r13d
  483         roll    $30,%edi
  484         addl    %eax,%r13d
  485         roll    $1,%ebp
  486         xorl    0(%rsp),%r14d
  487         movl    %esi,%eax
  488         movl    %ebp,60(%rsp)
  489         movl    %r13d,%ecx
  490         xorl    8(%rsp),%r14d
  491         xorl    %r11d,%eax
  492         roll    $5,%ecx
  493         xorl    32(%rsp),%r14d
  494         leal    1859775393(%rbp,%r12,1),%r12d
  495         xorl    %edi,%eax
  496         addl    %ecx,%r12d
  497         roll    $30,%esi
  498         addl    %eax,%r12d
  499         roll    $1,%r14d
  500         xorl    4(%rsp),%edx
  501         movl    %r13d,%eax
  502         movl    %r14d,0(%rsp)
  503         movl    %r12d,%ecx
  504         xorl    12(%rsp),%edx
  505         xorl    %edi,%eax
  506         roll    $5,%ecx
  507         xorl    36(%rsp),%edx
  508         leal    1859775393(%r14,%r11,1),%r11d
  509         xorl    %esi,%eax
  510         addl    %ecx,%r11d
  511         roll    $30,%r13d
  512         addl    %eax,%r11d
  513         roll    $1,%edx
  514         xorl    8(%rsp),%ebp
  515         movl    %r12d,%eax
  516         movl    %edx,4(%rsp)
  517         movl    %r11d,%ecx
  518         xorl    16(%rsp),%ebp
  519         xorl    %esi,%eax
  520         roll    $5,%ecx
  521         xorl    40(%rsp),%ebp
  522         leal    1859775393(%rdx,%rdi,1),%edi
  523         xorl    %r13d,%eax
  524         addl    %ecx,%edi
  525         roll    $30,%r12d
  526         addl    %eax,%edi
  527         roll    $1,%ebp
  528         xorl    12(%rsp),%r14d
  529         movl    %r11d,%eax
  530         movl    %ebp,8(%rsp)
  531         movl    %edi,%ecx
  532         xorl    20(%rsp),%r14d
  533         xorl    %r13d,%eax
  534         roll    $5,%ecx
  535         xorl    44(%rsp),%r14d
  536         leal    1859775393(%rbp,%rsi,1),%esi
  537         xorl    %r12d,%eax
  538         addl    %ecx,%esi
  539         roll    $30,%r11d
  540         addl    %eax,%esi
  541         roll    $1,%r14d
  542         xorl    16(%rsp),%edx
  543         movl    %edi,%eax
  544         movl    %r14d,12(%rsp)
  545         movl    %esi,%ecx
  546         xorl    24(%rsp),%edx
  547         xorl    %r12d,%eax
  548         roll    $5,%ecx
  549         xorl    48(%rsp),%edx
  550         leal    1859775393(%r14,%r13,1),%r13d
  551         xorl    %r11d,%eax
  552         addl    %ecx,%r13d
  553         roll    $30,%edi
  554         addl    %eax,%r13d
  555         roll    $1,%edx
  556         xorl    20(%rsp),%ebp
  557         movl    %esi,%eax
  558         movl    %edx,16(%rsp)
  559         movl    %r13d,%ecx
  560         xorl    28(%rsp),%ebp
  561         xorl    %r11d,%eax
  562         roll    $5,%ecx
  563         xorl    52(%rsp),%ebp
  564         leal    1859775393(%rdx,%r12,1),%r12d
  565         xorl    %edi,%eax
  566         addl    %ecx,%r12d
  567         roll    $30,%esi
  568         addl    %eax,%r12d
  569         roll    $1,%ebp
  570         xorl    24(%rsp),%r14d
  571         movl    %r13d,%eax
  572         movl    %ebp,20(%rsp)
  573         movl    %r12d,%ecx
  574         xorl    32(%rsp),%r14d
  575         xorl    %edi,%eax
  576         roll    $5,%ecx
  577         xorl    56(%rsp),%r14d
  578         leal    1859775393(%rbp,%r11,1),%r11d
  579         xorl    %esi,%eax
  580         addl    %ecx,%r11d
  581         roll    $30,%r13d
  582         addl    %eax,%r11d
  583         roll    $1,%r14d
  584         xorl    28(%rsp),%edx
  585         movl    %r12d,%eax
  586         movl    %r14d,24(%rsp)
  587         movl    %r11d,%ecx
  588         xorl    36(%rsp),%edx
  589         xorl    %esi,%eax
  590         roll    $5,%ecx
  591         xorl    60(%rsp),%edx
  592         leal    1859775393(%r14,%rdi,1),%edi
  593         xorl    %r13d,%eax
  594         addl    %ecx,%edi
  595         roll    $30,%r12d
  596         addl    %eax,%edi
  597         roll    $1,%edx
  598         xorl    32(%rsp),%ebp
  599         movl    %r11d,%eax
  600         movl    %edx,28(%rsp)
  601         movl    %edi,%ecx
  602         xorl    40(%rsp),%ebp
  603         xorl    %r13d,%eax
  604         roll    $5,%ecx
  605         xorl    0(%rsp),%ebp
  606         leal    1859775393(%rdx,%rsi,1),%esi
  607         xorl    %r12d,%eax
  608         addl    %ecx,%esi
  609         roll    $30,%r11d
  610         addl    %eax,%esi
  611         roll    $1,%ebp
  612         xorl    36(%rsp),%r14d
  613         movl    %r12d,%eax
  614         movl    %ebp,32(%rsp)
  615         movl    %r12d,%ebx
  616         xorl    44(%rsp),%r14d
  617         andl    %r11d,%eax
  618         movl    %esi,%ecx
  619         xorl    4(%rsp),%r14d
  620         leal    -1894007588(%rbp,%r13,1),%r13d
  621         xorl    %r11d,%ebx
  622         roll    $5,%ecx
  623         addl    %eax,%r13d
  624         roll    $1,%r14d
  625         andl    %edi,%ebx
  626         addl    %ecx,%r13d
  627         roll    $30,%edi
  628         addl    %ebx,%r13d
  629         xorl    40(%rsp),%edx
  630         movl    %r11d,%eax
  631         movl    %r14d,36(%rsp)
  632         movl    %r11d,%ebx
  633         xorl    48(%rsp),%edx
  634         andl    %edi,%eax
  635         movl    %r13d,%ecx
  636         xorl    8(%rsp),%edx
  637         leal    -1894007588(%r14,%r12,1),%r12d
  638         xorl    %edi,%ebx
  639         roll    $5,%ecx
  640         addl    %eax,%r12d
  641         roll    $1,%edx
  642         andl    %esi,%ebx
  643         addl    %ecx,%r12d
  644         roll    $30,%esi
  645         addl    %ebx,%r12d
  646         xorl    44(%rsp),%ebp
  647         movl    %edi,%eax
  648         movl    %edx,40(%rsp)
  649         movl    %edi,%ebx
  650         xorl    52(%rsp),%ebp
  651         andl    %esi,%eax
  652         movl    %r12d,%ecx
  653         xorl    12(%rsp),%ebp
  654         leal    -1894007588(%rdx,%r11,1),%r11d
  655         xorl    %esi,%ebx
  656         roll    $5,%ecx
  657         addl    %eax,%r11d
  658         roll    $1,%ebp
  659         andl    %r13d,%ebx
  660         addl    %ecx,%r11d
  661         roll    $30,%r13d
  662         addl    %ebx,%r11d
  663         xorl    48(%rsp),%r14d
  664         movl    %esi,%eax
  665         movl    %ebp,44(%rsp)
  666         movl    %esi,%ebx
  667         xorl    56(%rsp),%r14d
  668         andl    %r13d,%eax
  669         movl    %r11d,%ecx
  670         xorl    16(%rsp),%r14d
  671         leal    -1894007588(%rbp,%rdi,1),%edi
  672         xorl    %r13d,%ebx
  673         roll    $5,%ecx
  674         addl    %eax,%edi
  675         roll    $1,%r14d
  676         andl    %r12d,%ebx
  677         addl    %ecx,%edi
  678         roll    $30,%r12d
  679         addl    %ebx,%edi
  680         xorl    52(%rsp),%edx
  681         movl    %r13d,%eax
  682         movl    %r14d,48(%rsp)
  683         movl    %r13d,%ebx
  684         xorl    60(%rsp),%edx
  685         andl    %r12d,%eax
  686         movl    %edi,%ecx
  687         xorl    20(%rsp),%edx
  688         leal    -1894007588(%r14,%rsi,1),%esi
  689         xorl    %r12d,%ebx
  690         roll    $5,%ecx
  691         addl    %eax,%esi
  692         roll    $1,%edx
  693         andl    %r11d,%ebx
  694         addl    %ecx,%esi
  695         roll    $30,%r11d
  696         addl    %ebx,%esi
  697         xorl    56(%rsp),%ebp
  698         movl    %r12d,%eax
  699         movl    %edx,52(%rsp)
  700         movl    %r12d,%ebx
  701         xorl    0(%rsp),%ebp
  702         andl    %r11d,%eax
  703         movl    %esi,%ecx
  704         xorl    24(%rsp),%ebp
  705         leal    -1894007588(%rdx,%r13,1),%r13d
  706         xorl    %r11d,%ebx
  707         roll    $5,%ecx
  708         addl    %eax,%r13d
  709         roll    $1,%ebp
  710         andl    %edi,%ebx
  711         addl    %ecx,%r13d
  712         roll    $30,%edi
  713         addl    %ebx,%r13d
  714         xorl    60(%rsp),%r14d
  715         movl    %r11d,%eax
  716         movl    %ebp,56(%rsp)
  717         movl    %r11d,%ebx
  718         xorl    4(%rsp),%r14d
  719         andl    %edi,%eax
  720         movl    %r13d,%ecx
  721         xorl    28(%rsp),%r14d
  722         leal    -1894007588(%rbp,%r12,1),%r12d
  723         xorl    %edi,%ebx
  724         roll    $5,%ecx
  725         addl    %eax,%r12d
  726         roll    $1,%r14d
  727         andl    %esi,%ebx
  728         addl    %ecx,%r12d
  729         roll    $30,%esi
  730         addl    %ebx,%r12d
  731         xorl    0(%rsp),%edx
  732         movl    %edi,%eax
  733         movl    %r14d,60(%rsp)
  734         movl    %edi,%ebx
  735         xorl    8(%rsp),%edx
  736         andl    %esi,%eax
  737         movl    %r12d,%ecx
  738         xorl    32(%rsp),%edx
  739         leal    -1894007588(%r14,%r11,1),%r11d
  740         xorl    %esi,%ebx
  741         roll    $5,%ecx
  742         addl    %eax,%r11d
  743         roll    $1,%edx
  744         andl    %r13d,%ebx
  745         addl    %ecx,%r11d
  746         roll    $30,%r13d
  747         addl    %ebx,%r11d
  748         xorl    4(%rsp),%ebp
  749         movl    %esi,%eax
  750         movl    %edx,0(%rsp)
  751         movl    %esi,%ebx
  752         xorl    12(%rsp),%ebp
  753         andl    %r13d,%eax
  754         movl    %r11d,%ecx
  755         xorl    36(%rsp),%ebp
  756         leal    -1894007588(%rdx,%rdi,1),%edi
  757         xorl    %r13d,%ebx
  758         roll    $5,%ecx
  759         addl    %eax,%edi
  760         roll    $1,%ebp
  761         andl    %r12d,%ebx
  762         addl    %ecx,%edi
  763         roll    $30,%r12d
  764         addl    %ebx,%edi
  765         xorl    8(%rsp),%r14d
  766         movl    %r13d,%eax
  767         movl    %ebp,4(%rsp)
  768         movl    %r13d,%ebx
  769         xorl    16(%rsp),%r14d
  770         andl    %r12d,%eax
  771         movl    %edi,%ecx
  772         xorl    40(%rsp),%r14d
  773         leal    -1894007588(%rbp,%rsi,1),%esi
  774         xorl    %r12d,%ebx
  775         roll    $5,%ecx
  776         addl    %eax,%esi
  777         roll    $1,%r14d
  778         andl    %r11d,%ebx
  779         addl    %ecx,%esi
  780         roll    $30,%r11d
  781         addl    %ebx,%esi
  782         xorl    12(%rsp),%edx
  783         movl    %r12d,%eax
  784         movl    %r14d,8(%rsp)
  785         movl    %r12d,%ebx
  786         xorl    20(%rsp),%edx
  787         andl    %r11d,%eax
  788         movl    %esi,%ecx
  789         xorl    44(%rsp),%edx
  790         leal    -1894007588(%r14,%r13,1),%r13d
  791         xorl    %r11d,%ebx
  792         roll    $5,%ecx
  793         addl    %eax,%r13d
  794         roll    $1,%edx
  795         andl    %edi,%ebx
  796         addl    %ecx,%r13d
  797         roll    $30,%edi
  798         addl    %ebx,%r13d
  799         xorl    16(%rsp),%ebp
  800         movl    %r11d,%eax
  801         movl    %edx,12(%rsp)
  802         movl    %r11d,%ebx
  803         xorl    24(%rsp),%ebp
  804         andl    %edi,%eax
  805         movl    %r13d,%ecx
  806         xorl    48(%rsp),%ebp
  807         leal    -1894007588(%rdx,%r12,1),%r12d
  808         xorl    %edi,%ebx
  809         roll    $5,%ecx
  810         addl    %eax,%r12d
  811         roll    $1,%ebp
  812         andl    %esi,%ebx
  813         addl    %ecx,%r12d
  814         roll    $30,%esi
  815         addl    %ebx,%r12d
  816         xorl    20(%rsp),%r14d
  817         movl    %edi,%eax
  818         movl    %ebp,16(%rsp)
  819         movl    %edi,%ebx
  820         xorl    28(%rsp),%r14d
  821         andl    %esi,%eax
  822         movl    %r12d,%ecx
  823         xorl    52(%rsp),%r14d
  824         leal    -1894007588(%rbp,%r11,1),%r11d
  825         xorl    %esi,%ebx
  826         roll    $5,%ecx
  827         addl    %eax,%r11d
  828         roll    $1,%r14d
  829         andl    %r13d,%ebx
  830         addl    %ecx,%r11d
  831         roll    $30,%r13d
  832         addl    %ebx,%r11d
  833         xorl    24(%rsp),%edx
  834         movl    %esi,%eax
  835         movl    %r14d,20(%rsp)
  836         movl    %esi,%ebx
  837         xorl    32(%rsp),%edx
  838         andl    %r13d,%eax
  839         movl    %r11d,%ecx
  840         xorl    56(%rsp),%edx
  841         leal    -1894007588(%r14,%rdi,1),%edi
  842         xorl    %r13d,%ebx
  843         roll    $5,%ecx
  844         addl    %eax,%edi
  845         roll    $1,%edx
  846         andl    %r12d,%ebx
  847         addl    %ecx,%edi
  848         roll    $30,%r12d
  849         addl    %ebx,%edi
  850         xorl    28(%rsp),%ebp
  851         movl    %r13d,%eax
  852         movl    %edx,24(%rsp)
  853         movl    %r13d,%ebx
  854         xorl    36(%rsp),%ebp
  855         andl    %r12d,%eax
  856         movl    %edi,%ecx
  857         xorl    60(%rsp),%ebp
  858         leal    -1894007588(%rdx,%rsi,1),%esi
  859         xorl    %r12d,%ebx
  860         roll    $5,%ecx
  861         addl    %eax,%esi
  862         roll    $1,%ebp
  863         andl    %r11d,%ebx
  864         addl    %ecx,%esi
  865         roll    $30,%r11d
  866         addl    %ebx,%esi
  867         xorl    32(%rsp),%r14d
  868         movl    %r12d,%eax
  869         movl    %ebp,28(%rsp)
  870         movl    %r12d,%ebx
  871         xorl    40(%rsp),%r14d
  872         andl    %r11d,%eax
  873         movl    %esi,%ecx
  874         xorl    0(%rsp),%r14d
  875         leal    -1894007588(%rbp,%r13,1),%r13d
  876         xorl    %r11d,%ebx
  877         roll    $5,%ecx
  878         addl    %eax,%r13d
  879         roll    $1,%r14d
  880         andl    %edi,%ebx
  881         addl    %ecx,%r13d
  882         roll    $30,%edi
  883         addl    %ebx,%r13d
  884         xorl    36(%rsp),%edx
  885         movl    %r11d,%eax
  886         movl    %r14d,32(%rsp)
  887         movl    %r11d,%ebx
  888         xorl    44(%rsp),%edx
  889         andl    %edi,%eax
  890         movl    %r13d,%ecx
  891         xorl    4(%rsp),%edx
  892         leal    -1894007588(%r14,%r12,1),%r12d
  893         xorl    %edi,%ebx
  894         roll    $5,%ecx
  895         addl    %eax,%r12d
  896         roll    $1,%edx
  897         andl    %esi,%ebx
  898         addl    %ecx,%r12d
  899         roll    $30,%esi
  900         addl    %ebx,%r12d
  901         xorl    40(%rsp),%ebp
  902         movl    %edi,%eax
  903         movl    %edx,36(%rsp)
  904         movl    %edi,%ebx
  905         xorl    48(%rsp),%ebp
  906         andl    %esi,%eax
  907         movl    %r12d,%ecx
  908         xorl    8(%rsp),%ebp
  909         leal    -1894007588(%rdx,%r11,1),%r11d
  910         xorl    %esi,%ebx
  911         roll    $5,%ecx
  912         addl    %eax,%r11d
  913         roll    $1,%ebp
  914         andl    %r13d,%ebx
  915         addl    %ecx,%r11d
  916         roll    $30,%r13d
  917         addl    %ebx,%r11d
  918         xorl    44(%rsp),%r14d
  919         movl    %esi,%eax
  920         movl    %ebp,40(%rsp)
  921         movl    %esi,%ebx
  922         xorl    52(%rsp),%r14d
  923         andl    %r13d,%eax
  924         movl    %r11d,%ecx
  925         xorl    12(%rsp),%r14d
  926         leal    -1894007588(%rbp,%rdi,1),%edi
  927         xorl    %r13d,%ebx
  928         roll    $5,%ecx
  929         addl    %eax,%edi
  930         roll    $1,%r14d
  931         andl    %r12d,%ebx
  932         addl    %ecx,%edi
  933         roll    $30,%r12d
  934         addl    %ebx,%edi
  935         xorl    48(%rsp),%edx
  936         movl    %r13d,%eax
  937         movl    %r14d,44(%rsp)
  938         movl    %r13d,%ebx
  939         xorl    56(%rsp),%edx
  940         andl    %r12d,%eax
  941         movl    %edi,%ecx
  942         xorl    16(%rsp),%edx
  943         leal    -1894007588(%r14,%rsi,1),%esi
  944         xorl    %r12d,%ebx
  945         roll    $5,%ecx
  946         addl    %eax,%esi
  947         roll    $1,%edx
  948         andl    %r11d,%ebx
  949         addl    %ecx,%esi
  950         roll    $30,%r11d
  951         addl    %ebx,%esi
  952         xorl    52(%rsp),%ebp
  953         movl    %edi,%eax
  954         movl    %edx,48(%rsp)
  955         movl    %esi,%ecx
  956         xorl    60(%rsp),%ebp
  957         xorl    %r12d,%eax
  958         roll    $5,%ecx
  959         xorl    20(%rsp),%ebp
  960         leal    -899497514(%rdx,%r13,1),%r13d
  961         xorl    %r11d,%eax
  962         addl    %ecx,%r13d
  963         roll    $30,%edi
  964         addl    %eax,%r13d
  965         roll    $1,%ebp
  966         xorl    56(%rsp),%r14d
  967         movl    %esi,%eax
  968         movl    %ebp,52(%rsp)
  969         movl    %r13d,%ecx
  970         xorl    0(%rsp),%r14d
  971         xorl    %r11d,%eax
  972         roll    $5,%ecx
  973         xorl    24(%rsp),%r14d
  974         leal    -899497514(%rbp,%r12,1),%r12d
  975         xorl    %edi,%eax
  976         addl    %ecx,%r12d
  977         roll    $30,%esi
  978         addl    %eax,%r12d
  979         roll    $1,%r14d
  980         xorl    60(%rsp),%edx
  981         movl    %r13d,%eax
  982         movl    %r14d,56(%rsp)
  983         movl    %r12d,%ecx
  984         xorl    4(%rsp),%edx
  985         xorl    %edi,%eax
  986         roll    $5,%ecx
  987         xorl    28(%rsp),%edx
  988         leal    -899497514(%r14,%r11,1),%r11d
  989         xorl    %esi,%eax
  990         addl    %ecx,%r11d
  991         roll    $30,%r13d
  992         addl    %eax,%r11d
  993         roll    $1,%edx
  994         xorl    0(%rsp),%ebp
  995         movl    %r12d,%eax
  996         movl    %edx,60(%rsp)
  997         movl    %r11d,%ecx
  998         xorl    8(%rsp),%ebp
  999         xorl    %esi,%eax
 1000         roll    $5,%ecx
 1001         xorl    32(%rsp),%ebp
 1002         leal    -899497514(%rdx,%rdi,1),%edi
 1003         xorl    %r13d,%eax
 1004         addl    %ecx,%edi
 1005         roll    $30,%r12d
 1006         addl    %eax,%edi
 1007         roll    $1,%ebp
 1008         xorl    4(%rsp),%r14d
 1009         movl    %r11d,%eax
 1010         movl    %ebp,0(%rsp)
 1011         movl    %edi,%ecx
 1012         xorl    12(%rsp),%r14d
 1013         xorl    %r13d,%eax
 1014         roll    $5,%ecx
 1015         xorl    36(%rsp),%r14d
 1016         leal    -899497514(%rbp,%rsi,1),%esi
 1017         xorl    %r12d,%eax
 1018         addl    %ecx,%esi
 1019         roll    $30,%r11d
 1020         addl    %eax,%esi
 1021         roll    $1,%r14d
 1022         xorl    8(%rsp),%edx
 1023         movl    %edi,%eax
 1024         movl    %r14d,4(%rsp)
 1025         movl    %esi,%ecx
 1026         xorl    16(%rsp),%edx
 1027         xorl    %r12d,%eax
 1028         roll    $5,%ecx
 1029         xorl    40(%rsp),%edx
 1030         leal    -899497514(%r14,%r13,1),%r13d
 1031         xorl    %r11d,%eax
 1032         addl    %ecx,%r13d
 1033         roll    $30,%edi
 1034         addl    %eax,%r13d
 1035         roll    $1,%edx
 1036         xorl    12(%rsp),%ebp
 1037         movl    %esi,%eax
 1038         movl    %edx,8(%rsp)
 1039         movl    %r13d,%ecx
 1040         xorl    20(%rsp),%ebp
 1041         xorl    %r11d,%eax
 1042         roll    $5,%ecx
 1043         xorl    44(%rsp),%ebp
 1044         leal    -899497514(%rdx,%r12,1),%r12d
 1045         xorl    %edi,%eax
 1046         addl    %ecx,%r12d
 1047         roll    $30,%esi
 1048         addl    %eax,%r12d
 1049         roll    $1,%ebp
 1050         xorl    16(%rsp),%r14d
 1051         movl    %r13d,%eax
 1052         movl    %ebp,12(%rsp)
 1053         movl    %r12d,%ecx
 1054         xorl    24(%rsp),%r14d
 1055         xorl    %edi,%eax
 1056         roll    $5,%ecx
 1057         xorl    48(%rsp),%r14d
 1058         leal    -899497514(%rbp,%r11,1),%r11d
 1059         xorl    %esi,%eax
 1060         addl    %ecx,%r11d
 1061         roll    $30,%r13d
 1062         addl    %eax,%r11d
 1063         roll    $1,%r14d
 1064         xorl    20(%rsp),%edx
 1065         movl    %r12d,%eax
 1066         movl    %r14d,16(%rsp)
 1067         movl    %r11d,%ecx
 1068         xorl    28(%rsp),%edx
 1069         xorl    %esi,%eax
 1070         roll    $5,%ecx
 1071         xorl    52(%rsp),%edx
 1072         leal    -899497514(%r14,%rdi,1),%edi
 1073         xorl    %r13d,%eax
 1074         addl    %ecx,%edi
 1075         roll    $30,%r12d
 1076         addl    %eax,%edi
 1077         roll    $1,%edx
 1078         xorl    24(%rsp),%ebp
 1079         movl    %r11d,%eax
 1080         movl    %edx,20(%rsp)
 1081         movl    %edi,%ecx
 1082         xorl    32(%rsp),%ebp
 1083         xorl    %r13d,%eax
 1084         roll    $5,%ecx
 1085         xorl    56(%rsp),%ebp
 1086         leal    -899497514(%rdx,%rsi,1),%esi
 1087         xorl    %r12d,%eax
 1088         addl    %ecx,%esi
 1089         roll    $30,%r11d
 1090         addl    %eax,%esi
 1091         roll    $1,%ebp
 1092         xorl    28(%rsp),%r14d
 1093         movl    %edi,%eax
 1094         movl    %ebp,24(%rsp)
 1095         movl    %esi,%ecx
 1096         xorl    36(%rsp),%r14d
 1097         xorl    %r12d,%eax
 1098         roll    $5,%ecx
 1099         xorl    60(%rsp),%r14d
 1100         leal    -899497514(%rbp,%r13,1),%r13d
 1101         xorl    %r11d,%eax
 1102         addl    %ecx,%r13d
 1103         roll    $30,%edi
 1104         addl    %eax,%r13d
 1105         roll    $1,%r14d
 1106         xorl    32(%rsp),%edx
 1107         movl    %esi,%eax
 1108         movl    %r14d,28(%rsp)
 1109         movl    %r13d,%ecx
 1110         xorl    40(%rsp),%edx
 1111         xorl    %r11d,%eax
 1112         roll    $5,%ecx
 1113         xorl    0(%rsp),%edx
 1114         leal    -899497514(%r14,%r12,1),%r12d
 1115         xorl    %edi,%eax
 1116         addl    %ecx,%r12d
 1117         roll    $30,%esi
 1118         addl    %eax,%r12d
 1119         roll    $1,%edx
 1120         xorl    36(%rsp),%ebp
 1121         movl    %r13d,%eax
 1122 
 1123         movl    %r12d,%ecx
 1124         xorl    44(%rsp),%ebp
 1125         xorl    %edi,%eax
 1126         roll    $5,%ecx
 1127         xorl    4(%rsp),%ebp
 1128         leal    -899497514(%rdx,%r11,1),%r11d
 1129         xorl    %esi,%eax
 1130         addl    %ecx,%r11d
 1131         roll    $30,%r13d
 1132         addl    %eax,%r11d
 1133         roll    $1,%ebp
 1134         xorl    40(%rsp),%r14d
 1135         movl    %r12d,%eax
 1136 
 1137         movl    %r11d,%ecx
 1138         xorl    48(%rsp),%r14d
 1139         xorl    %esi,%eax
 1140         roll    $5,%ecx
 1141         xorl    8(%rsp),%r14d
 1142         leal    -899497514(%rbp,%rdi,1),%edi
 1143         xorl    %r13d,%eax
 1144         addl    %ecx,%edi
 1145         roll    $30,%r12d
 1146         addl    %eax,%edi
 1147         roll    $1,%r14d
 1148         xorl    44(%rsp),%edx
 1149         movl    %r11d,%eax
 1150 
 1151         movl    %edi,%ecx
 1152         xorl    52(%rsp),%edx
 1153         xorl    %r13d,%eax
 1154         roll    $5,%ecx
 1155         xorl    12(%rsp),%edx
 1156         leal    -899497514(%r14,%rsi,1),%esi
 1157         xorl    %r12d,%eax
 1158         addl    %ecx,%esi
 1159         roll    $30,%r11d
 1160         addl    %eax,%esi
 1161         roll    $1,%edx
 1162         xorl    48(%rsp),%ebp
 1163         movl    %edi,%eax
 1164 
 1165         movl    %esi,%ecx
 1166         xorl    56(%rsp),%ebp
 1167         xorl    %r12d,%eax
 1168         roll    $5,%ecx
 1169         xorl    16(%rsp),%ebp
 1170         leal    -899497514(%rdx,%r13,1),%r13d
 1171         xorl    %r11d,%eax
 1172         addl    %ecx,%r13d
 1173         roll    $30,%edi
 1174         addl    %eax,%r13d
 1175         roll    $1,%ebp
 1176         xorl    52(%rsp),%r14d
 1177         movl    %esi,%eax
 1178 
 1179         movl    %r13d,%ecx
 1180         xorl    60(%rsp),%r14d
 1181         xorl    %r11d,%eax
 1182         roll    $5,%ecx
 1183         xorl    20(%rsp),%r14d
 1184         leal    -899497514(%rbp,%r12,1),%r12d
 1185         xorl    %edi,%eax
 1186         addl    %ecx,%r12d
 1187         roll    $30,%esi
 1188         addl    %eax,%r12d
 1189         roll    $1,%r14d
 1190         xorl    56(%rsp),%edx
 1191         movl    %r13d,%eax
 1192 
 1193         movl    %r12d,%ecx
 1194         xorl    0(%rsp),%edx
 1195         xorl    %edi,%eax
 1196         roll    $5,%ecx
 1197         xorl    24(%rsp),%edx
 1198         leal    -899497514(%r14,%r11,1),%r11d
 1199         xorl    %esi,%eax
 1200         addl    %ecx,%r11d
 1201         roll    $30,%r13d
 1202         addl    %eax,%r11d
 1203         roll    $1,%edx
 1204         xorl    60(%rsp),%ebp
 1205         movl    %r12d,%eax
 1206 
 1207         movl    %r11d,%ecx
 1208         xorl    4(%rsp),%ebp
 1209         xorl    %esi,%eax
 1210         roll    $5,%ecx
 1211         xorl    28(%rsp),%ebp
 1212         leal    -899497514(%rdx,%rdi,1),%edi
 1213         xorl    %r13d,%eax
 1214         addl    %ecx,%edi
 1215         roll    $30,%r12d
 1216         addl    %eax,%edi
 1217         roll    $1,%ebp
 1218         movl    %r11d,%eax
 1219         movl    %edi,%ecx
 1220         xorl    %r13d,%eax
 1221         leal    -899497514(%rbp,%rsi,1),%esi
 1222         roll    $5,%ecx
 1223         xorl    %r12d,%eax
 1224         addl    %ecx,%esi
 1225         roll    $30,%r11d
 1226         addl    %eax,%esi
 1227         addl    0(%r8),%esi
 1228         addl    4(%r8),%edi
 1229         addl    8(%r8),%r11d
 1230         addl    12(%r8),%r12d
 1231         addl    16(%r8),%r13d
 1232         movl    %esi,0(%r8)
 1233         movl    %edi,4(%r8)
 1234         movl    %r11d,8(%r8)
 1235         movl    %r12d,12(%r8)
 1236         movl    %r13d,16(%r8)
 1237 
 1238         subq    $1,%r10
 1239         leaq    64(%r9),%r9
 1240         jnz     .Lloop
 1241 
 1242         movq    64(%rsp),%rsi
 1243 .cfi_def_cfa    %rsi,8
 1244         movq    -40(%rsi),%r14
 1245 .cfi_restore    %r14
 1246         movq    -32(%rsi),%r13
 1247 .cfi_restore    %r13
 1248         movq    -24(%rsi),%r12
 1249 .cfi_restore    %r12
 1250         movq    -16(%rsi),%rbp
 1251 .cfi_restore    %rbp
 1252         movq    -8(%rsi),%rbx
 1253 .cfi_restore    %rbx
 1254         leaq    (%rsi),%rsp
 1255 .cfi_def_cfa_register   %rsp
 1256 .Lepilogue:
 1257         .byte   0xf3,0xc3
 1258 .cfi_endproc    
 1259 .size   sha1_block_data_order,.-sha1_block_data_order
 1260 .type   sha1_block_data_order_shaext,@function
 1261 .align  32
 1262 sha1_block_data_order_shaext:
 1263 _shaext_shortcut:
 1264 .cfi_startproc  
 1265         movdqu  (%rdi),%xmm0
 1266         movd    16(%rdi),%xmm1
 1267         movdqa  K_XX_XX+160(%rip),%xmm3
 1268 
 1269         movdqu  (%rsi),%xmm4
 1270         pshufd  $27,%xmm0,%xmm0
 1271         movdqu  16(%rsi),%xmm5
 1272         pshufd  $27,%xmm1,%xmm1
 1273         movdqu  32(%rsi),%xmm6
 1274 .byte   102,15,56,0,227
 1275         movdqu  48(%rsi),%xmm7
 1276 .byte   102,15,56,0,235
 1277 .byte   102,15,56,0,243
 1278         movdqa  %xmm1,%xmm9
 1279 .byte   102,15,56,0,251
 1280         jmp     .Loop_shaext
 1281 
 1282 .align  16
 1283 .Loop_shaext:
 1284         decq    %rdx
 1285         leaq    64(%rsi),%r8
 1286         paddd   %xmm4,%xmm1
 1287         cmovneq %r8,%rsi
 1288         movdqa  %xmm0,%xmm8
 1289 .byte   15,56,201,229
 1290         movdqa  %xmm0,%xmm2
 1291 .byte   15,58,204,193,0
 1292 .byte   15,56,200,213
 1293         pxor    %xmm6,%xmm4
 1294 .byte   15,56,201,238
 1295 .byte   15,56,202,231
 1296 
 1297         movdqa  %xmm0,%xmm1
 1298 .byte   15,58,204,194,0
 1299 .byte   15,56,200,206
 1300         pxor    %xmm7,%xmm5
 1301 .byte   15,56,202,236
 1302 .byte   15,56,201,247
 1303         movdqa  %xmm0,%xmm2
 1304 .byte   15,58,204,193,0
 1305 .byte   15,56,200,215
 1306         pxor    %xmm4,%xmm6
 1307 .byte   15,56,201,252
 1308 .byte   15,56,202,245
 1309 
 1310         movdqa  %xmm0,%xmm1
 1311 .byte   15,58,204,194,0
 1312 .byte   15,56,200,204
 1313         pxor    %xmm5,%xmm7
 1314 .byte   15,56,202,254
 1315 .byte   15,56,201,229
 1316         movdqa  %xmm0,%xmm2
 1317 .byte   15,58,204,193,0
 1318 .byte   15,56,200,213
 1319         pxor    %xmm6,%xmm4
 1320 .byte   15,56,201,238
 1321 .byte   15,56,202,231
 1322 
 1323         movdqa  %xmm0,%xmm1
 1324 .byte   15,58,204,194,1
 1325 .byte   15,56,200,206
 1326         pxor    %xmm7,%xmm5
 1327 .byte   15,56,202,236
 1328 .byte   15,56,201,247
 1329         movdqa  %xmm0,%xmm2
 1330 .byte   15,58,204,193,1
 1331 .byte   15,56,200,215
 1332         pxor    %xmm4,%xmm6
 1333 .byte   15,56,201,252
 1334 .byte   15,56,202,245
 1335 
 1336         movdqa  %xmm0,%xmm1
 1337 .byte   15,58,204,194,1
 1338 .byte   15,56,200,204
 1339         pxor    %xmm5,%xmm7
 1340 .byte   15,56,202,254
 1341 .byte   15,56,201,229
 1342         movdqa  %xmm0,%xmm2
 1343 .byte   15,58,204,193,1
 1344 .byte   15,56,200,213
 1345         pxor    %xmm6,%xmm4
 1346 .byte   15,56,201,238
 1347 .byte   15,56,202,231
 1348 
 1349         movdqa  %xmm0,%xmm1
 1350 .byte   15,58,204,194,1
 1351 .byte   15,56,200,206
 1352         pxor    %xmm7,%xmm5
 1353 .byte   15,56,202,236
 1354 .byte   15,56,201,247
 1355         movdqa  %xmm0,%xmm2
 1356 .byte   15,58,204,193,2
 1357 .byte   15,56,200,215
 1358         pxor    %xmm4,%xmm6
 1359 .byte   15,56,201,252
 1360 .byte   15,56,202,245
 1361 
 1362         movdqa  %xmm0,%xmm1
 1363 .byte   15,58,204,194,2
 1364 .byte   15,56,200,204
 1365         pxor    %xmm5,%xmm7
 1366 .byte   15,56,202,254
 1367 .byte   15,56,201,229
 1368         movdqa  %xmm0,%xmm2
 1369 .byte   15,58,204,193,2
 1370 .byte   15,56,200,213
 1371         pxor    %xmm6,%xmm4
 1372 .byte   15,56,201,238
 1373 .byte   15,56,202,231
 1374 
 1375         movdqa  %xmm0,%xmm1
 1376 .byte   15,58,204,194,2
 1377 .byte   15,56,200,206
 1378         pxor    %xmm7,%xmm5
 1379 .byte   15,56,202,236
 1380 .byte   15,56,201,247
 1381         movdqa  %xmm0,%xmm2
 1382 .byte   15,58,204,193,2
 1383 .byte   15,56,200,215
 1384         pxor    %xmm4,%xmm6
 1385 .byte   15,56,201,252
 1386 .byte   15,56,202,245
 1387 
 1388         movdqa  %xmm0,%xmm1
 1389 .byte   15,58,204,194,3
 1390 .byte   15,56,200,204
 1391         pxor    %xmm5,%xmm7
 1392 .byte   15,56,202,254
 1393         movdqu  (%rsi),%xmm4
 1394         movdqa  %xmm0,%xmm2
 1395 .byte   15,58,204,193,3
 1396 .byte   15,56,200,213
 1397         movdqu  16(%rsi),%xmm5
 1398 .byte   102,15,56,0,227
 1399 
 1400         movdqa  %xmm0,%xmm1
 1401 .byte   15,58,204,194,3
 1402 .byte   15,56,200,206
 1403         movdqu  32(%rsi),%xmm6
 1404 .byte   102,15,56,0,235
 1405 
 1406         movdqa  %xmm0,%xmm2
 1407 .byte   15,58,204,193,3
 1408 .byte   15,56,200,215
 1409         movdqu  48(%rsi),%xmm7
 1410 .byte   102,15,56,0,243
 1411 
 1412         movdqa  %xmm0,%xmm1
 1413 .byte   15,58,204,194,3
 1414 .byte   65,15,56,200,201
 1415 .byte   102,15,56,0,251
 1416 
 1417         paddd   %xmm8,%xmm0
 1418         movdqa  %xmm1,%xmm9
 1419 
 1420         jnz     .Loop_shaext
 1421 
 1422         pshufd  $27,%xmm0,%xmm0
 1423         pshufd  $27,%xmm1,%xmm1
 1424         movdqu  %xmm0,(%rdi)
 1425         movd    %xmm1,16(%rdi)
 1426         .byte   0xf3,0xc3
 1427 .cfi_endproc    
 1428 .size   sha1_block_data_order_shaext,.-sha1_block_data_order_shaext
 1429 .type   sha1_block_data_order_ssse3,@function
 1430 .align  16
 1431 sha1_block_data_order_ssse3:
 1432 _ssse3_shortcut:
 1433 .cfi_startproc  
 1434         movq    %rsp,%r11
 1435 .cfi_def_cfa_register   %r11
 1436         pushq   %rbx
 1437 .cfi_offset     %rbx,-16
 1438         pushq   %rbp
 1439 .cfi_offset     %rbp,-24
 1440         pushq   %r12
 1441 .cfi_offset     %r12,-32
 1442         pushq   %r13
 1443 .cfi_offset     %r13,-40
 1444         pushq   %r14
 1445 .cfi_offset     %r14,-48
 1446         leaq    -64(%rsp),%rsp
 1447         andq    $-64,%rsp
 1448         movq    %rdi,%r8
 1449         movq    %rsi,%r9
 1450         movq    %rdx,%r10
 1451 
 1452         shlq    $6,%r10
 1453         addq    %r9,%r10
 1454         leaq    K_XX_XX+64(%rip),%r14
 1455 
 1456         movl    0(%r8),%eax
 1457         movl    4(%r8),%ebx
 1458         movl    8(%r8),%ecx
 1459         movl    12(%r8),%edx
 1460         movl    %ebx,%esi
 1461         movl    16(%r8),%ebp
 1462         movl    %ecx,%edi
 1463         xorl    %edx,%edi
 1464         andl    %edi,%esi
 1465 
 1466         movdqa  64(%r14),%xmm6
 1467         movdqa  -64(%r14),%xmm9
 1468         movdqu  0(%r9),%xmm0
 1469         movdqu  16(%r9),%xmm1
 1470         movdqu  32(%r9),%xmm2
 1471         movdqu  48(%r9),%xmm3
 1472 .byte   102,15,56,0,198
 1473 .byte   102,15,56,0,206
 1474 .byte   102,15,56,0,214
 1475         addq    $64,%r9
 1476         paddd   %xmm9,%xmm0
 1477 .byte   102,15,56,0,222
 1478         paddd   %xmm9,%xmm1
 1479         paddd   %xmm9,%xmm2
 1480         movdqa  %xmm0,0(%rsp)
 1481         psubd   %xmm9,%xmm0
 1482         movdqa  %xmm1,16(%rsp)
 1483         psubd   %xmm9,%xmm1
 1484         movdqa  %xmm2,32(%rsp)
 1485         psubd   %xmm9,%xmm2
 1486         jmp     .Loop_ssse3
 1487 .align  16
 1488 .Loop_ssse3:
 1489         rorl    $2,%ebx
 1490         pshufd  $238,%xmm0,%xmm4
 1491         xorl    %edx,%esi
 1492         movdqa  %xmm3,%xmm8
 1493         paddd   %xmm3,%xmm9
 1494         movl    %eax,%edi
 1495         addl    0(%rsp),%ebp
 1496         punpcklqdq      %xmm1,%xmm4
 1497         xorl    %ecx,%ebx
 1498         roll    $5,%eax
 1499         addl    %esi,%ebp
 1500         psrldq  $4,%xmm8
 1501         andl    %ebx,%edi
 1502         xorl    %ecx,%ebx
 1503         pxor    %xmm0,%xmm4
 1504         addl    %eax,%ebp
 1505         rorl    $7,%eax
 1506         pxor    %xmm2,%xmm8
 1507         xorl    %ecx,%edi
 1508         movl    %ebp,%esi
 1509         addl    4(%rsp),%edx
 1510         pxor    %xmm8,%xmm4
 1511         xorl    %ebx,%eax
 1512         roll    $5,%ebp
 1513         movdqa  %xmm9,48(%rsp)
 1514         addl    %edi,%edx
 1515         andl    %eax,%esi
 1516         movdqa  %xmm4,%xmm10
 1517         xorl    %ebx,%eax
 1518         addl    %ebp,%edx
 1519         rorl    $7,%ebp
 1520         movdqa  %xmm4,%xmm8
 1521         xorl    %ebx,%esi
 1522         pslldq  $12,%xmm10
 1523         paddd   %xmm4,%xmm4
 1524         movl    %edx,%edi
 1525         addl    8(%rsp),%ecx
 1526         psrld   $31,%xmm8
 1527         xorl    %eax,%ebp
 1528         roll    $5,%edx
 1529         addl    %esi,%ecx
 1530         movdqa  %xmm10,%xmm9
 1531         andl    %ebp,%edi
 1532         xorl    %eax,%ebp
 1533         psrld   $30,%xmm10
 1534         addl    %edx,%ecx
 1535         rorl    $7,%edx
 1536         por     %xmm8,%xmm4
 1537         xorl    %eax,%edi
 1538         movl    %ecx,%esi
 1539         addl    12(%rsp),%ebx
 1540         pslld   $2,%xmm9
 1541         pxor    %xmm10,%xmm4
 1542         xorl    %ebp,%edx
 1543         movdqa  -64(%r14),%xmm10
 1544         roll    $5,%ecx
 1545         addl    %edi,%ebx
 1546         andl    %edx,%esi
 1547         pxor    %xmm9,%xmm4
 1548         xorl    %ebp,%edx
 1549         addl    %ecx,%ebx
 1550         rorl    $7,%ecx
 1551         pshufd  $238,%xmm1,%xmm5
 1552         xorl    %ebp,%esi
 1553         movdqa  %xmm4,%xmm9
 1554         paddd   %xmm4,%xmm10
 1555         movl    %ebx,%edi
 1556         addl    16(%rsp),%eax
 1557         punpcklqdq      %xmm2,%xmm5
 1558         xorl    %edx,%ecx
 1559         roll    $5,%ebx
 1560         addl    %esi,%eax
 1561         psrldq  $4,%xmm9
 1562         andl    %ecx,%edi
 1563         xorl    %edx,%ecx
 1564         pxor    %xmm1,%xmm5
 1565         addl    %ebx,%eax
 1566         rorl    $7,%ebx
 1567         pxor    %xmm3,%xmm9
 1568         xorl    %edx,%edi
 1569         movl    %eax,%esi
 1570         addl    20(%rsp),%ebp
 1571         pxor    %xmm9,%xmm5
 1572         xorl    %ecx,%ebx
 1573         roll    $5,%eax
 1574         movdqa  %xmm10,0(%rsp)
 1575         addl    %edi,%ebp
 1576         andl    %ebx,%esi
 1577         movdqa  %xmm5,%xmm8
 1578         xorl    %ecx,%ebx
 1579         addl    %eax,%ebp
 1580         rorl    $7,%eax
 1581         movdqa  %xmm5,%xmm9
 1582         xorl    %ecx,%esi
 1583         pslldq  $12,%xmm8
 1584         paddd   %xmm5,%xmm5
 1585         movl    %ebp,%edi
 1586         addl    24(%rsp),%edx
 1587         psrld   $31,%xmm9
 1588         xorl    %ebx,%eax
 1589         roll    $5,%ebp
 1590         addl    %esi,%edx
 1591         movdqa  %xmm8,%xmm10
 1592         andl    %eax,%edi
 1593         xorl    %ebx,%eax
 1594         psrld   $30,%xmm8
 1595         addl    %ebp,%edx
 1596         rorl    $7,%ebp
 1597         por     %xmm9,%xmm5
 1598         xorl    %ebx,%edi
 1599         movl    %edx,%esi
 1600         addl    28(%rsp),%ecx
 1601         pslld   $2,%xmm10
 1602         pxor    %xmm8,%xmm5
 1603         xorl    %eax,%ebp
 1604         movdqa  -32(%r14),%xmm8
 1605         roll    $5,%edx
 1606         addl    %edi,%ecx
 1607         andl    %ebp,%esi
 1608         pxor    %xmm10,%xmm5
 1609         xorl    %eax,%ebp
 1610         addl    %edx,%ecx
 1611         rorl    $7,%edx
 1612         pshufd  $238,%xmm2,%xmm6
 1613         xorl    %eax,%esi
 1614         movdqa  %xmm5,%xmm10
 1615         paddd   %xmm5,%xmm8
 1616         movl    %ecx,%edi
 1617         addl    32(%rsp),%ebx
 1618         punpcklqdq      %xmm3,%xmm6
 1619         xorl    %ebp,%edx
 1620         roll    $5,%ecx
 1621         addl    %esi,%ebx
 1622         psrldq  $4,%xmm10
 1623         andl    %edx,%edi
 1624         xorl    %ebp,%edx
 1625         pxor    %xmm2,%xmm6
 1626         addl    %ecx,%ebx
 1627         rorl    $7,%ecx
 1628         pxor    %xmm4,%xmm10
 1629         xorl    %ebp,%edi
 1630         movl    %ebx,%esi
 1631         addl    36(%rsp),%eax
 1632         pxor    %xmm10,%xmm6
 1633         xorl    %edx,%ecx
 1634         roll    $5,%ebx
 1635         movdqa  %xmm8,16(%rsp)
 1636         addl    %edi,%eax
 1637         andl    %ecx,%esi
 1638         movdqa  %xmm6,%xmm9
 1639         xorl    %edx,%ecx
 1640         addl    %ebx,%eax
 1641         rorl    $7,%ebx
 1642         movdqa  %xmm6,%xmm10
 1643         xorl    %edx,%esi
 1644         pslldq  $12,%xmm9
 1645         paddd   %xmm6,%xmm6
 1646         movl    %eax,%edi
 1647         addl    40(%rsp),%ebp
 1648         psrld   $31,%xmm10
 1649         xorl    %ecx,%ebx
 1650         roll    $5,%eax
 1651         addl    %esi,%ebp
 1652         movdqa  %xmm9,%xmm8
 1653         andl    %ebx,%edi
 1654         xorl    %ecx,%ebx
 1655         psrld   $30,%xmm9
 1656         addl    %eax,%ebp
 1657         rorl    $7,%eax
 1658         por     %xmm10,%xmm6
 1659         xorl    %ecx,%edi
 1660         movl    %ebp,%esi
 1661         addl    44(%rsp),%edx
 1662         pslld   $2,%xmm8
 1663         pxor    %xmm9,%xmm6
 1664         xorl    %ebx,%eax
 1665         movdqa  -32(%r14),%xmm9
 1666         roll    $5,%ebp
 1667         addl    %edi,%edx
 1668         andl    %eax,%esi
 1669         pxor    %xmm8,%xmm6
 1670         xorl    %ebx,%eax
 1671         addl    %ebp,%edx
 1672         rorl    $7,%ebp
 1673         pshufd  $238,%xmm3,%xmm7
 1674         xorl    %ebx,%esi
 1675         movdqa  %xmm6,%xmm8
 1676         paddd   %xmm6,%xmm9
 1677         movl    %edx,%edi
 1678         addl    48(%rsp),%ecx
 1679         punpcklqdq      %xmm4,%xmm7
 1680         xorl    %eax,%ebp
 1681         roll    $5,%edx
 1682         addl    %esi,%ecx
 1683         psrldq  $4,%xmm8
 1684         andl    %ebp,%edi
 1685         xorl    %eax,%ebp
 1686         pxor    %xmm3,%xmm7
 1687         addl    %edx,%ecx
 1688         rorl    $7,%edx
 1689         pxor    %xmm5,%xmm8
 1690         xorl    %eax,%edi
 1691         movl    %ecx,%esi
 1692         addl    52(%rsp),%ebx
 1693         pxor    %xmm8,%xmm7
 1694         xorl    %ebp,%edx
 1695         roll    $5,%ecx
 1696         movdqa  %xmm9,32(%rsp)
 1697         addl    %edi,%ebx
 1698         andl    %edx,%esi
 1699         movdqa  %xmm7,%xmm10
 1700         xorl    %ebp,%edx
 1701         addl    %ecx,%ebx
 1702         rorl    $7,%ecx
 1703         movdqa  %xmm7,%xmm8
 1704         xorl    %ebp,%esi
 1705         pslldq  $12,%xmm10
 1706         paddd   %xmm7,%xmm7
 1707         movl    %ebx,%edi
 1708         addl    56(%rsp),%eax
 1709         psrld   $31,%xmm8
 1710         xorl    %edx,%ecx
 1711         roll    $5,%ebx
 1712         addl    %esi,%eax
 1713         movdqa  %xmm10,%xmm9
 1714         andl    %ecx,%edi
 1715         xorl    %edx,%ecx
 1716         psrld   $30,%xmm10
 1717         addl    %ebx,%eax
 1718         rorl    $7,%ebx
 1719         por     %xmm8,%xmm7
 1720         xorl    %edx,%edi
 1721         movl    %eax,%esi
 1722         addl    60(%rsp),%ebp
 1723         pslld   $2,%xmm9
 1724         pxor    %xmm10,%xmm7
 1725         xorl    %ecx,%ebx
 1726         movdqa  -32(%r14),%xmm10
 1727         roll    $5,%eax
 1728         addl    %edi,%ebp
 1729         andl    %ebx,%esi
 1730         pxor    %xmm9,%xmm7
 1731         pshufd  $238,%xmm6,%xmm9
 1732         xorl    %ecx,%ebx
 1733         addl    %eax,%ebp
 1734         rorl    $7,%eax
 1735         pxor    %xmm4,%xmm0
 1736         xorl    %ecx,%esi
 1737         movl    %ebp,%edi
 1738         addl    0(%rsp),%edx
 1739         punpcklqdq      %xmm7,%xmm9
 1740         xorl    %ebx,%eax
 1741         roll    $5,%ebp
 1742         pxor    %xmm1,%xmm0
 1743         addl    %esi,%edx
 1744         andl    %eax,%edi
 1745         movdqa  %xmm10,%xmm8
 1746         xorl    %ebx,%eax
 1747         paddd   %xmm7,%xmm10
 1748         addl    %ebp,%edx
 1749         pxor    %xmm9,%xmm0
 1750         rorl    $7,%ebp
 1751         xorl    %ebx,%edi
 1752         movl    %edx,%esi
 1753         addl    4(%rsp),%ecx
 1754         movdqa  %xmm0,%xmm9
 1755         xorl    %eax,%ebp
 1756         roll    $5,%edx
 1757         movdqa  %xmm10,48(%rsp)
 1758         addl    %edi,%ecx
 1759         andl    %ebp,%esi
 1760         xorl    %eax,%ebp
 1761         pslld   $2,%xmm0
 1762         addl    %edx,%ecx
 1763         rorl    $7,%edx
 1764         psrld   $30,%xmm9
 1765         xorl    %eax,%esi
 1766         movl    %ecx,%edi
 1767         addl    8(%rsp),%ebx
 1768         por     %xmm9,%xmm0
 1769         xorl    %ebp,%edx
 1770         roll    $5,%ecx
 1771         pshufd  $238,%xmm7,%xmm10
 1772         addl    %esi,%ebx
 1773         andl    %edx,%edi
 1774         xorl    %ebp,%edx
 1775         addl    %ecx,%ebx
 1776         addl    12(%rsp),%eax
 1777         xorl    %ebp,%edi
 1778         movl    %ebx,%esi
 1779         roll    $5,%ebx
 1780         addl    %edi,%eax
 1781         xorl    %edx,%esi
 1782         rorl    $7,%ecx
 1783         addl    %ebx,%eax
 1784         pxor    %xmm5,%xmm1
 1785         addl    16(%rsp),%ebp
 1786         xorl    %ecx,%esi
 1787         punpcklqdq      %xmm0,%xmm10
 1788         movl    %eax,%edi
 1789         roll    $5,%eax
 1790         pxor    %xmm2,%xmm1
 1791         addl    %esi,%ebp
 1792         xorl    %ecx,%edi
 1793         movdqa  %xmm8,%xmm9
 1794         rorl    $7,%ebx
 1795         paddd   %xmm0,%xmm8
 1796         addl    %eax,%ebp
 1797         pxor    %xmm10,%xmm1
 1798         addl    20(%rsp),%edx
 1799         xorl    %ebx,%edi
 1800         movl    %ebp,%esi
 1801         roll    $5,%ebp
 1802         movdqa  %xmm1,%xmm10
 1803         addl    %edi,%edx
 1804         xorl    %ebx,%esi
 1805         movdqa  %xmm8,0(%rsp)
 1806         rorl    $7,%eax
 1807         addl    %ebp,%edx
 1808         addl    24(%rsp),%ecx
 1809         pslld   $2,%xmm1
 1810         xorl    %eax,%esi
 1811         movl    %edx,%edi
 1812         psrld   $30,%xmm10
 1813         roll    $5,%edx
 1814         addl    %esi,%ecx
 1815         xorl    %eax,%edi
 1816         rorl    $7,%ebp
 1817         por     %xmm10,%xmm1
 1818         addl    %edx,%ecx
 1819         addl    28(%rsp),%ebx
 1820         pshufd  $238,%xmm0,%xmm8
 1821         xorl    %ebp,%edi
 1822         movl    %ecx,%esi
 1823         roll    $5,%ecx
 1824         addl    %edi,%ebx
 1825         xorl    %ebp,%esi
 1826         rorl    $7,%edx
 1827         addl    %ecx,%ebx
 1828         pxor    %xmm6,%xmm2
 1829         addl    32(%rsp),%eax
 1830         xorl    %edx,%esi
 1831         punpcklqdq      %xmm1,%xmm8
 1832         movl    %ebx,%edi
 1833         roll    $5,%ebx
 1834         pxor    %xmm3,%xmm2
 1835         addl    %esi,%eax
 1836         xorl    %edx,%edi
 1837         movdqa  0(%r14),%xmm10
 1838         rorl    $7,%ecx
 1839         paddd   %xmm1,%xmm9
 1840         addl    %ebx,%eax
 1841         pxor    %xmm8,%xmm2
 1842         addl    36(%rsp),%ebp
 1843         xorl    %ecx,%edi
 1844         movl    %eax,%esi
 1845         roll    $5,%eax
 1846         movdqa  %xmm2,%xmm8
 1847         addl    %edi,%ebp
 1848         xorl    %ecx,%esi
 1849         movdqa  %xmm9,16(%rsp)
 1850         rorl    $7,%ebx
 1851         addl    %eax,%ebp
 1852         addl    40(%rsp),%edx
 1853         pslld   $2,%xmm2
 1854         xorl    %ebx,%esi
 1855         movl    %ebp,%edi
 1856         psrld   $30,%xmm8
 1857         roll    $5,%ebp
 1858         addl    %esi,%edx
 1859         xorl    %ebx,%edi
 1860         rorl    $7,%eax
 1861         por     %xmm8,%xmm2
 1862         addl    %ebp,%edx
 1863         addl    44(%rsp),%ecx
 1864         pshufd  $238,%xmm1,%xmm9
 1865         xorl    %eax,%edi
 1866         movl    %edx,%esi
 1867         roll    $5,%edx
 1868         addl    %edi,%ecx
 1869         xorl    %eax,%esi
 1870         rorl    $7,%ebp
 1871         addl    %edx,%ecx
 1872         pxor    %xmm7,%xmm3
 1873         addl    48(%rsp),%ebx
 1874         xorl    %ebp,%esi
 1875         punpcklqdq      %xmm2,%xmm9
 1876         movl    %ecx,%edi
 1877         roll    $5,%ecx
 1878         pxor    %xmm4,%xmm3
 1879         addl    %esi,%ebx
 1880         xorl    %ebp,%edi
 1881         movdqa  %xmm10,%xmm8
 1882         rorl    $7,%edx
 1883         paddd   %xmm2,%xmm10
 1884         addl    %ecx,%ebx
 1885         pxor    %xmm9,%xmm3
 1886         addl    52(%rsp),%eax
 1887         xorl    %edx,%edi
 1888         movl    %ebx,%esi
 1889         roll    $5,%ebx
 1890         movdqa  %xmm3,%xmm9
 1891         addl    %edi,%eax
 1892         xorl    %edx,%esi
 1893         movdqa  %xmm10,32(%rsp)
 1894         rorl    $7,%ecx
 1895         addl    %ebx,%eax
 1896         addl    56(%rsp),%ebp
 1897         pslld   $2,%xmm3
 1898         xorl    %ecx,%esi
 1899         movl    %eax,%edi
 1900         psrld   $30,%xmm9
 1901         roll    $5,%eax
 1902         addl    %esi,%ebp
 1903         xorl    %ecx,%edi
 1904         rorl    $7,%ebx
 1905         por     %xmm9,%xmm3
 1906         addl    %eax,%ebp
 1907         addl    60(%rsp),%edx
 1908         pshufd  $238,%xmm2,%xmm10
 1909         xorl    %ebx,%edi
 1910         movl    %ebp,%esi
 1911         roll    $5,%ebp
 1912         addl    %edi,%edx
 1913         xorl    %ebx,%esi
 1914         rorl    $7,%eax
 1915         addl    %ebp,%edx
 1916         pxor    %xmm0,%xmm4
 1917         addl    0(%rsp),%ecx
 1918         xorl    %eax,%esi
 1919         punpcklqdq      %xmm3,%xmm10
 1920         movl    %edx,%edi
 1921         roll    $5,%edx
 1922         pxor    %xmm5,%xmm4
 1923         addl    %esi,%ecx
 1924         xorl    %eax,%edi
 1925         movdqa  %xmm8,%xmm9
 1926         rorl    $7,%ebp
 1927         paddd   %xmm3,%xmm8
 1928         addl    %edx,%ecx
 1929         pxor    %xmm10,%xmm4
 1930         addl    4(%rsp),%ebx
 1931         xorl    %ebp,%edi
 1932         movl    %ecx,%esi
 1933         roll    $5,%ecx
 1934         movdqa  %xmm4,%xmm10
 1935         addl    %edi,%ebx
 1936         xorl    %ebp,%esi
 1937         movdqa  %xmm8,48(%rsp)
 1938         rorl    $7,%edx
 1939         addl    %ecx,%ebx
 1940         addl    8(%rsp),%eax
 1941         pslld   $2,%xmm4
 1942         xorl    %edx,%esi
 1943         movl    %ebx,%edi
 1944         psrld   $30,%xmm10
 1945         roll    $5,%ebx
 1946         addl    %esi,%eax
 1947         xorl    %edx,%edi
 1948         rorl    $7,%ecx
 1949         por     %xmm10,%xmm4
 1950         addl    %ebx,%eax
 1951         addl    12(%rsp),%ebp
 1952         pshufd  $238,%xmm3,%xmm8
 1953         xorl    %ecx,%edi
 1954         movl    %eax,%esi
 1955         roll    $5,%eax
 1956         addl    %edi,%ebp
 1957         xorl    %ecx,%esi
 1958         rorl    $7,%ebx
 1959         addl    %eax,%ebp
 1960         pxor    %xmm1,%xmm5
 1961         addl    16(%rsp),%edx
 1962         xorl    %ebx,%esi
 1963         punpcklqdq      %xmm4,%xmm8
 1964         movl    %ebp,%edi
 1965         roll    $5,%ebp
 1966         pxor    %xmm6,%xmm5
 1967         addl    %esi,%edx
 1968         xorl    %ebx,%edi
 1969         movdqa  %xmm9,%xmm10
 1970         rorl    $7,%eax
 1971         paddd   %xmm4,%xmm9
 1972         addl    %ebp,%edx
 1973         pxor    %xmm8,%xmm5
 1974         addl    20(%rsp),%ecx
 1975         xorl    %eax,%edi
 1976         movl    %edx,%esi
 1977         roll    $5,%edx
 1978         movdqa  %xmm5,%xmm8
 1979         addl    %edi,%ecx
 1980         xorl    %eax,%esi
 1981         movdqa  %xmm9,0(%rsp)
 1982         rorl    $7,%ebp
 1983         addl    %edx,%ecx
 1984         addl    24(%rsp),%ebx
 1985         pslld   $2,%xmm5
 1986         xorl    %ebp,%esi
 1987         movl    %ecx,%edi
 1988         psrld   $30,%xmm8
 1989         roll    $5,%ecx
 1990         addl    %esi,%ebx
 1991         xorl    %ebp,%edi
 1992         rorl    $7,%edx
 1993         por     %xmm8,%xmm5
 1994         addl    %ecx,%ebx
 1995         addl    28(%rsp),%eax
 1996         pshufd  $238,%xmm4,%xmm9
 1997         rorl    $7,%ecx
 1998         movl    %ebx,%esi
 1999         xorl    %edx,%edi
 2000         roll    $5,%ebx
 2001         addl    %edi,%eax
 2002         xorl    %ecx,%esi
 2003         xorl    %edx,%ecx
 2004         addl    %ebx,%eax
 2005         pxor    %xmm2,%xmm6
 2006         addl    32(%rsp),%ebp
 2007         andl    %ecx,%esi
 2008         xorl    %edx,%ecx
 2009         rorl    $7,%ebx
 2010         punpcklqdq      %xmm5,%xmm9
 2011         movl    %eax,%edi
 2012         xorl    %ecx,%esi
 2013         pxor    %xmm7,%xmm6
 2014         roll    $5,%eax
 2015         addl    %esi,%ebp
 2016         movdqa  %xmm10,%xmm8
 2017         xorl    %ebx,%edi
 2018         paddd   %xmm5,%xmm10
 2019         xorl    %ecx,%ebx
 2020         pxor    %xmm9,%xmm6
 2021         addl    %eax,%ebp
 2022         addl    36(%rsp),%edx
 2023         andl    %ebx,%edi
 2024         xorl    %ecx,%ebx
 2025         rorl    $7,%eax
 2026         movdqa  %xmm6,%xmm9
 2027         movl    %ebp,%esi
 2028         xorl    %ebx,%edi
 2029         movdqa  %xmm10,16(%rsp)
 2030         roll    $5,%ebp
 2031         addl    %edi,%edx
 2032         xorl    %eax,%esi
 2033         pslld   $2,%xmm6
 2034         xorl    %ebx,%eax
 2035         addl    %ebp,%edx
 2036         psrld   $30,%xmm9
 2037         addl    40(%rsp),%ecx
 2038         andl    %eax,%esi
 2039         xorl    %ebx,%eax
 2040         por     %xmm9,%xmm6
 2041         rorl    $7,%ebp
 2042         movl    %edx,%edi
 2043         xorl    %eax,%esi
 2044         roll    $5,%edx
 2045         pshufd  $238,%xmm5,%xmm10
 2046         addl    %esi,%ecx
 2047         xorl    %ebp,%edi
 2048         xorl    %eax,%ebp
 2049         addl    %edx,%ecx
 2050         addl    44(%rsp),%ebx
 2051         andl    %ebp,%edi
 2052         xorl    %eax,%ebp
 2053         rorl    $7,%edx
 2054         movl    %ecx,%esi
 2055         xorl    %ebp,%edi
 2056         roll    $5,%ecx
 2057         addl    %edi,%ebx
 2058         xorl    %edx,%esi
 2059         xorl    %ebp,%edx
 2060         addl    %ecx,%ebx
 2061         pxor    %xmm3,%xmm7
 2062         addl    48(%rsp),%eax
 2063         andl    %edx,%esi
 2064         xorl    %ebp,%edx
 2065         rorl    $7,%ecx
 2066         punpcklqdq      %xmm6,%xmm10
 2067         movl    %ebx,%edi
 2068         xorl    %edx,%esi
 2069         pxor    %xmm0,%xmm7
 2070         roll    $5,%ebx
 2071         addl    %esi,%eax
 2072         movdqa  32(%r14),%xmm9
 2073         xorl    %ecx,%edi
 2074         paddd   %xmm6,%xmm8
 2075         xorl    %edx,%ecx
 2076         pxor    %xmm10,%xmm7
 2077         addl    %ebx,%eax
 2078         addl    52(%rsp),%ebp
 2079         andl    %ecx,%edi
 2080         xorl    %edx,%ecx
 2081         rorl    $7,%ebx
 2082         movdqa  %xmm7,%xmm10
 2083         movl    %eax,%esi
 2084         xorl    %ecx,%edi
 2085         movdqa  %xmm8,32(%rsp)
 2086         roll    $5,%eax
 2087         addl    %edi,%ebp
 2088         xorl    %ebx,%esi
 2089         pslld   $2,%xmm7
 2090         xorl    %ecx,%ebx
 2091         addl    %eax,%ebp
 2092         psrld   $30,%xmm10
 2093         addl    56(%rsp),%edx
 2094         andl    %ebx,%esi
 2095         xorl    %ecx,%ebx
 2096         por     %xmm10,%xmm7
 2097         rorl    $7,%eax
 2098         movl    %ebp,%edi
 2099         xorl    %ebx,%esi
 2100         roll    $5,%ebp
 2101         pshufd  $238,%xmm6,%xmm8
 2102         addl    %esi,%edx
 2103         xorl    %eax,%edi
 2104         xorl    %ebx,%eax
 2105         addl    %ebp,%edx
 2106         addl    60(%rsp),%ecx
 2107         andl    %eax,%edi
 2108         xorl    %ebx,%eax
 2109         rorl    $7,%ebp
 2110         movl    %edx,%esi
 2111         xorl    %eax,%edi
 2112         roll    $5,%edx
 2113         addl    %edi,%ecx
 2114         xorl    %ebp,%esi
 2115         xorl    %eax,%ebp
 2116         addl    %edx,%ecx
 2117         pxor    %xmm4,%xmm0
 2118         addl    0(%rsp),%ebx
 2119         andl    %ebp,%esi
 2120         xorl    %eax,%ebp
 2121         rorl    $7,%edx
 2122         punpcklqdq      %xmm7,%xmm8
 2123         movl    %ecx,%edi
 2124         xorl    %ebp,%esi
 2125         pxor    %xmm1,%xmm0
 2126         roll    $5,%ecx
 2127         addl    %esi,%ebx
 2128         movdqa  %xmm9,%xmm10
 2129         xorl    %edx,%edi
 2130         paddd   %xmm7,%xmm9
 2131         xorl    %ebp,%edx
 2132         pxor    %xmm8,%xmm0
 2133         addl    %ecx,%ebx
 2134         addl    4(%rsp),%eax
 2135         andl    %edx,%edi
 2136         xorl    %ebp,%edx
 2137         rorl    $7,%ecx
 2138         movdqa  %xmm0,%xmm8
 2139         movl    %ebx,%esi
 2140         xorl    %edx,%edi
 2141         movdqa  %xmm9,48(%rsp)
 2142         roll    $5,%ebx
 2143         addl    %edi,%eax
 2144         xorl    %ecx,%esi
 2145         pslld   $2,%xmm0
 2146         xorl    %edx,%ecx
 2147         addl    %ebx,%eax
 2148         psrld   $30,%xmm8
 2149         addl    8(%rsp),%ebp
 2150         andl    %ecx,%esi
 2151         xorl    %edx,%ecx
 2152         por     %xmm8,%xmm0
 2153         rorl    $7,%ebx
 2154         movl    %eax,%edi
 2155         xorl    %ecx,%esi
 2156         roll    $5,%eax
 2157         pshufd  $238,%xmm7,%xmm9
 2158         addl    %esi,%ebp
 2159         xorl    %ebx,%edi
 2160         xorl    %ecx,%ebx
 2161         addl    %eax,%ebp
 2162         addl    12(%rsp),%edx
 2163         andl    %ebx,%edi
 2164         xorl    %ecx,%ebx
 2165         rorl    $7,%eax
 2166         movl    %ebp,%esi
 2167         xorl    %ebx,%edi
 2168         roll    $5,%ebp
 2169         addl    %edi,%edx
 2170         xorl    %eax,%esi
 2171         xorl    %ebx,%eax
 2172         addl    %ebp,%edx
 2173         pxor    %xmm5,%xmm1
 2174         addl    16(%rsp),%ecx
 2175         andl    %eax,%esi
 2176         xorl    %ebx,%eax
 2177         rorl    $7,%ebp
 2178         punpcklqdq      %xmm0,%xmm9
 2179         movl    %edx,%edi
 2180         xorl    %eax,%esi
 2181         pxor    %xmm2,%xmm1
 2182         roll    $5,%edx
 2183         addl    %esi,%ecx
 2184         movdqa  %xmm10,%xmm8
 2185         xorl    %ebp,%edi
 2186         paddd   %xmm0,%xmm10
 2187         xorl    %eax,%ebp
 2188         pxor    %xmm9,%xmm1
 2189         addl    %edx,%ecx
 2190         addl    20(%rsp),%ebx
 2191         andl    %ebp,%edi
 2192         xorl    %eax,%ebp
 2193         rorl    $7,%edx
 2194         movdqa  %xmm1,%xmm9
 2195         movl    %ecx,%esi
 2196         xorl    %ebp,%edi
 2197         movdqa  %xmm10,0(%rsp)
 2198         roll    $5,%ecx
 2199         addl    %edi,%ebx
 2200         xorl    %edx,%esi
 2201         pslld   $2,%xmm1
 2202         xorl    %ebp,%edx
 2203         addl    %ecx,%ebx
 2204         psrld   $30,%xmm9
 2205         addl    24(%rsp),%eax
 2206         andl    %edx,%esi
 2207         xorl    %ebp,%edx
 2208         por     %xmm9,%xmm1
 2209         rorl    $7,%ecx
 2210         movl    %ebx,%edi
 2211         xorl    %edx,%esi
 2212         roll    $5,%ebx
 2213         pshufd  $238,%xmm0,%xmm10
 2214         addl    %esi,%eax
 2215         xorl    %ecx,%edi
 2216         xorl    %edx,%ecx
 2217         addl    %ebx,%eax
 2218         addl    28(%rsp),%ebp
 2219         andl    %ecx,%edi
 2220         xorl    %edx,%ecx
 2221         rorl    $7,%ebx
 2222         movl    %eax,%esi
 2223         xorl    %ecx,%edi
 2224         roll    $5,%eax
 2225         addl    %edi,%ebp
 2226         xorl    %ebx,%esi
 2227         xorl    %ecx,%ebx
 2228         addl    %eax,%ebp
 2229         pxor    %xmm6,%xmm2
 2230         addl    32(%rsp),%edx
 2231         andl    %ebx,%esi
 2232         xorl    %ecx,%ebx
 2233         rorl    $7,%eax
 2234         punpcklqdq      %xmm1,%xmm10
 2235         movl    %ebp,%edi
 2236         xorl    %ebx,%esi
 2237         pxor    %xmm3,%xmm2
 2238         roll    $5,%ebp
 2239         addl    %esi,%edx
 2240         movdqa  %xmm8,%xmm9
 2241         xorl    %eax,%edi
 2242         paddd   %xmm1,%xmm8
 2243         xorl    %ebx,%eax
 2244         pxor    %xmm10,%xmm2
 2245         addl    %ebp,%edx
 2246         addl    36(%rsp),%ecx
 2247         andl    %eax,%edi
 2248         xorl    %ebx,%eax
 2249         rorl    $7,%ebp
 2250         movdqa  %xmm2,%xmm10
 2251         movl    %edx,%esi
 2252         xorl    %eax,%edi
 2253         movdqa  %xmm8,16(%rsp)
 2254         roll    $5,%edx
 2255         addl    %edi,%ecx
 2256         xorl    %ebp,%esi
 2257         pslld   $2,%xmm2
 2258         xorl    %eax,%ebp
 2259         addl    %edx,%ecx
 2260         psrld   $30,%xmm10
 2261         addl    40(%rsp),%ebx
 2262         andl    %ebp,%esi
 2263         xorl    %eax,%ebp
 2264         por     %xmm10,%xmm2
 2265         rorl    $7,%edx
 2266         movl    %ecx,%edi
 2267         xorl    %ebp,%esi
 2268         roll    $5,%ecx
 2269         pshufd  $238,%xmm1,%xmm8
 2270         addl    %esi,%ebx
 2271         xorl    %edx,%edi
 2272         xorl    %ebp,%edx
 2273         addl    %ecx,%ebx
 2274         addl    44(%rsp),%eax
 2275         andl    %edx,%edi
 2276         xorl    %ebp,%edx
 2277         rorl    $7,%ecx
 2278         movl    %ebx,%esi
 2279         xorl    %edx,%edi
 2280         roll    $5,%ebx
 2281         addl    %edi,%eax
 2282         xorl    %edx,%esi
 2283         addl    %ebx,%eax
 2284         pxor    %xmm7,%xmm3
 2285         addl    48(%rsp),%ebp
 2286         xorl    %ecx,%esi
 2287         punpcklqdq      %xmm2,%xmm8
 2288         movl    %eax,%edi
 2289         roll    $5,%eax
 2290         pxor    %xmm4,%xmm3
 2291         addl    %esi,%ebp
 2292         xorl    %ecx,%edi
 2293         movdqa  %xmm9,%xmm10
 2294         rorl    $7,%ebx
 2295         paddd   %xmm2,%xmm9
 2296         addl    %eax,%ebp
 2297         pxor    %xmm8,%xmm3
 2298         addl    52(%rsp),%edx
 2299         xorl    %ebx,%edi
 2300         movl    %ebp,%esi
 2301         roll    $5,%ebp
 2302         movdqa  %xmm3,%xmm8
 2303         addl    %edi,%edx
 2304         xorl    %ebx,%esi
 2305         movdqa  %xmm9,32(%rsp)
 2306         rorl    $7,%eax
 2307         addl    %ebp,%edx
 2308         addl    56(%rsp),%ecx
 2309         pslld   $2,%xmm3
 2310         xorl    %eax,%esi
 2311         movl    %edx,%edi
 2312         psrld   $30,%xmm8
 2313         roll    $5,%edx
 2314         addl    %esi,%ecx
 2315         xorl    %eax,%edi
 2316         rorl    $7,%ebp
 2317         por     %xmm8,%xmm3
 2318         addl    %edx,%ecx
 2319         addl    60(%rsp),%ebx
 2320         xorl    %ebp,%edi
 2321         movl    %ecx,%esi
 2322         roll    $5,%ecx
 2323         addl    %edi,%ebx
 2324         xorl    %ebp,%esi
 2325         rorl    $7,%edx
 2326         addl    %ecx,%ebx
 2327         addl    0(%rsp),%eax
 2328         xorl    %edx,%esi
 2329         movl    %ebx,%edi
 2330         roll    $5,%ebx
 2331         paddd   %xmm3,%xmm10
 2332         addl    %esi,%eax
 2333         xorl    %edx,%edi
 2334         movdqa  %xmm10,48(%rsp)
 2335         rorl    $7,%ecx
 2336         addl    %ebx,%eax
 2337         addl    4(%rsp),%ebp
 2338         xorl    %ecx,%edi
 2339         movl    %eax,%esi
 2340         roll    $5,%eax
 2341         addl    %edi,%ebp
 2342         xorl    %ecx,%esi
 2343         rorl    $7,%ebx
 2344         addl    %eax,%ebp
 2345         addl    8(%rsp),%edx
 2346         xorl    %ebx,%esi
 2347         movl    %ebp,%edi
 2348         roll    $5,%ebp
 2349         addl    %esi,%edx
 2350         xorl    %ebx,%edi
 2351         rorl    $7,%eax
 2352         addl    %ebp,%edx
 2353         addl    12(%rsp),%ecx
 2354         xorl    %eax,%edi
 2355         movl    %edx,%esi
 2356         roll    $5,%edx
 2357         addl    %edi,%ecx
 2358         xorl    %eax,%esi
 2359         rorl    $7,%ebp
 2360         addl    %edx,%ecx
 2361         cmpq    %r10,%r9
 2362         je      .Ldone_ssse3
 2363         movdqa  64(%r14),%xmm6
 2364         movdqa  -64(%r14),%xmm9
 2365         movdqu  0(%r9),%xmm0
 2366         movdqu  16(%r9),%xmm1
 2367         movdqu  32(%r9),%xmm2
 2368         movdqu  48(%r9),%xmm3
 2369 .byte   102,15,56,0,198
 2370         addq    $64,%r9
 2371         addl    16(%rsp),%ebx
 2372         xorl    %ebp,%esi
 2373         movl    %ecx,%edi
 2374 .byte   102,15,56,0,206
 2375         roll    $5,%ecx
 2376         addl    %esi,%ebx
 2377         xorl    %ebp,%edi
 2378         rorl    $7,%edx
 2379         paddd   %xmm9,%xmm0
 2380         addl    %ecx,%ebx
 2381         addl    20(%rsp),%eax
 2382         xorl    %edx,%edi
 2383         movl    %ebx,%esi
 2384         movdqa  %xmm0,0(%rsp)
 2385         roll    $5,%ebx
 2386         addl    %edi,%eax
 2387         xorl    %edx,%esi
 2388         rorl    $7,%ecx
 2389         psubd   %xmm9,%xmm0
 2390         addl    %ebx,%eax
 2391         addl    24(%rsp),%ebp
 2392         xorl    %ecx,%esi
 2393         movl    %eax,%edi
 2394         roll    $5,%eax
 2395         addl    %esi,%ebp
 2396         xorl    %ecx,%edi
 2397         rorl    $7,%ebx
 2398         addl    %eax,%ebp
 2399         addl    28(%rsp),%edx
 2400         xorl    %ebx,%edi
 2401         movl    %ebp,%esi
 2402         roll    $5,%ebp
 2403         addl    %edi,%edx
 2404         xorl    %ebx,%esi
 2405         rorl    $7,%eax
 2406         addl    %ebp,%edx
 2407         addl    32(%rsp),%ecx
 2408         xorl    %eax,%esi
 2409         movl    %edx,%edi
 2410 .byte   102,15,56,0,214
 2411         roll    $5,%edx
 2412         addl    %esi,%ecx
 2413         xorl    %eax,%edi
 2414         rorl    $7,%ebp
 2415         paddd   %xmm9,%xmm1
 2416         addl    %edx,%ecx
 2417         addl    36(%rsp),%ebx
 2418         xorl    %ebp,%edi
 2419         movl    %ecx,%esi
 2420         movdqa  %xmm1,16(%rsp)
 2421         roll    $5,%ecx
 2422         addl    %edi,%ebx
 2423         xorl    %ebp,%esi
 2424         rorl    $7,%edx
 2425         psubd   %xmm9,%xmm1
 2426         addl    %ecx,%ebx
 2427         addl    40(%rsp),%eax
 2428         xorl    %edx,%esi
 2429         movl    %ebx,%edi
 2430         roll    $5,%ebx
 2431         addl    %esi,%eax
 2432         xorl    %edx,%edi
 2433         rorl    $7,%ecx
 2434         addl    %ebx,%eax
 2435         addl    44(%rsp),%ebp
 2436         xorl    %ecx,%edi
 2437         movl    %eax,%esi
 2438         roll    $5,%eax
 2439         addl    %edi,%ebp
 2440         xorl    %ecx,%esi
 2441         rorl    $7,%ebx
 2442         addl    %eax,%ebp
 2443         addl    48(%rsp),%edx
 2444         xorl    %ebx,%esi
 2445         movl    %ebp,%edi
 2446 .byte   102,15,56,0,222
 2447         roll    $5,%ebp
 2448         addl    %esi,%edx
 2449         xorl    %ebx,%edi
 2450         rorl    $7,%eax
 2451         paddd   %xmm9,%xmm2
 2452         addl    %ebp,%edx
 2453         addl    52(%rsp),%ecx
 2454         xorl    %eax,%edi
 2455         movl    %edx,%esi
 2456         movdqa  %xmm2,32(%rsp)
 2457         roll    $5,%edx
 2458         addl    %edi,%ecx
 2459         xorl    %eax,%esi
 2460         rorl    $7,%ebp
 2461         psubd   %xmm9,%xmm2
 2462         addl    %edx,%ecx
 2463         addl    56(%rsp),%ebx
 2464         xorl    %ebp,%esi
 2465         movl    %ecx,%edi
 2466         roll    $5,%ecx
 2467         addl    %esi,%ebx
 2468         xorl    %ebp,%edi
 2469         rorl    $7,%edx
 2470         addl    %ecx,%ebx
 2471         addl    60(%rsp),%eax
 2472         xorl    %edx,%edi
 2473         movl    %ebx,%esi
 2474         roll    $5,%ebx
 2475         addl    %edi,%eax
 2476         rorl    $7,%ecx
 2477         addl    %ebx,%eax
 2478         addl    0(%r8),%eax
 2479         addl    4(%r8),%esi
 2480         addl    8(%r8),%ecx
 2481         addl    12(%r8),%edx
 2482         movl    %eax,0(%r8)
 2483         addl    16(%r8),%ebp
 2484         movl    %esi,4(%r8)
 2485         movl    %esi,%ebx
 2486         movl    %ecx,8(%r8)
 2487         movl    %ecx,%edi
 2488         movl    %edx,12(%r8)
 2489         xorl    %edx,%edi
 2490         movl    %ebp,16(%r8)
 2491         andl    %edi,%esi
 2492         jmp     .Loop_ssse3
 2493 
 2494 .align  16
 2495 .Ldone_ssse3:
 2496         addl    16(%rsp),%ebx
 2497         xorl    %ebp,%esi
 2498         movl    %ecx,%edi
 2499         roll    $5,%ecx
 2500         addl    %esi,%ebx
 2501         xorl    %ebp,%edi
 2502         rorl    $7,%edx
 2503         addl    %ecx,%ebx
 2504         addl    20(%rsp),%eax
 2505         xorl    %edx,%edi
 2506         movl    %ebx,%esi
 2507         roll    $5,%ebx
 2508         addl    %edi,%eax
 2509         xorl    %edx,%esi
 2510         rorl    $7,%ecx
 2511         addl    %ebx,%eax
 2512         addl    24(%rsp),%ebp
 2513         xorl    %ecx,%esi
 2514         movl    %eax,%edi
 2515         roll    $5,%eax
 2516         addl    %esi,%ebp
 2517         xorl    %ecx,%edi
 2518         rorl    $7,%ebx
 2519         addl    %eax,%ebp
 2520         addl    28(%rsp),%edx
 2521         xorl    %ebx,%edi
 2522         movl    %ebp,%esi
 2523         roll    $5,%ebp
 2524         addl    %edi,%edx
 2525         xorl    %ebx,%esi
 2526         rorl    $7,%eax
 2527         addl    %ebp,%edx
 2528         addl    32(%rsp),%ecx
 2529         xorl    %eax,%esi
 2530         movl    %edx,%edi
 2531         roll    $5,%edx
 2532         addl    %esi,%ecx
 2533         xorl    %eax,%edi
 2534         rorl    $7,%ebp
 2535         addl    %edx,%ecx
 2536         addl    36(%rsp),%ebx
 2537         xorl    %ebp,%edi
 2538         movl    %ecx,%esi
 2539         roll    $5,%ecx
 2540         addl    %edi,%ebx
 2541         xorl    %ebp,%esi
 2542         rorl    $7,%edx
 2543         addl    %ecx,%ebx
 2544         addl    40(%rsp),%eax
 2545         xorl    %edx,%esi
 2546         movl    %ebx,%edi
 2547         roll    $5,%ebx
 2548         addl    %esi,%eax
 2549         xorl    %edx,%edi
 2550         rorl    $7,%ecx
 2551         addl    %ebx,%eax
 2552         addl    44(%rsp),%ebp
 2553         xorl    %ecx,%edi
 2554         movl    %eax,%esi
 2555         roll    $5,%eax
 2556         addl    %edi,%ebp
 2557         xorl    %ecx,%esi
 2558         rorl    $7,%ebx
 2559         addl    %eax,%ebp
 2560         addl    48(%rsp),%edx
 2561         xorl    %ebx,%esi
 2562         movl    %ebp,%edi
 2563         roll    $5,%ebp
 2564         addl    %esi,%edx
 2565         xorl    %ebx,%edi
 2566         rorl    $7,%eax
 2567         addl    %ebp,%edx
 2568         addl    52(%rsp),%ecx
 2569         xorl    %eax,%edi
 2570         movl    %edx,%esi
 2571         roll    $5,%edx
 2572         addl    %edi,%ecx
 2573         xorl    %eax,%esi
 2574         rorl    $7,%ebp
 2575         addl    %edx,%ecx
 2576         addl    56(%rsp),%ebx
 2577         xorl    %ebp,%esi
 2578         movl    %ecx,%edi
 2579         roll    $5,%ecx
 2580         addl    %esi,%ebx
 2581         xorl    %ebp,%edi
 2582         rorl    $7,%edx
 2583         addl    %ecx,%ebx
 2584         addl    60(%rsp),%eax
 2585         xorl    %edx,%edi
 2586         movl    %ebx,%esi
 2587         roll    $5,%ebx
 2588         addl    %edi,%eax
 2589         rorl    $7,%ecx
 2590         addl    %ebx,%eax
 2591         addl    0(%r8),%eax
 2592         addl    4(%r8),%esi
 2593         addl    8(%r8),%ecx
 2594         movl    %eax,0(%r8)
 2595         addl    12(%r8),%edx
 2596         movl    %esi,4(%r8)
 2597         addl    16(%r8),%ebp
 2598         movl    %ecx,8(%r8)
 2599         movl    %edx,12(%r8)
 2600         movl    %ebp,16(%r8)
 2601         movq    -40(%r11),%r14
 2602 .cfi_restore    %r14
 2603         movq    -32(%r11),%r13
 2604 .cfi_restore    %r13
 2605         movq    -24(%r11),%r12
 2606 .cfi_restore    %r12
 2607         movq    -16(%r11),%rbp
 2608 .cfi_restore    %rbp
 2609         movq    -8(%r11),%rbx
 2610 .cfi_restore    %rbx
 2611         leaq    (%r11),%rsp
 2612 .cfi_def_cfa_register   %rsp
 2613 .Lepilogue_ssse3:
 2614         .byte   0xf3,0xc3
 2615 .cfi_endproc    
 2616 .size   sha1_block_data_order_ssse3,.-sha1_block_data_order_ssse3
 2617 .type   sha1_block_data_order_avx,@function
 2618 .align  16
 2619 sha1_block_data_order_avx:
 2620 _avx_shortcut:
 2621 .cfi_startproc  
 2622         movq    %rsp,%r11
 2623 .cfi_def_cfa_register   %r11
 2624         pushq   %rbx
 2625 .cfi_offset     %rbx,-16
 2626         pushq   %rbp
 2627 .cfi_offset     %rbp,-24
 2628         pushq   %r12
 2629 .cfi_offset     %r12,-32
 2630         pushq   %r13
 2631 .cfi_offset     %r13,-40
 2632         pushq   %r14
 2633 .cfi_offset     %r14,-48
 2634         leaq    -64(%rsp),%rsp
 2635         vzeroupper
 2636         andq    $-64,%rsp
 2637         movq    %rdi,%r8
 2638         movq    %rsi,%r9
 2639         movq    %rdx,%r10
 2640 
 2641         shlq    $6,%r10
 2642         addq    %r9,%r10
 2643         leaq    K_XX_XX+64(%rip),%r14
 2644 
 2645         movl    0(%r8),%eax
 2646         movl    4(%r8),%ebx
 2647         movl    8(%r8),%ecx
 2648         movl    12(%r8),%edx
 2649         movl    %ebx,%esi
 2650         movl    16(%r8),%ebp
 2651         movl    %ecx,%edi
 2652         xorl    %edx,%edi
 2653         andl    %edi,%esi
 2654 
 2655         vmovdqa 64(%r14),%xmm6
 2656         vmovdqa -64(%r14),%xmm11
 2657         vmovdqu 0(%r9),%xmm0
 2658         vmovdqu 16(%r9),%xmm1
 2659         vmovdqu 32(%r9),%xmm2
 2660         vmovdqu 48(%r9),%xmm3
 2661         vpshufb %xmm6,%xmm0,%xmm0
 2662         addq    $64,%r9
 2663         vpshufb %xmm6,%xmm1,%xmm1
 2664         vpshufb %xmm6,%xmm2,%xmm2
 2665         vpshufb %xmm6,%xmm3,%xmm3
 2666         vpaddd  %xmm11,%xmm0,%xmm4
 2667         vpaddd  %xmm11,%xmm1,%xmm5
 2668         vpaddd  %xmm11,%xmm2,%xmm6
 2669         vmovdqa %xmm4,0(%rsp)
 2670         vmovdqa %xmm5,16(%rsp)
 2671         vmovdqa %xmm6,32(%rsp)
 2672         jmp     .Loop_avx
 2673 .align  16
 2674 .Loop_avx:
 2675         shrdl   $2,%ebx,%ebx
 2676         xorl    %edx,%esi
 2677         vpalignr        $8,%xmm0,%xmm1,%xmm4
 2678         movl    %eax,%edi
 2679         addl    0(%rsp),%ebp
 2680         vpaddd  %xmm3,%xmm11,%xmm9
 2681         xorl    %ecx,%ebx
 2682         shldl   $5,%eax,%eax
 2683         vpsrldq $4,%xmm3,%xmm8
 2684         addl    %esi,%ebp
 2685         andl    %ebx,%edi
 2686         vpxor   %xmm0,%xmm4,%xmm4
 2687         xorl    %ecx,%ebx
 2688         addl    %eax,%ebp
 2689         vpxor   %xmm2,%xmm8,%xmm8
 2690         shrdl   $7,%eax,%eax
 2691         xorl    %ecx,%edi
 2692         movl    %ebp,%esi
 2693         addl    4(%rsp),%edx
 2694         vpxor   %xmm8,%xmm4,%xmm4
 2695         xorl    %ebx,%eax
 2696         shldl   $5,%ebp,%ebp
 2697         vmovdqa %xmm9,48(%rsp)
 2698         addl    %edi,%edx
 2699         andl    %eax,%esi
 2700         vpsrld  $31,%xmm4,%xmm8
 2701         xorl    %ebx,%eax
 2702         addl    %ebp,%edx
 2703         shrdl   $7,%ebp,%ebp
 2704         xorl    %ebx,%esi
 2705         vpslldq $12,%xmm4,%xmm10
 2706         vpaddd  %xmm4,%xmm4,%xmm4
 2707         movl    %edx,%edi
 2708         addl    8(%rsp),%ecx
 2709         xorl    %eax,%ebp
 2710         shldl   $5,%edx,%edx
 2711         vpsrld  $30,%xmm10,%xmm9
 2712         vpor    %xmm8,%xmm4,%xmm4
 2713         addl    %esi,%ecx
 2714         andl    %ebp,%edi
 2715         xorl    %eax,%ebp
 2716         addl    %edx,%ecx
 2717         vpslld  $2,%xmm10,%xmm10
 2718         vpxor   %xmm9,%xmm4,%xmm4
 2719         shrdl   $7,%edx,%edx
 2720         xorl    %eax,%edi
 2721         movl    %ecx,%esi
 2722         addl    12(%rsp),%ebx
 2723         vpxor   %xmm10,%xmm4,%xmm4
 2724         xorl    %ebp,%edx
 2725         shldl   $5,%ecx,%ecx
 2726         addl    %edi,%ebx
 2727         andl    %edx,%esi
 2728         xorl    %ebp,%edx
 2729         addl    %ecx,%ebx
 2730         shrdl   $7,%ecx,%ecx
 2731         xorl    %ebp,%esi
 2732         vpalignr        $8,%xmm1,%xmm2,%xmm5
 2733         movl    %ebx,%edi
 2734         addl    16(%rsp),%eax
 2735         vpaddd  %xmm4,%xmm11,%xmm9
 2736         xorl    %edx,%ecx
 2737         shldl   $5,%ebx,%ebx
 2738         vpsrldq $4,%xmm4,%xmm8
 2739         addl    %esi,%eax
 2740         andl    %ecx,%edi
 2741         vpxor   %xmm1,%xmm5,%xmm5
 2742         xorl    %edx,%ecx
 2743         addl    %ebx,%eax
 2744         vpxor   %xmm3,%xmm8,%xmm8
 2745         shrdl   $7,%ebx,%ebx
 2746         xorl    %edx,%edi
 2747         movl    %eax,%esi
 2748         addl    20(%rsp),%ebp
 2749         vpxor   %xmm8,%xmm5,%xmm5
 2750         xorl    %ecx,%ebx
 2751         shldl   $5,%eax,%eax
 2752         vmovdqa %xmm9,0(%rsp)
 2753         addl    %edi,%ebp
 2754         andl    %ebx,%esi
 2755         vpsrld  $31,%xmm5,%xmm8
 2756         xorl    %ecx,%ebx
 2757         addl    %eax,%ebp
 2758         shrdl   $7,%eax,%eax
 2759         xorl    %ecx,%esi
 2760         vpslldq $12,%xmm5,%xmm10
 2761         vpaddd  %xmm5,%xmm5,%xmm5
 2762         movl    %ebp,%edi
 2763         addl    24(%rsp),%edx
 2764         xorl    %ebx,%eax
 2765         shldl   $5,%ebp,%ebp
 2766         vpsrld  $30,%xmm10,%xmm9
 2767         vpor    %xmm8,%xmm5,%xmm5
 2768         addl    %esi,%edx
 2769         andl    %eax,%edi
 2770         xorl    %ebx,%eax
 2771         addl    %ebp,%edx
 2772         vpslld  $2,%xmm10,%xmm10
 2773         vpxor   %xmm9,%xmm5,%xmm5
 2774         shrdl   $7,%ebp,%ebp
 2775         xorl    %ebx,%edi
 2776         movl    %edx,%esi
 2777         addl    28(%rsp),%ecx
 2778         vpxor   %xmm10,%xmm5,%xmm5
 2779         xorl    %eax,%ebp
 2780         shldl   $5,%edx,%edx
 2781         vmovdqa -32(%r14),%xmm11
 2782         addl    %edi,%ecx
 2783         andl    %ebp,%esi
 2784         xorl    %eax,%ebp
 2785         addl    %edx,%ecx
 2786         shrdl   $7,%edx,%edx
 2787         xorl    %eax,%esi
 2788         vpalignr        $8,%xmm2,%xmm3,%xmm6
 2789         movl    %ecx,%edi
 2790         addl    32(%rsp),%ebx
 2791         vpaddd  %xmm5,%xmm11,%xmm9
 2792         xorl    %ebp,%edx
 2793         shldl   $5,%ecx,%ecx
 2794         vpsrldq $4,%xmm5,%xmm8
 2795         addl    %esi,%ebx
 2796         andl    %edx,%edi
 2797         vpxor   %xmm2,%xmm6,%xmm6
 2798         xorl    %ebp,%edx
 2799         addl    %ecx,%ebx
 2800         vpxor   %xmm4,%xmm8,%xmm8
 2801         shrdl   $7,%ecx,%ecx
 2802         xorl    %ebp,%edi
 2803         movl    %ebx,%esi
 2804         addl    36(%rsp),%eax
 2805         vpxor   %xmm8,%xmm6,%xmm6
 2806         xorl    %edx,%ecx
 2807         shldl   $5,%ebx,%ebx
 2808         vmovdqa %xmm9,16(%rsp)
 2809         addl    %edi,%eax
 2810         andl    %ecx,%esi
 2811         vpsrld  $31,%xmm6,%xmm8
 2812         xorl    %edx,%ecx
 2813         addl    %ebx,%eax
 2814         shrdl   $7,%ebx,%ebx
 2815         xorl    %edx,%esi
 2816         vpslldq $12,%xmm6,%xmm10
 2817         vpaddd  %xmm6,%xmm6,%xmm6
 2818         movl    %eax,%edi
 2819         addl    40(%rsp),%ebp
 2820         xorl    %ecx,%ebx
 2821         shldl   $5,%eax,%eax
 2822         vpsrld  $30,%xmm10,%xmm9
 2823         vpor    %xmm8,%xmm6,%xmm6
 2824         addl    %esi,%ebp
 2825         andl    %ebx,%edi
 2826         xorl    %ecx,%ebx
 2827         addl    %eax,%ebp
 2828         vpslld  $2,%xmm10,%xmm10
 2829         vpxor   %xmm9,%xmm6,%xmm6
 2830         shrdl   $7,%eax,%eax
 2831         xorl    %ecx,%edi
 2832         movl    %ebp,%esi
 2833         addl    44(%rsp),%edx
 2834         vpxor   %xmm10,%xmm6,%xmm6
 2835         xorl    %ebx,%eax
 2836         shldl   $5,%ebp,%ebp
 2837         addl    %edi,%edx
 2838         andl    %eax,%esi
 2839         xorl    %ebx,%eax
 2840         addl    %ebp,%edx
 2841         shrdl   $7,%ebp,%ebp
 2842         xorl    %ebx,%esi
 2843         vpalignr        $8,%xmm3,%xmm4,%xmm7
 2844         movl    %edx,%edi
 2845         addl    48(%rsp),%ecx
 2846         vpaddd  %xmm6,%xmm11,%xmm9
 2847         xorl    %eax,%ebp
 2848         shldl   $5,%edx,%edx
 2849         vpsrldq $4,%xmm6,%xmm8
 2850         addl    %esi,%ecx
 2851         andl    %ebp,%edi
 2852         vpxor   %xmm3,%xmm7,%xmm7
 2853         xorl    %eax,%ebp
 2854         addl    %edx,%ecx
 2855         vpxor   %xmm5,%xmm8,%xmm8
 2856         shrdl   $7,%edx,%edx
 2857         xorl    %eax,%edi
 2858         movl    %ecx,%esi
 2859         addl    52(%rsp),%ebx
 2860         vpxor   %xmm8,%xmm7,%xmm7
 2861         xorl    %ebp,%edx
 2862         shldl   $5,%ecx,%ecx
 2863         vmovdqa %xmm9,32(%rsp)
 2864         addl    %edi,%ebx
 2865         andl    %edx,%esi
 2866         vpsrld  $31,%xmm7,%xmm8
 2867         xorl    %ebp,%edx
 2868         addl    %ecx,%ebx
 2869         shrdl   $7,%ecx,%ecx
 2870         xorl    %ebp,%esi
 2871         vpslldq $12,%xmm7,%xmm10
 2872         vpaddd  %xmm7,%xmm7,%xmm7
 2873         movl    %ebx,%edi
 2874         addl    56(%rsp),%eax
 2875         xorl    %edx,%ecx
 2876         shldl   $5,%ebx,%ebx
 2877         vpsrld  $30,%xmm10,%xmm9
 2878         vpor    %xmm8,%xmm7,%xmm7
 2879         addl    %esi,%eax
 2880         andl    %ecx,%edi
 2881         xorl    %edx,%ecx
 2882         addl    %ebx,%eax
 2883         vpslld  $2,%xmm10,%xmm10
 2884         vpxor   %xmm9,%xmm7,%xmm7
 2885         shrdl   $7,%ebx,%ebx
 2886         xorl    %edx,%edi
 2887         movl    %eax,%esi
 2888         addl    60(%rsp),%ebp
 2889         vpxor   %xmm10,%xmm7,%xmm7
 2890         xorl    %ecx,%ebx
 2891         shldl   $5,%eax,%eax
 2892         addl    %edi,%ebp
 2893         andl    %ebx,%esi
 2894         xorl    %ecx,%ebx
 2895         addl    %eax,%ebp
 2896         vpalignr        $8,%xmm6,%xmm7,%xmm8
 2897         vpxor   %xmm4,%xmm0,%xmm0
 2898         shrdl   $7,%eax,%eax
 2899         xorl    %ecx,%esi
 2900         movl    %ebp,%edi
 2901         addl    0(%rsp),%edx
 2902         vpxor   %xmm1,%xmm0,%xmm0
 2903         xorl    %ebx,%eax
 2904         shldl   $5,%ebp,%ebp
 2905         vpaddd  %xmm7,%xmm11,%xmm9
 2906         addl    %esi,%edx
 2907         andl    %eax,%edi
 2908         vpxor   %xmm8,%xmm0,%xmm0
 2909         xorl    %ebx,%eax
 2910         addl    %ebp,%edx
 2911         shrdl   $7,%ebp,%ebp
 2912         xorl    %ebx,%edi
 2913         vpsrld  $30,%xmm0,%xmm8
 2914         vmovdqa %xmm9,48(%rsp)
 2915         movl    %edx,%esi
 2916         addl    4(%rsp),%ecx
 2917         xorl    %eax,%ebp
 2918         shldl   $5,%edx,%edx
 2919         vpslld  $2,%xmm0,%xmm0
 2920         addl    %edi,%ecx
 2921         andl    %ebp,%esi
 2922         xorl    %eax,%ebp
 2923         addl    %edx,%ecx
 2924         shrdl   $7,%edx,%edx
 2925         xorl    %eax,%esi
 2926         movl    %ecx,%edi
 2927         addl    8(%rsp),%ebx
 2928         vpor    %xmm8,%xmm0,%xmm0
 2929         xorl    %ebp,%edx
 2930         shldl   $5,%ecx,%ecx
 2931         addl    %esi,%ebx
 2932         andl    %edx,%edi
 2933         xorl    %ebp,%edx
 2934         addl    %ecx,%ebx
 2935         addl    12(%rsp),%eax
 2936         xorl    %ebp,%edi
 2937         movl    %ebx,%esi
 2938         shldl   $5,%ebx,%ebx
 2939         addl    %edi,%eax
 2940         xorl    %edx,%esi
 2941         shrdl   $7,%ecx,%ecx
 2942         addl    %ebx,%eax
 2943         vpalignr        $8,%xmm7,%xmm0,%xmm8
 2944         vpxor   %xmm5,%xmm1,%xmm1
 2945         addl    16(%rsp),%ebp
 2946         xorl    %ecx,%esi
 2947         movl    %eax,%edi
 2948         shldl   $5,%eax,%eax
 2949         vpxor   %xmm2,%xmm1,%xmm1
 2950         addl    %esi,%ebp
 2951         xorl    %ecx,%edi
 2952         vpaddd  %xmm0,%xmm11,%xmm9
 2953         shrdl   $7,%ebx,%ebx
 2954         addl    %eax,%ebp
 2955         vpxor   %xmm8,%xmm1,%xmm1
 2956         addl    20(%rsp),%edx
 2957         xorl    %ebx,%edi
 2958         movl    %ebp,%esi
 2959         shldl   $5,%ebp,%ebp
 2960         vpsrld  $30,%xmm1,%xmm8
 2961         vmovdqa %xmm9,0(%rsp)
 2962         addl    %edi,%edx
 2963         xorl    %ebx,%esi
 2964         shrdl   $7,%eax,%eax
 2965         addl    %ebp,%edx
 2966         vpslld  $2,%xmm1,%xmm1
 2967         addl    24(%rsp),%ecx
 2968         xorl    %eax,%esi
 2969         movl    %edx,%edi
 2970         shldl   $5,%edx,%edx
 2971         addl    %esi,%ecx
 2972         xorl    %eax,%edi
 2973         shrdl   $7,%ebp,%ebp
 2974         addl    %edx,%ecx
 2975         vpor    %xmm8,%xmm1,%xmm1
 2976         addl    28(%rsp),%ebx
 2977         xorl    %ebp,%edi
 2978         movl    %ecx,%esi
 2979         shldl   $5,%ecx,%ecx
 2980         addl    %edi,%ebx
 2981         xorl    %ebp,%esi
 2982         shrdl   $7,%edx,%edx
 2983         addl    %ecx,%ebx
 2984         vpalignr        $8,%xmm0,%xmm1,%xmm8
 2985         vpxor   %xmm6,%xmm2,%xmm2
 2986         addl    32(%rsp),%eax
 2987         xorl    %edx,%esi
 2988         movl    %ebx,%edi
 2989         shldl   $5,%ebx,%ebx
 2990         vpxor   %xmm3,%xmm2,%xmm2
 2991         addl    %esi,%eax
 2992         xorl    %edx,%edi
 2993         vpaddd  %xmm1,%xmm11,%xmm9
 2994         vmovdqa 0(%r14),%xmm11
 2995         shrdl   $7,%ecx,%ecx
 2996         addl    %ebx,%eax
 2997         vpxor   %xmm8,%xmm2,%xmm2
 2998         addl    36(%rsp),%ebp
 2999         xorl    %ecx,%edi
 3000         movl    %eax,%esi
 3001         shldl   $5,%eax,%eax
 3002         vpsrld  $30,%xmm2,%xmm8
 3003         vmovdqa %xmm9,16(%rsp)
 3004         addl    %edi,%ebp
 3005         xorl    %ecx,%esi
 3006         shrdl   $7,%ebx,%ebx
 3007         addl    %eax,%ebp
 3008         vpslld  $2,%xmm2,%xmm2
 3009         addl    40(%rsp),%edx
 3010         xorl    %ebx,%esi
 3011         movl    %ebp,%edi
 3012         shldl   $5,%ebp,%ebp
 3013         addl    %esi,%edx
 3014         xorl    %ebx,%edi
 3015         shrdl   $7,%eax,%eax
 3016         addl    %ebp,%edx
 3017         vpor    %xmm8,%xmm2,%xmm2
 3018         addl    44(%rsp),%ecx
 3019         xorl    %eax,%edi
 3020         movl    %edx,%esi
 3021         shldl   $5,%edx,%edx
 3022         addl    %edi,%ecx
 3023         xorl    %eax,%esi
 3024         shrdl   $7,%ebp,%ebp
 3025         addl    %edx,%ecx
 3026         vpalignr        $8,%xmm1,%xmm2,%xmm8
 3027         vpxor   %xmm7,%xmm3,%xmm3
 3028         addl    48(%rsp),%ebx
 3029         xorl    %ebp,%esi
 3030         movl    %ecx,%edi
 3031         shldl   $5,%ecx,%ecx
 3032         vpxor   %xmm4,%xmm3,%xmm3
 3033         addl    %esi,%ebx
 3034         xorl    %ebp,%edi
 3035         vpaddd  %xmm2,%xmm11,%xmm9
 3036         shrdl   $7,%edx,%edx
 3037         addl    %ecx,%ebx
 3038         vpxor   %xmm8,%xmm3,%xmm3
 3039         addl    52(%rsp),%eax
 3040         xorl    %edx,%edi
 3041         movl    %ebx,%esi
 3042         shldl   $5,%ebx,%ebx
 3043         vpsrld  $30,%xmm3,%xmm8
 3044         vmovdqa %xmm9,32(%rsp)
 3045         addl    %edi,%eax
 3046         xorl    %edx,%esi
 3047         shrdl   $7,%ecx,%ecx
 3048         addl    %ebx,%eax
 3049         vpslld  $2,%xmm3,%xmm3
 3050         addl    56(%rsp),%ebp
 3051         xorl    %ecx,%esi
 3052         movl    %eax,%edi
 3053         shldl   $5,%eax,%eax
 3054         addl    %esi,%ebp
 3055         xorl    %ecx,%edi
 3056         shrdl   $7,%ebx,%ebx
 3057         addl    %eax,%ebp
 3058         vpor    %xmm8,%xmm3,%xmm3
 3059         addl    60(%rsp),%edx
 3060         xorl    %ebx,%edi
 3061         movl    %ebp,%esi
 3062         shldl   $5,%ebp,%ebp
 3063         addl    %edi,%edx
 3064         xorl    %ebx,%esi
 3065         shrdl   $7,%eax,%eax
 3066         addl    %ebp,%edx
 3067         vpalignr        $8,%xmm2,%xmm3,%xmm8
 3068         vpxor   %xmm0,%xmm4,%xmm4
 3069         addl    0(%rsp),%ecx
 3070         xorl    %eax,%esi
 3071         movl    %edx,%edi
 3072         shldl   $5,%edx,%edx
 3073         vpxor   %xmm5,%xmm4,%xmm4
 3074         addl    %esi,%ecx
 3075         xorl    %eax,%edi
 3076         vpaddd  %xmm3,%xmm11,%xmm9
 3077         shrdl   $7,%ebp,%ebp
 3078         addl    %edx,%ecx
 3079         vpxor   %xmm8,%xmm4,%xmm4
 3080         addl    4(%rsp),%ebx
 3081         xorl    %ebp,%edi
 3082         movl    %ecx,%esi
 3083         shldl   $5,%ecx,%ecx
 3084         vpsrld  $30,%xmm4,%xmm8
 3085         vmovdqa %xmm9,48(%rsp)
 3086         addl    %edi,%ebx
 3087         xorl    %ebp,%esi
 3088         shrdl   $7,%edx,%edx
 3089         addl    %ecx,%ebx
 3090         vpslld  $2,%xmm4,%xmm4
 3091         addl    8(%rsp),%eax
 3092         xorl    %edx,%esi
 3093         movl    %ebx,%edi
 3094         shldl   $5,%ebx,%ebx
 3095         addl    %esi,%eax
 3096         xorl    %edx,%edi
 3097         shrdl   $7,%ecx,%ecx
 3098         addl    %ebx,%eax
 3099         vpor    %xmm8,%xmm4,%xmm4
 3100         addl    12(%rsp),%ebp
 3101         xorl    %ecx,%edi
 3102         movl    %eax,%esi
 3103         shldl   $5,%eax,%eax
 3104         addl    %edi,%ebp
 3105         xorl    %ecx,%esi
 3106         shrdl   $7,%ebx,%ebx
 3107         addl    %eax,%ebp
 3108         vpalignr        $8,%xmm3,%xmm4,%xmm8
 3109         vpxor   %xmm1,%xmm5,%xmm5
 3110         addl    16(%rsp),%edx
 3111         xorl    %ebx,%esi
 3112         movl    %ebp,%edi
 3113         shldl   $5,%ebp,%ebp
 3114         vpxor   %xmm6,%xmm5,%xmm5
 3115         addl    %esi,%edx
 3116         xorl    %ebx,%edi
 3117         vpaddd  %xmm4,%xmm11,%xmm9
 3118         shrdl   $7,%eax,%eax
 3119         addl    %ebp,%edx
 3120         vpxor   %xmm8,%xmm5,%xmm5
 3121         addl    20(%rsp),%ecx
 3122         xorl    %eax,%edi
 3123         movl    %edx,%esi
 3124         shldl   $5,%edx,%edx
 3125         vpsrld  $30,%xmm5,%xmm8
 3126         vmovdqa %xmm9,0(%rsp)
 3127         addl    %edi,%ecx
 3128         xorl    %eax,%esi
 3129         shrdl   $7,%ebp,%ebp
 3130         addl    %edx,%ecx
 3131         vpslld  $2,%xmm5,%xmm5
 3132         addl    24(%rsp),%ebx
 3133         xorl    %ebp,%esi
 3134         movl    %ecx,%edi
 3135         shldl   $5,%ecx,%ecx
 3136         addl    %esi,%ebx
 3137         xorl    %ebp,%edi
 3138         shrdl   $7,%edx,%edx
 3139         addl    %ecx,%ebx
 3140         vpor    %xmm8,%xmm5,%xmm5
 3141         addl    28(%rsp),%eax
 3142         shrdl   $7,%ecx,%ecx
 3143         movl    %ebx,%esi
 3144         xorl    %edx,%edi
 3145         shldl   $5,%ebx,%ebx
 3146         addl    %edi,%eax
 3147         xorl    %ecx,%esi
 3148         xorl    %edx,%ecx
 3149         addl    %ebx,%eax
 3150         vpalignr        $8,%xmm4,%xmm5,%xmm8
 3151         vpxor   %xmm2,%xmm6,%xmm6
 3152         addl    32(%rsp),%ebp
 3153         andl    %ecx,%esi
 3154         xorl    %edx,%ecx
 3155         shrdl   $7,%ebx,%ebx
 3156         vpxor   %xmm7,%xmm6,%xmm6
 3157         movl    %eax,%edi
 3158         xorl    %ecx,%esi
 3159         vpaddd  %xmm5,%xmm11,%xmm9
 3160         shldl   $5,%eax,%eax
 3161         addl    %esi,%ebp
 3162         vpxor   %xmm8,%xmm6,%xmm6
 3163         xorl    %ebx,%edi
 3164         xorl    %ecx,%ebx
 3165         addl    %eax,%ebp
 3166         addl    36(%rsp),%edx
 3167         vpsrld  $30,%xmm6,%xmm8
 3168         vmovdqa %xmm9,16(%rsp)
 3169         andl    %ebx,%edi
 3170         xorl    %ecx,%ebx
 3171         shrdl   $7,%eax,%eax
 3172         movl    %ebp,%esi
 3173         vpslld  $2,%xmm6,%xmm6
 3174         xorl    %ebx,%edi
 3175         shldl   $5,%ebp,%ebp
 3176         addl    %edi,%edx
 3177         xorl    %eax,%esi
 3178         xorl    %ebx,%eax
 3179         addl    %ebp,%edx
 3180         addl    40(%rsp),%ecx
 3181         andl    %eax,%esi
 3182         vpor    %xmm8,%xmm6,%xmm6
 3183         xorl    %ebx,%eax
 3184         shrdl   $7,%ebp,%ebp
 3185         movl    %edx,%edi
 3186         xorl    %eax,%esi
 3187         shldl   $5,%edx,%edx
 3188         addl    %esi,%ecx
 3189         xorl    %ebp,%edi
 3190         xorl    %eax,%ebp
 3191         addl    %edx,%ecx
 3192         addl    44(%rsp),%ebx
 3193         andl    %ebp,%edi
 3194         xorl    %eax,%ebp
 3195         shrdl   $7,%edx,%edx
 3196         movl    %ecx,%esi
 3197         xorl    %ebp,%edi
 3198         shldl   $5,%ecx,%ecx
 3199         addl    %edi,%ebx
 3200         xorl    %edx,%esi
 3201         xorl    %ebp,%edx
 3202         addl    %ecx,%ebx
 3203         vpalignr        $8,%xmm5,%xmm6,%xmm8
 3204         vpxor   %xmm3,%xmm7,%xmm7
 3205         addl    48(%rsp),%eax
 3206         andl    %edx,%esi
 3207         xorl    %ebp,%edx
 3208         shrdl   $7,%ecx,%ecx
 3209         vpxor   %xmm0,%xmm7,%xmm7
 3210         movl    %ebx,%edi
 3211         xorl    %edx,%esi
 3212         vpaddd  %xmm6,%xmm11,%xmm9
 3213         vmovdqa 32(%r14),%xmm11
 3214         shldl   $5,%ebx,%ebx
 3215         addl    %esi,%eax
 3216         vpxor   %xmm8,%xmm7,%xmm7
 3217         xorl    %ecx,%edi
 3218         xorl    %edx,%ecx
 3219         addl    %ebx,%eax
 3220         addl    52(%rsp),%ebp
 3221         vpsrld  $30,%xmm7,%xmm8
 3222         vmovdqa %xmm9,32(%rsp)
 3223         andl    %ecx,%edi
 3224         xorl    %edx,%ecx
 3225         shrdl   $7,%ebx,%ebx
 3226         movl    %eax,%esi
 3227         vpslld  $2,%xmm7,%xmm7
 3228         xorl    %ecx,%edi
 3229         shldl   $5,%eax,%eax
 3230         addl    %edi,%ebp
 3231         xorl    %ebx,%esi
 3232         xorl    %ecx,%ebx
 3233         addl    %eax,%ebp
 3234         addl    56(%rsp),%edx
 3235         andl    %ebx,%esi
 3236         vpor    %xmm8,%xmm7,%xmm7
 3237         xorl    %ecx,%ebx
 3238         shrdl   $7,%eax,%eax
 3239         movl    %ebp,%edi
 3240         xorl    %ebx,%esi
 3241         shldl   $5,%ebp,%ebp
 3242         addl    %esi,%edx
 3243         xorl    %eax,%edi
 3244         xorl    %ebx,%eax
 3245         addl    %ebp,%edx
 3246         addl    60(%rsp),%ecx
 3247         andl    %eax,%edi
 3248         xorl    %ebx,%eax
 3249         shrdl   $7,%ebp,%ebp
 3250         movl    %edx,%esi
 3251         xorl    %eax,%edi
 3252         shldl   $5,%edx,%edx
 3253         addl    %edi,%ecx
 3254         xorl    %ebp,%esi
 3255         xorl    %eax,%ebp
 3256         addl    %edx,%ecx
 3257         vpalignr        $8,%xmm6,%xmm7,%xmm8
 3258         vpxor   %xmm4,%xmm0,%xmm0
 3259         addl    0(%rsp),%ebx
 3260         andl    %ebp,%esi
 3261         xorl    %eax,%ebp
 3262         shrdl   $7,%edx,%edx
 3263         vpxor   %xmm1,%xmm0,%xmm0
 3264         movl    %ecx,%edi
 3265         xorl    %ebp,%esi
 3266         vpaddd  %xmm7,%xmm11,%xmm9
 3267         shldl   $5,%ecx,%ecx
 3268         addl    %esi,%ebx
 3269         vpxor   %xmm8,%xmm0,%xmm0
 3270         xorl    %edx,%edi
 3271         xorl    %ebp,%edx
 3272         addl    %ecx,%ebx
 3273         addl    4(%rsp),%eax
 3274         vpsrld  $30,%xmm0,%xmm8
 3275         vmovdqa %xmm9,48(%rsp)
 3276         andl    %edx,%edi
 3277         xorl    %ebp,%edx
 3278         shrdl   $7,%ecx,%ecx
 3279         movl    %ebx,%esi
 3280         vpslld  $2,%xmm0,%xmm0
 3281         xorl    %edx,%edi
 3282         shldl   $5,%ebx,%ebx
 3283         addl    %edi,%eax
 3284         xorl    %ecx,%esi
 3285         xorl    %edx,%ecx
 3286         addl    %ebx,%eax
 3287         addl    8(%rsp),%ebp
 3288         andl    %ecx,%esi
 3289         vpor    %xmm8,%xmm0,%xmm0
 3290         xorl    %edx,%ecx
 3291         shrdl   $7,%ebx,%ebx
 3292         movl    %eax,%edi
 3293         xorl    %ecx,%esi
 3294         shldl   $5,%eax,%eax
 3295         addl    %esi,%ebp
 3296         xorl    %ebx,%edi
 3297         xorl    %ecx,%ebx
 3298         addl    %eax,%ebp
 3299         addl    12(%rsp),%edx
 3300         andl    %ebx,%edi
 3301         xorl    %ecx,%ebx
 3302         shrdl   $7,%eax,%eax
 3303         movl    %ebp,%esi
 3304         xorl    %ebx,%edi
 3305         shldl   $5,%ebp,%ebp
 3306         addl    %edi,%edx
 3307         xorl    %eax,%esi
 3308         xorl    %ebx,%eax
 3309         addl    %ebp,%edx
 3310         vpalignr        $8,%xmm7,%xmm0,%xmm8
 3311         vpxor   %xmm5,%xmm1,%xmm1
 3312         addl    16(%rsp),%ecx
 3313         andl    %eax,%esi
 3314         xorl    %ebx,%eax
 3315         shrdl   $7,%ebp,%ebp
 3316         vpxor   %xmm2,%xmm1,%xmm1
 3317         movl    %edx,%edi
 3318         xorl    %eax,%esi
 3319         vpaddd  %xmm0,%xmm11,%xmm9
 3320         shldl   $5,%edx,%edx
 3321         addl    %esi,%ecx
 3322         vpxor   %xmm8,%xmm1,%xmm1
 3323         xorl    %ebp,%edi
 3324         xorl    %eax,%ebp
 3325         addl    %edx,%ecx
 3326         addl    20(%rsp),%ebx
 3327         vpsrld  $30,%xmm1,%xmm8
 3328         vmovdqa %xmm9,0(%rsp)
 3329         andl    %ebp,%edi
 3330         xorl    %eax,%ebp
 3331         shrdl   $7,%edx,%edx
 3332         movl    %ecx,%esi
 3333         vpslld  $2,%xmm1,%xmm1
 3334         xorl    %ebp,%edi
 3335         shldl   $5,%ecx,%ecx
 3336         addl    %edi,%ebx
 3337         xorl    %edx,%esi
 3338         xorl    %ebp,%edx
 3339         addl    %ecx,%ebx
 3340         addl    24(%rsp),%eax
 3341         andl    %edx,%esi
 3342         vpor    %xmm8,%xmm1,%xmm1
 3343         xorl    %ebp,%edx
 3344         shrdl   $7,%ecx,%ecx
 3345         movl    %ebx,%edi
 3346         xorl    %edx,%esi
 3347         shldl   $5,%ebx,%ebx
 3348         addl    %esi,%eax
 3349         xorl    %ecx,%edi
 3350         xorl    %edx,%ecx
 3351         addl    %ebx,%eax
 3352         addl    28(%rsp),%ebp
 3353         andl    %ecx,%edi
 3354         xorl    %edx,%ecx
 3355         shrdl   $7,%ebx,%ebx
 3356         movl    %eax,%esi
 3357         xorl    %ecx,%edi
 3358         shldl   $5,%eax,%eax
 3359         addl    %edi,%ebp
 3360         xorl    %ebx,%esi
 3361         xorl    %ecx,%ebx
 3362         addl    %eax,%ebp
 3363         vpalignr        $8,%xmm0,%xmm1,%xmm8
 3364         vpxor   %xmm6,%xmm2,%xmm2
 3365         addl    32(%rsp),%edx
 3366         andl    %ebx,%esi
 3367         xorl    %ecx,%ebx
 3368         shrdl   $7,%eax,%eax
 3369         vpxor   %xmm3,%xmm2,%xmm2
 3370         movl    %ebp,%edi
 3371         xorl    %ebx,%esi
 3372         vpaddd  %xmm1,%xmm11,%xmm9
 3373         shldl   $5,%ebp,%ebp
 3374         addl    %esi,%edx
 3375         vpxor   %xmm8,%xmm2,%xmm2
 3376         xorl    %eax,%edi
 3377         xorl    %ebx,%eax
 3378         addl    %ebp,%edx
 3379         addl    36(%rsp),%ecx
 3380         vpsrld  $30,%xmm2,%xmm8
 3381         vmovdqa %xmm9,16(%rsp)
 3382         andl    %eax,%edi
 3383         xorl    %ebx,%eax
 3384         shrdl   $7,%ebp,%ebp
 3385         movl    %edx,%esi
 3386         vpslld  $2,%xmm2,%xmm2
 3387         xorl    %eax,%edi
 3388         shldl   $5,%edx,%edx
 3389         addl    %edi,%ecx
 3390         xorl    %ebp,%esi
 3391         xorl    %eax,%ebp
 3392         addl    %edx,%ecx
 3393         addl    40(%rsp),%ebx
 3394         andl    %ebp,%esi
 3395         vpor    %xmm8,%xmm2,%xmm2
 3396         xorl    %eax,%ebp
 3397         shrdl   $7,%edx,%edx
 3398         movl    %ecx,%edi
 3399         xorl    %ebp,%esi
 3400         shldl   $5,%ecx,%ecx
 3401         addl    %esi,%ebx
 3402         xorl    %edx,%edi
 3403         xorl    %ebp,%edx
 3404         addl    %ecx,%ebx
 3405         addl    44(%rsp),%eax
 3406         andl    %edx,%edi
 3407         xorl    %ebp,%edx
 3408         shrdl   $7,%ecx,%ecx
 3409         movl    %ebx,%esi
 3410         xorl    %edx,%edi
 3411         shldl   $5,%ebx,%ebx
 3412         addl    %edi,%eax
 3413         xorl    %edx,%esi
 3414         addl    %ebx,%eax
 3415         vpalignr        $8,%xmm1,%xmm2,%xmm8
 3416         vpxor   %xmm7,%xmm3,%xmm3
 3417         addl    48(%rsp),%ebp
 3418         xorl    %ecx,%esi
 3419         movl    %eax,%edi
 3420         shldl   $5,%eax,%eax
 3421         vpxor   %xmm4,%xmm3,%xmm3
 3422         addl    %esi,%ebp
 3423         xorl    %ecx,%edi
 3424         vpaddd  %xmm2,%xmm11,%xmm9
 3425         shrdl   $7,%ebx,%ebx
 3426         addl    %eax,%ebp
 3427         vpxor   %xmm8,%xmm3,%xmm3
 3428         addl    52(%rsp),%edx
 3429         xorl    %ebx,%edi
 3430         movl    %ebp,%esi
 3431         shldl   $5,%ebp,%ebp
 3432         vpsrld  $30,%xmm3,%xmm8
 3433         vmovdqa %xmm9,32(%rsp)
 3434         addl    %edi,%edx
 3435         xorl    %ebx,%esi
 3436         shrdl   $7,%eax,%eax
 3437         addl    %ebp,%edx
 3438         vpslld  $2,%xmm3,%xmm3
 3439         addl    56(%rsp),%ecx
 3440         xorl    %eax,%esi
 3441         movl    %edx,%edi
 3442         shldl   $5,%edx,%edx
 3443         addl    %esi,%ecx
 3444         xorl    %eax,%edi
 3445         shrdl   $7,%ebp,%ebp
 3446         addl    %edx,%ecx
 3447         vpor    %xmm8,%xmm3,%xmm3
 3448         addl    60(%rsp),%ebx
 3449         xorl    %ebp,%edi
 3450         movl    %ecx,%esi
 3451         shldl   $5,%ecx,%ecx
 3452         addl    %edi,%ebx
 3453         xorl    %ebp,%esi
 3454         shrdl   $7,%edx,%edx
 3455         addl    %ecx,%ebx
 3456         addl    0(%rsp),%eax
 3457         vpaddd  %xmm3,%xmm11,%xmm9
 3458         xorl    %edx,%esi
 3459         movl    %ebx,%edi
 3460         shldl   $5,%ebx,%ebx
 3461         addl    %esi,%eax
 3462         vmovdqa %xmm9,48(%rsp)
 3463         xorl    %edx,%edi
 3464         shrdl   $7,%ecx,%ecx
 3465         addl    %ebx,%eax
 3466         addl    4(%rsp),%ebp
 3467         xorl    %ecx,%edi
 3468         movl    %eax,%esi
 3469         shldl   $5,%eax,%eax
 3470         addl    %edi,%ebp
 3471         xorl    %ecx,%esi
 3472         shrdl   $7,%ebx,%ebx
 3473         addl    %eax,%ebp
 3474         addl    8(%rsp),%edx
 3475         xorl    %ebx,%esi
 3476         movl    %ebp,%edi
 3477         shldl   $5,%ebp,%ebp
 3478         addl    %esi,%edx
 3479         xorl    %ebx,%edi
 3480         shrdl   $7,%eax,%eax
 3481         addl    %ebp,%edx
 3482         addl    12(%rsp),%ecx
 3483         xorl    %eax,%edi
 3484         movl    %edx,%esi
 3485         shldl   $5,%edx,%edx
 3486         addl    %edi,%ecx
 3487         xorl    %eax,%esi
 3488         shrdl   $7,%ebp,%ebp
 3489         addl    %edx,%ecx
 3490         cmpq    %r10,%r9
 3491         je      .Ldone_avx
 3492         vmovdqa 64(%r14),%xmm6
 3493         vmovdqa -64(%r14),%xmm11
 3494         vmovdqu 0(%r9),%xmm0
 3495         vmovdqu 16(%r9),%xmm1
 3496         vmovdqu 32(%r9),%xmm2
 3497         vmovdqu 48(%r9),%xmm3
 3498         vpshufb %xmm6,%xmm0,%xmm0
 3499         addq    $64,%r9
 3500         addl    16(%rsp),%ebx
 3501         xorl    %ebp,%esi
 3502         vpshufb %xmm6,%xmm1,%xmm1
 3503         movl    %ecx,%edi
 3504         shldl   $5,%ecx,%ecx
 3505         vpaddd  %xmm11,%xmm0,%xmm4
 3506         addl    %esi,%ebx
 3507         xorl    %ebp,%edi
 3508         shrdl   $7,%edx,%edx
 3509         addl    %ecx,%ebx
 3510         vmovdqa %xmm4,0(%rsp)
 3511         addl    20(%rsp),%eax
 3512         xorl    %edx,%edi
 3513         movl    %ebx,%esi
 3514         shldl   $5,%ebx,%ebx
 3515         addl    %edi,%eax
 3516         xorl    %edx,%esi
 3517         shrdl   $7,%ecx,%ecx
 3518         addl    %ebx,%eax
 3519         addl    24(%rsp),%ebp
 3520         xorl    %ecx,%esi
 3521         movl    %eax,%edi
 3522         shldl   $5,%eax,%eax
 3523         addl    %esi,%ebp
 3524         xorl    %ecx,%edi
 3525         shrdl   $7,%ebx,%ebx
 3526         addl    %eax,%ebp
 3527         addl    28(%rsp),%edx
 3528         xorl    %ebx,%edi
 3529         movl    %ebp,%esi
 3530         shldl   $5,%ebp,%ebp
 3531         addl    %edi,%edx
 3532         xorl    %ebx,%esi
 3533         shrdl   $7,%eax,%eax
 3534         addl    %ebp,%edx
 3535         addl    32(%rsp),%ecx
 3536         xorl    %eax,%esi
 3537         vpshufb %xmm6,%xmm2,%xmm2
 3538         movl    %edx,%edi
 3539         shldl   $5,%edx,%edx
 3540         vpaddd  %xmm11,%xmm1,%xmm5
 3541         addl    %esi,%ecx
 3542         xorl    %eax,%edi
 3543         shrdl   $7,%ebp,%ebp
 3544         addl    %edx,%ecx
 3545         vmovdqa %xmm5,16(%rsp)
 3546         addl    36(%rsp),%ebx
 3547         xorl    %ebp,%edi
 3548         movl    %ecx,%esi
 3549         shldl   $5,%ecx,%ecx
 3550         addl    %edi,%ebx
 3551         xorl    %ebp,%esi
 3552         shrdl   $7,%edx,%edx
 3553         addl    %ecx,%ebx
 3554         addl    40(%rsp),%eax
 3555         xorl    %edx,%esi
 3556         movl    %ebx,%edi
 3557         shldl   $5,%ebx,%ebx
 3558         addl    %esi,%eax
 3559         xorl    %edx,%edi
 3560         shrdl   $7,%ecx,%ecx
 3561         addl    %ebx,%eax
 3562         addl    44(%rsp),%ebp
 3563         xorl    %ecx,%edi
 3564         movl    %eax,%esi
 3565         shldl   $5,%eax,%eax
 3566         addl    %edi,%ebp
 3567         xorl    %ecx,%esi
 3568         shrdl   $7,%ebx,%ebx
 3569         addl    %eax,%ebp
 3570         addl    48(%rsp),%edx
 3571         xorl    %ebx,%esi
 3572         vpshufb %xmm6,%xmm3,%xmm3
 3573         movl    %ebp,%edi
 3574         shldl   $5,%ebp,%ebp
 3575         vpaddd  %xmm11,%xmm2,%xmm6
 3576         addl    %esi,%edx
 3577         xorl    %ebx,%edi
 3578         shrdl   $7,%eax,%eax
 3579         addl    %ebp,%edx
 3580         vmovdqa %xmm6,32(%rsp)
 3581         addl    52(%rsp),%ecx
 3582         xorl    %eax,%edi
 3583         movl    %edx,%esi
 3584         shldl   $5,%edx,%edx
 3585         addl    %edi,%ecx
 3586         xorl    %eax,%esi
 3587         shrdl   $7,%ebp,%ebp
 3588         addl    %edx,%ecx
 3589         addl    56(%rsp),%ebx
 3590         xorl    %ebp,%esi
 3591         movl    %ecx,%edi
 3592         shldl   $5,%ecx,%ecx
 3593         addl    %esi,%ebx
 3594         xorl    %ebp,%edi
 3595         shrdl   $7,%edx,%edx
 3596         addl    %ecx,%ebx
 3597         addl    60(%rsp),%eax
 3598         xorl    %edx,%edi
 3599         movl    %ebx,%esi
 3600         shldl   $5,%ebx,%ebx
 3601         addl    %edi,%eax
 3602         shrdl   $7,%ecx,%ecx
 3603         addl    %ebx,%eax
 3604         addl    0(%r8),%eax
 3605         addl    4(%r8),%esi
 3606         addl    8(%r8),%ecx
 3607         addl    12(%r8),%edx
 3608         movl    %eax,0(%r8)
 3609         addl    16(%r8),%ebp
 3610         movl    %esi,4(%r8)
 3611         movl    %esi,%ebx
 3612         movl    %ecx,8(%r8)
 3613         movl    %ecx,%edi
 3614         movl    %edx,12(%r8)
 3615         xorl    %edx,%edi
 3616         movl    %ebp,16(%r8)
 3617         andl    %edi,%esi
 3618         jmp     .Loop_avx
 3619 
 3620 .align  16
 3621 .Ldone_avx:
 3622         addl    16(%rsp),%ebx
 3623         xorl    %ebp,%esi
 3624         movl    %ecx,%edi
 3625         shldl   $5,%ecx,%ecx
 3626         addl    %esi,%ebx
 3627         xorl    %ebp,%edi
 3628         shrdl   $7,%edx,%edx
 3629         addl    %ecx,%ebx
 3630         addl    20(%rsp),%eax
 3631         xorl    %edx,%edi
 3632         movl    %ebx,%esi
 3633         shldl   $5,%ebx,%ebx
 3634         addl    %edi,%eax
 3635         xorl    %edx,%esi
 3636         shrdl   $7,%ecx,%ecx
 3637         addl    %ebx,%eax
 3638         addl    24(%rsp),%ebp
 3639         xorl    %ecx,%esi
 3640         movl    %eax,%edi
 3641         shldl   $5,%eax,%eax
 3642         addl    %esi,%ebp
 3643         xorl    %ecx,%edi
 3644         shrdl   $7,%ebx,%ebx
 3645         addl    %eax,%ebp
 3646         addl    28(%rsp),%edx
 3647         xorl    %ebx,%edi
 3648         movl    %ebp,%esi
 3649         shldl   $5,%ebp,%ebp
 3650         addl    %edi,%edx
 3651         xorl    %ebx,%esi
 3652         shrdl   $7,%eax,%eax
 3653         addl    %ebp,%edx
 3654         addl    32(%rsp),%ecx
 3655         xorl    %eax,%esi
 3656         movl    %edx,%edi
 3657         shldl   $5,%edx,%edx
 3658         addl    %esi,%ecx
 3659         xorl    %eax,%edi
 3660         shrdl   $7,%ebp,%ebp
 3661         addl    %edx,%ecx
 3662         addl    36(%rsp),%ebx
 3663         xorl    %ebp,%edi
 3664         movl    %ecx,%esi
 3665         shldl   $5,%ecx,%ecx
 3666         addl    %edi,%ebx
 3667         xorl    %ebp,%esi
 3668         shrdl   $7,%edx,%edx
 3669         addl    %ecx,%ebx
 3670         addl    40(%rsp),%eax
 3671         xorl    %edx,%esi
 3672         movl    %ebx,%edi
 3673         shldl   $5,%ebx,%ebx
 3674         addl    %esi,%eax
 3675         xorl    %edx,%edi
 3676         shrdl   $7,%ecx,%ecx
 3677         addl    %ebx,%eax
 3678         addl    44(%rsp),%ebp
 3679         xorl    %ecx,%edi
 3680         movl    %eax,%esi
 3681         shldl   $5,%eax,%eax
 3682         addl    %edi,%ebp
 3683         xorl    %ecx,%esi
 3684         shrdl   $7,%ebx,%ebx
 3685         addl    %eax,%ebp
 3686         addl    48(%rsp),%edx
 3687         xorl    %ebx,%esi
 3688         movl    %ebp,%edi
 3689         shldl   $5,%ebp,%ebp
 3690         addl    %esi,%edx
 3691         xorl    %ebx,%edi
 3692         shrdl   $7,%eax,%eax
 3693         addl    %ebp,%edx
 3694         addl    52(%rsp),%ecx
 3695         xorl    %eax,%edi
 3696         movl    %edx,%esi
 3697         shldl   $5,%edx,%edx
 3698         addl    %edi,%ecx
 3699         xorl    %eax,%esi
 3700         shrdl   $7,%ebp,%ebp
 3701         addl    %edx,%ecx
 3702         addl    56(%rsp),%ebx
 3703         xorl    %ebp,%esi
 3704         movl    %ecx,%edi
 3705         shldl   $5,%ecx,%ecx
 3706         addl    %esi,%ebx
 3707         xorl    %ebp,%edi
 3708         shrdl   $7,%edx,%edx
 3709         addl    %ecx,%ebx
 3710         addl    60(%rsp),%eax
 3711         xorl    %edx,%edi
 3712         movl    %ebx,%esi
 3713         shldl   $5,%ebx,%ebx
 3714         addl    %edi,%eax
 3715         shrdl   $7,%ecx,%ecx
 3716         addl    %ebx,%eax
 3717         vzeroupper
 3718 
 3719         addl    0(%r8),%eax
 3720         addl    4(%r8),%esi
 3721         addl    8(%r8),%ecx
 3722         movl    %eax,0(%r8)
 3723         addl    12(%r8),%edx
 3724         movl    %esi,4(%r8)
 3725         addl    16(%r8),%ebp
 3726         movl    %ecx,8(%r8)
 3727         movl    %edx,12(%r8)
 3728         movl    %ebp,16(%r8)
 3729         movq    -40(%r11),%r14
 3730 .cfi_restore    %r14
 3731         movq    -32(%r11),%r13
 3732 .cfi_restore    %r13
 3733         movq    -24(%r11),%r12
 3734 .cfi_restore    %r12
 3735         movq    -16(%r11),%rbp
 3736 .cfi_restore    %rbp
 3737         movq    -8(%r11),%rbx
 3738 .cfi_restore    %rbx
 3739         leaq    (%r11),%rsp
 3740 .cfi_def_cfa_register   %rsp
 3741 .Lepilogue_avx:
 3742         .byte   0xf3,0xc3
 3743 .cfi_endproc    
 3744 .size   sha1_block_data_order_avx,.-sha1_block_data_order_avx
 3745 .type   sha1_block_data_order_avx2,@function
 3746 .align  16
 3747 sha1_block_data_order_avx2:
 3748 _avx2_shortcut:
 3749 .cfi_startproc  
 3750         movq    %rsp,%r11
 3751 .cfi_def_cfa_register   %r11
 3752         pushq   %rbx
 3753 .cfi_offset     %rbx,-16
 3754         pushq   %rbp
 3755 .cfi_offset     %rbp,-24
 3756         pushq   %r12
 3757 .cfi_offset     %r12,-32
 3758         pushq   %r13
 3759 .cfi_offset     %r13,-40
 3760         pushq   %r14
 3761 .cfi_offset     %r14,-48
 3762         vzeroupper
 3763         movq    %rdi,%r8
 3764         movq    %rsi,%r9
 3765         movq    %rdx,%r10
 3766 
 3767         leaq    -640(%rsp),%rsp
 3768         shlq    $6,%r10
 3769         leaq    64(%r9),%r13
 3770         andq    $-128,%rsp
 3771         addq    %r9,%r10
 3772         leaq    K_XX_XX+64(%rip),%r14
 3773 
 3774         movl    0(%r8),%eax
 3775         cmpq    %r10,%r13
 3776         cmovaeq %r9,%r13
 3777         movl    4(%r8),%ebp
 3778         movl    8(%r8),%ecx
 3779         movl    12(%r8),%edx
 3780         movl    16(%r8),%esi
 3781         vmovdqu 64(%r14),%ymm6
 3782 
 3783         vmovdqu (%r9),%xmm0
 3784         vmovdqu 16(%r9),%xmm1
 3785         vmovdqu 32(%r9),%xmm2
 3786         vmovdqu 48(%r9),%xmm3
 3787         leaq    64(%r9),%r9
 3788         vinserti128     $1,(%r13),%ymm0,%ymm0
 3789         vinserti128     $1,16(%r13),%ymm1,%ymm1
 3790         vpshufb %ymm6,%ymm0,%ymm0
 3791         vinserti128     $1,32(%r13),%ymm2,%ymm2
 3792         vpshufb %ymm6,%ymm1,%ymm1
 3793         vinserti128     $1,48(%r13),%ymm3,%ymm3
 3794         vpshufb %ymm6,%ymm2,%ymm2
 3795         vmovdqu -64(%r14),%ymm11
 3796         vpshufb %ymm6,%ymm3,%ymm3
 3797 
 3798         vpaddd  %ymm11,%ymm0,%ymm4
 3799         vpaddd  %ymm11,%ymm1,%ymm5
 3800         vmovdqu %ymm4,0(%rsp)
 3801         vpaddd  %ymm11,%ymm2,%ymm6
 3802         vmovdqu %ymm5,32(%rsp)
 3803         vpaddd  %ymm11,%ymm3,%ymm7
 3804         vmovdqu %ymm6,64(%rsp)
 3805         vmovdqu %ymm7,96(%rsp)
 3806         vpalignr        $8,%ymm0,%ymm1,%ymm4
 3807         vpsrldq $4,%ymm3,%ymm8
 3808         vpxor   %ymm0,%ymm4,%ymm4
 3809         vpxor   %ymm2,%ymm8,%ymm8
 3810         vpxor   %ymm8,%ymm4,%ymm4
 3811         vpsrld  $31,%ymm4,%ymm8
 3812         vpslldq $12,%ymm4,%ymm10
 3813         vpaddd  %ymm4,%ymm4,%ymm4
 3814         vpsrld  $30,%ymm10,%ymm9
 3815         vpor    %ymm8,%ymm4,%ymm4
 3816         vpslld  $2,%ymm10,%ymm10
 3817         vpxor   %ymm9,%ymm4,%ymm4
 3818         vpxor   %ymm10,%ymm4,%ymm4
 3819         vpaddd  %ymm11,%ymm4,%ymm9
 3820         vmovdqu %ymm9,128(%rsp)
 3821         vpalignr        $8,%ymm1,%ymm2,%ymm5
 3822         vpsrldq $4,%ymm4,%ymm8
 3823         vpxor   %ymm1,%ymm5,%ymm5
 3824         vpxor   %ymm3,%ymm8,%ymm8
 3825         vpxor   %ymm8,%ymm5,%ymm5
 3826         vpsrld  $31,%ymm5,%ymm8
 3827         vmovdqu -32(%r14),%ymm11
 3828         vpslldq $12,%ymm5,%ymm10
 3829         vpaddd  %ymm5,%ymm5,%ymm5
 3830         vpsrld  $30,%ymm10,%ymm9
 3831         vpor    %ymm8,%ymm5,%ymm5
 3832         vpslld  $2,%ymm10,%ymm10
 3833         vpxor   %ymm9,%ymm5,%ymm5
 3834         vpxor   %ymm10,%ymm5,%ymm5
 3835         vpaddd  %ymm11,%ymm5,%ymm9
 3836         vmovdqu %ymm9,160(%rsp)
 3837         vpalignr        $8,%ymm2,%ymm3,%ymm6
 3838         vpsrldq $4,%ymm5,%ymm8
 3839         vpxor   %ymm2,%ymm6,%ymm6
 3840         vpxor   %ymm4,%ymm8,%ymm8
 3841         vpxor   %ymm8,%ymm6,%ymm6
 3842         vpsrld  $31,%ymm6,%ymm8
 3843         vpslldq $12,%ymm6,%ymm10
 3844         vpaddd  %ymm6,%ymm6,%ymm6
 3845         vpsrld  $30,%ymm10,%ymm9
 3846         vpor    %ymm8,%ymm6,%ymm6
 3847         vpslld  $2,%ymm10,%ymm10
 3848         vpxor   %ymm9,%ymm6,%ymm6
 3849         vpxor   %ymm10,%ymm6,%ymm6
 3850         vpaddd  %ymm11,%ymm6,%ymm9
 3851         vmovdqu %ymm9,192(%rsp)
 3852         vpalignr        $8,%ymm3,%ymm4,%ymm7
 3853         vpsrldq $4,%ymm6,%ymm8
 3854         vpxor   %ymm3,%ymm7,%ymm7
 3855         vpxor   %ymm5,%ymm8,%ymm8
 3856         vpxor   %ymm8,%ymm7,%ymm7
 3857         vpsrld  $31,%ymm7,%ymm8
 3858         vpslldq $12,%ymm7,%ymm10
 3859         vpaddd  %ymm7,%ymm7,%ymm7
 3860         vpsrld  $30,%ymm10,%ymm9
 3861         vpor    %ymm8,%ymm7,%ymm7
 3862         vpslld  $2,%ymm10,%ymm10
 3863         vpxor   %ymm9,%ymm7,%ymm7
 3864         vpxor   %ymm10,%ymm7,%ymm7
 3865         vpaddd  %ymm11,%ymm7,%ymm9
 3866         vmovdqu %ymm9,224(%rsp)
 3867         leaq    128(%rsp),%r13
 3868         jmp     .Loop_avx2
 3869 .align  32
 3870 .Loop_avx2:
 3871         rorxl   $2,%ebp,%ebx
 3872         andnl   %edx,%ebp,%edi
 3873         andl    %ecx,%ebp
 3874         xorl    %edi,%ebp
 3875         jmp     .Lalign32_1
 3876 .align  32
 3877 .Lalign32_1:
 3878         vpalignr        $8,%ymm6,%ymm7,%ymm8
 3879         vpxor   %ymm4,%ymm0,%ymm0
 3880         addl    -128(%r13),%esi
 3881         andnl   %ecx,%eax,%edi
 3882         vpxor   %ymm1,%ymm0,%ymm0
 3883         addl    %ebp,%esi
 3884         rorxl   $27,%eax,%r12d
 3885         rorxl   $2,%eax,%ebp
 3886         vpxor   %ymm8,%ymm0,%ymm0
 3887         andl    %ebx,%eax
 3888         addl    %r12d,%esi
 3889         xorl    %edi,%eax
 3890         vpsrld  $30,%ymm0,%ymm8
 3891         vpslld  $2,%ymm0,%ymm0
 3892         addl    -124(%r13),%edx
 3893         andnl   %ebx,%esi,%edi
 3894         addl    %eax,%edx
 3895         rorxl   $27,%esi,%r12d
 3896         rorxl   $2,%esi,%eax
 3897         andl    %ebp,%esi
 3898         vpor    %ymm8,%ymm0,%ymm0
 3899         addl    %r12d,%edx
 3900         xorl    %edi,%esi
 3901         addl    -120(%r13),%ecx
 3902         andnl   %ebp,%edx,%edi
 3903         vpaddd  %ymm11,%ymm0,%ymm9
 3904         addl    %esi,%ecx
 3905         rorxl   $27,%edx,%r12d
 3906         rorxl   $2,%edx,%esi
 3907         andl    %eax,%edx
 3908         vmovdqu %ymm9,256(%rsp)
 3909         addl    %r12d,%ecx
 3910         xorl    %edi,%edx
 3911         addl    -116(%r13),%ebx
 3912         andnl   %eax,%ecx,%edi
 3913         addl    %edx,%ebx
 3914         rorxl   $27,%ecx,%r12d
 3915         rorxl   $2,%ecx,%edx
 3916         andl    %esi,%ecx
 3917         addl    %r12d,%ebx
 3918         xorl    %edi,%ecx
 3919         addl    -96(%r13),%ebp
 3920         andnl   %esi,%ebx,%edi
 3921         addl    %ecx,%ebp
 3922         rorxl   $27,%ebx,%r12d
 3923         rorxl   $2,%ebx,%ecx
 3924         andl    %edx,%ebx
 3925         addl    %r12d,%ebp
 3926         xorl    %edi,%ebx
 3927         vpalignr        $8,%ymm7,%ymm0,%ymm8
 3928         vpxor   %ymm5,%ymm1,%ymm1
 3929         addl    -92(%r13),%eax
 3930         andnl   %edx,%ebp,%edi
 3931         vpxor   %ymm2,%ymm1,%ymm1
 3932         addl    %ebx,%eax
 3933         rorxl   $27,%ebp,%r12d
 3934         rorxl   $2,%ebp,%ebx
 3935         vpxor   %ymm8,%ymm1,%ymm1
 3936         andl    %ecx,%ebp
 3937         addl    %r12d,%eax
 3938         xorl    %edi,%ebp
 3939         vpsrld  $30,%ymm1,%ymm8
 3940         vpslld  $2,%ymm1,%ymm1
 3941         addl    -88(%r13),%esi
 3942         andnl   %ecx,%eax,%edi
 3943         addl    %ebp,%esi
 3944         rorxl   $27,%eax,%r12d
 3945         rorxl   $2,%eax,%ebp
 3946         andl    %ebx,%eax
 3947         vpor    %ymm8,%ymm1,%ymm1
 3948         addl    %r12d,%esi
 3949         xorl    %edi,%eax
 3950         addl    -84(%r13),%edx
 3951         andnl   %ebx,%esi,%edi
 3952         vpaddd  %ymm11,%ymm1,%ymm9
 3953         addl    %eax,%edx
 3954         rorxl   $27,%esi,%r12d
 3955         rorxl   $2,%esi,%eax
 3956         andl    %ebp,%esi
 3957         vmovdqu %ymm9,288(%rsp)
 3958         addl    %r12d,%edx
 3959         xorl    %edi,%esi
 3960         addl    -64(%r13),%ecx
 3961         andnl   %ebp,%edx,%edi
 3962         addl    %esi,%ecx
 3963         rorxl   $27,%edx,%r12d
 3964         rorxl   $2,%edx,%esi
 3965         andl    %eax,%edx
 3966         addl    %r12d,%ecx
 3967         xorl    %edi,%edx
 3968         addl    -60(%r13),%ebx
 3969         andnl   %eax,%ecx,%edi
 3970         addl    %edx,%ebx
 3971         rorxl   $27,%ecx,%r12d
 3972         rorxl   $2,%ecx,%edx
 3973         andl    %esi,%ecx
 3974         addl    %r12d,%ebx
 3975         xorl    %edi,%ecx
 3976         vpalignr        $8,%ymm0,%ymm1,%ymm8
 3977         vpxor   %ymm6,%ymm2,%ymm2
 3978         addl    -56(%r13),%ebp
 3979         andnl   %esi,%ebx,%edi
 3980         vpxor   %ymm3,%ymm2,%ymm2
 3981         vmovdqu 0(%r14),%ymm11
 3982         addl    %ecx,%ebp
 3983         rorxl   $27,%ebx,%r12d
 3984         rorxl   $2,%ebx,%ecx
 3985         vpxor   %ymm8,%ymm2,%ymm2
 3986         andl    %edx,%ebx
 3987         addl    %r12d,%ebp
 3988         xorl    %edi,%ebx
 3989         vpsrld  $30,%ymm2,%ymm8
 3990         vpslld  $2,%ymm2,%ymm2
 3991         addl    -52(%r13),%eax
 3992         andnl   %edx,%ebp,%edi
 3993         addl    %ebx,%eax
 3994         rorxl   $27,%ebp,%r12d
 3995         rorxl   $2,%ebp,%ebx
 3996         andl    %ecx,%ebp
 3997         vpor    %ymm8,%ymm2,%ymm2
 3998         addl    %r12d,%eax
 3999         xorl    %edi,%ebp
 4000         addl    -32(%r13),%esi
 4001         andnl   %ecx,%eax,%edi
 4002         vpaddd  %ymm11,%ymm2,%ymm9
 4003         addl    %ebp,%esi
 4004         rorxl   $27,%eax,%r12d
 4005         rorxl   $2,%eax,%ebp
 4006         andl    %ebx,%eax
 4007         vmovdqu %ymm9,320(%rsp)
 4008         addl    %r12d,%esi
 4009         xorl    %edi,%eax
 4010         addl    -28(%r13),%edx
 4011         andnl   %ebx,%esi,%edi
 4012         addl    %eax,%edx
 4013         rorxl   $27,%esi,%r12d
 4014         rorxl   $2,%esi,%eax
 4015         andl    %ebp,%esi
 4016         addl    %r12d,%edx
 4017         xorl    %edi,%esi
 4018         addl    -24(%r13),%ecx
 4019         andnl   %ebp,%edx,%edi
 4020         addl    %esi,%ecx
 4021         rorxl   $27,%edx,%r12d
 4022         rorxl   $2,%edx,%esi
 4023         andl    %eax,%edx
 4024         addl    %r12d,%ecx
 4025         xorl    %edi,%edx
 4026         vpalignr        $8,%ymm1,%ymm2,%ymm8
 4027         vpxor   %ymm7,%ymm3,%ymm3
 4028         addl    -20(%r13),%ebx
 4029         andnl   %eax,%ecx,%edi
 4030         vpxor   %ymm4,%ymm3,%ymm3
 4031         addl    %edx,%ebx
 4032         rorxl   $27,%ecx,%r12d
 4033         rorxl   $2,%ecx,%edx
 4034         vpxor   %ymm8,%ymm3,%ymm3
 4035         andl    %esi,%ecx
 4036         addl    %r12d,%ebx
 4037         xorl    %edi,%ecx
 4038         vpsrld  $30,%ymm3,%ymm8
 4039         vpslld  $2,%ymm3,%ymm3
 4040         addl    0(%r13),%ebp
 4041         andnl   %esi,%ebx,%edi
 4042         addl    %ecx,%ebp
 4043         rorxl   $27,%ebx,%r12d
 4044         rorxl   $2,%ebx,%ecx
 4045         andl    %edx,%ebx
 4046         vpor    %ymm8,%ymm3,%ymm3
 4047         addl    %r12d,%ebp
 4048         xorl    %edi,%ebx
 4049         addl    4(%r13),%eax
 4050         andnl   %edx,%ebp,%edi
 4051         vpaddd  %ymm11,%ymm3,%ymm9
 4052         addl    %ebx,%eax
 4053         rorxl   $27,%ebp,%r12d
 4054         rorxl   $2,%ebp,%ebx
 4055         andl    %ecx,%ebp
 4056         vmovdqu %ymm9,352(%rsp)
 4057         addl    %r12d,%eax
 4058         xorl    %edi,%ebp
 4059         addl    8(%r13),%esi
 4060         andnl   %ecx,%eax,%edi
 4061         addl    %ebp,%esi
 4062         rorxl   $27,%eax,%r12d
 4063         rorxl   $2,%eax,%ebp
 4064         andl    %ebx,%eax
 4065         addl    %r12d,%esi
 4066         xorl    %edi,%eax
 4067         addl    12(%r13),%edx
 4068         leal    (%rdx,%rax,1),%edx
 4069         rorxl   $27,%esi,%r12d
 4070         rorxl   $2,%esi,%eax
 4071         xorl    %ebp,%esi
 4072         addl    %r12d,%edx
 4073         xorl    %ebx,%esi
 4074         vpalignr        $8,%ymm2,%ymm3,%ymm8
 4075         vpxor   %ymm0,%ymm4,%ymm4
 4076         addl    32(%r13),%ecx
 4077         leal    (%rcx,%rsi,1),%ecx
 4078         vpxor   %ymm5,%ymm4,%ymm4
 4079         rorxl   $27,%edx,%r12d
 4080         rorxl   $2,%edx,%esi
 4081         xorl    %eax,%edx
 4082         vpxor   %ymm8,%ymm4,%ymm4
 4083         addl    %r12d,%ecx
 4084         xorl    %ebp,%edx
 4085         addl    36(%r13),%ebx
 4086         vpsrld  $30,%ymm4,%ymm8
 4087         vpslld  $2,%ymm4,%ymm4
 4088         leal    (%rbx,%rdx,1),%ebx
 4089         rorxl   $27,%ecx,%r12d
 4090         rorxl   $2,%ecx,%edx
 4091         xorl    %esi,%ecx
 4092         addl    %r12d,%ebx
 4093         xorl    %eax,%ecx
 4094         vpor    %ymm8,%ymm4,%ymm4
 4095         addl    40(%r13),%ebp
 4096         leal    (%rcx,%rbp,1),%ebp
 4097         rorxl   $27,%ebx,%r12d
 4098         rorxl   $2,%ebx,%ecx
 4099         vpaddd  %ymm11,%ymm4,%ymm9
 4100         xorl    %edx,%ebx
 4101         addl    %r12d,%ebp
 4102         xorl    %esi,%ebx
 4103         addl    44(%r13),%eax
 4104         vmovdqu %ymm9,384(%rsp)
 4105         leal    (%rax,%rbx,1),%eax
 4106         rorxl   $27,%ebp,%r12d
 4107         rorxl   $2,%ebp,%ebx
 4108         xorl    %ecx,%ebp
 4109         addl    %r12d,%eax
 4110         xorl    %edx,%ebp
 4111         addl    64(%r13),%esi
 4112         leal    (%rsi,%rbp,1),%esi
 4113         rorxl   $27,%eax,%r12d
 4114         rorxl   $2,%eax,%ebp
 4115         xorl    %ebx,%eax
 4116         addl    %r12d,%esi
 4117         xorl    %ecx,%eax
 4118         vpalignr        $8,%ymm3,%ymm4,%ymm8
 4119         vpxor   %ymm1,%ymm5,%ymm5
 4120         addl    68(%r13),%edx
 4121         leal    (%rdx,%rax,1),%edx
 4122         vpxor   %ymm6,%ymm5,%ymm5
 4123         rorxl   $27,%esi,%r12d
 4124         rorxl   $2,%esi,%eax
 4125         xorl    %ebp,%esi
 4126         vpxor   %ymm8,%ymm5,%ymm5
 4127         addl    %r12d,%edx
 4128         xorl    %ebx,%esi
 4129         addl    72(%r13),%ecx
 4130         vpsrld  $30,%ymm5,%ymm8
 4131         vpslld  $2,%ymm5,%ymm5
 4132         leal    (%rcx,%rsi,1),%ecx
 4133         rorxl   $27,%edx,%r12d
 4134         rorxl   $2,%edx,%esi
 4135         xorl    %eax,%edx
 4136         addl    %r12d,%ecx
 4137         xorl    %ebp,%edx
 4138         vpor    %ymm8,%ymm5,%ymm5
 4139         addl    76(%r13),%ebx
 4140         leal    (%rbx,%rdx,1),%ebx
 4141         rorxl   $27,%ecx,%r12d
 4142         rorxl   $2,%ecx,%edx
 4143         vpaddd  %ymm11,%ymm5,%ymm9
 4144         xorl    %esi,%ecx
 4145         addl    %r12d,%ebx
 4146         xorl    %eax,%ecx
 4147         addl    96(%r13),%ebp
 4148         vmovdqu %ymm9,416(%rsp)
 4149         leal    (%rcx,%rbp,1),%ebp
 4150         rorxl   $27,%ebx,%r12d
 4151         rorxl   $2,%ebx,%ecx
 4152         xorl    %edx,%ebx
 4153         addl    %r12d,%ebp
 4154         xorl    %esi,%ebx
 4155         addl    100(%r13),%eax
 4156         leal    (%rax,%rbx,1),%eax
 4157         rorxl   $27,%ebp,%r12d
 4158         rorxl   $2,%ebp,%ebx
 4159         xorl    %ecx,%ebp
 4160         addl    %r12d,%eax
 4161         xorl    %edx,%ebp
 4162         vpalignr        $8,%ymm4,%ymm5,%ymm8
 4163         vpxor   %ymm2,%ymm6,%ymm6
 4164         addl    104(%r13),%esi
 4165         leal    (%rsi,%rbp,1),%esi
 4166         vpxor   %ymm7,%ymm6,%ymm6
 4167         rorxl   $27,%eax,%r12d
 4168         rorxl   $2,%eax,%ebp
 4169         xorl    %ebx,%eax
 4170         vpxor   %ymm8,%ymm6,%ymm6
 4171         addl    %r12d,%esi
 4172         xorl    %ecx,%eax
 4173         addl    108(%r13),%edx
 4174         leaq    256(%r13),%r13
 4175         vpsrld  $30,%ymm6,%ymm8
 4176         vpslld  $2,%ymm6,%ymm6
 4177         leal    (%rdx,%rax,1),%edx
 4178         rorxl   $27,%esi,%r12d
 4179         rorxl   $2,%esi,%eax
 4180         xorl    %ebp,%esi
 4181         addl    %r12d,%edx
 4182         xorl    %ebx,%esi
 4183         vpor    %ymm8,%ymm6,%ymm6
 4184         addl    -128(%r13),%ecx
 4185         leal    (%rcx,%rsi,1),%ecx
 4186         rorxl   $27,%edx,%r12d
 4187         rorxl   $2,%edx,%esi
 4188         vpaddd  %ymm11,%ymm6,%ymm9
 4189         xorl    %eax,%edx
 4190         addl    %r12d,%ecx
 4191         xorl    %ebp,%edx
 4192         addl    -124(%r13),%ebx
 4193         vmovdqu %ymm9,448(%rsp)
 4194         leal    (%rbx,%rdx,1),%ebx
 4195         rorxl   $27,%ecx,%r12d
 4196         rorxl   $2,%ecx,%edx
 4197         xorl    %esi,%ecx
 4198         addl    %r12d,%ebx
 4199         xorl    %eax,%ecx
 4200         addl    -120(%r13),%ebp
 4201         leal    (%rcx,%rbp,1),%ebp
 4202         rorxl   $27,%ebx,%r12d
 4203         rorxl   $2,%ebx,%ecx
 4204         xorl    %edx,%ebx
 4205         addl    %r12d,%ebp
 4206         xorl    %esi,%ebx
 4207         vpalignr        $8,%ymm5,%ymm6,%ymm8
 4208         vpxor   %ymm3,%ymm7,%ymm7
 4209         addl    -116(%r13),%eax
 4210         leal    (%rax,%rbx,1),%eax
 4211         vpxor   %ymm0,%ymm7,%ymm7
 4212         vmovdqu 32(%r14),%ymm11
 4213         rorxl   $27,%ebp,%r12d
 4214         rorxl   $2,%ebp,%ebx
 4215         xorl    %ecx,%ebp
 4216         vpxor   %ymm8,%ymm7,%ymm7
 4217         addl    %r12d,%eax
 4218         xorl    %edx,%ebp
 4219         addl    -96(%r13),%esi
 4220         vpsrld  $30,%ymm7,%ymm8
 4221         vpslld  $2,%ymm7,%ymm7
 4222         leal    (%rsi,%rbp,1),%esi
 4223         rorxl   $27,%eax,%r12d
 4224         rorxl   $2,%eax,%ebp
 4225         xorl    %ebx,%eax
 4226         addl    %r12d,%esi
 4227         xorl    %ecx,%eax
 4228         vpor    %ymm8,%ymm7,%ymm7
 4229         addl    -92(%r13),%edx
 4230         leal    (%rdx,%rax,1),%edx
 4231         rorxl   $27,%esi,%r12d
 4232         rorxl   $2,%esi,%eax
 4233         vpaddd  %ymm11,%ymm7,%ymm9
 4234         xorl    %ebp,%esi
 4235         addl    %r12d,%edx
 4236         xorl    %ebx,%esi
 4237         addl    -88(%r13),%ecx
 4238         vmovdqu %ymm9,480(%rsp)
 4239         leal    (%rcx,%rsi,1),%ecx
 4240         rorxl   $27,%edx,%r12d
 4241         rorxl   $2,%edx,%esi
 4242         xorl    %eax,%edx
 4243         addl    %r12d,%ecx
 4244         xorl    %ebp,%edx
 4245         addl    -84(%r13),%ebx
 4246         movl    %esi,%edi
 4247         xorl    %eax,%edi
 4248         leal    (%rbx,%rdx,1),%ebx
 4249         rorxl   $27,%ecx,%r12d
 4250         rorxl   $2,%ecx,%edx
 4251         xorl    %esi,%ecx
 4252         addl    %r12d,%ebx
 4253         andl    %edi,%ecx
 4254         jmp     .Lalign32_2
 4255 .align  32
 4256 .Lalign32_2:
 4257         vpalignr        $8,%ymm6,%ymm7,%ymm8
 4258         vpxor   %ymm4,%ymm0,%ymm0
 4259         addl    -64(%r13),%ebp
 4260         xorl    %esi,%ecx
 4261         vpxor   %ymm1,%ymm0,%ymm0
 4262         movl    %edx,%edi
 4263         xorl    %esi,%edi
 4264         leal    (%rcx,%rbp,1),%ebp
 4265         vpxor   %ymm8,%ymm0,%ymm0
 4266         rorxl   $27,%ebx,%r12d
 4267         rorxl   $2,%ebx,%ecx
 4268         xorl    %edx,%ebx
 4269         vpsrld  $30,%ymm0,%ymm8
 4270         vpslld  $2,%ymm0,%ymm0
 4271         addl    %r12d,%ebp
 4272         andl    %edi,%ebx
 4273         addl    -60(%r13),%eax
 4274         xorl    %edx,%ebx
 4275         movl    %ecx,%edi
 4276         xorl    %edx,%edi
 4277         vpor    %ymm8,%ymm0,%ymm0
 4278         leal    (%rax,%rbx,1),%eax
 4279         rorxl   $27,%ebp,%r12d
 4280         rorxl   $2,%ebp,%ebx
 4281         xorl    %ecx,%ebp
 4282         vpaddd  %ymm11,%ymm0,%ymm9
 4283         addl    %r12d,%eax
 4284         andl    %edi,%ebp
 4285         addl    -56(%r13),%esi
 4286         xorl    %ecx,%ebp
 4287         vmovdqu %ymm9,512(%rsp)
 4288         movl    %ebx,%edi
 4289         xorl    %ecx,%edi
 4290         leal    (%rsi,%rbp,1),%esi
 4291         rorxl   $27,%eax,%r12d
 4292         rorxl   $2,%eax,%ebp
 4293         xorl    %ebx,%eax
 4294         addl    %r12d,%esi
 4295         andl    %edi,%eax
 4296         addl    -52(%r13),%edx
 4297         xorl    %ebx,%eax
 4298         movl    %ebp,%edi
 4299         xorl    %ebx,%edi
 4300         leal    (%rdx,%rax,1),%edx
 4301         rorxl   $27,%esi,%r12d
 4302         rorxl   $2,%esi,%eax
 4303         xorl    %ebp,%esi
 4304         addl    %r12d,%edx
 4305         andl    %edi,%esi
 4306         addl    -32(%r13),%ecx
 4307         xorl    %ebp,%esi
 4308         movl    %eax,%edi
 4309         xorl    %ebp,%edi
 4310         leal    (%rcx,%rsi,1),%ecx
 4311         rorxl   $27,%edx,%r12d
 4312         rorxl   $2,%edx,%esi
 4313         xorl    %eax,%edx
 4314         addl    %r12d,%ecx
 4315         andl    %edi,%edx
 4316         vpalignr        $8,%ymm7,%ymm0,%ymm8
 4317         vpxor   %ymm5,%ymm1,%ymm1
 4318         addl    -28(%r13),%ebx
 4319         xorl    %eax,%edx
 4320         vpxor   %ymm2,%ymm1,%ymm1
 4321         movl    %esi,%edi
 4322         xorl    %eax,%edi
 4323         leal    (%rbx,%rdx,1),%ebx
 4324         vpxor   %ymm8,%ymm1,%ymm1
 4325         rorxl   $27,%ecx,%r12d
 4326         rorxl   $2,%ecx,%edx
 4327         xorl    %esi,%ecx
 4328         vpsrld  $30,%ymm1,%ymm8
 4329         vpslld  $2,%ymm1,%ymm1
 4330         addl    %r12d,%ebx
 4331         andl    %edi,%ecx
 4332         addl    -24(%r13),%ebp
 4333         xorl    %esi,%ecx
 4334         movl    %edx,%edi
 4335         xorl    %esi,%edi
 4336         vpor    %ymm8,%ymm1,%ymm1
 4337         leal    (%rcx,%rbp,1),%ebp
 4338         rorxl   $27,%ebx,%r12d
 4339         rorxl   $2,%ebx,%ecx
 4340         xorl    %edx,%ebx
 4341         vpaddd  %ymm11,%ymm1,%ymm9
 4342         addl    %r12d,%ebp
 4343         andl    %edi,%ebx
 4344         addl    -20(%r13),%eax
 4345         xorl    %edx,%ebx
 4346         vmovdqu %ymm9,544(%rsp)
 4347         movl    %ecx,%edi
 4348         xorl    %edx,%edi
 4349         leal    (%rax,%rbx,1),%eax
 4350         rorxl   $27,%ebp,%r12d
 4351         rorxl   $2,%ebp,%ebx
 4352         xorl    %ecx,%ebp
 4353         addl    %r12d,%eax
 4354         andl    %edi,%ebp
 4355         addl    0(%r13),%esi
 4356         xorl    %ecx,%ebp
 4357         movl    %ebx,%edi
 4358         xorl    %ecx,%edi
 4359         leal    (%rsi,%rbp,1),%esi
 4360         rorxl   $27,%eax,%r12d
 4361         rorxl   $2,%eax,%ebp
 4362         xorl    %ebx,%eax
 4363         addl    %r12d,%esi
 4364         andl    %edi,%eax
 4365         addl    4(%r13),%edx
 4366         xorl    %ebx,%eax
 4367         movl    %ebp,%edi
 4368         xorl    %ebx,%edi
 4369         leal    (%rdx,%rax,1),%edx
 4370         rorxl   $27,%esi,%r12d
 4371         rorxl   $2,%esi,%eax
 4372         xorl    %ebp,%esi
 4373         addl    %r12d,%edx
 4374         andl    %edi,%esi
 4375         vpalignr        $8,%ymm0,%ymm1,%ymm8
 4376         vpxor   %ymm6,%ymm2,%ymm2
 4377         addl    8(%r13),%ecx
 4378         xorl    %ebp,%esi
 4379         vpxor   %ymm3,%ymm2,%ymm2
 4380         movl    %eax,%edi
 4381         xorl    %ebp,%edi
 4382         leal    (%rcx,%rsi,1),%ecx
 4383         vpxor   %ymm8,%ymm2,%ymm2
 4384         rorxl   $27,%edx,%r12d
 4385         rorxl   $2,%edx,%esi
 4386         xorl    %eax,%edx
 4387         vpsrld  $30,%ymm2,%ymm8
 4388         vpslld  $2,%ymm2,%ymm2
 4389         addl    %r12d,%ecx
 4390         andl    %edi,%edx
 4391         addl    12(%r13),%ebx
 4392         xorl    %eax,%edx
 4393         movl    %esi,%edi
 4394         xorl    %eax,%edi
 4395         vpor    %ymm8,%ymm2,%ymm2
 4396         leal    (%rbx,%rdx,1),%ebx
 4397         rorxl   $27,%ecx,%r12d
 4398         rorxl   $2,%ecx,%edx
 4399         xorl    %esi,%ecx
 4400         vpaddd  %ymm11,%ymm2,%ymm9
 4401         addl    %r12d,%ebx
 4402         andl    %edi,%ecx
 4403         addl    32(%r13),%ebp
 4404         xorl    %esi,%ecx
 4405         vmovdqu %ymm9,576(%rsp)
 4406         movl    %edx,%edi
 4407         xorl    %esi,%edi
 4408         leal    (%rcx,%rbp,1),%ebp
 4409         rorxl   $27,%ebx,%r12d
 4410         rorxl   $2,%ebx,%ecx
 4411         xorl    %edx,%ebx
 4412         addl    %r12d,%ebp
 4413         andl    %edi,%ebx
 4414         addl    36(%r13),%eax
 4415         xorl    %edx,%ebx
 4416         movl    %ecx,%edi
 4417         xorl    %edx,%edi
 4418         leal    (%rax,%rbx,1),%eax
 4419         rorxl   $27,%ebp,%r12d
 4420         rorxl   $2,%ebp,%ebx
 4421         xorl    %ecx,%ebp
 4422         addl    %r12d,%eax
 4423         andl    %edi,%ebp
 4424         addl    40(%r13),%esi
 4425         xorl    %ecx,%ebp
 4426         movl    %ebx,%edi
 4427         xorl    %ecx,%edi
 4428         leal    (%rsi,%rbp,1),%esi
 4429         rorxl   $27,%eax,%r12d
 4430         rorxl   $2,%eax,%ebp
 4431         xorl    %ebx,%eax
 4432         addl    %r12d,%esi
 4433         andl    %edi,%eax
 4434         vpalignr        $8,%ymm1,%ymm2,%ymm8
 4435         vpxor   %ymm7,%ymm3,%ymm3
 4436         addl    44(%r13),%edx
 4437         xorl    %ebx,%eax
 4438         vpxor   %ymm4,%ymm3,%ymm3
 4439         movl    %ebp,%edi
 4440         xorl    %ebx,%edi
 4441         leal    (%rdx,%rax,1),%edx
 4442         vpxor   %ymm8,%ymm3,%ymm3
 4443         rorxl   $27,%esi,%r12d
 4444         rorxl   $2,%esi,%eax
 4445         xorl    %ebp,%esi
 4446         vpsrld  $30,%ymm3,%ymm8
 4447         vpslld  $2,%ymm3,%ymm3
 4448         addl    %r12d,%edx
 4449         andl    %edi,%esi
 4450         addl    64(%r13),%ecx
 4451         xorl    %ebp,%esi
 4452         movl    %eax,%edi
 4453         xorl    %ebp,%edi
 4454         vpor    %ymm8,%ymm3,%ymm3
 4455         leal    (%rcx,%rsi,1),%ecx
 4456         rorxl   $27,%edx,%r12d
 4457         rorxl   $2,%edx,%esi
 4458         xorl    %eax,%edx
 4459         vpaddd  %ymm11,%ymm3,%ymm9
 4460         addl    %r12d,%ecx
 4461         andl    %edi,%edx
 4462         addl    68(%r13),%ebx
 4463         xorl    %eax,%edx
 4464         vmovdqu %ymm9,608(%rsp)
 4465         movl    %esi,%edi
 4466         xorl    %eax,%edi
 4467         leal    (%rbx,%rdx,1),%ebx
 4468         rorxl   $27,%ecx,%r12d
 4469         rorxl   $2,%ecx,%edx
 4470         xorl    %esi,%ecx
 4471         addl    %r12d,%ebx
 4472         andl    %edi,%ecx
 4473         addl    72(%r13),%ebp
 4474         xorl    %esi,%ecx
 4475         movl    %edx,%edi
 4476         xorl    %esi,%edi
 4477         leal    (%rcx,%rbp,1),%ebp
 4478         rorxl   $27,%ebx,%r12d
 4479         rorxl   $2,%ebx,%ecx
 4480         xorl    %edx,%ebx
 4481         addl    %r12d,%ebp
 4482         andl    %edi,%ebx
 4483         addl    76(%r13),%eax
 4484         xorl    %edx,%ebx
 4485         leal    (%rax,%rbx,1),%eax
 4486         rorxl   $27,%ebp,%r12d
 4487         rorxl   $2,%ebp,%ebx
 4488         xorl    %ecx,%ebp
 4489         addl    %r12d,%eax
 4490         xorl    %edx,%ebp
 4491         addl    96(%r13),%esi
 4492         leal    (%rsi,%rbp,1),%esi
 4493         rorxl   $27,%eax,%r12d
 4494         rorxl   $2,%eax,%ebp
 4495         xorl    %ebx,%eax
 4496         addl    %r12d,%esi
 4497         xorl    %ecx,%eax
 4498         addl    100(%r13),%edx
 4499         leal    (%rdx,%rax,1),%edx
 4500         rorxl   $27,%esi,%r12d
 4501         rorxl   $2,%esi,%eax
 4502         xorl    %ebp,%esi
 4503         addl    %r12d,%edx
 4504         xorl    %ebx,%esi
 4505         addl    104(%r13),%ecx
 4506         leal    (%rcx,%rsi,1),%ecx
 4507         rorxl   $27,%edx,%r12d
 4508         rorxl   $2,%edx,%esi
 4509         xorl    %eax,%edx
 4510         addl    %r12d,%ecx
 4511         xorl    %ebp,%edx
 4512         addl    108(%r13),%ebx
 4513         leaq    256(%r13),%r13
 4514         leal    (%rbx,%rdx,1),%ebx
 4515         rorxl   $27,%ecx,%r12d
 4516         rorxl   $2,%ecx,%edx
 4517         xorl    %esi,%ecx
 4518         addl    %r12d,%ebx
 4519         xorl    %eax,%ecx
 4520         addl    -128(%r13),%ebp
 4521         leal    (%rcx,%rbp,1),%ebp
 4522         rorxl   $27,%ebx,%r12d
 4523         rorxl   $2,%ebx,%ecx
 4524         xorl    %edx,%ebx
 4525         addl    %r12d,%ebp
 4526         xorl    %esi,%ebx
 4527         addl    -124(%r13),%eax
 4528         leal    (%rax,%rbx,1),%eax
 4529         rorxl   $27,%ebp,%r12d
 4530         rorxl   $2,%ebp,%ebx
 4531         xorl    %ecx,%ebp
 4532         addl    %r12d,%eax
 4533         xorl    %edx,%ebp
 4534         addl    -120(%r13),%esi
 4535         leal    (%rsi,%rbp,1),%esi
 4536         rorxl   $27,%eax,%r12d
 4537         rorxl   $2,%eax,%ebp
 4538         xorl    %ebx,%eax
 4539         addl    %r12d,%esi
 4540         xorl    %ecx,%eax
 4541         addl    -116(%r13),%edx
 4542         leal    (%rdx,%rax,1),%edx
 4543         rorxl   $27,%esi,%r12d
 4544         rorxl   $2,%esi,%eax
 4545         xorl    %ebp,%esi
 4546         addl    %r12d,%edx
 4547         xorl    %ebx,%esi
 4548         addl    -96(%r13),%ecx
 4549         leal    (%rcx,%rsi,1),%ecx
 4550         rorxl   $27,%edx,%r12d
 4551         rorxl   $2,%edx,%esi
 4552         xorl    %eax,%edx
 4553         addl    %r12d,%ecx
 4554         xorl    %ebp,%edx
 4555         addl    -92(%r13),%ebx
 4556         leal    (%rbx,%rdx,1),%ebx
 4557         rorxl   $27,%ecx,%r12d
 4558         rorxl   $2,%ecx,%edx
 4559         xorl    %esi,%ecx
 4560         addl    %r12d,%ebx
 4561         xorl    %eax,%ecx
 4562         addl    -88(%r13),%ebp
 4563         leal    (%rcx,%rbp,1),%ebp
 4564         rorxl   $27,%ebx,%r12d
 4565         rorxl   $2,%ebx,%ecx
 4566         xorl    %edx,%ebx
 4567         addl    %r12d,%ebp
 4568         xorl    %esi,%ebx
 4569         addl    -84(%r13),%eax
 4570         leal    (%rax,%rbx,1),%eax
 4571         rorxl   $27,%ebp,%r12d
 4572         rorxl   $2,%ebp,%ebx
 4573         xorl    %ecx,%ebp
 4574         addl    %r12d,%eax
 4575         xorl    %edx,%ebp
 4576         addl    -64(%r13),%esi
 4577         leal    (%rsi,%rbp,1),%esi
 4578         rorxl   $27,%eax,%r12d
 4579         rorxl   $2,%eax,%ebp
 4580         xorl    %ebx,%eax
 4581         addl    %r12d,%esi
 4582         xorl    %ecx,%eax
 4583         addl    -60(%r13),%edx
 4584         leal    (%rdx,%rax,1),%edx
 4585         rorxl   $27,%esi,%r12d
 4586         rorxl   $2,%esi,%eax
 4587         xorl    %ebp,%esi
 4588         addl    %r12d,%edx
 4589         xorl    %ebx,%esi
 4590         addl    -56(%r13),%ecx
 4591         leal    (%rcx,%rsi,1),%ecx
 4592         rorxl   $27,%edx,%r12d
 4593         rorxl   $2,%edx,%esi
 4594         xorl    %eax,%edx
 4595         addl    %r12d,%ecx
 4596         xorl    %ebp,%edx
 4597         addl    -52(%r13),%ebx
 4598         leal    (%rbx,%rdx,1),%ebx
 4599         rorxl   $27,%ecx,%r12d
 4600         rorxl   $2,%ecx,%edx
 4601         xorl    %esi,%ecx
 4602         addl    %r12d,%ebx
 4603         xorl    %eax,%ecx
 4604         addl    -32(%r13),%ebp
 4605         leal    (%rcx,%rbp,1),%ebp
 4606         rorxl   $27,%ebx,%r12d
 4607         rorxl   $2,%ebx,%ecx
 4608         xorl    %edx,%ebx
 4609         addl    %r12d,%ebp
 4610         xorl    %esi,%ebx
 4611         addl    -28(%r13),%eax
 4612         leal    (%rax,%rbx,1),%eax
 4613         rorxl   $27,%ebp,%r12d
 4614         rorxl   $2,%ebp,%ebx
 4615         xorl    %ecx,%ebp
 4616         addl    %r12d,%eax
 4617         xorl    %edx,%ebp
 4618         addl    -24(%r13),%esi
 4619         leal    (%rsi,%rbp,1),%esi
 4620         rorxl   $27,%eax,%r12d
 4621         rorxl   $2,%eax,%ebp
 4622         xorl    %ebx,%eax
 4623         addl    %r12d,%esi
 4624         xorl    %ecx,%eax
 4625         addl    -20(%r13),%edx
 4626         leal    (%rdx,%rax,1),%edx
 4627         rorxl   $27,%esi,%r12d
 4628         addl    %r12d,%edx
 4629         leaq    128(%r9),%r13
 4630         leaq    128(%r9),%rdi
 4631         cmpq    %r10,%r13
 4632         cmovaeq %r9,%r13
 4633 
 4634 
 4635         addl    0(%r8),%edx
 4636         addl    4(%r8),%esi
 4637         addl    8(%r8),%ebp
 4638         movl    %edx,0(%r8)
 4639         addl    12(%r8),%ebx
 4640         movl    %esi,4(%r8)
 4641         movl    %edx,%eax
 4642         addl    16(%r8),%ecx
 4643         movl    %ebp,%r12d
 4644         movl    %ebp,8(%r8)
 4645         movl    %ebx,%edx
 4646 
 4647         movl    %ebx,12(%r8)
 4648         movl    %esi,%ebp
 4649         movl    %ecx,16(%r8)
 4650 
 4651         movl    %ecx,%esi
 4652         movl    %r12d,%ecx
 4653 
 4654 
 4655         cmpq    %r10,%r9
 4656         je      .Ldone_avx2
 4657         vmovdqu 64(%r14),%ymm6
 4658         cmpq    %r10,%rdi
 4659         ja      .Last_avx2
 4660 
 4661         vmovdqu -64(%rdi),%xmm0
 4662         vmovdqu -48(%rdi),%xmm1
 4663         vmovdqu -32(%rdi),%xmm2
 4664         vmovdqu -16(%rdi),%xmm3
 4665         vinserti128     $1,0(%r13),%ymm0,%ymm0
 4666         vinserti128     $1,16(%r13),%ymm1,%ymm1
 4667         vinserti128     $1,32(%r13),%ymm2,%ymm2
 4668         vinserti128     $1,48(%r13),%ymm3,%ymm3
 4669         jmp     .Last_avx2
 4670 
 4671 .align  32
 4672 .Last_avx2:
 4673         leaq    128+16(%rsp),%r13
 4674         rorxl   $2,%ebp,%ebx
 4675         andnl   %edx,%ebp,%edi
 4676         andl    %ecx,%ebp
 4677         xorl    %edi,%ebp
 4678         subq    $-128,%r9
 4679         addl    -128(%r13),%esi
 4680         andnl   %ecx,%eax,%edi
 4681         addl    %ebp,%esi
 4682         rorxl   $27,%eax,%r12d
 4683         rorxl   $2,%eax,%ebp
 4684         andl    %ebx,%eax
 4685         addl    %r12d,%esi
 4686         xorl    %edi,%eax
 4687         addl    -124(%r13),%edx
 4688         andnl   %ebx,%esi,%edi
 4689         addl    %eax,%edx
 4690         rorxl   $27,%esi,%r12d
 4691         rorxl   $2,%esi,%eax
 4692         andl    %ebp,%esi
 4693         addl    %r12d,%edx
 4694         xorl    %edi,%esi
 4695         addl    -120(%r13),%ecx
 4696         andnl   %ebp,%edx,%edi
 4697         addl    %esi,%ecx
 4698         rorxl   $27,%edx,%r12d
 4699         rorxl   $2,%edx,%esi
 4700         andl    %eax,%edx
 4701         addl    %r12d,%ecx
 4702         xorl    %edi,%edx
 4703         addl    -116(%r13),%ebx
 4704         andnl   %eax,%ecx,%edi
 4705         addl    %edx,%ebx
 4706         rorxl   $27,%ecx,%r12d
 4707         rorxl   $2,%ecx,%edx
 4708         andl    %esi,%ecx
 4709         addl    %r12d,%ebx
 4710         xorl    %edi,%ecx
 4711         addl    -96(%r13),%ebp
 4712         andnl   %esi,%ebx,%edi
 4713         addl    %ecx,%ebp
 4714         rorxl   $27,%ebx,%r12d
 4715         rorxl   $2,%ebx,%ecx
 4716         andl    %edx,%ebx
 4717         addl    %r12d,%ebp
 4718         xorl    %edi,%ebx
 4719         addl    -92(%r13),%eax
 4720         andnl   %edx,%ebp,%edi
 4721         addl    %ebx,%eax
 4722         rorxl   $27,%ebp,%r12d
 4723         rorxl   $2,%ebp,%ebx
 4724         andl    %ecx,%ebp
 4725         addl    %r12d,%eax
 4726         xorl    %edi,%ebp
 4727         addl    -88(%r13),%esi
 4728         andnl   %ecx,%eax,%edi
 4729         addl    %ebp,%esi
 4730         rorxl   $27,%eax,%r12d
 4731         rorxl   $2,%eax,%ebp
 4732         andl    %ebx,%eax
 4733         addl    %r12d,%esi
 4734         xorl    %edi,%eax
 4735         addl    -84(%r13),%edx
 4736         andnl   %ebx,%esi,%edi
 4737         addl    %eax,%edx
 4738         rorxl   $27,%esi,%r12d
 4739         rorxl   $2,%esi,%eax
 4740         andl    %ebp,%esi
 4741         addl    %r12d,%edx
 4742         xorl    %edi,%esi
 4743         addl    -64(%r13),%ecx
 4744         andnl   %ebp,%edx,%edi
 4745         addl    %esi,%ecx
 4746         rorxl   $27,%edx,%r12d
 4747         rorxl   $2,%edx,%esi
 4748         andl    %eax,%edx
 4749         addl    %r12d,%ecx
 4750         xorl    %edi,%edx
 4751         addl    -60(%r13),%ebx
 4752         andnl   %eax,%ecx,%edi
 4753         addl    %edx,%ebx
 4754         rorxl   $27,%ecx,%r12d
 4755         rorxl   $2,%ecx,%edx
 4756         andl    %esi,%ecx
 4757         addl    %r12d,%ebx
 4758         xorl    %edi,%ecx
 4759         addl    -56(%r13),%ebp
 4760         andnl   %esi,%ebx,%edi
 4761         addl    %ecx,%ebp
 4762         rorxl   $27,%ebx,%r12d
 4763         rorxl   $2,%ebx,%ecx
 4764         andl    %edx,%ebx
 4765         addl    %r12d,%ebp
 4766         xorl    %edi,%ebx
 4767         addl    -52(%r13),%eax
 4768         andnl   %edx,%ebp,%edi
 4769         addl    %ebx,%eax
 4770         rorxl   $27,%ebp,%r12d
 4771         rorxl   $2,%ebp,%ebx
 4772         andl    %ecx,%ebp
 4773         addl    %r12d,%eax
 4774         xorl    %edi,%ebp
 4775         addl    -32(%r13),%esi
 4776         andnl   %ecx,%eax,%edi
 4777         addl    %ebp,%esi
 4778         rorxl   $27,%eax,%r12d
 4779         rorxl   $2,%eax,%ebp
 4780         andl    %ebx,%eax
 4781         addl    %r12d,%esi
 4782         xorl    %edi,%eax
 4783         addl    -28(%r13),%edx
 4784         andnl   %ebx,%esi,%edi
 4785         addl    %eax,%edx
 4786         rorxl   $27,%esi,%r12d
 4787         rorxl   $2,%esi,%eax
 4788         andl    %ebp,%esi
 4789         addl    %r12d,%edx
 4790         xorl    %edi,%esi
 4791         addl    -24(%r13),%ecx
 4792         andnl   %ebp,%edx,%edi
 4793         addl    %esi,%ecx
 4794         rorxl   $27,%edx,%r12d
 4795         rorxl   $2,%edx,%esi
 4796         andl    %eax,%edx
 4797         addl    %r12d,%ecx
 4798         xorl    %edi,%edx
 4799         addl    -20(%r13),%ebx
 4800         andnl   %eax,%ecx,%edi
 4801         addl    %edx,%ebx
 4802         rorxl   $27,%ecx,%r12d
 4803         rorxl   $2,%ecx,%edx
 4804         andl    %esi,%ecx
 4805         addl    %r12d,%ebx
 4806         xorl    %edi,%ecx
 4807         addl    0(%r13),%ebp
 4808         andnl   %esi,%ebx,%edi
 4809         addl    %ecx,%ebp
 4810         rorxl   $27,%ebx,%r12d
 4811         rorxl   $2,%ebx,%ecx
 4812         andl    %edx,%ebx
 4813         addl    %r12d,%ebp
 4814         xorl    %edi,%ebx
 4815         addl    4(%r13),%eax
 4816         andnl   %edx,%ebp,%edi
 4817         addl    %ebx,%eax
 4818         rorxl   $27,%ebp,%r12d
 4819         rorxl   $2,%ebp,%ebx
 4820         andl    %ecx,%ebp
 4821         addl    %r12d,%eax
 4822         xorl    %edi,%ebp
 4823         addl    8(%r13),%esi
 4824         andnl   %ecx,%eax,%edi
 4825         addl    %ebp,%esi
 4826         rorxl   $27,%eax,%r12d
 4827         rorxl   $2,%eax,%ebp
 4828         andl    %ebx,%eax
 4829         addl    %r12d,%esi
 4830         xorl    %edi,%eax
 4831         addl    12(%r13),%edx
 4832         leal    (%rdx,%rax,1),%edx
 4833         rorxl   $27,%esi,%r12d
 4834         rorxl   $2,%esi,%eax
 4835         xorl    %ebp,%esi
 4836         addl    %r12d,%edx
 4837         xorl    %ebx,%esi
 4838         addl    32(%r13),%ecx
 4839         leal    (%rcx,%rsi,1),%ecx
 4840         rorxl   $27,%edx,%r12d
 4841         rorxl   $2,%edx,%esi
 4842         xorl    %eax,%edx
 4843         addl    %r12d,%ecx
 4844         xorl    %ebp,%edx
 4845         addl    36(%r13),%ebx
 4846         leal    (%rbx,%rdx,1),%ebx
 4847         rorxl   $27,%ecx,%r12d
 4848         rorxl   $2,%ecx,%edx
 4849         xorl    %esi,%ecx
 4850         addl    %r12d,%ebx
 4851         xorl    %eax,%ecx
 4852         addl    40(%r13),%ebp
 4853         leal    (%rcx,%rbp,1),%ebp
 4854         rorxl   $27,%ebx,%r12d
 4855         rorxl   $2,%ebx,%ecx
 4856         xorl    %edx,%ebx
 4857         addl    %r12d,%ebp
 4858         xorl    %esi,%ebx
 4859         addl    44(%r13),%eax
 4860         leal    (%rax,%rbx,1),%eax
 4861         rorxl   $27,%ebp,%r12d
 4862         rorxl   $2,%ebp,%ebx
 4863         xorl    %ecx,%ebp
 4864         addl    %r12d,%eax
 4865         xorl    %edx,%ebp
 4866         addl    64(%r13),%esi
 4867         leal    (%rsi,%rbp,1),%esi
 4868         rorxl   $27,%eax,%r12d
 4869         rorxl   $2,%eax,%ebp
 4870         xorl    %ebx,%eax
 4871         addl    %r12d,%esi
 4872         xorl    %ecx,%eax
 4873         vmovdqu -64(%r14),%ymm11
 4874         vpshufb %ymm6,%ymm0,%ymm0
 4875         addl    68(%r13),%edx
 4876         leal    (%rdx,%rax,1),%edx
 4877         rorxl   $27,%esi,%r12d
 4878         rorxl   $2,%esi,%eax
 4879         xorl    %ebp,%esi
 4880         addl    %r12d,%edx
 4881         xorl    %ebx,%esi
 4882         addl    72(%r13),%ecx
 4883         leal    (%rcx,%rsi,1),%ecx
 4884         rorxl   $27,%edx,%r12d
 4885         rorxl   $2,%edx,%esi
 4886         xorl    %eax,%edx
 4887         addl    %r12d,%ecx
 4888         xorl    %ebp,%edx
 4889         addl    76(%r13),%ebx
 4890         leal    (%rbx,%rdx,1),%ebx
 4891         rorxl   $27,%ecx,%r12d
 4892         rorxl   $2,%ecx,%edx
 4893         xorl    %esi,%ecx
 4894         addl    %r12d,%ebx
 4895         xorl    %eax,%ecx
 4896         addl    96(%r13),%ebp
 4897         leal    (%rcx,%rbp,1),%ebp
 4898         rorxl   $27,%ebx,%r12d
 4899         rorxl   $2,%ebx,%ecx
 4900         xorl    %edx,%ebx
 4901         addl    %r12d,%ebp
 4902         xorl    %esi,%ebx
 4903         addl    100(%r13),%eax
 4904         leal    (%rax,%rbx,1),%eax
 4905         rorxl   $27,%ebp,%r12d
 4906         rorxl   $2,%ebp,%ebx
 4907         xorl    %ecx,%ebp
 4908         addl    %r12d,%eax
 4909         xorl    %edx,%ebp
 4910         vpshufb %ymm6,%ymm1,%ymm1
 4911         vpaddd  %ymm11,%ymm0,%ymm8
 4912         addl    104(%r13),%esi
 4913         leal    (%rsi,%rbp,1),%esi
 4914         rorxl   $27,%eax,%r12d
 4915         rorxl   $2,%eax,%ebp
 4916         xorl    %ebx,%eax
 4917         addl    %r12d,%esi
 4918         xorl    %ecx,%eax
 4919         addl    108(%r13),%edx
 4920         leaq    256(%r13),%r13
 4921         leal    (%rdx,%rax,1),%edx
 4922         rorxl   $27,%esi,%r12d
 4923         rorxl   $2,%esi,%eax
 4924         xorl    %ebp,%esi
 4925         addl    %r12d,%edx
 4926         xorl    %ebx,%esi
 4927         addl    -128(%r13),%ecx
 4928         leal    (%rcx,%rsi,1),%ecx
 4929         rorxl   $27,%edx,%r12d
 4930         rorxl   $2,%edx,%esi
 4931         xorl    %eax,%edx
 4932         addl    %r12d,%ecx
 4933         xorl    %ebp,%edx
 4934         addl    -124(%r13),%ebx
 4935         leal    (%rbx,%rdx,1),%ebx
 4936         rorxl   $27,%ecx,%r12d
 4937         rorxl   $2,%ecx,%edx
 4938         xorl    %esi,%ecx
 4939         addl    %r12d,%ebx
 4940         xorl    %eax,%ecx
 4941         addl    -120(%r13),%ebp
 4942         leal    (%rcx,%rbp,1),%ebp
 4943         rorxl   $27,%ebx,%r12d
 4944         rorxl   $2,%ebx,%ecx
 4945         xorl    %edx,%ebx
 4946         addl    %r12d,%ebp
 4947         xorl    %esi,%ebx
 4948         vmovdqu %ymm8,0(%rsp)
 4949         vpshufb %ymm6,%ymm2,%ymm2
 4950         vpaddd  %ymm11,%ymm1,%ymm9
 4951         addl    -116(%r13),%eax
 4952         leal    (%rax,%rbx,1),%eax
 4953         rorxl   $27,%ebp,%r12d
 4954         rorxl   $2,%ebp,%ebx
 4955         xorl    %ecx,%ebp
 4956         addl    %r12d,%eax
 4957         xorl    %edx,%ebp
 4958         addl    -96(%r13),%esi
 4959         leal    (%rsi,%rbp,1),%esi
 4960         rorxl   $27,%eax,%r12d
 4961         rorxl   $2,%eax,%ebp
 4962         xorl    %ebx,%eax
 4963         addl    %r12d,%esi
 4964         xorl    %ecx,%eax
 4965         addl    -92(%r13),%edx
 4966         leal    (%rdx,%rax,1),%edx
 4967         rorxl   $27,%esi,%r12d
 4968         rorxl   $2,%esi,%eax
 4969         xorl    %ebp,%esi
 4970         addl    %r12d,%edx
 4971         xorl    %ebx,%esi
 4972         addl    -88(%r13),%ecx
 4973         leal    (%rcx,%rsi,1),%ecx
 4974         rorxl   $27,%edx,%r12d
 4975         rorxl   $2,%edx,%esi
 4976         xorl    %eax,%edx
 4977         addl    %r12d,%ecx
 4978         xorl    %ebp,%edx
 4979         addl    -84(%r13),%ebx
 4980         movl    %esi,%edi
 4981         xorl    %eax,%edi
 4982         leal    (%rbx,%rdx,1),%ebx
 4983         rorxl   $27,%ecx,%r12d
 4984         rorxl   $2,%ecx,%edx
 4985         xorl    %esi,%ecx
 4986         addl    %r12d,%ebx
 4987         andl    %edi,%ecx
 4988         vmovdqu %ymm9,32(%rsp)
 4989         vpshufb %ymm6,%ymm3,%ymm3
 4990         vpaddd  %ymm11,%ymm2,%ymm6
 4991         addl    -64(%r13),%ebp
 4992         xorl    %esi,%ecx
 4993         movl    %edx,%edi
 4994         xorl    %esi,%edi
 4995         leal    (%rcx,%rbp,1),%ebp
 4996         rorxl   $27,%ebx,%r12d
 4997         rorxl   $2,%ebx,%ecx
 4998         xorl    %edx,%ebx
 4999         addl    %r12d,%ebp
 5000         andl    %edi,%ebx
 5001         addl    -60(%r13),%eax
 5002         xorl    %edx,%ebx
 5003         movl    %ecx,%edi
 5004         xorl    %edx,%edi
 5005         leal    (%rax,%rbx,1),%eax
 5006         rorxl   $27,%ebp,%r12d
 5007         rorxl   $2,%ebp,%ebx
 5008         xorl    %ecx,%ebp
 5009         addl    %r12d,%eax
 5010         andl    %edi,%ebp
 5011         addl    -56(%r13),%esi
 5012         xorl    %ecx,%ebp
 5013         movl    %ebx,%edi
 5014         xorl    %ecx,%edi
 5015         leal    (%rsi,%rbp,1),%esi
 5016         rorxl   $27,%eax,%r12d
 5017         rorxl   $2,%eax,%ebp
 5018         xorl    %ebx,%eax
 5019         addl    %r12d,%esi
 5020         andl    %edi,%eax
 5021         addl    -52(%r13),%edx
 5022         xorl    %ebx,%eax
 5023         movl    %ebp,%edi
 5024         xorl    %ebx,%edi
 5025         leal    (%rdx,%rax,1),%edx
 5026         rorxl   $27,%esi,%r12d
 5027         rorxl   $2,%esi,%eax
 5028         xorl    %ebp,%esi
 5029         addl    %r12d,%edx
 5030         andl    %edi,%esi
 5031         addl    -32(%r13),%ecx
 5032         xorl    %ebp,%esi
 5033         movl    %eax,%edi
 5034         xorl    %ebp,%edi
 5035         leal    (%rcx,%rsi,1),%ecx
 5036         rorxl   $27,%edx,%r12d
 5037         rorxl   $2,%edx,%esi
 5038         xorl    %eax,%edx
 5039         addl    %r12d,%ecx
 5040         andl    %edi,%edx
 5041         jmp     .Lalign32_3
 5042 .align  32
 5043 .Lalign32_3:
 5044         vmovdqu %ymm6,64(%rsp)
 5045         vpaddd  %ymm11,%ymm3,%ymm7
 5046         addl    -28(%r13),%ebx
 5047         xorl    %eax,%edx
 5048         movl    %esi,%edi
 5049         xorl    %eax,%edi
 5050         leal    (%rbx,%rdx,1),%ebx
 5051         rorxl   $27,%ecx,%r12d
 5052         rorxl   $2,%ecx,%edx
 5053         xorl    %esi,%ecx
 5054         addl    %r12d,%ebx
 5055         andl    %edi,%ecx
 5056         addl    -24(%r13),%ebp
 5057         xorl    %esi,%ecx
 5058         movl    %edx,%edi
 5059         xorl    %esi,%edi
 5060         leal    (%rcx,%rbp,1),%ebp
 5061         rorxl   $27,%ebx,%r12d
 5062         rorxl   $2,%ebx,%ecx
 5063         xorl    %edx,%ebx
 5064         addl    %r12d,%ebp
 5065         andl    %edi,%ebx
 5066         addl    -20(%r13),%eax
 5067         xorl    %edx,%ebx
 5068         movl    %ecx,%edi
 5069         xorl    %edx,%edi
 5070         leal    (%rax,%rbx,1),%eax
 5071         rorxl   $27,%ebp,%r12d
 5072         rorxl   $2,%ebp,%ebx
 5073         xorl    %ecx,%ebp
 5074         addl    %r12d,%eax
 5075         andl    %edi,%ebp
 5076         addl    0(%r13),%esi
 5077         xorl    %ecx,%ebp
 5078         movl    %ebx,%edi
 5079         xorl    %ecx,%edi
 5080         leal    (%rsi,%rbp,1),%esi
 5081         rorxl   $27,%eax,%r12d
 5082         rorxl   $2,%eax,%ebp
 5083         xorl    %ebx,%eax
 5084         addl    %r12d,%esi
 5085         andl    %edi,%eax
 5086         addl    4(%r13),%edx
 5087         xorl    %ebx,%eax
 5088         movl    %ebp,%edi
 5089         xorl    %ebx,%edi
 5090         leal    (%rdx,%rax,1),%edx
 5091         rorxl   $27,%esi,%r12d
 5092         rorxl   $2,%esi,%eax
 5093         xorl    %ebp,%esi
 5094         addl    %r12d,%edx
 5095         andl    %edi,%esi
 5096         vmovdqu %ymm7,96(%rsp)
 5097         addl    8(%r13),%ecx
 5098         xorl    %ebp,%esi
 5099         movl    %eax,%edi
 5100         xorl    %ebp,%edi
 5101         leal    (%rcx,%rsi,1),%ecx
 5102         rorxl   $27,%edx,%r12d
 5103         rorxl   $2,%edx,%esi
 5104         xorl    %eax,%edx
 5105         addl    %r12d,%ecx
 5106         andl    %edi,%edx
 5107         addl    12(%r13),%ebx
 5108         xorl    %eax,%edx
 5109         movl    %esi,%edi
 5110         xorl    %eax,%edi
 5111         leal    (%rbx,%rdx,1),%ebx
 5112         rorxl   $27,%ecx,%r12d
 5113         rorxl   $2,%ecx,%edx
 5114         xorl    %esi,%ecx
 5115         addl    %r12d,%ebx
 5116         andl    %edi,%ecx
 5117         addl    32(%r13),%ebp
 5118         xorl    %esi,%ecx
 5119         movl    %edx,%edi
 5120         xorl    %esi,%edi
 5121         leal    (%rcx,%rbp,1),%ebp
 5122         rorxl   $27,%ebx,%r12d
 5123         rorxl   $2,%ebx,%ecx
 5124         xorl    %edx,%ebx
 5125         addl    %r12d,%ebp
 5126         andl    %edi,%ebx
 5127         addl    36(%r13),%eax
 5128         xorl    %edx,%ebx
 5129         movl    %ecx,%edi
 5130         xorl    %edx,%edi
 5131         leal    (%rax,%rbx,1),%eax
 5132         rorxl   $27,%ebp,%r12d
 5133         rorxl   $2,%ebp,%ebx
 5134         xorl    %ecx,%ebp
 5135         addl    %r12d,%eax
 5136         andl    %edi,%ebp
 5137         addl    40(%r13),%esi
 5138         xorl    %ecx,%ebp
 5139         movl    %ebx,%edi
 5140         xorl    %ecx,%edi
 5141         leal    (%rsi,%rbp,1),%esi
 5142         rorxl   $27,%eax,%r12d
 5143         rorxl   $2,%eax,%ebp
 5144         xorl    %ebx,%eax
 5145         addl    %r12d,%esi
 5146         andl    %edi,%eax
 5147         vpalignr        $8,%ymm0,%ymm1,%ymm4
 5148         addl    44(%r13),%edx
 5149         xorl    %ebx,%eax
 5150         movl    %ebp,%edi
 5151         xorl    %ebx,%edi
 5152         vpsrldq $4,%ymm3,%ymm8
 5153         leal    (%rdx,%rax,1),%edx
 5154         rorxl   $27,%esi,%r12d
 5155         rorxl   $2,%esi,%eax
 5156         vpxor   %ymm0,%ymm4,%ymm4
 5157         vpxor   %ymm2,%ymm8,%ymm8
 5158         xorl    %ebp,%esi
 5159         addl    %r12d,%edx
 5160         vpxor   %ymm8,%ymm4,%ymm4
 5161         andl    %edi,%esi
 5162         addl    64(%r13),%ecx
 5163         xorl    %ebp,%esi
 5164         movl    %eax,%edi
 5165         vpsrld  $31,%ymm4,%ymm8
 5166         xorl    %ebp,%edi
 5167         leal    (%rcx,%rsi,1),%ecx
 5168         rorxl   $27,%edx,%r12d
 5169         vpslldq $12,%ymm4,%ymm10
 5170         vpaddd  %ymm4,%ymm4,%ymm4
 5171         rorxl   $2,%edx,%esi
 5172         xorl    %eax,%edx
 5173         vpsrld  $30,%ymm10,%ymm9
 5174         vpor    %ymm8,%ymm4,%ymm4
 5175         addl    %r12d,%ecx
 5176         andl    %edi,%edx
 5177         vpslld  $2,%ymm10,%ymm10
 5178         vpxor   %ymm9,%ymm4,%ymm4
 5179         addl    68(%r13),%ebx
 5180         xorl    %eax,%edx
 5181         vpxor   %ymm10,%ymm4,%ymm4
 5182         movl    %esi,%edi
 5183         xorl    %eax,%edi
 5184         leal    (%rbx,%rdx,1),%ebx
 5185         vpaddd  %ymm11,%ymm4,%ymm9
 5186         rorxl   $27,%ecx,%r12d
 5187         rorxl   $2,%ecx,%edx
 5188         xorl    %esi,%ecx
 5189         vmovdqu %ymm9,128(%rsp)
 5190         addl    %r12d,%ebx
 5191         andl    %edi,%ecx
 5192         addl    72(%r13),%ebp
 5193         xorl    %esi,%ecx
 5194         movl    %edx,%edi
 5195         xorl    %esi,%edi
 5196         leal    (%rcx,%rbp,1),%ebp
 5197         rorxl   $27,%ebx,%r12d
 5198         rorxl   $2,%ebx,%ecx
 5199         xorl    %edx,%ebx
 5200         addl    %r12d,%ebp
 5201         andl    %edi,%ebx
 5202         addl    76(%r13),%eax
 5203         xorl    %edx,%ebx
 5204         leal    (%rax,%rbx,1),%eax
 5205         rorxl   $27,%ebp,%r12d
 5206         rorxl   $2,%ebp,%ebx
 5207         xorl    %ecx,%ebp
 5208         addl    %r12d,%eax
 5209         xorl    %edx,%ebp
 5210         vpalignr        $8,%ymm1,%ymm2,%ymm5
 5211         addl    96(%r13),%esi
 5212         leal    (%rsi,%rbp,1),%esi
 5213         rorxl   $27,%eax,%r12d
 5214         rorxl   $2,%eax,%ebp
 5215         vpsrldq $4,%ymm4,%ymm8
 5216         xorl    %ebx,%eax
 5217         addl    %r12d,%esi
 5218         xorl    %ecx,%eax
 5219         vpxor   %ymm1,%ymm5,%ymm5
 5220         vpxor   %ymm3,%ymm8,%ymm8
 5221         addl    100(%r13),%edx
 5222         leal    (%rdx,%rax,1),%edx
 5223         vpxor   %ymm8,%ymm5,%ymm5
 5224         rorxl   $27,%esi,%r12d
 5225         rorxl   $2,%esi,%eax
 5226         xorl    %ebp,%esi
 5227         addl    %r12d,%edx
 5228         vpsrld  $31,%ymm5,%ymm8
 5229         vmovdqu -32(%r14),%ymm11
 5230         xorl    %ebx,%esi
 5231         addl    104(%r13),%ecx
 5232         leal    (%rcx,%rsi,1),%ecx
 5233         vpslldq $12,%ymm5,%ymm10
 5234         vpaddd  %ymm5,%ymm5,%ymm5
 5235         rorxl   $27,%edx,%r12d
 5236         rorxl   $2,%edx,%esi
 5237         vpsrld  $30,%ymm10,%ymm9
 5238         vpor    %ymm8,%ymm5,%ymm5
 5239         xorl    %eax,%edx
 5240         addl    %r12d,%ecx
 5241         vpslld  $2,%ymm10,%ymm10
 5242         vpxor   %ymm9,%ymm5,%ymm5
 5243         xorl    %ebp,%edx
 5244         addl    108(%r13),%ebx
 5245         leaq    256(%r13),%r13
 5246         vpxor   %ymm10,%ymm5,%ymm5
 5247         leal    (%rbx,%rdx,1),%ebx
 5248         rorxl   $27,%ecx,%r12d
 5249         rorxl   $2,%ecx,%edx
 5250         vpaddd  %ymm11,%ymm5,%ymm9
 5251         xorl    %esi,%ecx
 5252         addl    %r12d,%ebx
 5253         xorl    %eax,%ecx
 5254         vmovdqu %ymm9,160(%rsp)
 5255         addl    -128(%r13),%ebp
 5256         leal    (%rcx,%rbp,1),%ebp
 5257         rorxl   $27,%ebx,%r12d
 5258         rorxl   $2,%ebx,%ecx
 5259         xorl    %edx,%ebx
 5260         addl    %r12d,%ebp
 5261         xorl    %esi,%ebx
 5262         vpalignr        $8,%ymm2,%ymm3,%ymm6
 5263         addl    -124(%r13),%eax
 5264         leal    (%rax,%rbx,1),%eax
 5265         rorxl   $27,%ebp,%r12d
 5266         rorxl   $2,%ebp,%ebx
 5267         vpsrldq $4,%ymm5,%ymm8
 5268         xorl    %ecx,%ebp
 5269         addl    %r12d,%eax
 5270         xorl    %edx,%ebp
 5271         vpxor   %ymm2,%ymm6,%ymm6
 5272         vpxor   %ymm4,%ymm8,%ymm8
 5273         addl    -120(%r13),%esi
 5274         leal    (%rsi,%rbp,1),%esi
 5275         vpxor   %ymm8,%ymm6,%ymm6
 5276         rorxl   $27,%eax,%r12d
 5277         rorxl   $2,%eax,%ebp
 5278         xorl    %ebx,%eax
 5279         addl    %r12d,%esi
 5280         vpsrld  $31,%ymm6,%ymm8
 5281         xorl    %ecx,%eax
 5282         addl    -116(%r13),%edx
 5283         leal    (%rdx,%rax,1),%edx
 5284         vpslldq $12,%ymm6,%ymm10
 5285         vpaddd  %ymm6,%ymm6,%ymm6
 5286         rorxl   $27,%esi,%r12d
 5287         rorxl   $2,%esi,%eax
 5288         vpsrld  $30,%ymm10,%ymm9
 5289         vpor    %ymm8,%ymm6,%ymm6
 5290         xorl    %ebp,%esi
 5291         addl    %r12d,%edx
 5292         vpslld  $2,%ymm10,%ymm10
 5293         vpxor   %ymm9,%ymm6,%ymm6
 5294         xorl    %ebx,%esi
 5295         addl    -96(%r13),%ecx
 5296         vpxor   %ymm10,%ymm6,%ymm6
 5297         leal    (%rcx,%rsi,1),%ecx
 5298         rorxl   $27,%edx,%r12d
 5299         rorxl   $2,%edx,%esi
 5300         vpaddd  %ymm11,%ymm6,%ymm9
 5301         xorl    %eax,%edx
 5302         addl    %r12d,%ecx
 5303         xorl    %ebp,%edx
 5304         vmovdqu %ymm9,192(%rsp)
 5305         addl    -92(%r13),%ebx
 5306         leal    (%rbx,%rdx,1),%ebx
 5307         rorxl   $27,%ecx,%r12d
 5308         rorxl   $2,%ecx,%edx
 5309         xorl    %esi,%ecx
 5310         addl    %r12d,%ebx
 5311         xorl    %eax,%ecx
 5312         vpalignr        $8,%ymm3,%ymm4,%ymm7
 5313         addl    -88(%r13),%ebp
 5314         leal    (%rcx,%rbp,1),%ebp
 5315         rorxl   $27,%ebx,%r12d
 5316         rorxl   $2,%ebx,%ecx
 5317         vpsrldq $4,%ymm6,%ymm8
 5318         xorl    %edx,%ebx
 5319         addl    %r12d,%ebp
 5320         xorl    %esi,%ebx
 5321         vpxor   %ymm3,%ymm7,%ymm7
 5322         vpxor   %ymm5,%ymm8,%ymm8
 5323         addl    -84(%r13),%eax
 5324         leal    (%rax,%rbx,1),%eax
 5325         vpxor   %ymm8,%ymm7,%ymm7
 5326         rorxl   $27,%ebp,%r12d
 5327         rorxl   $2,%ebp,%ebx
 5328         xorl    %ecx,%ebp
 5329         addl    %r12d,%eax
 5330         vpsrld  $31,%ymm7,%ymm8
 5331         xorl    %edx,%ebp
 5332         addl    -64(%r13),%esi
 5333         leal    (%rsi,%rbp,1),%esi
 5334         vpslldq $12,%ymm7,%ymm10
 5335         vpaddd  %ymm7,%ymm7,%ymm7
 5336         rorxl   $27,%eax,%r12d
 5337         rorxl   $2,%eax,%ebp
 5338         vpsrld  $30,%ymm10,%ymm9
 5339         vpor    %ymm8,%ymm7,%ymm7
 5340         xorl    %ebx,%eax
 5341         addl    %r12d,%esi
 5342         vpslld  $2,%ymm10,%ymm10
 5343         vpxor   %ymm9,%ymm7,%ymm7
 5344         xorl    %ecx,%eax
 5345         addl    -60(%r13),%edx
 5346         vpxor   %ymm10,%ymm7,%ymm7
 5347         leal    (%rdx,%rax,1),%edx
 5348         rorxl   $27,%esi,%r12d
 5349         rorxl   $2,%esi,%eax
 5350         vpaddd  %ymm11,%ymm7,%ymm9
 5351         xorl    %ebp,%esi
 5352         addl    %r12d,%edx
 5353         xorl    %ebx,%esi
 5354         vmovdqu %ymm9,224(%rsp)
 5355         addl    -56(%r13),%ecx
 5356         leal    (%rcx,%rsi,1),%ecx
 5357         rorxl   $27,%edx,%r12d
 5358         rorxl   $2,%edx,%esi
 5359         xorl    %eax,%edx
 5360         addl    %r12d,%ecx
 5361         xorl    %ebp,%edx
 5362         addl    -52(%r13),%ebx
 5363         leal    (%rbx,%rdx,1),%ebx
 5364         rorxl   $27,%ecx,%r12d
 5365         rorxl   $2,%ecx,%edx
 5366         xorl    %esi,%ecx
 5367         addl    %r12d,%ebx
 5368         xorl    %eax,%ecx
 5369         addl    -32(%r13),%ebp
 5370         leal    (%rcx,%rbp,1),%ebp
 5371         rorxl   $27,%ebx,%r12d
 5372         rorxl   $2,%ebx,%ecx
 5373         xorl    %edx,%ebx
 5374         addl    %r12d,%ebp
 5375         xorl    %esi,%ebx
 5376         addl    -28(%r13),%eax
 5377         leal    (%rax,%rbx,1),%eax
 5378         rorxl   $27,%ebp,%r12d
 5379         rorxl   $2,%ebp,%ebx
 5380         xorl    %ecx,%ebp
 5381         addl    %r12d,%eax
 5382         xorl    %edx,%ebp
 5383         addl    -24(%r13),%esi
 5384         leal    (%rsi,%rbp,1),%esi
 5385         rorxl   $27,%eax,%r12d
 5386         rorxl   $2,%eax,%ebp
 5387         xorl    %ebx,%eax
 5388         addl    %r12d,%esi
 5389         xorl    %ecx,%eax
 5390         addl    -20(%r13),%edx
 5391         leal    (%rdx,%rax,1),%edx
 5392         rorxl   $27,%esi,%r12d
 5393         addl    %r12d,%edx
 5394         leaq    128(%rsp),%r13
 5395 
 5396 
 5397         addl    0(%r8),%edx
 5398         addl    4(%r8),%esi
 5399         addl    8(%r8),%ebp
 5400         movl    %edx,0(%r8)
 5401         addl    12(%r8),%ebx
 5402         movl    %esi,4(%r8)
 5403         movl    %edx,%eax
 5404         addl    16(%r8),%ecx
 5405         movl    %ebp,%r12d
 5406         movl    %ebp,8(%r8)
 5407         movl    %ebx,%edx
 5408 
 5409         movl    %ebx,12(%r8)
 5410         movl    %esi,%ebp
 5411         movl    %ecx,16(%r8)
 5412 
 5413         movl    %ecx,%esi
 5414         movl    %r12d,%ecx
 5415 
 5416 
 5417         cmpq    %r10,%r9
 5418         jbe     .Loop_avx2
 5419 
 5420 .Ldone_avx2:
 5421         vzeroupper
 5422         movq    -40(%r11),%r14
 5423 .cfi_restore    %r14
 5424         movq    -32(%r11),%r13
 5425 .cfi_restore    %r13
 5426         movq    -24(%r11),%r12
 5427 .cfi_restore    %r12
 5428         movq    -16(%r11),%rbp
 5429 .cfi_restore    %rbp
 5430         movq    -8(%r11),%rbx
 5431 .cfi_restore    %rbx
 5432         leaq    (%r11),%rsp
 5433 .cfi_def_cfa_register   %rsp
 5434 .Lepilogue_avx2:
 5435         .byte   0xf3,0xc3
 5436 .cfi_endproc    
 5437 .size   sha1_block_data_order_avx2,.-sha1_block_data_order_avx2
 5438 .align  64
 5439 K_XX_XX:
 5440 .long   0x5a827999,0x5a827999,0x5a827999,0x5a827999
 5441 .long   0x5a827999,0x5a827999,0x5a827999,0x5a827999
 5442 .long   0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
 5443 .long   0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
 5444 .long   0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
 5445 .long   0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
 5446 .long   0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
 5447 .long   0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
 5448 .long   0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
 5449 .long   0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
 5450 .byte   0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
 5451 .byte   83,72,65,49,32,98,108,111,99,107,32,116,114,97,110,115,102,111,114,109,32,102,111,114,32,120,56,54,95,54,52,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
 5452 .align  64

Cache object: 240a07b1cb8e72eaf43099dfc61e984b


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.