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-mb-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-mb-x86_64.pl. */
    3 .text   
    4 
    5 
    6 
    7 .globl  sha1_multi_block
    8 .type   sha1_multi_block,@function
    9 .align  32
   10 sha1_multi_block:
   11 .cfi_startproc  
   12         movq    OPENSSL_ia32cap_P+4(%rip),%rcx
   13         btq     $61,%rcx
   14         jc      _shaext_shortcut
   15         testl   $268435456,%ecx
   16         jnz     _avx_shortcut
   17         movq    %rsp,%rax
   18 .cfi_def_cfa_register   %rax
   19         pushq   %rbx
   20 .cfi_offset     %rbx,-16
   21         pushq   %rbp
   22 .cfi_offset     %rbx,-24
   23         subq    $288,%rsp
   24         andq    $-256,%rsp
   25         movq    %rax,272(%rsp)
   26 .cfi_escape     0x0f,0x06,0x77,0x90,0x02,0x06,0x23,0x08
   27 .Lbody:
   28         leaq    K_XX_XX(%rip),%rbp
   29         leaq    256(%rsp),%rbx
   30 
   31 .Loop_grande:
   32         movl    %edx,280(%rsp)
   33         xorl    %edx,%edx
   34         movq    0(%rsi),%r8
   35         movl    8(%rsi),%ecx
   36         cmpl    %edx,%ecx
   37         cmovgl  %ecx,%edx
   38         testl   %ecx,%ecx
   39         movl    %ecx,0(%rbx)
   40         cmovleq %rbp,%r8
   41         movq    16(%rsi),%r9
   42         movl    24(%rsi),%ecx
   43         cmpl    %edx,%ecx
   44         cmovgl  %ecx,%edx
   45         testl   %ecx,%ecx
   46         movl    %ecx,4(%rbx)
   47         cmovleq %rbp,%r9
   48         movq    32(%rsi),%r10
   49         movl    40(%rsi),%ecx
   50         cmpl    %edx,%ecx
   51         cmovgl  %ecx,%edx
   52         testl   %ecx,%ecx
   53         movl    %ecx,8(%rbx)
   54         cmovleq %rbp,%r10
   55         movq    48(%rsi),%r11
   56         movl    56(%rsi),%ecx
   57         cmpl    %edx,%ecx
   58         cmovgl  %ecx,%edx
   59         testl   %ecx,%ecx
   60         movl    %ecx,12(%rbx)
   61         cmovleq %rbp,%r11
   62         testl   %edx,%edx
   63         jz      .Ldone
   64 
   65         movdqu  0(%rdi),%xmm10
   66         leaq    128(%rsp),%rax
   67         movdqu  32(%rdi),%xmm11
   68         movdqu  64(%rdi),%xmm12
   69         movdqu  96(%rdi),%xmm13
   70         movdqu  128(%rdi),%xmm14
   71         movdqa  96(%rbp),%xmm5
   72         movdqa  -32(%rbp),%xmm15
   73         jmp     .Loop
   74 
   75 .align  32
   76 .Loop:
   77         movd    (%r8),%xmm0
   78         leaq    64(%r8),%r8
   79         movd    (%r9),%xmm2
   80         leaq    64(%r9),%r9
   81         movd    (%r10),%xmm3
   82         leaq    64(%r10),%r10
   83         movd    (%r11),%xmm4
   84         leaq    64(%r11),%r11
   85         punpckldq       %xmm3,%xmm0
   86         movd    -60(%r8),%xmm1
   87         punpckldq       %xmm4,%xmm2
   88         movd    -60(%r9),%xmm9
   89         punpckldq       %xmm2,%xmm0
   90         movd    -60(%r10),%xmm8
   91 .byte   102,15,56,0,197
   92         movd    -60(%r11),%xmm7
   93         punpckldq       %xmm8,%xmm1
   94         movdqa  %xmm10,%xmm8
   95         paddd   %xmm15,%xmm14
   96         punpckldq       %xmm7,%xmm9
   97         movdqa  %xmm11,%xmm7
   98         movdqa  %xmm11,%xmm6
   99         pslld   $5,%xmm8
  100         pandn   %xmm13,%xmm7
  101         pand    %xmm12,%xmm6
  102         punpckldq       %xmm9,%xmm1
  103         movdqa  %xmm10,%xmm9
  104 
  105         movdqa  %xmm0,0-128(%rax)
  106         paddd   %xmm0,%xmm14
  107         movd    -56(%r8),%xmm2
  108         psrld   $27,%xmm9
  109         pxor    %xmm7,%xmm6
  110         movdqa  %xmm11,%xmm7
  111 
  112         por     %xmm9,%xmm8
  113         movd    -56(%r9),%xmm9
  114         pslld   $30,%xmm7
  115         paddd   %xmm6,%xmm14
  116 
  117         psrld   $2,%xmm11
  118         paddd   %xmm8,%xmm14
  119 .byte   102,15,56,0,205
  120         movd    -56(%r10),%xmm8
  121         por     %xmm7,%xmm11
  122         movd    -56(%r11),%xmm7
  123         punpckldq       %xmm8,%xmm2
  124         movdqa  %xmm14,%xmm8
  125         paddd   %xmm15,%xmm13
  126         punpckldq       %xmm7,%xmm9
  127         movdqa  %xmm10,%xmm7
  128         movdqa  %xmm10,%xmm6
  129         pslld   $5,%xmm8
  130         pandn   %xmm12,%xmm7
  131         pand    %xmm11,%xmm6
  132         punpckldq       %xmm9,%xmm2
  133         movdqa  %xmm14,%xmm9
  134 
  135         movdqa  %xmm1,16-128(%rax)
  136         paddd   %xmm1,%xmm13
  137         movd    -52(%r8),%xmm3
  138         psrld   $27,%xmm9
  139         pxor    %xmm7,%xmm6
  140         movdqa  %xmm10,%xmm7
  141 
  142         por     %xmm9,%xmm8
  143         movd    -52(%r9),%xmm9
  144         pslld   $30,%xmm7
  145         paddd   %xmm6,%xmm13
  146 
  147         psrld   $2,%xmm10
  148         paddd   %xmm8,%xmm13
  149 .byte   102,15,56,0,213
  150         movd    -52(%r10),%xmm8
  151         por     %xmm7,%xmm10
  152         movd    -52(%r11),%xmm7
  153         punpckldq       %xmm8,%xmm3
  154         movdqa  %xmm13,%xmm8
  155         paddd   %xmm15,%xmm12
  156         punpckldq       %xmm7,%xmm9
  157         movdqa  %xmm14,%xmm7
  158         movdqa  %xmm14,%xmm6
  159         pslld   $5,%xmm8
  160         pandn   %xmm11,%xmm7
  161         pand    %xmm10,%xmm6
  162         punpckldq       %xmm9,%xmm3
  163         movdqa  %xmm13,%xmm9
  164 
  165         movdqa  %xmm2,32-128(%rax)
  166         paddd   %xmm2,%xmm12
  167         movd    -48(%r8),%xmm4
  168         psrld   $27,%xmm9
  169         pxor    %xmm7,%xmm6
  170         movdqa  %xmm14,%xmm7
  171 
  172         por     %xmm9,%xmm8
  173         movd    -48(%r9),%xmm9
  174         pslld   $30,%xmm7
  175         paddd   %xmm6,%xmm12
  176 
  177         psrld   $2,%xmm14
  178         paddd   %xmm8,%xmm12
  179 .byte   102,15,56,0,221
  180         movd    -48(%r10),%xmm8
  181         por     %xmm7,%xmm14
  182         movd    -48(%r11),%xmm7
  183         punpckldq       %xmm8,%xmm4
  184         movdqa  %xmm12,%xmm8
  185         paddd   %xmm15,%xmm11
  186         punpckldq       %xmm7,%xmm9
  187         movdqa  %xmm13,%xmm7
  188         movdqa  %xmm13,%xmm6
  189         pslld   $5,%xmm8
  190         pandn   %xmm10,%xmm7
  191         pand    %xmm14,%xmm6
  192         punpckldq       %xmm9,%xmm4
  193         movdqa  %xmm12,%xmm9
  194 
  195         movdqa  %xmm3,48-128(%rax)
  196         paddd   %xmm3,%xmm11
  197         movd    -44(%r8),%xmm0
  198         psrld   $27,%xmm9
  199         pxor    %xmm7,%xmm6
  200         movdqa  %xmm13,%xmm7
  201 
  202         por     %xmm9,%xmm8
  203         movd    -44(%r9),%xmm9
  204         pslld   $30,%xmm7
  205         paddd   %xmm6,%xmm11
  206 
  207         psrld   $2,%xmm13
  208         paddd   %xmm8,%xmm11
  209 .byte   102,15,56,0,229
  210         movd    -44(%r10),%xmm8
  211         por     %xmm7,%xmm13
  212         movd    -44(%r11),%xmm7
  213         punpckldq       %xmm8,%xmm0
  214         movdqa  %xmm11,%xmm8
  215         paddd   %xmm15,%xmm10
  216         punpckldq       %xmm7,%xmm9
  217         movdqa  %xmm12,%xmm7
  218         movdqa  %xmm12,%xmm6
  219         pslld   $5,%xmm8
  220         pandn   %xmm14,%xmm7
  221         pand    %xmm13,%xmm6
  222         punpckldq       %xmm9,%xmm0
  223         movdqa  %xmm11,%xmm9
  224 
  225         movdqa  %xmm4,64-128(%rax)
  226         paddd   %xmm4,%xmm10
  227         movd    -40(%r8),%xmm1
  228         psrld   $27,%xmm9
  229         pxor    %xmm7,%xmm6
  230         movdqa  %xmm12,%xmm7
  231 
  232         por     %xmm9,%xmm8
  233         movd    -40(%r9),%xmm9
  234         pslld   $30,%xmm7
  235         paddd   %xmm6,%xmm10
  236 
  237         psrld   $2,%xmm12
  238         paddd   %xmm8,%xmm10
  239 .byte   102,15,56,0,197
  240         movd    -40(%r10),%xmm8
  241         por     %xmm7,%xmm12
  242         movd    -40(%r11),%xmm7
  243         punpckldq       %xmm8,%xmm1
  244         movdqa  %xmm10,%xmm8
  245         paddd   %xmm15,%xmm14
  246         punpckldq       %xmm7,%xmm9
  247         movdqa  %xmm11,%xmm7
  248         movdqa  %xmm11,%xmm6
  249         pslld   $5,%xmm8
  250         pandn   %xmm13,%xmm7
  251         pand    %xmm12,%xmm6
  252         punpckldq       %xmm9,%xmm1
  253         movdqa  %xmm10,%xmm9
  254 
  255         movdqa  %xmm0,80-128(%rax)
  256         paddd   %xmm0,%xmm14
  257         movd    -36(%r8),%xmm2
  258         psrld   $27,%xmm9
  259         pxor    %xmm7,%xmm6
  260         movdqa  %xmm11,%xmm7
  261 
  262         por     %xmm9,%xmm8
  263         movd    -36(%r9),%xmm9
  264         pslld   $30,%xmm7
  265         paddd   %xmm6,%xmm14
  266 
  267         psrld   $2,%xmm11
  268         paddd   %xmm8,%xmm14
  269 .byte   102,15,56,0,205
  270         movd    -36(%r10),%xmm8
  271         por     %xmm7,%xmm11
  272         movd    -36(%r11),%xmm7
  273         punpckldq       %xmm8,%xmm2
  274         movdqa  %xmm14,%xmm8
  275         paddd   %xmm15,%xmm13
  276         punpckldq       %xmm7,%xmm9
  277         movdqa  %xmm10,%xmm7
  278         movdqa  %xmm10,%xmm6
  279         pslld   $5,%xmm8
  280         pandn   %xmm12,%xmm7
  281         pand    %xmm11,%xmm6
  282         punpckldq       %xmm9,%xmm2
  283         movdqa  %xmm14,%xmm9
  284 
  285         movdqa  %xmm1,96-128(%rax)
  286         paddd   %xmm1,%xmm13
  287         movd    -32(%r8),%xmm3
  288         psrld   $27,%xmm9
  289         pxor    %xmm7,%xmm6
  290         movdqa  %xmm10,%xmm7
  291 
  292         por     %xmm9,%xmm8
  293         movd    -32(%r9),%xmm9
  294         pslld   $30,%xmm7
  295         paddd   %xmm6,%xmm13
  296 
  297         psrld   $2,%xmm10
  298         paddd   %xmm8,%xmm13
  299 .byte   102,15,56,0,213
  300         movd    -32(%r10),%xmm8
  301         por     %xmm7,%xmm10
  302         movd    -32(%r11),%xmm7
  303         punpckldq       %xmm8,%xmm3
  304         movdqa  %xmm13,%xmm8
  305         paddd   %xmm15,%xmm12
  306         punpckldq       %xmm7,%xmm9
  307         movdqa  %xmm14,%xmm7
  308         movdqa  %xmm14,%xmm6
  309         pslld   $5,%xmm8
  310         pandn   %xmm11,%xmm7
  311         pand    %xmm10,%xmm6
  312         punpckldq       %xmm9,%xmm3
  313         movdqa  %xmm13,%xmm9
  314 
  315         movdqa  %xmm2,112-128(%rax)
  316         paddd   %xmm2,%xmm12
  317         movd    -28(%r8),%xmm4
  318         psrld   $27,%xmm9
  319         pxor    %xmm7,%xmm6
  320         movdqa  %xmm14,%xmm7
  321 
  322         por     %xmm9,%xmm8
  323         movd    -28(%r9),%xmm9
  324         pslld   $30,%xmm7
  325         paddd   %xmm6,%xmm12
  326 
  327         psrld   $2,%xmm14
  328         paddd   %xmm8,%xmm12
  329 .byte   102,15,56,0,221
  330         movd    -28(%r10),%xmm8
  331         por     %xmm7,%xmm14
  332         movd    -28(%r11),%xmm7
  333         punpckldq       %xmm8,%xmm4
  334         movdqa  %xmm12,%xmm8
  335         paddd   %xmm15,%xmm11
  336         punpckldq       %xmm7,%xmm9
  337         movdqa  %xmm13,%xmm7
  338         movdqa  %xmm13,%xmm6
  339         pslld   $5,%xmm8
  340         pandn   %xmm10,%xmm7
  341         pand    %xmm14,%xmm6
  342         punpckldq       %xmm9,%xmm4
  343         movdqa  %xmm12,%xmm9
  344 
  345         movdqa  %xmm3,128-128(%rax)
  346         paddd   %xmm3,%xmm11
  347         movd    -24(%r8),%xmm0
  348         psrld   $27,%xmm9
  349         pxor    %xmm7,%xmm6
  350         movdqa  %xmm13,%xmm7
  351 
  352         por     %xmm9,%xmm8
  353         movd    -24(%r9),%xmm9
  354         pslld   $30,%xmm7
  355         paddd   %xmm6,%xmm11
  356 
  357         psrld   $2,%xmm13
  358         paddd   %xmm8,%xmm11
  359 .byte   102,15,56,0,229
  360         movd    -24(%r10),%xmm8
  361         por     %xmm7,%xmm13
  362         movd    -24(%r11),%xmm7
  363         punpckldq       %xmm8,%xmm0
  364         movdqa  %xmm11,%xmm8
  365         paddd   %xmm15,%xmm10
  366         punpckldq       %xmm7,%xmm9
  367         movdqa  %xmm12,%xmm7
  368         movdqa  %xmm12,%xmm6
  369         pslld   $5,%xmm8
  370         pandn   %xmm14,%xmm7
  371         pand    %xmm13,%xmm6
  372         punpckldq       %xmm9,%xmm0
  373         movdqa  %xmm11,%xmm9
  374 
  375         movdqa  %xmm4,144-128(%rax)
  376         paddd   %xmm4,%xmm10
  377         movd    -20(%r8),%xmm1
  378         psrld   $27,%xmm9
  379         pxor    %xmm7,%xmm6
  380         movdqa  %xmm12,%xmm7
  381 
  382         por     %xmm9,%xmm8
  383         movd    -20(%r9),%xmm9
  384         pslld   $30,%xmm7
  385         paddd   %xmm6,%xmm10
  386 
  387         psrld   $2,%xmm12
  388         paddd   %xmm8,%xmm10
  389 .byte   102,15,56,0,197
  390         movd    -20(%r10),%xmm8
  391         por     %xmm7,%xmm12
  392         movd    -20(%r11),%xmm7
  393         punpckldq       %xmm8,%xmm1
  394         movdqa  %xmm10,%xmm8
  395         paddd   %xmm15,%xmm14
  396         punpckldq       %xmm7,%xmm9
  397         movdqa  %xmm11,%xmm7
  398         movdqa  %xmm11,%xmm6
  399         pslld   $5,%xmm8
  400         pandn   %xmm13,%xmm7
  401         pand    %xmm12,%xmm6
  402         punpckldq       %xmm9,%xmm1
  403         movdqa  %xmm10,%xmm9
  404 
  405         movdqa  %xmm0,160-128(%rax)
  406         paddd   %xmm0,%xmm14
  407         movd    -16(%r8),%xmm2
  408         psrld   $27,%xmm9
  409         pxor    %xmm7,%xmm6
  410         movdqa  %xmm11,%xmm7
  411 
  412         por     %xmm9,%xmm8
  413         movd    -16(%r9),%xmm9
  414         pslld   $30,%xmm7
  415         paddd   %xmm6,%xmm14
  416 
  417         psrld   $2,%xmm11
  418         paddd   %xmm8,%xmm14
  419 .byte   102,15,56,0,205
  420         movd    -16(%r10),%xmm8
  421         por     %xmm7,%xmm11
  422         movd    -16(%r11),%xmm7
  423         punpckldq       %xmm8,%xmm2
  424         movdqa  %xmm14,%xmm8
  425         paddd   %xmm15,%xmm13
  426         punpckldq       %xmm7,%xmm9
  427         movdqa  %xmm10,%xmm7
  428         movdqa  %xmm10,%xmm6
  429         pslld   $5,%xmm8
  430         pandn   %xmm12,%xmm7
  431         pand    %xmm11,%xmm6
  432         punpckldq       %xmm9,%xmm2
  433         movdqa  %xmm14,%xmm9
  434 
  435         movdqa  %xmm1,176-128(%rax)
  436         paddd   %xmm1,%xmm13
  437         movd    -12(%r8),%xmm3
  438         psrld   $27,%xmm9
  439         pxor    %xmm7,%xmm6
  440         movdqa  %xmm10,%xmm7
  441 
  442         por     %xmm9,%xmm8
  443         movd    -12(%r9),%xmm9
  444         pslld   $30,%xmm7
  445         paddd   %xmm6,%xmm13
  446 
  447         psrld   $2,%xmm10
  448         paddd   %xmm8,%xmm13
  449 .byte   102,15,56,0,213
  450         movd    -12(%r10),%xmm8
  451         por     %xmm7,%xmm10
  452         movd    -12(%r11),%xmm7
  453         punpckldq       %xmm8,%xmm3
  454         movdqa  %xmm13,%xmm8
  455         paddd   %xmm15,%xmm12
  456         punpckldq       %xmm7,%xmm9
  457         movdqa  %xmm14,%xmm7
  458         movdqa  %xmm14,%xmm6
  459         pslld   $5,%xmm8
  460         pandn   %xmm11,%xmm7
  461         pand    %xmm10,%xmm6
  462         punpckldq       %xmm9,%xmm3
  463         movdqa  %xmm13,%xmm9
  464 
  465         movdqa  %xmm2,192-128(%rax)
  466         paddd   %xmm2,%xmm12
  467         movd    -8(%r8),%xmm4
  468         psrld   $27,%xmm9
  469         pxor    %xmm7,%xmm6
  470         movdqa  %xmm14,%xmm7
  471 
  472         por     %xmm9,%xmm8
  473         movd    -8(%r9),%xmm9
  474         pslld   $30,%xmm7
  475         paddd   %xmm6,%xmm12
  476 
  477         psrld   $2,%xmm14
  478         paddd   %xmm8,%xmm12
  479 .byte   102,15,56,0,221
  480         movd    -8(%r10),%xmm8
  481         por     %xmm7,%xmm14
  482         movd    -8(%r11),%xmm7
  483         punpckldq       %xmm8,%xmm4
  484         movdqa  %xmm12,%xmm8
  485         paddd   %xmm15,%xmm11
  486         punpckldq       %xmm7,%xmm9
  487         movdqa  %xmm13,%xmm7
  488         movdqa  %xmm13,%xmm6
  489         pslld   $5,%xmm8
  490         pandn   %xmm10,%xmm7
  491         pand    %xmm14,%xmm6
  492         punpckldq       %xmm9,%xmm4
  493         movdqa  %xmm12,%xmm9
  494 
  495         movdqa  %xmm3,208-128(%rax)
  496         paddd   %xmm3,%xmm11
  497         movd    -4(%r8),%xmm0
  498         psrld   $27,%xmm9
  499         pxor    %xmm7,%xmm6
  500         movdqa  %xmm13,%xmm7
  501 
  502         por     %xmm9,%xmm8
  503         movd    -4(%r9),%xmm9
  504         pslld   $30,%xmm7
  505         paddd   %xmm6,%xmm11
  506 
  507         psrld   $2,%xmm13
  508         paddd   %xmm8,%xmm11
  509 .byte   102,15,56,0,229
  510         movd    -4(%r10),%xmm8
  511         por     %xmm7,%xmm13
  512         movdqa  0-128(%rax),%xmm1
  513         movd    -4(%r11),%xmm7
  514         punpckldq       %xmm8,%xmm0
  515         movdqa  %xmm11,%xmm8
  516         paddd   %xmm15,%xmm10
  517         punpckldq       %xmm7,%xmm9
  518         movdqa  %xmm12,%xmm7
  519         movdqa  %xmm12,%xmm6
  520         pslld   $5,%xmm8
  521         prefetcht0      63(%r8)
  522         pandn   %xmm14,%xmm7
  523         pand    %xmm13,%xmm6
  524         punpckldq       %xmm9,%xmm0
  525         movdqa  %xmm11,%xmm9
  526 
  527         movdqa  %xmm4,224-128(%rax)
  528         paddd   %xmm4,%xmm10
  529         psrld   $27,%xmm9
  530         pxor    %xmm7,%xmm6
  531         movdqa  %xmm12,%xmm7
  532         prefetcht0      63(%r9)
  533 
  534         por     %xmm9,%xmm8
  535         pslld   $30,%xmm7
  536         paddd   %xmm6,%xmm10
  537         prefetcht0      63(%r10)
  538 
  539         psrld   $2,%xmm12
  540         paddd   %xmm8,%xmm10
  541 .byte   102,15,56,0,197
  542         prefetcht0      63(%r11)
  543         por     %xmm7,%xmm12
  544         movdqa  16-128(%rax),%xmm2
  545         pxor    %xmm3,%xmm1
  546         movdqa  32-128(%rax),%xmm3
  547 
  548         movdqa  %xmm10,%xmm8
  549         pxor    128-128(%rax),%xmm1
  550         paddd   %xmm15,%xmm14
  551         movdqa  %xmm11,%xmm7
  552         pslld   $5,%xmm8
  553         pxor    %xmm3,%xmm1
  554         movdqa  %xmm11,%xmm6
  555         pandn   %xmm13,%xmm7
  556         movdqa  %xmm1,%xmm5
  557         pand    %xmm12,%xmm6
  558         movdqa  %xmm10,%xmm9
  559         psrld   $31,%xmm5
  560         paddd   %xmm1,%xmm1
  561 
  562         movdqa  %xmm0,240-128(%rax)
  563         paddd   %xmm0,%xmm14
  564         psrld   $27,%xmm9
  565         pxor    %xmm7,%xmm6
  566 
  567         movdqa  %xmm11,%xmm7
  568         por     %xmm9,%xmm8
  569         pslld   $30,%xmm7
  570         paddd   %xmm6,%xmm14
  571 
  572         psrld   $2,%xmm11
  573         paddd   %xmm8,%xmm14
  574         por     %xmm5,%xmm1
  575         por     %xmm7,%xmm11
  576         pxor    %xmm4,%xmm2
  577         movdqa  48-128(%rax),%xmm4
  578 
  579         movdqa  %xmm14,%xmm8
  580         pxor    144-128(%rax),%xmm2
  581         paddd   %xmm15,%xmm13
  582         movdqa  %xmm10,%xmm7
  583         pslld   $5,%xmm8
  584         pxor    %xmm4,%xmm2
  585         movdqa  %xmm10,%xmm6
  586         pandn   %xmm12,%xmm7
  587         movdqa  %xmm2,%xmm5
  588         pand    %xmm11,%xmm6
  589         movdqa  %xmm14,%xmm9
  590         psrld   $31,%xmm5
  591         paddd   %xmm2,%xmm2
  592 
  593         movdqa  %xmm1,0-128(%rax)
  594         paddd   %xmm1,%xmm13
  595         psrld   $27,%xmm9
  596         pxor    %xmm7,%xmm6
  597 
  598         movdqa  %xmm10,%xmm7
  599         por     %xmm9,%xmm8
  600         pslld   $30,%xmm7
  601         paddd   %xmm6,%xmm13
  602 
  603         psrld   $2,%xmm10
  604         paddd   %xmm8,%xmm13
  605         por     %xmm5,%xmm2
  606         por     %xmm7,%xmm10
  607         pxor    %xmm0,%xmm3
  608         movdqa  64-128(%rax),%xmm0
  609 
  610         movdqa  %xmm13,%xmm8
  611         pxor    160-128(%rax),%xmm3
  612         paddd   %xmm15,%xmm12
  613         movdqa  %xmm14,%xmm7
  614         pslld   $5,%xmm8
  615         pxor    %xmm0,%xmm3
  616         movdqa  %xmm14,%xmm6
  617         pandn   %xmm11,%xmm7
  618         movdqa  %xmm3,%xmm5
  619         pand    %xmm10,%xmm6
  620         movdqa  %xmm13,%xmm9
  621         psrld   $31,%xmm5
  622         paddd   %xmm3,%xmm3
  623 
  624         movdqa  %xmm2,16-128(%rax)
  625         paddd   %xmm2,%xmm12
  626         psrld   $27,%xmm9
  627         pxor    %xmm7,%xmm6
  628 
  629         movdqa  %xmm14,%xmm7
  630         por     %xmm9,%xmm8
  631         pslld   $30,%xmm7
  632         paddd   %xmm6,%xmm12
  633 
  634         psrld   $2,%xmm14
  635         paddd   %xmm8,%xmm12
  636         por     %xmm5,%xmm3
  637         por     %xmm7,%xmm14
  638         pxor    %xmm1,%xmm4
  639         movdqa  80-128(%rax),%xmm1
  640 
  641         movdqa  %xmm12,%xmm8
  642         pxor    176-128(%rax),%xmm4
  643         paddd   %xmm15,%xmm11
  644         movdqa  %xmm13,%xmm7
  645         pslld   $5,%xmm8
  646         pxor    %xmm1,%xmm4
  647         movdqa  %xmm13,%xmm6
  648         pandn   %xmm10,%xmm7
  649         movdqa  %xmm4,%xmm5
  650         pand    %xmm14,%xmm6
  651         movdqa  %xmm12,%xmm9
  652         psrld   $31,%xmm5
  653         paddd   %xmm4,%xmm4
  654 
  655         movdqa  %xmm3,32-128(%rax)
  656         paddd   %xmm3,%xmm11
  657         psrld   $27,%xmm9
  658         pxor    %xmm7,%xmm6
  659 
  660         movdqa  %xmm13,%xmm7
  661         por     %xmm9,%xmm8
  662         pslld   $30,%xmm7
  663         paddd   %xmm6,%xmm11
  664 
  665         psrld   $2,%xmm13
  666         paddd   %xmm8,%xmm11
  667         por     %xmm5,%xmm4
  668         por     %xmm7,%xmm13
  669         pxor    %xmm2,%xmm0
  670         movdqa  96-128(%rax),%xmm2
  671 
  672         movdqa  %xmm11,%xmm8
  673         pxor    192-128(%rax),%xmm0
  674         paddd   %xmm15,%xmm10
  675         movdqa  %xmm12,%xmm7
  676         pslld   $5,%xmm8
  677         pxor    %xmm2,%xmm0
  678         movdqa  %xmm12,%xmm6
  679         pandn   %xmm14,%xmm7
  680         movdqa  %xmm0,%xmm5
  681         pand    %xmm13,%xmm6
  682         movdqa  %xmm11,%xmm9
  683         psrld   $31,%xmm5
  684         paddd   %xmm0,%xmm0
  685 
  686         movdqa  %xmm4,48-128(%rax)
  687         paddd   %xmm4,%xmm10
  688         psrld   $27,%xmm9
  689         pxor    %xmm7,%xmm6
  690 
  691         movdqa  %xmm12,%xmm7
  692         por     %xmm9,%xmm8
  693         pslld   $30,%xmm7
  694         paddd   %xmm6,%xmm10
  695 
  696         psrld   $2,%xmm12
  697         paddd   %xmm8,%xmm10
  698         por     %xmm5,%xmm0
  699         por     %xmm7,%xmm12
  700         movdqa  0(%rbp),%xmm15
  701         pxor    %xmm3,%xmm1
  702         movdqa  112-128(%rax),%xmm3
  703 
  704         movdqa  %xmm10,%xmm8
  705         movdqa  %xmm13,%xmm6
  706         pxor    208-128(%rax),%xmm1
  707         paddd   %xmm15,%xmm14
  708         pslld   $5,%xmm8
  709         pxor    %xmm11,%xmm6
  710 
  711         movdqa  %xmm10,%xmm9
  712         movdqa  %xmm0,64-128(%rax)
  713         paddd   %xmm0,%xmm14
  714         pxor    %xmm3,%xmm1
  715         psrld   $27,%xmm9
  716         pxor    %xmm12,%xmm6
  717         movdqa  %xmm11,%xmm7
  718 
  719         pslld   $30,%xmm7
  720         movdqa  %xmm1,%xmm5
  721         por     %xmm9,%xmm8
  722         psrld   $31,%xmm5
  723         paddd   %xmm6,%xmm14
  724         paddd   %xmm1,%xmm1
  725 
  726         psrld   $2,%xmm11
  727         paddd   %xmm8,%xmm14
  728         por     %xmm5,%xmm1
  729         por     %xmm7,%xmm11
  730         pxor    %xmm4,%xmm2
  731         movdqa  128-128(%rax),%xmm4
  732 
  733         movdqa  %xmm14,%xmm8
  734         movdqa  %xmm12,%xmm6
  735         pxor    224-128(%rax),%xmm2
  736         paddd   %xmm15,%xmm13
  737         pslld   $5,%xmm8
  738         pxor    %xmm10,%xmm6
  739 
  740         movdqa  %xmm14,%xmm9
  741         movdqa  %xmm1,80-128(%rax)
  742         paddd   %xmm1,%xmm13
  743         pxor    %xmm4,%xmm2
  744         psrld   $27,%xmm9
  745         pxor    %xmm11,%xmm6
  746         movdqa  %xmm10,%xmm7
  747 
  748         pslld   $30,%xmm7
  749         movdqa  %xmm2,%xmm5
  750         por     %xmm9,%xmm8
  751         psrld   $31,%xmm5
  752         paddd   %xmm6,%xmm13
  753         paddd   %xmm2,%xmm2
  754 
  755         psrld   $2,%xmm10
  756         paddd   %xmm8,%xmm13
  757         por     %xmm5,%xmm2
  758         por     %xmm7,%xmm10
  759         pxor    %xmm0,%xmm3
  760         movdqa  144-128(%rax),%xmm0
  761 
  762         movdqa  %xmm13,%xmm8
  763         movdqa  %xmm11,%xmm6
  764         pxor    240-128(%rax),%xmm3
  765         paddd   %xmm15,%xmm12
  766         pslld   $5,%xmm8
  767         pxor    %xmm14,%xmm6
  768 
  769         movdqa  %xmm13,%xmm9
  770         movdqa  %xmm2,96-128(%rax)
  771         paddd   %xmm2,%xmm12
  772         pxor    %xmm0,%xmm3
  773         psrld   $27,%xmm9
  774         pxor    %xmm10,%xmm6
  775         movdqa  %xmm14,%xmm7
  776 
  777         pslld   $30,%xmm7
  778         movdqa  %xmm3,%xmm5
  779         por     %xmm9,%xmm8
  780         psrld   $31,%xmm5
  781         paddd   %xmm6,%xmm12
  782         paddd   %xmm3,%xmm3
  783 
  784         psrld   $2,%xmm14
  785         paddd   %xmm8,%xmm12
  786         por     %xmm5,%xmm3
  787         por     %xmm7,%xmm14
  788         pxor    %xmm1,%xmm4
  789         movdqa  160-128(%rax),%xmm1
  790 
  791         movdqa  %xmm12,%xmm8
  792         movdqa  %xmm10,%xmm6
  793         pxor    0-128(%rax),%xmm4
  794         paddd   %xmm15,%xmm11
  795         pslld   $5,%xmm8
  796         pxor    %xmm13,%xmm6
  797 
  798         movdqa  %xmm12,%xmm9
  799         movdqa  %xmm3,112-128(%rax)
  800         paddd   %xmm3,%xmm11
  801         pxor    %xmm1,%xmm4
  802         psrld   $27,%xmm9
  803         pxor    %xmm14,%xmm6
  804         movdqa  %xmm13,%xmm7
  805 
  806         pslld   $30,%xmm7
  807         movdqa  %xmm4,%xmm5
  808         por     %xmm9,%xmm8
  809         psrld   $31,%xmm5
  810         paddd   %xmm6,%xmm11
  811         paddd   %xmm4,%xmm4
  812 
  813         psrld   $2,%xmm13
  814         paddd   %xmm8,%xmm11
  815         por     %xmm5,%xmm4
  816         por     %xmm7,%xmm13
  817         pxor    %xmm2,%xmm0
  818         movdqa  176-128(%rax),%xmm2
  819 
  820         movdqa  %xmm11,%xmm8
  821         movdqa  %xmm14,%xmm6
  822         pxor    16-128(%rax),%xmm0
  823         paddd   %xmm15,%xmm10
  824         pslld   $5,%xmm8
  825         pxor    %xmm12,%xmm6
  826 
  827         movdqa  %xmm11,%xmm9
  828         movdqa  %xmm4,128-128(%rax)
  829         paddd   %xmm4,%xmm10
  830         pxor    %xmm2,%xmm0
  831         psrld   $27,%xmm9
  832         pxor    %xmm13,%xmm6
  833         movdqa  %xmm12,%xmm7
  834 
  835         pslld   $30,%xmm7
  836         movdqa  %xmm0,%xmm5
  837         por     %xmm9,%xmm8
  838         psrld   $31,%xmm5
  839         paddd   %xmm6,%xmm10
  840         paddd   %xmm0,%xmm0
  841 
  842         psrld   $2,%xmm12
  843         paddd   %xmm8,%xmm10
  844         por     %xmm5,%xmm0
  845         por     %xmm7,%xmm12
  846         pxor    %xmm3,%xmm1
  847         movdqa  192-128(%rax),%xmm3
  848 
  849         movdqa  %xmm10,%xmm8
  850         movdqa  %xmm13,%xmm6
  851         pxor    32-128(%rax),%xmm1
  852         paddd   %xmm15,%xmm14
  853         pslld   $5,%xmm8
  854         pxor    %xmm11,%xmm6
  855 
  856         movdqa  %xmm10,%xmm9
  857         movdqa  %xmm0,144-128(%rax)
  858         paddd   %xmm0,%xmm14
  859         pxor    %xmm3,%xmm1
  860         psrld   $27,%xmm9
  861         pxor    %xmm12,%xmm6
  862         movdqa  %xmm11,%xmm7
  863 
  864         pslld   $30,%xmm7
  865         movdqa  %xmm1,%xmm5
  866         por     %xmm9,%xmm8
  867         psrld   $31,%xmm5
  868         paddd   %xmm6,%xmm14
  869         paddd   %xmm1,%xmm1
  870 
  871         psrld   $2,%xmm11
  872         paddd   %xmm8,%xmm14
  873         por     %xmm5,%xmm1
  874         por     %xmm7,%xmm11
  875         pxor    %xmm4,%xmm2
  876         movdqa  208-128(%rax),%xmm4
  877 
  878         movdqa  %xmm14,%xmm8
  879         movdqa  %xmm12,%xmm6
  880         pxor    48-128(%rax),%xmm2
  881         paddd   %xmm15,%xmm13
  882         pslld   $5,%xmm8
  883         pxor    %xmm10,%xmm6
  884 
  885         movdqa  %xmm14,%xmm9
  886         movdqa  %xmm1,160-128(%rax)
  887         paddd   %xmm1,%xmm13
  888         pxor    %xmm4,%xmm2
  889         psrld   $27,%xmm9
  890         pxor    %xmm11,%xmm6
  891         movdqa  %xmm10,%xmm7
  892 
  893         pslld   $30,%xmm7
  894         movdqa  %xmm2,%xmm5
  895         por     %xmm9,%xmm8
  896         psrld   $31,%xmm5
  897         paddd   %xmm6,%xmm13
  898         paddd   %xmm2,%xmm2
  899 
  900         psrld   $2,%xmm10
  901         paddd   %xmm8,%xmm13
  902         por     %xmm5,%xmm2
  903         por     %xmm7,%xmm10
  904         pxor    %xmm0,%xmm3
  905         movdqa  224-128(%rax),%xmm0
  906 
  907         movdqa  %xmm13,%xmm8
  908         movdqa  %xmm11,%xmm6
  909         pxor    64-128(%rax),%xmm3
  910         paddd   %xmm15,%xmm12
  911         pslld   $5,%xmm8
  912         pxor    %xmm14,%xmm6
  913 
  914         movdqa  %xmm13,%xmm9
  915         movdqa  %xmm2,176-128(%rax)
  916         paddd   %xmm2,%xmm12
  917         pxor    %xmm0,%xmm3
  918         psrld   $27,%xmm9
  919         pxor    %xmm10,%xmm6
  920         movdqa  %xmm14,%xmm7
  921 
  922         pslld   $30,%xmm7
  923         movdqa  %xmm3,%xmm5
  924         por     %xmm9,%xmm8
  925         psrld   $31,%xmm5
  926         paddd   %xmm6,%xmm12
  927         paddd   %xmm3,%xmm3
  928 
  929         psrld   $2,%xmm14
  930         paddd   %xmm8,%xmm12
  931         por     %xmm5,%xmm3
  932         por     %xmm7,%xmm14
  933         pxor    %xmm1,%xmm4
  934         movdqa  240-128(%rax),%xmm1
  935 
  936         movdqa  %xmm12,%xmm8
  937         movdqa  %xmm10,%xmm6
  938         pxor    80-128(%rax),%xmm4
  939         paddd   %xmm15,%xmm11
  940         pslld   $5,%xmm8
  941         pxor    %xmm13,%xmm6
  942 
  943         movdqa  %xmm12,%xmm9
  944         movdqa  %xmm3,192-128(%rax)
  945         paddd   %xmm3,%xmm11
  946         pxor    %xmm1,%xmm4
  947         psrld   $27,%xmm9
  948         pxor    %xmm14,%xmm6
  949         movdqa  %xmm13,%xmm7
  950 
  951         pslld   $30,%xmm7
  952         movdqa  %xmm4,%xmm5
  953         por     %xmm9,%xmm8
  954         psrld   $31,%xmm5
  955         paddd   %xmm6,%xmm11
  956         paddd   %xmm4,%xmm4
  957 
  958         psrld   $2,%xmm13
  959         paddd   %xmm8,%xmm11
  960         por     %xmm5,%xmm4
  961         por     %xmm7,%xmm13
  962         pxor    %xmm2,%xmm0
  963         movdqa  0-128(%rax),%xmm2
  964 
  965         movdqa  %xmm11,%xmm8
  966         movdqa  %xmm14,%xmm6
  967         pxor    96-128(%rax),%xmm0
  968         paddd   %xmm15,%xmm10
  969         pslld   $5,%xmm8
  970         pxor    %xmm12,%xmm6
  971 
  972         movdqa  %xmm11,%xmm9
  973         movdqa  %xmm4,208-128(%rax)
  974         paddd   %xmm4,%xmm10
  975         pxor    %xmm2,%xmm0
  976         psrld   $27,%xmm9
  977         pxor    %xmm13,%xmm6
  978         movdqa  %xmm12,%xmm7
  979 
  980         pslld   $30,%xmm7
  981         movdqa  %xmm0,%xmm5
  982         por     %xmm9,%xmm8
  983         psrld   $31,%xmm5
  984         paddd   %xmm6,%xmm10
  985         paddd   %xmm0,%xmm0
  986 
  987         psrld   $2,%xmm12
  988         paddd   %xmm8,%xmm10
  989         por     %xmm5,%xmm0
  990         por     %xmm7,%xmm12
  991         pxor    %xmm3,%xmm1
  992         movdqa  16-128(%rax),%xmm3
  993 
  994         movdqa  %xmm10,%xmm8
  995         movdqa  %xmm13,%xmm6
  996         pxor    112-128(%rax),%xmm1
  997         paddd   %xmm15,%xmm14
  998         pslld   $5,%xmm8
  999         pxor    %xmm11,%xmm6
 1000 
 1001         movdqa  %xmm10,%xmm9
 1002         movdqa  %xmm0,224-128(%rax)
 1003         paddd   %xmm0,%xmm14
 1004         pxor    %xmm3,%xmm1
 1005         psrld   $27,%xmm9
 1006         pxor    %xmm12,%xmm6
 1007         movdqa  %xmm11,%xmm7
 1008 
 1009         pslld   $30,%xmm7
 1010         movdqa  %xmm1,%xmm5
 1011         por     %xmm9,%xmm8
 1012         psrld   $31,%xmm5
 1013         paddd   %xmm6,%xmm14
 1014         paddd   %xmm1,%xmm1
 1015 
 1016         psrld   $2,%xmm11
 1017         paddd   %xmm8,%xmm14
 1018         por     %xmm5,%xmm1
 1019         por     %xmm7,%xmm11
 1020         pxor    %xmm4,%xmm2
 1021         movdqa  32-128(%rax),%xmm4
 1022 
 1023         movdqa  %xmm14,%xmm8
 1024         movdqa  %xmm12,%xmm6
 1025         pxor    128-128(%rax),%xmm2
 1026         paddd   %xmm15,%xmm13
 1027         pslld   $5,%xmm8
 1028         pxor    %xmm10,%xmm6
 1029 
 1030         movdqa  %xmm14,%xmm9
 1031         movdqa  %xmm1,240-128(%rax)
 1032         paddd   %xmm1,%xmm13
 1033         pxor    %xmm4,%xmm2
 1034         psrld   $27,%xmm9
 1035         pxor    %xmm11,%xmm6
 1036         movdqa  %xmm10,%xmm7
 1037 
 1038         pslld   $30,%xmm7
 1039         movdqa  %xmm2,%xmm5
 1040         por     %xmm9,%xmm8
 1041         psrld   $31,%xmm5
 1042         paddd   %xmm6,%xmm13
 1043         paddd   %xmm2,%xmm2
 1044 
 1045         psrld   $2,%xmm10
 1046         paddd   %xmm8,%xmm13
 1047         por     %xmm5,%xmm2
 1048         por     %xmm7,%xmm10
 1049         pxor    %xmm0,%xmm3
 1050         movdqa  48-128(%rax),%xmm0
 1051 
 1052         movdqa  %xmm13,%xmm8
 1053         movdqa  %xmm11,%xmm6
 1054         pxor    144-128(%rax),%xmm3
 1055         paddd   %xmm15,%xmm12
 1056         pslld   $5,%xmm8
 1057         pxor    %xmm14,%xmm6
 1058 
 1059         movdqa  %xmm13,%xmm9
 1060         movdqa  %xmm2,0-128(%rax)
 1061         paddd   %xmm2,%xmm12
 1062         pxor    %xmm0,%xmm3
 1063         psrld   $27,%xmm9
 1064         pxor    %xmm10,%xmm6
 1065         movdqa  %xmm14,%xmm7
 1066 
 1067         pslld   $30,%xmm7
 1068         movdqa  %xmm3,%xmm5
 1069         por     %xmm9,%xmm8
 1070         psrld   $31,%xmm5
 1071         paddd   %xmm6,%xmm12
 1072         paddd   %xmm3,%xmm3
 1073 
 1074         psrld   $2,%xmm14
 1075         paddd   %xmm8,%xmm12
 1076         por     %xmm5,%xmm3
 1077         por     %xmm7,%xmm14
 1078         pxor    %xmm1,%xmm4
 1079         movdqa  64-128(%rax),%xmm1
 1080 
 1081         movdqa  %xmm12,%xmm8
 1082         movdqa  %xmm10,%xmm6
 1083         pxor    160-128(%rax),%xmm4
 1084         paddd   %xmm15,%xmm11
 1085         pslld   $5,%xmm8
 1086         pxor    %xmm13,%xmm6
 1087 
 1088         movdqa  %xmm12,%xmm9
 1089         movdqa  %xmm3,16-128(%rax)
 1090         paddd   %xmm3,%xmm11
 1091         pxor    %xmm1,%xmm4
 1092         psrld   $27,%xmm9
 1093         pxor    %xmm14,%xmm6
 1094         movdqa  %xmm13,%xmm7
 1095 
 1096         pslld   $30,%xmm7
 1097         movdqa  %xmm4,%xmm5
 1098         por     %xmm9,%xmm8
 1099         psrld   $31,%xmm5
 1100         paddd   %xmm6,%xmm11
 1101         paddd   %xmm4,%xmm4
 1102 
 1103         psrld   $2,%xmm13
 1104         paddd   %xmm8,%xmm11
 1105         por     %xmm5,%xmm4
 1106         por     %xmm7,%xmm13
 1107         pxor    %xmm2,%xmm0
 1108         movdqa  80-128(%rax),%xmm2
 1109 
 1110         movdqa  %xmm11,%xmm8
 1111         movdqa  %xmm14,%xmm6
 1112         pxor    176-128(%rax),%xmm0
 1113         paddd   %xmm15,%xmm10
 1114         pslld   $5,%xmm8
 1115         pxor    %xmm12,%xmm6
 1116 
 1117         movdqa  %xmm11,%xmm9
 1118         movdqa  %xmm4,32-128(%rax)
 1119         paddd   %xmm4,%xmm10
 1120         pxor    %xmm2,%xmm0
 1121         psrld   $27,%xmm9
 1122         pxor    %xmm13,%xmm6
 1123         movdqa  %xmm12,%xmm7
 1124 
 1125         pslld   $30,%xmm7
 1126         movdqa  %xmm0,%xmm5
 1127         por     %xmm9,%xmm8
 1128         psrld   $31,%xmm5
 1129         paddd   %xmm6,%xmm10
 1130         paddd   %xmm0,%xmm0
 1131 
 1132         psrld   $2,%xmm12
 1133         paddd   %xmm8,%xmm10
 1134         por     %xmm5,%xmm0
 1135         por     %xmm7,%xmm12
 1136         pxor    %xmm3,%xmm1
 1137         movdqa  96-128(%rax),%xmm3
 1138 
 1139         movdqa  %xmm10,%xmm8
 1140         movdqa  %xmm13,%xmm6
 1141         pxor    192-128(%rax),%xmm1
 1142         paddd   %xmm15,%xmm14
 1143         pslld   $5,%xmm8
 1144         pxor    %xmm11,%xmm6
 1145 
 1146         movdqa  %xmm10,%xmm9
 1147         movdqa  %xmm0,48-128(%rax)
 1148         paddd   %xmm0,%xmm14
 1149         pxor    %xmm3,%xmm1
 1150         psrld   $27,%xmm9
 1151         pxor    %xmm12,%xmm6
 1152         movdqa  %xmm11,%xmm7
 1153 
 1154         pslld   $30,%xmm7
 1155         movdqa  %xmm1,%xmm5
 1156         por     %xmm9,%xmm8
 1157         psrld   $31,%xmm5
 1158         paddd   %xmm6,%xmm14
 1159         paddd   %xmm1,%xmm1
 1160 
 1161         psrld   $2,%xmm11
 1162         paddd   %xmm8,%xmm14
 1163         por     %xmm5,%xmm1
 1164         por     %xmm7,%xmm11
 1165         pxor    %xmm4,%xmm2
 1166         movdqa  112-128(%rax),%xmm4
 1167 
 1168         movdqa  %xmm14,%xmm8
 1169         movdqa  %xmm12,%xmm6
 1170         pxor    208-128(%rax),%xmm2
 1171         paddd   %xmm15,%xmm13
 1172         pslld   $5,%xmm8
 1173         pxor    %xmm10,%xmm6
 1174 
 1175         movdqa  %xmm14,%xmm9
 1176         movdqa  %xmm1,64-128(%rax)
 1177         paddd   %xmm1,%xmm13
 1178         pxor    %xmm4,%xmm2
 1179         psrld   $27,%xmm9
 1180         pxor    %xmm11,%xmm6
 1181         movdqa  %xmm10,%xmm7
 1182 
 1183         pslld   $30,%xmm7
 1184         movdqa  %xmm2,%xmm5
 1185         por     %xmm9,%xmm8
 1186         psrld   $31,%xmm5
 1187         paddd   %xmm6,%xmm13
 1188         paddd   %xmm2,%xmm2
 1189 
 1190         psrld   $2,%xmm10
 1191         paddd   %xmm8,%xmm13
 1192         por     %xmm5,%xmm2
 1193         por     %xmm7,%xmm10
 1194         pxor    %xmm0,%xmm3
 1195         movdqa  128-128(%rax),%xmm0
 1196 
 1197         movdqa  %xmm13,%xmm8
 1198         movdqa  %xmm11,%xmm6
 1199         pxor    224-128(%rax),%xmm3
 1200         paddd   %xmm15,%xmm12
 1201         pslld   $5,%xmm8
 1202         pxor    %xmm14,%xmm6
 1203 
 1204         movdqa  %xmm13,%xmm9
 1205         movdqa  %xmm2,80-128(%rax)
 1206         paddd   %xmm2,%xmm12
 1207         pxor    %xmm0,%xmm3
 1208         psrld   $27,%xmm9
 1209         pxor    %xmm10,%xmm6
 1210         movdqa  %xmm14,%xmm7
 1211 
 1212         pslld   $30,%xmm7
 1213         movdqa  %xmm3,%xmm5
 1214         por     %xmm9,%xmm8
 1215         psrld   $31,%xmm5
 1216         paddd   %xmm6,%xmm12
 1217         paddd   %xmm3,%xmm3
 1218 
 1219         psrld   $2,%xmm14
 1220         paddd   %xmm8,%xmm12
 1221         por     %xmm5,%xmm3
 1222         por     %xmm7,%xmm14
 1223         pxor    %xmm1,%xmm4
 1224         movdqa  144-128(%rax),%xmm1
 1225 
 1226         movdqa  %xmm12,%xmm8
 1227         movdqa  %xmm10,%xmm6
 1228         pxor    240-128(%rax),%xmm4
 1229         paddd   %xmm15,%xmm11
 1230         pslld   $5,%xmm8
 1231         pxor    %xmm13,%xmm6
 1232 
 1233         movdqa  %xmm12,%xmm9
 1234         movdqa  %xmm3,96-128(%rax)
 1235         paddd   %xmm3,%xmm11
 1236         pxor    %xmm1,%xmm4
 1237         psrld   $27,%xmm9
 1238         pxor    %xmm14,%xmm6
 1239         movdqa  %xmm13,%xmm7
 1240 
 1241         pslld   $30,%xmm7
 1242         movdqa  %xmm4,%xmm5
 1243         por     %xmm9,%xmm8
 1244         psrld   $31,%xmm5
 1245         paddd   %xmm6,%xmm11
 1246         paddd   %xmm4,%xmm4
 1247 
 1248         psrld   $2,%xmm13
 1249         paddd   %xmm8,%xmm11
 1250         por     %xmm5,%xmm4
 1251         por     %xmm7,%xmm13
 1252         pxor    %xmm2,%xmm0
 1253         movdqa  160-128(%rax),%xmm2
 1254 
 1255         movdqa  %xmm11,%xmm8
 1256         movdqa  %xmm14,%xmm6
 1257         pxor    0-128(%rax),%xmm0
 1258         paddd   %xmm15,%xmm10
 1259         pslld   $5,%xmm8
 1260         pxor    %xmm12,%xmm6
 1261 
 1262         movdqa  %xmm11,%xmm9
 1263         movdqa  %xmm4,112-128(%rax)
 1264         paddd   %xmm4,%xmm10
 1265         pxor    %xmm2,%xmm0
 1266         psrld   $27,%xmm9
 1267         pxor    %xmm13,%xmm6
 1268         movdqa  %xmm12,%xmm7
 1269 
 1270         pslld   $30,%xmm7
 1271         movdqa  %xmm0,%xmm5
 1272         por     %xmm9,%xmm8
 1273         psrld   $31,%xmm5
 1274         paddd   %xmm6,%xmm10
 1275         paddd   %xmm0,%xmm0
 1276 
 1277         psrld   $2,%xmm12
 1278         paddd   %xmm8,%xmm10
 1279         por     %xmm5,%xmm0
 1280         por     %xmm7,%xmm12
 1281         movdqa  32(%rbp),%xmm15
 1282         pxor    %xmm3,%xmm1
 1283         movdqa  176-128(%rax),%xmm3
 1284 
 1285         movdqa  %xmm10,%xmm8
 1286         movdqa  %xmm13,%xmm7
 1287         pxor    16-128(%rax),%xmm1
 1288         pxor    %xmm3,%xmm1
 1289         paddd   %xmm15,%xmm14
 1290         pslld   $5,%xmm8
 1291         movdqa  %xmm10,%xmm9
 1292         pand    %xmm12,%xmm7
 1293 
 1294         movdqa  %xmm13,%xmm6
 1295         movdqa  %xmm1,%xmm5
 1296         psrld   $27,%xmm9
 1297         paddd   %xmm7,%xmm14
 1298         pxor    %xmm12,%xmm6
 1299 
 1300         movdqa  %xmm0,128-128(%rax)
 1301         paddd   %xmm0,%xmm14
 1302         por     %xmm9,%xmm8
 1303         psrld   $31,%xmm5
 1304         pand    %xmm11,%xmm6
 1305         movdqa  %xmm11,%xmm7
 1306 
 1307         pslld   $30,%xmm7
 1308         paddd   %xmm1,%xmm1
 1309         paddd   %xmm6,%xmm14
 1310 
 1311         psrld   $2,%xmm11
 1312         paddd   %xmm8,%xmm14
 1313         por     %xmm5,%xmm1
 1314         por     %xmm7,%xmm11
 1315         pxor    %xmm4,%xmm2
 1316         movdqa  192-128(%rax),%xmm4
 1317 
 1318         movdqa  %xmm14,%xmm8
 1319         movdqa  %xmm12,%xmm7
 1320         pxor    32-128(%rax),%xmm2
 1321         pxor    %xmm4,%xmm2
 1322         paddd   %xmm15,%xmm13
 1323         pslld   $5,%xmm8
 1324         movdqa  %xmm14,%xmm9
 1325         pand    %xmm11,%xmm7
 1326 
 1327         movdqa  %xmm12,%xmm6
 1328         movdqa  %xmm2,%xmm5
 1329         psrld   $27,%xmm9
 1330         paddd   %xmm7,%xmm13
 1331         pxor    %xmm11,%xmm6
 1332 
 1333         movdqa  %xmm1,144-128(%rax)
 1334         paddd   %xmm1,%xmm13
 1335         por     %xmm9,%xmm8
 1336         psrld   $31,%xmm5
 1337         pand    %xmm10,%xmm6
 1338         movdqa  %xmm10,%xmm7
 1339 
 1340         pslld   $30,%xmm7
 1341         paddd   %xmm2,%xmm2
 1342         paddd   %xmm6,%xmm13
 1343 
 1344         psrld   $2,%xmm10
 1345         paddd   %xmm8,%xmm13
 1346         por     %xmm5,%xmm2
 1347         por     %xmm7,%xmm10
 1348         pxor    %xmm0,%xmm3
 1349         movdqa  208-128(%rax),%xmm0
 1350 
 1351         movdqa  %xmm13,%xmm8
 1352         movdqa  %xmm11,%xmm7
 1353         pxor    48-128(%rax),%xmm3
 1354         pxor    %xmm0,%xmm3
 1355         paddd   %xmm15,%xmm12
 1356         pslld   $5,%xmm8
 1357         movdqa  %xmm13,%xmm9
 1358         pand    %xmm10,%xmm7
 1359 
 1360         movdqa  %xmm11,%xmm6
 1361         movdqa  %xmm3,%xmm5
 1362         psrld   $27,%xmm9
 1363         paddd   %xmm7,%xmm12
 1364         pxor    %xmm10,%xmm6
 1365 
 1366         movdqa  %xmm2,160-128(%rax)
 1367         paddd   %xmm2,%xmm12
 1368         por     %xmm9,%xmm8
 1369         psrld   $31,%xmm5
 1370         pand    %xmm14,%xmm6
 1371         movdqa  %xmm14,%xmm7
 1372 
 1373         pslld   $30,%xmm7
 1374         paddd   %xmm3,%xmm3
 1375         paddd   %xmm6,%xmm12
 1376 
 1377         psrld   $2,%xmm14
 1378         paddd   %xmm8,%xmm12
 1379         por     %xmm5,%xmm3
 1380         por     %xmm7,%xmm14
 1381         pxor    %xmm1,%xmm4
 1382         movdqa  224-128(%rax),%xmm1
 1383 
 1384         movdqa  %xmm12,%xmm8
 1385         movdqa  %xmm10,%xmm7
 1386         pxor    64-128(%rax),%xmm4
 1387         pxor    %xmm1,%xmm4
 1388         paddd   %xmm15,%xmm11
 1389         pslld   $5,%xmm8
 1390         movdqa  %xmm12,%xmm9
 1391         pand    %xmm14,%xmm7
 1392 
 1393         movdqa  %xmm10,%xmm6
 1394         movdqa  %xmm4,%xmm5
 1395         psrld   $27,%xmm9
 1396         paddd   %xmm7,%xmm11
 1397         pxor    %xmm14,%xmm6
 1398 
 1399         movdqa  %xmm3,176-128(%rax)
 1400         paddd   %xmm3,%xmm11
 1401         por     %xmm9,%xmm8
 1402         psrld   $31,%xmm5
 1403         pand    %xmm13,%xmm6
 1404         movdqa  %xmm13,%xmm7
 1405 
 1406         pslld   $30,%xmm7
 1407         paddd   %xmm4,%xmm4
 1408         paddd   %xmm6,%xmm11
 1409 
 1410         psrld   $2,%xmm13
 1411         paddd   %xmm8,%xmm11
 1412         por     %xmm5,%xmm4
 1413         por     %xmm7,%xmm13
 1414         pxor    %xmm2,%xmm0
 1415         movdqa  240-128(%rax),%xmm2
 1416 
 1417         movdqa  %xmm11,%xmm8
 1418         movdqa  %xmm14,%xmm7
 1419         pxor    80-128(%rax),%xmm0
 1420         pxor    %xmm2,%xmm0
 1421         paddd   %xmm15,%xmm10
 1422         pslld   $5,%xmm8
 1423         movdqa  %xmm11,%xmm9
 1424         pand    %xmm13,%xmm7
 1425 
 1426         movdqa  %xmm14,%xmm6
 1427         movdqa  %xmm0,%xmm5
 1428         psrld   $27,%xmm9
 1429         paddd   %xmm7,%xmm10
 1430         pxor    %xmm13,%xmm6
 1431 
 1432         movdqa  %xmm4,192-128(%rax)
 1433         paddd   %xmm4,%xmm10
 1434         por     %xmm9,%xmm8
 1435         psrld   $31,%xmm5
 1436         pand    %xmm12,%xmm6
 1437         movdqa  %xmm12,%xmm7
 1438 
 1439         pslld   $30,%xmm7
 1440         paddd   %xmm0,%xmm0
 1441         paddd   %xmm6,%xmm10
 1442 
 1443         psrld   $2,%xmm12
 1444         paddd   %xmm8,%xmm10
 1445         por     %xmm5,%xmm0
 1446         por     %xmm7,%xmm12
 1447         pxor    %xmm3,%xmm1
 1448         movdqa  0-128(%rax),%xmm3
 1449 
 1450         movdqa  %xmm10,%xmm8
 1451         movdqa  %xmm13,%xmm7
 1452         pxor    96-128(%rax),%xmm1
 1453         pxor    %xmm3,%xmm1
 1454         paddd   %xmm15,%xmm14
 1455         pslld   $5,%xmm8
 1456         movdqa  %xmm10,%xmm9
 1457         pand    %xmm12,%xmm7
 1458 
 1459         movdqa  %xmm13,%xmm6
 1460         movdqa  %xmm1,%xmm5
 1461         psrld   $27,%xmm9
 1462         paddd   %xmm7,%xmm14
 1463         pxor    %xmm12,%xmm6
 1464 
 1465         movdqa  %xmm0,208-128(%rax)
 1466         paddd   %xmm0,%xmm14
 1467         por     %xmm9,%xmm8
 1468         psrld   $31,%xmm5
 1469         pand    %xmm11,%xmm6
 1470         movdqa  %xmm11,%xmm7
 1471 
 1472         pslld   $30,%xmm7
 1473         paddd   %xmm1,%xmm1
 1474         paddd   %xmm6,%xmm14
 1475 
 1476         psrld   $2,%xmm11
 1477         paddd   %xmm8,%xmm14
 1478         por     %xmm5,%xmm1
 1479         por     %xmm7,%xmm11
 1480         pxor    %xmm4,%xmm2
 1481         movdqa  16-128(%rax),%xmm4
 1482 
 1483         movdqa  %xmm14,%xmm8
 1484         movdqa  %xmm12,%xmm7
 1485         pxor    112-128(%rax),%xmm2
 1486         pxor    %xmm4,%xmm2
 1487         paddd   %xmm15,%xmm13
 1488         pslld   $5,%xmm8
 1489         movdqa  %xmm14,%xmm9
 1490         pand    %xmm11,%xmm7
 1491 
 1492         movdqa  %xmm12,%xmm6
 1493         movdqa  %xmm2,%xmm5
 1494         psrld   $27,%xmm9
 1495         paddd   %xmm7,%xmm13
 1496         pxor    %xmm11,%xmm6
 1497 
 1498         movdqa  %xmm1,224-128(%rax)
 1499         paddd   %xmm1,%xmm13
 1500         por     %xmm9,%xmm8
 1501         psrld   $31,%xmm5
 1502         pand    %xmm10,%xmm6
 1503         movdqa  %xmm10,%xmm7
 1504 
 1505         pslld   $30,%xmm7
 1506         paddd   %xmm2,%xmm2
 1507         paddd   %xmm6,%xmm13
 1508 
 1509         psrld   $2,%xmm10
 1510         paddd   %xmm8,%xmm13
 1511         por     %xmm5,%xmm2
 1512         por     %xmm7,%xmm10
 1513         pxor    %xmm0,%xmm3
 1514         movdqa  32-128(%rax),%xmm0
 1515 
 1516         movdqa  %xmm13,%xmm8
 1517         movdqa  %xmm11,%xmm7
 1518         pxor    128-128(%rax),%xmm3
 1519         pxor    %xmm0,%xmm3
 1520         paddd   %xmm15,%xmm12
 1521         pslld   $5,%xmm8
 1522         movdqa  %xmm13,%xmm9
 1523         pand    %xmm10,%xmm7
 1524 
 1525         movdqa  %xmm11,%xmm6
 1526         movdqa  %xmm3,%xmm5
 1527         psrld   $27,%xmm9
 1528         paddd   %xmm7,%xmm12
 1529         pxor    %xmm10,%xmm6
 1530 
 1531         movdqa  %xmm2,240-128(%rax)
 1532         paddd   %xmm2,%xmm12
 1533         por     %xmm9,%xmm8
 1534         psrld   $31,%xmm5
 1535         pand    %xmm14,%xmm6
 1536         movdqa  %xmm14,%xmm7
 1537 
 1538         pslld   $30,%xmm7
 1539         paddd   %xmm3,%xmm3
 1540         paddd   %xmm6,%xmm12
 1541 
 1542         psrld   $2,%xmm14
 1543         paddd   %xmm8,%xmm12
 1544         por     %xmm5,%xmm3
 1545         por     %xmm7,%xmm14
 1546         pxor    %xmm1,%xmm4
 1547         movdqa  48-128(%rax),%xmm1
 1548 
 1549         movdqa  %xmm12,%xmm8
 1550         movdqa  %xmm10,%xmm7
 1551         pxor    144-128(%rax),%xmm4
 1552         pxor    %xmm1,%xmm4
 1553         paddd   %xmm15,%xmm11
 1554         pslld   $5,%xmm8
 1555         movdqa  %xmm12,%xmm9
 1556         pand    %xmm14,%xmm7
 1557 
 1558         movdqa  %xmm10,%xmm6
 1559         movdqa  %xmm4,%xmm5
 1560         psrld   $27,%xmm9
 1561         paddd   %xmm7,%xmm11
 1562         pxor    %xmm14,%xmm6
 1563 
 1564         movdqa  %xmm3,0-128(%rax)
 1565         paddd   %xmm3,%xmm11
 1566         por     %xmm9,%xmm8
 1567         psrld   $31,%xmm5
 1568         pand    %xmm13,%xmm6
 1569         movdqa  %xmm13,%xmm7
 1570 
 1571         pslld   $30,%xmm7
 1572         paddd   %xmm4,%xmm4
 1573         paddd   %xmm6,%xmm11
 1574 
 1575         psrld   $2,%xmm13
 1576         paddd   %xmm8,%xmm11
 1577         por     %xmm5,%xmm4
 1578         por     %xmm7,%xmm13
 1579         pxor    %xmm2,%xmm0
 1580         movdqa  64-128(%rax),%xmm2
 1581 
 1582         movdqa  %xmm11,%xmm8
 1583         movdqa  %xmm14,%xmm7
 1584         pxor    160-128(%rax),%xmm0
 1585         pxor    %xmm2,%xmm0
 1586         paddd   %xmm15,%xmm10
 1587         pslld   $5,%xmm8
 1588         movdqa  %xmm11,%xmm9
 1589         pand    %xmm13,%xmm7
 1590 
 1591         movdqa  %xmm14,%xmm6
 1592         movdqa  %xmm0,%xmm5
 1593         psrld   $27,%xmm9
 1594         paddd   %xmm7,%xmm10
 1595         pxor    %xmm13,%xmm6
 1596 
 1597         movdqa  %xmm4,16-128(%rax)
 1598         paddd   %xmm4,%xmm10
 1599         por     %xmm9,%xmm8
 1600         psrld   $31,%xmm5
 1601         pand    %xmm12,%xmm6
 1602         movdqa  %xmm12,%xmm7
 1603 
 1604         pslld   $30,%xmm7
 1605         paddd   %xmm0,%xmm0
 1606         paddd   %xmm6,%xmm10
 1607 
 1608         psrld   $2,%xmm12
 1609         paddd   %xmm8,%xmm10
 1610         por     %xmm5,%xmm0
 1611         por     %xmm7,%xmm12
 1612         pxor    %xmm3,%xmm1
 1613         movdqa  80-128(%rax),%xmm3
 1614 
 1615         movdqa  %xmm10,%xmm8
 1616         movdqa  %xmm13,%xmm7
 1617         pxor    176-128(%rax),%xmm1
 1618         pxor    %xmm3,%xmm1
 1619         paddd   %xmm15,%xmm14
 1620         pslld   $5,%xmm8
 1621         movdqa  %xmm10,%xmm9
 1622         pand    %xmm12,%xmm7
 1623 
 1624         movdqa  %xmm13,%xmm6
 1625         movdqa  %xmm1,%xmm5
 1626         psrld   $27,%xmm9
 1627         paddd   %xmm7,%xmm14
 1628         pxor    %xmm12,%xmm6
 1629 
 1630         movdqa  %xmm0,32-128(%rax)
 1631         paddd   %xmm0,%xmm14
 1632         por     %xmm9,%xmm8
 1633         psrld   $31,%xmm5
 1634         pand    %xmm11,%xmm6
 1635         movdqa  %xmm11,%xmm7
 1636 
 1637         pslld   $30,%xmm7
 1638         paddd   %xmm1,%xmm1
 1639         paddd   %xmm6,%xmm14
 1640 
 1641         psrld   $2,%xmm11
 1642         paddd   %xmm8,%xmm14
 1643         por     %xmm5,%xmm1
 1644         por     %xmm7,%xmm11
 1645         pxor    %xmm4,%xmm2
 1646         movdqa  96-128(%rax),%xmm4
 1647 
 1648         movdqa  %xmm14,%xmm8
 1649         movdqa  %xmm12,%xmm7
 1650         pxor    192-128(%rax),%xmm2
 1651         pxor    %xmm4,%xmm2
 1652         paddd   %xmm15,%xmm13
 1653         pslld   $5,%xmm8
 1654         movdqa  %xmm14,%xmm9
 1655         pand    %xmm11,%xmm7
 1656 
 1657         movdqa  %xmm12,%xmm6
 1658         movdqa  %xmm2,%xmm5
 1659         psrld   $27,%xmm9
 1660         paddd   %xmm7,%xmm13
 1661         pxor    %xmm11,%xmm6
 1662 
 1663         movdqa  %xmm1,48-128(%rax)
 1664         paddd   %xmm1,%xmm13
 1665         por     %xmm9,%xmm8
 1666         psrld   $31,%xmm5
 1667         pand    %xmm10,%xmm6
 1668         movdqa  %xmm10,%xmm7
 1669 
 1670         pslld   $30,%xmm7
 1671         paddd   %xmm2,%xmm2
 1672         paddd   %xmm6,%xmm13
 1673 
 1674         psrld   $2,%xmm10
 1675         paddd   %xmm8,%xmm13
 1676         por     %xmm5,%xmm2
 1677         por     %xmm7,%xmm10
 1678         pxor    %xmm0,%xmm3
 1679         movdqa  112-128(%rax),%xmm0
 1680 
 1681         movdqa  %xmm13,%xmm8
 1682         movdqa  %xmm11,%xmm7
 1683         pxor    208-128(%rax),%xmm3
 1684         pxor    %xmm0,%xmm3
 1685         paddd   %xmm15,%xmm12
 1686         pslld   $5,%xmm8
 1687         movdqa  %xmm13,%xmm9
 1688         pand    %xmm10,%xmm7
 1689 
 1690         movdqa  %xmm11,%xmm6
 1691         movdqa  %xmm3,%xmm5
 1692         psrld   $27,%xmm9
 1693         paddd   %xmm7,%xmm12
 1694         pxor    %xmm10,%xmm6
 1695 
 1696         movdqa  %xmm2,64-128(%rax)
 1697         paddd   %xmm2,%xmm12
 1698         por     %xmm9,%xmm8
 1699         psrld   $31,%xmm5
 1700         pand    %xmm14,%xmm6
 1701         movdqa  %xmm14,%xmm7
 1702 
 1703         pslld   $30,%xmm7
 1704         paddd   %xmm3,%xmm3
 1705         paddd   %xmm6,%xmm12
 1706 
 1707         psrld   $2,%xmm14
 1708         paddd   %xmm8,%xmm12
 1709         por     %xmm5,%xmm3
 1710         por     %xmm7,%xmm14
 1711         pxor    %xmm1,%xmm4
 1712         movdqa  128-128(%rax),%xmm1
 1713 
 1714         movdqa  %xmm12,%xmm8
 1715         movdqa  %xmm10,%xmm7
 1716         pxor    224-128(%rax),%xmm4
 1717         pxor    %xmm1,%xmm4
 1718         paddd   %xmm15,%xmm11
 1719         pslld   $5,%xmm8
 1720         movdqa  %xmm12,%xmm9
 1721         pand    %xmm14,%xmm7
 1722 
 1723         movdqa  %xmm10,%xmm6
 1724         movdqa  %xmm4,%xmm5
 1725         psrld   $27,%xmm9
 1726         paddd   %xmm7,%xmm11
 1727         pxor    %xmm14,%xmm6
 1728 
 1729         movdqa  %xmm3,80-128(%rax)
 1730         paddd   %xmm3,%xmm11
 1731         por     %xmm9,%xmm8
 1732         psrld   $31,%xmm5
 1733         pand    %xmm13,%xmm6
 1734         movdqa  %xmm13,%xmm7
 1735 
 1736         pslld   $30,%xmm7
 1737         paddd   %xmm4,%xmm4
 1738         paddd   %xmm6,%xmm11
 1739 
 1740         psrld   $2,%xmm13
 1741         paddd   %xmm8,%xmm11
 1742         por     %xmm5,%xmm4
 1743         por     %xmm7,%xmm13
 1744         pxor    %xmm2,%xmm0
 1745         movdqa  144-128(%rax),%xmm2
 1746 
 1747         movdqa  %xmm11,%xmm8
 1748         movdqa  %xmm14,%xmm7
 1749         pxor    240-128(%rax),%xmm0
 1750         pxor    %xmm2,%xmm0
 1751         paddd   %xmm15,%xmm10
 1752         pslld   $5,%xmm8
 1753         movdqa  %xmm11,%xmm9
 1754         pand    %xmm13,%xmm7
 1755 
 1756         movdqa  %xmm14,%xmm6
 1757         movdqa  %xmm0,%xmm5
 1758         psrld   $27,%xmm9
 1759         paddd   %xmm7,%xmm10
 1760         pxor    %xmm13,%xmm6
 1761 
 1762         movdqa  %xmm4,96-128(%rax)
 1763         paddd   %xmm4,%xmm10
 1764         por     %xmm9,%xmm8
 1765         psrld   $31,%xmm5
 1766         pand    %xmm12,%xmm6
 1767         movdqa  %xmm12,%xmm7
 1768 
 1769         pslld   $30,%xmm7
 1770         paddd   %xmm0,%xmm0
 1771         paddd   %xmm6,%xmm10
 1772 
 1773         psrld   $2,%xmm12
 1774         paddd   %xmm8,%xmm10
 1775         por     %xmm5,%xmm0
 1776         por     %xmm7,%xmm12
 1777         pxor    %xmm3,%xmm1
 1778         movdqa  160-128(%rax),%xmm3
 1779 
 1780         movdqa  %xmm10,%xmm8
 1781         movdqa  %xmm13,%xmm7
 1782         pxor    0-128(%rax),%xmm1
 1783         pxor    %xmm3,%xmm1
 1784         paddd   %xmm15,%xmm14
 1785         pslld   $5,%xmm8
 1786         movdqa  %xmm10,%xmm9
 1787         pand    %xmm12,%xmm7
 1788 
 1789         movdqa  %xmm13,%xmm6
 1790         movdqa  %xmm1,%xmm5
 1791         psrld   $27,%xmm9
 1792         paddd   %xmm7,%xmm14
 1793         pxor    %xmm12,%xmm6
 1794 
 1795         movdqa  %xmm0,112-128(%rax)
 1796         paddd   %xmm0,%xmm14
 1797         por     %xmm9,%xmm8
 1798         psrld   $31,%xmm5
 1799         pand    %xmm11,%xmm6
 1800         movdqa  %xmm11,%xmm7
 1801 
 1802         pslld   $30,%xmm7
 1803         paddd   %xmm1,%xmm1
 1804         paddd   %xmm6,%xmm14
 1805 
 1806         psrld   $2,%xmm11
 1807         paddd   %xmm8,%xmm14
 1808         por     %xmm5,%xmm1
 1809         por     %xmm7,%xmm11
 1810         pxor    %xmm4,%xmm2
 1811         movdqa  176-128(%rax),%xmm4
 1812 
 1813         movdqa  %xmm14,%xmm8
 1814         movdqa  %xmm12,%xmm7
 1815         pxor    16-128(%rax),%xmm2
 1816         pxor    %xmm4,%xmm2
 1817         paddd   %xmm15,%xmm13
 1818         pslld   $5,%xmm8
 1819         movdqa  %xmm14,%xmm9
 1820         pand    %xmm11,%xmm7
 1821 
 1822         movdqa  %xmm12,%xmm6
 1823         movdqa  %xmm2,%xmm5
 1824         psrld   $27,%xmm9
 1825         paddd   %xmm7,%xmm13
 1826         pxor    %xmm11,%xmm6
 1827 
 1828         movdqa  %xmm1,128-128(%rax)
 1829         paddd   %xmm1,%xmm13
 1830         por     %xmm9,%xmm8
 1831         psrld   $31,%xmm5
 1832         pand    %xmm10,%xmm6
 1833         movdqa  %xmm10,%xmm7
 1834 
 1835         pslld   $30,%xmm7
 1836         paddd   %xmm2,%xmm2
 1837         paddd   %xmm6,%xmm13
 1838 
 1839         psrld   $2,%xmm10
 1840         paddd   %xmm8,%xmm13
 1841         por     %xmm5,%xmm2
 1842         por     %xmm7,%xmm10
 1843         pxor    %xmm0,%xmm3
 1844         movdqa  192-128(%rax),%xmm0
 1845 
 1846         movdqa  %xmm13,%xmm8
 1847         movdqa  %xmm11,%xmm7
 1848         pxor    32-128(%rax),%xmm3
 1849         pxor    %xmm0,%xmm3
 1850         paddd   %xmm15,%xmm12
 1851         pslld   $5,%xmm8
 1852         movdqa  %xmm13,%xmm9
 1853         pand    %xmm10,%xmm7
 1854 
 1855         movdqa  %xmm11,%xmm6
 1856         movdqa  %xmm3,%xmm5
 1857         psrld   $27,%xmm9
 1858         paddd   %xmm7,%xmm12
 1859         pxor    %xmm10,%xmm6
 1860 
 1861         movdqa  %xmm2,144-128(%rax)
 1862         paddd   %xmm2,%xmm12
 1863         por     %xmm9,%xmm8
 1864         psrld   $31,%xmm5
 1865         pand    %xmm14,%xmm6
 1866         movdqa  %xmm14,%xmm7
 1867 
 1868         pslld   $30,%xmm7
 1869         paddd   %xmm3,%xmm3
 1870         paddd   %xmm6,%xmm12
 1871 
 1872         psrld   $2,%xmm14
 1873         paddd   %xmm8,%xmm12
 1874         por     %xmm5,%xmm3
 1875         por     %xmm7,%xmm14
 1876         pxor    %xmm1,%xmm4
 1877         movdqa  208-128(%rax),%xmm1
 1878 
 1879         movdqa  %xmm12,%xmm8
 1880         movdqa  %xmm10,%xmm7
 1881         pxor    48-128(%rax),%xmm4
 1882         pxor    %xmm1,%xmm4
 1883         paddd   %xmm15,%xmm11
 1884         pslld   $5,%xmm8
 1885         movdqa  %xmm12,%xmm9
 1886         pand    %xmm14,%xmm7
 1887 
 1888         movdqa  %xmm10,%xmm6
 1889         movdqa  %xmm4,%xmm5
 1890         psrld   $27,%xmm9
 1891         paddd   %xmm7,%xmm11
 1892         pxor    %xmm14,%xmm6
 1893 
 1894         movdqa  %xmm3,160-128(%rax)
 1895         paddd   %xmm3,%xmm11
 1896         por     %xmm9,%xmm8
 1897         psrld   $31,%xmm5
 1898         pand    %xmm13,%xmm6
 1899         movdqa  %xmm13,%xmm7
 1900 
 1901         pslld   $30,%xmm7
 1902         paddd   %xmm4,%xmm4
 1903         paddd   %xmm6,%xmm11
 1904 
 1905         psrld   $2,%xmm13
 1906         paddd   %xmm8,%xmm11
 1907         por     %xmm5,%xmm4
 1908         por     %xmm7,%xmm13
 1909         pxor    %xmm2,%xmm0
 1910         movdqa  224-128(%rax),%xmm2
 1911 
 1912         movdqa  %xmm11,%xmm8
 1913         movdqa  %xmm14,%xmm7
 1914         pxor    64-128(%rax),%xmm0
 1915         pxor    %xmm2,%xmm0
 1916         paddd   %xmm15,%xmm10
 1917         pslld   $5,%xmm8
 1918         movdqa  %xmm11,%xmm9
 1919         pand    %xmm13,%xmm7
 1920 
 1921         movdqa  %xmm14,%xmm6
 1922         movdqa  %xmm0,%xmm5
 1923         psrld   $27,%xmm9
 1924         paddd   %xmm7,%xmm10
 1925         pxor    %xmm13,%xmm6
 1926 
 1927         movdqa  %xmm4,176-128(%rax)
 1928         paddd   %xmm4,%xmm10
 1929         por     %xmm9,%xmm8
 1930         psrld   $31,%xmm5
 1931         pand    %xmm12,%xmm6
 1932         movdqa  %xmm12,%xmm7
 1933 
 1934         pslld   $30,%xmm7
 1935         paddd   %xmm0,%xmm0
 1936         paddd   %xmm6,%xmm10
 1937 
 1938         psrld   $2,%xmm12
 1939         paddd   %xmm8,%xmm10
 1940         por     %xmm5,%xmm0
 1941         por     %xmm7,%xmm12
 1942         movdqa  64(%rbp),%xmm15
 1943         pxor    %xmm3,%xmm1
 1944         movdqa  240-128(%rax),%xmm3
 1945 
 1946         movdqa  %xmm10,%xmm8
 1947         movdqa  %xmm13,%xmm6
 1948         pxor    80-128(%rax),%xmm1
 1949         paddd   %xmm15,%xmm14
 1950         pslld   $5,%xmm8
 1951         pxor    %xmm11,%xmm6
 1952 
 1953         movdqa  %xmm10,%xmm9
 1954         movdqa  %xmm0,192-128(%rax)
 1955         paddd   %xmm0,%xmm14
 1956         pxor    %xmm3,%xmm1
 1957         psrld   $27,%xmm9
 1958         pxor    %xmm12,%xmm6
 1959         movdqa  %xmm11,%xmm7
 1960 
 1961         pslld   $30,%xmm7
 1962         movdqa  %xmm1,%xmm5
 1963         por     %xmm9,%xmm8
 1964         psrld   $31,%xmm5
 1965         paddd   %xmm6,%xmm14
 1966         paddd   %xmm1,%xmm1
 1967 
 1968         psrld   $2,%xmm11
 1969         paddd   %xmm8,%xmm14
 1970         por     %xmm5,%xmm1
 1971         por     %xmm7,%xmm11
 1972         pxor    %xmm4,%xmm2
 1973         movdqa  0-128(%rax),%xmm4
 1974 
 1975         movdqa  %xmm14,%xmm8
 1976         movdqa  %xmm12,%xmm6
 1977         pxor    96-128(%rax),%xmm2
 1978         paddd   %xmm15,%xmm13
 1979         pslld   $5,%xmm8
 1980         pxor    %xmm10,%xmm6
 1981 
 1982         movdqa  %xmm14,%xmm9
 1983         movdqa  %xmm1,208-128(%rax)
 1984         paddd   %xmm1,%xmm13
 1985         pxor    %xmm4,%xmm2
 1986         psrld   $27,%xmm9
 1987         pxor    %xmm11,%xmm6
 1988         movdqa  %xmm10,%xmm7
 1989 
 1990         pslld   $30,%xmm7
 1991         movdqa  %xmm2,%xmm5
 1992         por     %xmm9,%xmm8
 1993         psrld   $31,%xmm5
 1994         paddd   %xmm6,%xmm13
 1995         paddd   %xmm2,%xmm2
 1996 
 1997         psrld   $2,%xmm10
 1998         paddd   %xmm8,%xmm13
 1999         por     %xmm5,%xmm2
 2000         por     %xmm7,%xmm10
 2001         pxor    %xmm0,%xmm3
 2002         movdqa  16-128(%rax),%xmm0
 2003 
 2004         movdqa  %xmm13,%xmm8
 2005         movdqa  %xmm11,%xmm6
 2006         pxor    112-128(%rax),%xmm3
 2007         paddd   %xmm15,%xmm12
 2008         pslld   $5,%xmm8
 2009         pxor    %xmm14,%xmm6
 2010 
 2011         movdqa  %xmm13,%xmm9
 2012         movdqa  %xmm2,224-128(%rax)
 2013         paddd   %xmm2,%xmm12
 2014         pxor    %xmm0,%xmm3
 2015         psrld   $27,%xmm9
 2016         pxor    %xmm10,%xmm6
 2017         movdqa  %xmm14,%xmm7
 2018 
 2019         pslld   $30,%xmm7
 2020         movdqa  %xmm3,%xmm5
 2021         por     %xmm9,%xmm8
 2022         psrld   $31,%xmm5
 2023         paddd   %xmm6,%xmm12
 2024         paddd   %xmm3,%xmm3
 2025 
 2026         psrld   $2,%xmm14
 2027         paddd   %xmm8,%xmm12
 2028         por     %xmm5,%xmm3
 2029         por     %xmm7,%xmm14
 2030         pxor    %xmm1,%xmm4
 2031         movdqa  32-128(%rax),%xmm1
 2032 
 2033         movdqa  %xmm12,%xmm8
 2034         movdqa  %xmm10,%xmm6
 2035         pxor    128-128(%rax),%xmm4
 2036         paddd   %xmm15,%xmm11
 2037         pslld   $5,%xmm8
 2038         pxor    %xmm13,%xmm6
 2039 
 2040         movdqa  %xmm12,%xmm9
 2041         movdqa  %xmm3,240-128(%rax)
 2042         paddd   %xmm3,%xmm11
 2043         pxor    %xmm1,%xmm4
 2044         psrld   $27,%xmm9
 2045         pxor    %xmm14,%xmm6
 2046         movdqa  %xmm13,%xmm7
 2047 
 2048         pslld   $30,%xmm7
 2049         movdqa  %xmm4,%xmm5
 2050         por     %xmm9,%xmm8
 2051         psrld   $31,%xmm5
 2052         paddd   %xmm6,%xmm11
 2053         paddd   %xmm4,%xmm4
 2054 
 2055         psrld   $2,%xmm13
 2056         paddd   %xmm8,%xmm11
 2057         por     %xmm5,%xmm4
 2058         por     %xmm7,%xmm13
 2059         pxor    %xmm2,%xmm0
 2060         movdqa  48-128(%rax),%xmm2
 2061 
 2062         movdqa  %xmm11,%xmm8
 2063         movdqa  %xmm14,%xmm6
 2064         pxor    144-128(%rax),%xmm0
 2065         paddd   %xmm15,%xmm10
 2066         pslld   $5,%xmm8
 2067         pxor    %xmm12,%xmm6
 2068 
 2069         movdqa  %xmm11,%xmm9
 2070         movdqa  %xmm4,0-128(%rax)
 2071         paddd   %xmm4,%xmm10
 2072         pxor    %xmm2,%xmm0
 2073         psrld   $27,%xmm9
 2074         pxor    %xmm13,%xmm6
 2075         movdqa  %xmm12,%xmm7
 2076 
 2077         pslld   $30,%xmm7
 2078         movdqa  %xmm0,%xmm5
 2079         por     %xmm9,%xmm8
 2080         psrld   $31,%xmm5
 2081         paddd   %xmm6,%xmm10
 2082         paddd   %xmm0,%xmm0
 2083 
 2084         psrld   $2,%xmm12
 2085         paddd   %xmm8,%xmm10
 2086         por     %xmm5,%xmm0
 2087         por     %xmm7,%xmm12
 2088         pxor    %xmm3,%xmm1
 2089         movdqa  64-128(%rax),%xmm3
 2090 
 2091         movdqa  %xmm10,%xmm8
 2092         movdqa  %xmm13,%xmm6
 2093         pxor    160-128(%rax),%xmm1
 2094         paddd   %xmm15,%xmm14
 2095         pslld   $5,%xmm8
 2096         pxor    %xmm11,%xmm6
 2097 
 2098         movdqa  %xmm10,%xmm9
 2099         movdqa  %xmm0,16-128(%rax)
 2100         paddd   %xmm0,%xmm14
 2101         pxor    %xmm3,%xmm1
 2102         psrld   $27,%xmm9
 2103         pxor    %xmm12,%xmm6
 2104         movdqa  %xmm11,%xmm7
 2105 
 2106         pslld   $30,%xmm7
 2107         movdqa  %xmm1,%xmm5
 2108         por     %xmm9,%xmm8
 2109         psrld   $31,%xmm5
 2110         paddd   %xmm6,%xmm14
 2111         paddd   %xmm1,%xmm1
 2112 
 2113         psrld   $2,%xmm11
 2114         paddd   %xmm8,%xmm14
 2115         por     %xmm5,%xmm1
 2116         por     %xmm7,%xmm11
 2117         pxor    %xmm4,%xmm2
 2118         movdqa  80-128(%rax),%xmm4
 2119 
 2120         movdqa  %xmm14,%xmm8
 2121         movdqa  %xmm12,%xmm6
 2122         pxor    176-128(%rax),%xmm2
 2123         paddd   %xmm15,%xmm13
 2124         pslld   $5,%xmm8
 2125         pxor    %xmm10,%xmm6
 2126 
 2127         movdqa  %xmm14,%xmm9
 2128         movdqa  %xmm1,32-128(%rax)
 2129         paddd   %xmm1,%xmm13
 2130         pxor    %xmm4,%xmm2
 2131         psrld   $27,%xmm9
 2132         pxor    %xmm11,%xmm6
 2133         movdqa  %xmm10,%xmm7
 2134 
 2135         pslld   $30,%xmm7
 2136         movdqa  %xmm2,%xmm5
 2137         por     %xmm9,%xmm8
 2138         psrld   $31,%xmm5
 2139         paddd   %xmm6,%xmm13
 2140         paddd   %xmm2,%xmm2
 2141 
 2142         psrld   $2,%xmm10
 2143         paddd   %xmm8,%xmm13
 2144         por     %xmm5,%xmm2
 2145         por     %xmm7,%xmm10
 2146         pxor    %xmm0,%xmm3
 2147         movdqa  96-128(%rax),%xmm0
 2148 
 2149         movdqa  %xmm13,%xmm8
 2150         movdqa  %xmm11,%xmm6
 2151         pxor    192-128(%rax),%xmm3
 2152         paddd   %xmm15,%xmm12
 2153         pslld   $5,%xmm8
 2154         pxor    %xmm14,%xmm6
 2155 
 2156         movdqa  %xmm13,%xmm9
 2157         movdqa  %xmm2,48-128(%rax)
 2158         paddd   %xmm2,%xmm12
 2159         pxor    %xmm0,%xmm3
 2160         psrld   $27,%xmm9
 2161         pxor    %xmm10,%xmm6
 2162         movdqa  %xmm14,%xmm7
 2163 
 2164         pslld   $30,%xmm7
 2165         movdqa  %xmm3,%xmm5
 2166         por     %xmm9,%xmm8
 2167         psrld   $31,%xmm5
 2168         paddd   %xmm6,%xmm12
 2169         paddd   %xmm3,%xmm3
 2170 
 2171         psrld   $2,%xmm14
 2172         paddd   %xmm8,%xmm12
 2173         por     %xmm5,%xmm3
 2174         por     %xmm7,%xmm14
 2175         pxor    %xmm1,%xmm4
 2176         movdqa  112-128(%rax),%xmm1
 2177 
 2178         movdqa  %xmm12,%xmm8
 2179         movdqa  %xmm10,%xmm6
 2180         pxor    208-128(%rax),%xmm4
 2181         paddd   %xmm15,%xmm11
 2182         pslld   $5,%xmm8
 2183         pxor    %xmm13,%xmm6
 2184 
 2185         movdqa  %xmm12,%xmm9
 2186         movdqa  %xmm3,64-128(%rax)
 2187         paddd   %xmm3,%xmm11
 2188         pxor    %xmm1,%xmm4
 2189         psrld   $27,%xmm9
 2190         pxor    %xmm14,%xmm6
 2191         movdqa  %xmm13,%xmm7
 2192 
 2193         pslld   $30,%xmm7
 2194         movdqa  %xmm4,%xmm5
 2195         por     %xmm9,%xmm8
 2196         psrld   $31,%xmm5
 2197         paddd   %xmm6,%xmm11
 2198         paddd   %xmm4,%xmm4
 2199 
 2200         psrld   $2,%xmm13
 2201         paddd   %xmm8,%xmm11
 2202         por     %xmm5,%xmm4
 2203         por     %xmm7,%xmm13
 2204         pxor    %xmm2,%xmm0
 2205         movdqa  128-128(%rax),%xmm2
 2206 
 2207         movdqa  %xmm11,%xmm8
 2208         movdqa  %xmm14,%xmm6
 2209         pxor    224-128(%rax),%xmm0
 2210         paddd   %xmm15,%xmm10
 2211         pslld   $5,%xmm8
 2212         pxor    %xmm12,%xmm6
 2213 
 2214         movdqa  %xmm11,%xmm9
 2215         movdqa  %xmm4,80-128(%rax)
 2216         paddd   %xmm4,%xmm10
 2217         pxor    %xmm2,%xmm0
 2218         psrld   $27,%xmm9
 2219         pxor    %xmm13,%xmm6
 2220         movdqa  %xmm12,%xmm7
 2221 
 2222         pslld   $30,%xmm7
 2223         movdqa  %xmm0,%xmm5
 2224         por     %xmm9,%xmm8
 2225         psrld   $31,%xmm5
 2226         paddd   %xmm6,%xmm10
 2227         paddd   %xmm0,%xmm0
 2228 
 2229         psrld   $2,%xmm12
 2230         paddd   %xmm8,%xmm10
 2231         por     %xmm5,%xmm0
 2232         por     %xmm7,%xmm12
 2233         pxor    %xmm3,%xmm1
 2234         movdqa  144-128(%rax),%xmm3
 2235 
 2236         movdqa  %xmm10,%xmm8
 2237         movdqa  %xmm13,%xmm6
 2238         pxor    240-128(%rax),%xmm1
 2239         paddd   %xmm15,%xmm14
 2240         pslld   $5,%xmm8
 2241         pxor    %xmm11,%xmm6
 2242 
 2243         movdqa  %xmm10,%xmm9
 2244         movdqa  %xmm0,96-128(%rax)
 2245         paddd   %xmm0,%xmm14
 2246         pxor    %xmm3,%xmm1
 2247         psrld   $27,%xmm9
 2248         pxor    %xmm12,%xmm6
 2249         movdqa  %xmm11,%xmm7
 2250 
 2251         pslld   $30,%xmm7
 2252         movdqa  %xmm1,%xmm5
 2253         por     %xmm9,%xmm8
 2254         psrld   $31,%xmm5
 2255         paddd   %xmm6,%xmm14
 2256         paddd   %xmm1,%xmm1
 2257 
 2258         psrld   $2,%xmm11
 2259         paddd   %xmm8,%xmm14
 2260         por     %xmm5,%xmm1
 2261         por     %xmm7,%xmm11
 2262         pxor    %xmm4,%xmm2
 2263         movdqa  160-128(%rax),%xmm4
 2264 
 2265         movdqa  %xmm14,%xmm8
 2266         movdqa  %xmm12,%xmm6
 2267         pxor    0-128(%rax),%xmm2
 2268         paddd   %xmm15,%xmm13
 2269         pslld   $5,%xmm8
 2270         pxor    %xmm10,%xmm6
 2271 
 2272         movdqa  %xmm14,%xmm9
 2273         movdqa  %xmm1,112-128(%rax)
 2274         paddd   %xmm1,%xmm13
 2275         pxor    %xmm4,%xmm2
 2276         psrld   $27,%xmm9
 2277         pxor    %xmm11,%xmm6
 2278         movdqa  %xmm10,%xmm7
 2279 
 2280         pslld   $30,%xmm7
 2281         movdqa  %xmm2,%xmm5
 2282         por     %xmm9,%xmm8
 2283         psrld   $31,%xmm5
 2284         paddd   %xmm6,%xmm13
 2285         paddd   %xmm2,%xmm2
 2286 
 2287         psrld   $2,%xmm10
 2288         paddd   %xmm8,%xmm13
 2289         por     %xmm5,%xmm2
 2290         por     %xmm7,%xmm10
 2291         pxor    %xmm0,%xmm3
 2292         movdqa  176-128(%rax),%xmm0
 2293 
 2294         movdqa  %xmm13,%xmm8
 2295         movdqa  %xmm11,%xmm6
 2296         pxor    16-128(%rax),%xmm3
 2297         paddd   %xmm15,%xmm12
 2298         pslld   $5,%xmm8
 2299         pxor    %xmm14,%xmm6
 2300 
 2301         movdqa  %xmm13,%xmm9
 2302         paddd   %xmm2,%xmm12
 2303         pxor    %xmm0,%xmm3
 2304         psrld   $27,%xmm9
 2305         pxor    %xmm10,%xmm6
 2306         movdqa  %xmm14,%xmm7
 2307 
 2308         pslld   $30,%xmm7
 2309         movdqa  %xmm3,%xmm5
 2310         por     %xmm9,%xmm8
 2311         psrld   $31,%xmm5
 2312         paddd   %xmm6,%xmm12
 2313         paddd   %xmm3,%xmm3
 2314 
 2315         psrld   $2,%xmm14
 2316         paddd   %xmm8,%xmm12
 2317         por     %xmm5,%xmm3
 2318         por     %xmm7,%xmm14
 2319         pxor    %xmm1,%xmm4
 2320         movdqa  192-128(%rax),%xmm1
 2321 
 2322         movdqa  %xmm12,%xmm8
 2323         movdqa  %xmm10,%xmm6
 2324         pxor    32-128(%rax),%xmm4
 2325         paddd   %xmm15,%xmm11
 2326         pslld   $5,%xmm8
 2327         pxor    %xmm13,%xmm6
 2328 
 2329         movdqa  %xmm12,%xmm9
 2330         paddd   %xmm3,%xmm11
 2331         pxor    %xmm1,%xmm4
 2332         psrld   $27,%xmm9
 2333         pxor    %xmm14,%xmm6
 2334         movdqa  %xmm13,%xmm7
 2335 
 2336         pslld   $30,%xmm7
 2337         movdqa  %xmm4,%xmm5
 2338         por     %xmm9,%xmm8
 2339         psrld   $31,%xmm5
 2340         paddd   %xmm6,%xmm11
 2341         paddd   %xmm4,%xmm4
 2342 
 2343         psrld   $2,%xmm13
 2344         paddd   %xmm8,%xmm11
 2345         por     %xmm5,%xmm4
 2346         por     %xmm7,%xmm13
 2347         pxor    %xmm2,%xmm0
 2348         movdqa  208-128(%rax),%xmm2
 2349 
 2350         movdqa  %xmm11,%xmm8
 2351         movdqa  %xmm14,%xmm6
 2352         pxor    48-128(%rax),%xmm0
 2353         paddd   %xmm15,%xmm10
 2354         pslld   $5,%xmm8
 2355         pxor    %xmm12,%xmm6
 2356 
 2357         movdqa  %xmm11,%xmm9
 2358         paddd   %xmm4,%xmm10
 2359         pxor    %xmm2,%xmm0
 2360         psrld   $27,%xmm9
 2361         pxor    %xmm13,%xmm6
 2362         movdqa  %xmm12,%xmm7
 2363 
 2364         pslld   $30,%xmm7
 2365         movdqa  %xmm0,%xmm5
 2366         por     %xmm9,%xmm8
 2367         psrld   $31,%xmm5
 2368         paddd   %xmm6,%xmm10
 2369         paddd   %xmm0,%xmm0
 2370 
 2371         psrld   $2,%xmm12
 2372         paddd   %xmm8,%xmm10
 2373         por     %xmm5,%xmm0
 2374         por     %xmm7,%xmm12
 2375         pxor    %xmm3,%xmm1
 2376         movdqa  224-128(%rax),%xmm3
 2377 
 2378         movdqa  %xmm10,%xmm8
 2379         movdqa  %xmm13,%xmm6
 2380         pxor    64-128(%rax),%xmm1
 2381         paddd   %xmm15,%xmm14
 2382         pslld   $5,%xmm8
 2383         pxor    %xmm11,%xmm6
 2384 
 2385         movdqa  %xmm10,%xmm9
 2386         paddd   %xmm0,%xmm14
 2387         pxor    %xmm3,%xmm1
 2388         psrld   $27,%xmm9
 2389         pxor    %xmm12,%xmm6
 2390         movdqa  %xmm11,%xmm7
 2391 
 2392         pslld   $30,%xmm7
 2393         movdqa  %xmm1,%xmm5
 2394         por     %xmm9,%xmm8
 2395         psrld   $31,%xmm5
 2396         paddd   %xmm6,%xmm14
 2397         paddd   %xmm1,%xmm1
 2398 
 2399         psrld   $2,%xmm11
 2400         paddd   %xmm8,%xmm14
 2401         por     %xmm5,%xmm1
 2402         por     %xmm7,%xmm11
 2403         pxor    %xmm4,%xmm2
 2404         movdqa  240-128(%rax),%xmm4
 2405 
 2406         movdqa  %xmm14,%xmm8
 2407         movdqa  %xmm12,%xmm6
 2408         pxor    80-128(%rax),%xmm2
 2409         paddd   %xmm15,%xmm13
 2410         pslld   $5,%xmm8
 2411         pxor    %xmm10,%xmm6
 2412 
 2413         movdqa  %xmm14,%xmm9
 2414         paddd   %xmm1,%xmm13
 2415         pxor    %xmm4,%xmm2
 2416         psrld   $27,%xmm9
 2417         pxor    %xmm11,%xmm6
 2418         movdqa  %xmm10,%xmm7
 2419 
 2420         pslld   $30,%xmm7
 2421         movdqa  %xmm2,%xmm5
 2422         por     %xmm9,%xmm8
 2423         psrld   $31,%xmm5
 2424         paddd   %xmm6,%xmm13
 2425         paddd   %xmm2,%xmm2
 2426 
 2427         psrld   $2,%xmm10
 2428         paddd   %xmm8,%xmm13
 2429         por     %xmm5,%xmm2
 2430         por     %xmm7,%xmm10
 2431         pxor    %xmm0,%xmm3
 2432         movdqa  0-128(%rax),%xmm0
 2433 
 2434         movdqa  %xmm13,%xmm8
 2435         movdqa  %xmm11,%xmm6
 2436         pxor    96-128(%rax),%xmm3
 2437         paddd   %xmm15,%xmm12
 2438         pslld   $5,%xmm8
 2439         pxor    %xmm14,%xmm6
 2440 
 2441         movdqa  %xmm13,%xmm9
 2442         paddd   %xmm2,%xmm12
 2443         pxor    %xmm0,%xmm3
 2444         psrld   $27,%xmm9
 2445         pxor    %xmm10,%xmm6
 2446         movdqa  %xmm14,%xmm7
 2447 
 2448         pslld   $30,%xmm7
 2449         movdqa  %xmm3,%xmm5
 2450         por     %xmm9,%xmm8
 2451         psrld   $31,%xmm5
 2452         paddd   %xmm6,%xmm12
 2453         paddd   %xmm3,%xmm3
 2454 
 2455         psrld   $2,%xmm14
 2456         paddd   %xmm8,%xmm12
 2457         por     %xmm5,%xmm3
 2458         por     %xmm7,%xmm14
 2459         pxor    %xmm1,%xmm4
 2460         movdqa  16-128(%rax),%xmm1
 2461 
 2462         movdqa  %xmm12,%xmm8
 2463         movdqa  %xmm10,%xmm6
 2464         pxor    112-128(%rax),%xmm4
 2465         paddd   %xmm15,%xmm11
 2466         pslld   $5,%xmm8
 2467         pxor    %xmm13,%xmm6
 2468 
 2469         movdqa  %xmm12,%xmm9
 2470         paddd   %xmm3,%xmm11
 2471         pxor    %xmm1,%xmm4
 2472         psrld   $27,%xmm9
 2473         pxor    %xmm14,%xmm6
 2474         movdqa  %xmm13,%xmm7
 2475 
 2476         pslld   $30,%xmm7
 2477         movdqa  %xmm4,%xmm5
 2478         por     %xmm9,%xmm8
 2479         psrld   $31,%xmm5
 2480         paddd   %xmm6,%xmm11
 2481         paddd   %xmm4,%xmm4
 2482 
 2483         psrld   $2,%xmm13
 2484         paddd   %xmm8,%xmm11
 2485         por     %xmm5,%xmm4
 2486         por     %xmm7,%xmm13
 2487         movdqa  %xmm11,%xmm8
 2488         paddd   %xmm15,%xmm10
 2489         movdqa  %xmm14,%xmm6
 2490         pslld   $5,%xmm8
 2491         pxor    %xmm12,%xmm6
 2492 
 2493         movdqa  %xmm11,%xmm9
 2494         paddd   %xmm4,%xmm10
 2495         psrld   $27,%xmm9
 2496         movdqa  %xmm12,%xmm7
 2497         pxor    %xmm13,%xmm6
 2498 
 2499         pslld   $30,%xmm7
 2500         por     %xmm9,%xmm8
 2501         paddd   %xmm6,%xmm10
 2502 
 2503         psrld   $2,%xmm12
 2504         paddd   %xmm8,%xmm10
 2505         por     %xmm7,%xmm12
 2506         movdqa  (%rbx),%xmm0
 2507         movl    $1,%ecx
 2508         cmpl    0(%rbx),%ecx
 2509         pxor    %xmm8,%xmm8
 2510         cmovgeq %rbp,%r8
 2511         cmpl    4(%rbx),%ecx
 2512         movdqa  %xmm0,%xmm1
 2513         cmovgeq %rbp,%r9
 2514         cmpl    8(%rbx),%ecx
 2515         pcmpgtd %xmm8,%xmm1
 2516         cmovgeq %rbp,%r10
 2517         cmpl    12(%rbx),%ecx
 2518         paddd   %xmm1,%xmm0
 2519         cmovgeq %rbp,%r11
 2520 
 2521         movdqu  0(%rdi),%xmm6
 2522         pand    %xmm1,%xmm10
 2523         movdqu  32(%rdi),%xmm7
 2524         pand    %xmm1,%xmm11
 2525         paddd   %xmm6,%xmm10
 2526         movdqu  64(%rdi),%xmm8
 2527         pand    %xmm1,%xmm12
 2528         paddd   %xmm7,%xmm11
 2529         movdqu  96(%rdi),%xmm9
 2530         pand    %xmm1,%xmm13
 2531         paddd   %xmm8,%xmm12
 2532         movdqu  128(%rdi),%xmm5
 2533         pand    %xmm1,%xmm14
 2534         movdqu  %xmm10,0(%rdi)
 2535         paddd   %xmm9,%xmm13
 2536         movdqu  %xmm11,32(%rdi)
 2537         paddd   %xmm5,%xmm14
 2538         movdqu  %xmm12,64(%rdi)
 2539         movdqu  %xmm13,96(%rdi)
 2540         movdqu  %xmm14,128(%rdi)
 2541 
 2542         movdqa  %xmm0,(%rbx)
 2543         movdqa  96(%rbp),%xmm5
 2544         movdqa  -32(%rbp),%xmm15
 2545         decl    %edx
 2546         jnz     .Loop
 2547 
 2548         movl    280(%rsp),%edx
 2549         leaq    16(%rdi),%rdi
 2550         leaq    64(%rsi),%rsi
 2551         decl    %edx
 2552         jnz     .Loop_grande
 2553 
 2554 .Ldone:
 2555         movq    272(%rsp),%rax
 2556 .cfi_def_cfa    %rax,8
 2557         movq    -16(%rax),%rbp
 2558 .cfi_restore    %rbp
 2559         movq    -8(%rax),%rbx
 2560 .cfi_restore    %rbx
 2561         leaq    (%rax),%rsp
 2562 .cfi_def_cfa_register   %rsp
 2563 .Lepilogue:
 2564         .byte   0xf3,0xc3
 2565 .cfi_endproc    
 2566 .size   sha1_multi_block,.-sha1_multi_block
 2567 .type   sha1_multi_block_shaext,@function
 2568 .align  32
 2569 sha1_multi_block_shaext:
 2570 .cfi_startproc  
 2571 _shaext_shortcut:
 2572         movq    %rsp,%rax
 2573 .cfi_def_cfa_register   %rax
 2574         pushq   %rbx
 2575 .cfi_offset     %rbx,-16
 2576         pushq   %rbp
 2577 .cfi_offset     %rbp,-24
 2578         subq    $288,%rsp
 2579         shll    $1,%edx
 2580         andq    $-256,%rsp
 2581         leaq    64(%rdi),%rdi
 2582         movq    %rax,272(%rsp)
 2583 .Lbody_shaext:
 2584         leaq    256(%rsp),%rbx
 2585         movdqa  K_XX_XX+128(%rip),%xmm3
 2586 
 2587 .Loop_grande_shaext:
 2588         movl    %edx,280(%rsp)
 2589         xorl    %edx,%edx
 2590         movq    0(%rsi),%r8
 2591         movl    8(%rsi),%ecx
 2592         cmpl    %edx,%ecx
 2593         cmovgl  %ecx,%edx
 2594         testl   %ecx,%ecx
 2595         movl    %ecx,0(%rbx)
 2596         cmovleq %rsp,%r8
 2597         movq    16(%rsi),%r9
 2598         movl    24(%rsi),%ecx
 2599         cmpl    %edx,%ecx
 2600         cmovgl  %ecx,%edx
 2601         testl   %ecx,%ecx
 2602         movl    %ecx,4(%rbx)
 2603         cmovleq %rsp,%r9
 2604         testl   %edx,%edx
 2605         jz      .Ldone_shaext
 2606 
 2607         movq    0-64(%rdi),%xmm0
 2608         movq    32-64(%rdi),%xmm4
 2609         movq    64-64(%rdi),%xmm5
 2610         movq    96-64(%rdi),%xmm6
 2611         movq    128-64(%rdi),%xmm7
 2612 
 2613         punpckldq       %xmm4,%xmm0
 2614         punpckldq       %xmm6,%xmm5
 2615 
 2616         movdqa  %xmm0,%xmm8
 2617         punpcklqdq      %xmm5,%xmm0
 2618         punpckhqdq      %xmm5,%xmm8
 2619 
 2620         pshufd  $63,%xmm7,%xmm1
 2621         pshufd  $127,%xmm7,%xmm9
 2622         pshufd  $27,%xmm0,%xmm0
 2623         pshufd  $27,%xmm8,%xmm8
 2624         jmp     .Loop_shaext
 2625 
 2626 .align  32
 2627 .Loop_shaext:
 2628         movdqu  0(%r8),%xmm4
 2629         movdqu  0(%r9),%xmm11
 2630         movdqu  16(%r8),%xmm5
 2631         movdqu  16(%r9),%xmm12
 2632         movdqu  32(%r8),%xmm6
 2633 .byte   102,15,56,0,227
 2634         movdqu  32(%r9),%xmm13
 2635 .byte   102,68,15,56,0,219
 2636         movdqu  48(%r8),%xmm7
 2637         leaq    64(%r8),%r8
 2638 .byte   102,15,56,0,235
 2639         movdqu  48(%r9),%xmm14
 2640         leaq    64(%r9),%r9
 2641 .byte   102,68,15,56,0,227
 2642 
 2643         movdqa  %xmm1,80(%rsp)
 2644         paddd   %xmm4,%xmm1
 2645         movdqa  %xmm9,112(%rsp)
 2646         paddd   %xmm11,%xmm9
 2647         movdqa  %xmm0,64(%rsp)
 2648         movdqa  %xmm0,%xmm2
 2649         movdqa  %xmm8,96(%rsp)
 2650         movdqa  %xmm8,%xmm10
 2651 .byte   15,58,204,193,0
 2652 .byte   15,56,200,213
 2653 .byte   69,15,58,204,193,0
 2654 .byte   69,15,56,200,212
 2655 .byte   102,15,56,0,243
 2656         prefetcht0      127(%r8)
 2657 .byte   15,56,201,229
 2658 .byte   102,68,15,56,0,235
 2659         prefetcht0      127(%r9)
 2660 .byte   69,15,56,201,220
 2661 
 2662 .byte   102,15,56,0,251
 2663         movdqa  %xmm0,%xmm1
 2664 .byte   102,68,15,56,0,243
 2665         movdqa  %xmm8,%xmm9
 2666 .byte   15,58,204,194,0
 2667 .byte   15,56,200,206
 2668 .byte   69,15,58,204,194,0
 2669 .byte   69,15,56,200,205
 2670         pxor    %xmm6,%xmm4
 2671 .byte   15,56,201,238
 2672         pxor    %xmm13,%xmm11
 2673 .byte   69,15,56,201,229
 2674         movdqa  %xmm0,%xmm2
 2675         movdqa  %xmm8,%xmm10
 2676 .byte   15,58,204,193,0
 2677 .byte   15,56,200,215
 2678 .byte   69,15,58,204,193,0
 2679 .byte   69,15,56,200,214
 2680 .byte   15,56,202,231
 2681 .byte   69,15,56,202,222
 2682         pxor    %xmm7,%xmm5
 2683 .byte   15,56,201,247
 2684         pxor    %xmm14,%xmm12
 2685 .byte   69,15,56,201,238
 2686         movdqa  %xmm0,%xmm1
 2687         movdqa  %xmm8,%xmm9
 2688 .byte   15,58,204,194,0
 2689 .byte   15,56,200,204
 2690 .byte   69,15,58,204,194,0
 2691 .byte   69,15,56,200,203
 2692 .byte   15,56,202,236
 2693 .byte   69,15,56,202,227
 2694         pxor    %xmm4,%xmm6
 2695 .byte   15,56,201,252
 2696         pxor    %xmm11,%xmm13
 2697 .byte   69,15,56,201,243
 2698         movdqa  %xmm0,%xmm2
 2699         movdqa  %xmm8,%xmm10
 2700 .byte   15,58,204,193,0
 2701 .byte   15,56,200,213
 2702 .byte   69,15,58,204,193,0
 2703 .byte   69,15,56,200,212
 2704 .byte   15,56,202,245
 2705 .byte   69,15,56,202,236
 2706         pxor    %xmm5,%xmm7
 2707 .byte   15,56,201,229
 2708         pxor    %xmm12,%xmm14
 2709 .byte   69,15,56,201,220
 2710         movdqa  %xmm0,%xmm1
 2711         movdqa  %xmm8,%xmm9
 2712 .byte   15,58,204,194,1
 2713 .byte   15,56,200,206
 2714 .byte   69,15,58,204,194,1
 2715 .byte   69,15,56,200,205
 2716 .byte   15,56,202,254
 2717 .byte   69,15,56,202,245
 2718         pxor    %xmm6,%xmm4
 2719 .byte   15,56,201,238
 2720         pxor    %xmm13,%xmm11
 2721 .byte   69,15,56,201,229
 2722         movdqa  %xmm0,%xmm2
 2723         movdqa  %xmm8,%xmm10
 2724 .byte   15,58,204,193,1
 2725 .byte   15,56,200,215
 2726 .byte   69,15,58,204,193,1
 2727 .byte   69,15,56,200,214
 2728 .byte   15,56,202,231
 2729 .byte   69,15,56,202,222
 2730         pxor    %xmm7,%xmm5
 2731 .byte   15,56,201,247
 2732         pxor    %xmm14,%xmm12
 2733 .byte   69,15,56,201,238
 2734         movdqa  %xmm0,%xmm1
 2735         movdqa  %xmm8,%xmm9
 2736 .byte   15,58,204,194,1
 2737 .byte   15,56,200,204
 2738 .byte   69,15,58,204,194,1
 2739 .byte   69,15,56,200,203
 2740 .byte   15,56,202,236
 2741 .byte   69,15,56,202,227
 2742         pxor    %xmm4,%xmm6
 2743 .byte   15,56,201,252
 2744         pxor    %xmm11,%xmm13
 2745 .byte   69,15,56,201,243
 2746         movdqa  %xmm0,%xmm2
 2747         movdqa  %xmm8,%xmm10
 2748 .byte   15,58,204,193,1
 2749 .byte   15,56,200,213
 2750 .byte   69,15,58,204,193,1
 2751 .byte   69,15,56,200,212
 2752 .byte   15,56,202,245
 2753 .byte   69,15,56,202,236
 2754         pxor    %xmm5,%xmm7
 2755 .byte   15,56,201,229
 2756         pxor    %xmm12,%xmm14
 2757 .byte   69,15,56,201,220
 2758         movdqa  %xmm0,%xmm1
 2759         movdqa  %xmm8,%xmm9
 2760 .byte   15,58,204,194,1
 2761 .byte   15,56,200,206
 2762 .byte   69,15,58,204,194,1
 2763 .byte   69,15,56,200,205
 2764 .byte   15,56,202,254
 2765 .byte   69,15,56,202,245
 2766         pxor    %xmm6,%xmm4
 2767 .byte   15,56,201,238
 2768         pxor    %xmm13,%xmm11
 2769 .byte   69,15,56,201,229
 2770         movdqa  %xmm0,%xmm2
 2771         movdqa  %xmm8,%xmm10
 2772 .byte   15,58,204,193,2
 2773 .byte   15,56,200,215
 2774 .byte   69,15,58,204,193,2
 2775 .byte   69,15,56,200,214
 2776 .byte   15,56,202,231
 2777 .byte   69,15,56,202,222
 2778         pxor    %xmm7,%xmm5
 2779 .byte   15,56,201,247
 2780         pxor    %xmm14,%xmm12
 2781 .byte   69,15,56,201,238
 2782         movdqa  %xmm0,%xmm1
 2783         movdqa  %xmm8,%xmm9
 2784 .byte   15,58,204,194,2
 2785 .byte   15,56,200,204
 2786 .byte   69,15,58,204,194,2
 2787 .byte   69,15,56,200,203
 2788 .byte   15,56,202,236
 2789 .byte   69,15,56,202,227
 2790         pxor    %xmm4,%xmm6
 2791 .byte   15,56,201,252
 2792         pxor    %xmm11,%xmm13
 2793 .byte   69,15,56,201,243
 2794         movdqa  %xmm0,%xmm2
 2795         movdqa  %xmm8,%xmm10
 2796 .byte   15,58,204,193,2
 2797 .byte   15,56,200,213
 2798 .byte   69,15,58,204,193,2
 2799 .byte   69,15,56,200,212
 2800 .byte   15,56,202,245
 2801 .byte   69,15,56,202,236
 2802         pxor    %xmm5,%xmm7
 2803 .byte   15,56,201,229
 2804         pxor    %xmm12,%xmm14
 2805 .byte   69,15,56,201,220
 2806         movdqa  %xmm0,%xmm1
 2807         movdqa  %xmm8,%xmm9
 2808 .byte   15,58,204,194,2
 2809 .byte   15,56,200,206
 2810 .byte   69,15,58,204,194,2
 2811 .byte   69,15,56,200,205
 2812 .byte   15,56,202,254
 2813 .byte   69,15,56,202,245
 2814         pxor    %xmm6,%xmm4
 2815 .byte   15,56,201,238
 2816         pxor    %xmm13,%xmm11
 2817 .byte   69,15,56,201,229
 2818         movdqa  %xmm0,%xmm2
 2819         movdqa  %xmm8,%xmm10
 2820 .byte   15,58,204,193,2
 2821 .byte   15,56,200,215
 2822 .byte   69,15,58,204,193,2
 2823 .byte   69,15,56,200,214
 2824 .byte   15,56,202,231
 2825 .byte   69,15,56,202,222
 2826         pxor    %xmm7,%xmm5
 2827 .byte   15,56,201,247
 2828         pxor    %xmm14,%xmm12
 2829 .byte   69,15,56,201,238
 2830         movdqa  %xmm0,%xmm1
 2831         movdqa  %xmm8,%xmm9
 2832 .byte   15,58,204,194,3
 2833 .byte   15,56,200,204
 2834 .byte   69,15,58,204,194,3
 2835 .byte   69,15,56,200,203
 2836 .byte   15,56,202,236
 2837 .byte   69,15,56,202,227
 2838         pxor    %xmm4,%xmm6
 2839 .byte   15,56,201,252
 2840         pxor    %xmm11,%xmm13
 2841 .byte   69,15,56,201,243
 2842         movdqa  %xmm0,%xmm2
 2843         movdqa  %xmm8,%xmm10
 2844 .byte   15,58,204,193,3
 2845 .byte   15,56,200,213
 2846 .byte   69,15,58,204,193,3
 2847 .byte   69,15,56,200,212
 2848 .byte   15,56,202,245
 2849 .byte   69,15,56,202,236
 2850         pxor    %xmm5,%xmm7
 2851         pxor    %xmm12,%xmm14
 2852 
 2853         movl    $1,%ecx
 2854         pxor    %xmm4,%xmm4
 2855         cmpl    0(%rbx),%ecx
 2856         cmovgeq %rsp,%r8
 2857 
 2858         movdqa  %xmm0,%xmm1
 2859         movdqa  %xmm8,%xmm9
 2860 .byte   15,58,204,194,3
 2861 .byte   15,56,200,206
 2862 .byte   69,15,58,204,194,3
 2863 .byte   69,15,56,200,205
 2864 .byte   15,56,202,254
 2865 .byte   69,15,56,202,245
 2866 
 2867         cmpl    4(%rbx),%ecx
 2868         cmovgeq %rsp,%r9
 2869         movq    (%rbx),%xmm6
 2870 
 2871         movdqa  %xmm0,%xmm2
 2872         movdqa  %xmm8,%xmm10
 2873 .byte   15,58,204,193,3
 2874 .byte   15,56,200,215
 2875 .byte   69,15,58,204,193,3
 2876 .byte   69,15,56,200,214
 2877 
 2878         pshufd  $0x00,%xmm6,%xmm11
 2879         pshufd  $0x55,%xmm6,%xmm12
 2880         movdqa  %xmm6,%xmm7
 2881         pcmpgtd %xmm4,%xmm11
 2882         pcmpgtd %xmm4,%xmm12
 2883 
 2884         movdqa  %xmm0,%xmm1
 2885         movdqa  %xmm8,%xmm9
 2886 .byte   15,58,204,194,3
 2887 .byte   15,56,200,204
 2888 .byte   69,15,58,204,194,3
 2889 .byte   68,15,56,200,204
 2890 
 2891         pcmpgtd %xmm4,%xmm7
 2892         pand    %xmm11,%xmm0
 2893         pand    %xmm11,%xmm1
 2894         pand    %xmm12,%xmm8
 2895         pand    %xmm12,%xmm9
 2896         paddd   %xmm7,%xmm6
 2897 
 2898         paddd   64(%rsp),%xmm0
 2899         paddd   80(%rsp),%xmm1
 2900         paddd   96(%rsp),%xmm8
 2901         paddd   112(%rsp),%xmm9
 2902 
 2903         movq    %xmm6,(%rbx)
 2904         decl    %edx
 2905         jnz     .Loop_shaext
 2906 
 2907         movl    280(%rsp),%edx
 2908 
 2909         pshufd  $27,%xmm0,%xmm0
 2910         pshufd  $27,%xmm8,%xmm8
 2911 
 2912         movdqa  %xmm0,%xmm6
 2913         punpckldq       %xmm8,%xmm0
 2914         punpckhdq       %xmm8,%xmm6
 2915         punpckhdq       %xmm9,%xmm1
 2916         movq    %xmm0,0-64(%rdi)
 2917         psrldq  $8,%xmm0
 2918         movq    %xmm6,64-64(%rdi)
 2919         psrldq  $8,%xmm6
 2920         movq    %xmm0,32-64(%rdi)
 2921         psrldq  $8,%xmm1
 2922         movq    %xmm6,96-64(%rdi)
 2923         movq    %xmm1,128-64(%rdi)
 2924 
 2925         leaq    8(%rdi),%rdi
 2926         leaq    32(%rsi),%rsi
 2927         decl    %edx
 2928         jnz     .Loop_grande_shaext
 2929 
 2930 .Ldone_shaext:
 2931 
 2932         movq    -16(%rax),%rbp
 2933 .cfi_restore    %rbp
 2934         movq    -8(%rax),%rbx
 2935 .cfi_restore    %rbx
 2936         leaq    (%rax),%rsp
 2937 .cfi_def_cfa_register   %rsp
 2938 .Lepilogue_shaext:
 2939         .byte   0xf3,0xc3
 2940 .cfi_endproc    
 2941 .size   sha1_multi_block_shaext,.-sha1_multi_block_shaext
 2942 .type   sha1_multi_block_avx,@function
 2943 .align  32
 2944 sha1_multi_block_avx:
 2945 .cfi_startproc  
 2946 _avx_shortcut:
 2947         shrq    $32,%rcx
 2948         cmpl    $2,%edx
 2949         jb      .Lavx
 2950         testl   $32,%ecx
 2951         jnz     _avx2_shortcut
 2952         jmp     .Lavx
 2953 .align  32
 2954 .Lavx:
 2955         movq    %rsp,%rax
 2956 .cfi_def_cfa_register   %rax
 2957         pushq   %rbx
 2958 .cfi_offset     %rbx,-16
 2959         pushq   %rbp
 2960 .cfi_offset     %rbp,-24
 2961         subq    $288,%rsp
 2962         andq    $-256,%rsp
 2963         movq    %rax,272(%rsp)
 2964 .cfi_escape     0x0f,0x06,0x77,0x90,0x02,0x06,0x23,0x08
 2965 .Lbody_avx:
 2966         leaq    K_XX_XX(%rip),%rbp
 2967         leaq    256(%rsp),%rbx
 2968 
 2969         vzeroupper
 2970 .Loop_grande_avx:
 2971         movl    %edx,280(%rsp)
 2972         xorl    %edx,%edx
 2973         movq    0(%rsi),%r8
 2974         movl    8(%rsi),%ecx
 2975         cmpl    %edx,%ecx
 2976         cmovgl  %ecx,%edx
 2977         testl   %ecx,%ecx
 2978         movl    %ecx,0(%rbx)
 2979         cmovleq %rbp,%r8
 2980         movq    16(%rsi),%r9
 2981         movl    24(%rsi),%ecx
 2982         cmpl    %edx,%ecx
 2983         cmovgl  %ecx,%edx
 2984         testl   %ecx,%ecx
 2985         movl    %ecx,4(%rbx)
 2986         cmovleq %rbp,%r9
 2987         movq    32(%rsi),%r10
 2988         movl    40(%rsi),%ecx
 2989         cmpl    %edx,%ecx
 2990         cmovgl  %ecx,%edx
 2991         testl   %ecx,%ecx
 2992         movl    %ecx,8(%rbx)
 2993         cmovleq %rbp,%r10
 2994         movq    48(%rsi),%r11
 2995         movl    56(%rsi),%ecx
 2996         cmpl    %edx,%ecx
 2997         cmovgl  %ecx,%edx
 2998         testl   %ecx,%ecx
 2999         movl    %ecx,12(%rbx)
 3000         cmovleq %rbp,%r11
 3001         testl   %edx,%edx
 3002         jz      .Ldone_avx
 3003 
 3004         vmovdqu 0(%rdi),%xmm10
 3005         leaq    128(%rsp),%rax
 3006         vmovdqu 32(%rdi),%xmm11
 3007         vmovdqu 64(%rdi),%xmm12
 3008         vmovdqu 96(%rdi),%xmm13
 3009         vmovdqu 128(%rdi),%xmm14
 3010         vmovdqu 96(%rbp),%xmm5
 3011         jmp     .Loop_avx
 3012 
 3013 .align  32
 3014 .Loop_avx:
 3015         vmovdqa -32(%rbp),%xmm15
 3016         vmovd   (%r8),%xmm0
 3017         leaq    64(%r8),%r8
 3018         vmovd   (%r9),%xmm2
 3019         leaq    64(%r9),%r9
 3020         vpinsrd $1,(%r10),%xmm0,%xmm0
 3021         leaq    64(%r10),%r10
 3022         vpinsrd $1,(%r11),%xmm2,%xmm2
 3023         leaq    64(%r11),%r11
 3024         vmovd   -60(%r8),%xmm1
 3025         vpunpckldq      %xmm2,%xmm0,%xmm0
 3026         vmovd   -60(%r9),%xmm9
 3027         vpshufb %xmm5,%xmm0,%xmm0
 3028         vpinsrd $1,-60(%r10),%xmm1,%xmm1
 3029         vpinsrd $1,-60(%r11),%xmm9,%xmm9
 3030         vpaddd  %xmm15,%xmm14,%xmm14
 3031         vpslld  $5,%xmm10,%xmm8
 3032         vpandn  %xmm13,%xmm11,%xmm7
 3033         vpand   %xmm12,%xmm11,%xmm6
 3034 
 3035         vmovdqa %xmm0,0-128(%rax)
 3036         vpaddd  %xmm0,%xmm14,%xmm14
 3037         vpunpckldq      %xmm9,%xmm1,%xmm1
 3038         vpsrld  $27,%xmm10,%xmm9
 3039         vpxor   %xmm7,%xmm6,%xmm6
 3040         vmovd   -56(%r8),%xmm2
 3041 
 3042         vpslld  $30,%xmm11,%xmm7
 3043         vpor    %xmm9,%xmm8,%xmm8
 3044         vmovd   -56(%r9),%xmm9
 3045         vpaddd  %xmm6,%xmm14,%xmm14
 3046 
 3047         vpsrld  $2,%xmm11,%xmm11
 3048         vpaddd  %xmm8,%xmm14,%xmm14
 3049         vpshufb %xmm5,%xmm1,%xmm1
 3050         vpor    %xmm7,%xmm11,%xmm11
 3051         vpinsrd $1,-56(%r10),%xmm2,%xmm2
 3052         vpinsrd $1,-56(%r11),%xmm9,%xmm9
 3053         vpaddd  %xmm15,%xmm13,%xmm13
 3054         vpslld  $5,%xmm14,%xmm8
 3055         vpandn  %xmm12,%xmm10,%xmm7
 3056         vpand   %xmm11,%xmm10,%xmm6
 3057 
 3058         vmovdqa %xmm1,16-128(%rax)
 3059         vpaddd  %xmm1,%xmm13,%xmm13
 3060         vpunpckldq      %xmm9,%xmm2,%xmm2
 3061         vpsrld  $27,%xmm14,%xmm9
 3062         vpxor   %xmm7,%xmm6,%xmm6
 3063         vmovd   -52(%r8),%xmm3
 3064 
 3065         vpslld  $30,%xmm10,%xmm7
 3066         vpor    %xmm9,%xmm8,%xmm8
 3067         vmovd   -52(%r9),%xmm9
 3068         vpaddd  %xmm6,%xmm13,%xmm13
 3069 
 3070         vpsrld  $2,%xmm10,%xmm10
 3071         vpaddd  %xmm8,%xmm13,%xmm13
 3072         vpshufb %xmm5,%xmm2,%xmm2
 3073         vpor    %xmm7,%xmm10,%xmm10
 3074         vpinsrd $1,-52(%r10),%xmm3,%xmm3
 3075         vpinsrd $1,-52(%r11),%xmm9,%xmm9
 3076         vpaddd  %xmm15,%xmm12,%xmm12
 3077         vpslld  $5,%xmm13,%xmm8
 3078         vpandn  %xmm11,%xmm14,%xmm7
 3079         vpand   %xmm10,%xmm14,%xmm6
 3080 
 3081         vmovdqa %xmm2,32-128(%rax)
 3082         vpaddd  %xmm2,%xmm12,%xmm12
 3083         vpunpckldq      %xmm9,%xmm3,%xmm3
 3084         vpsrld  $27,%xmm13,%xmm9
 3085         vpxor   %xmm7,%xmm6,%xmm6
 3086         vmovd   -48(%r8),%xmm4
 3087 
 3088         vpslld  $30,%xmm14,%xmm7
 3089         vpor    %xmm9,%xmm8,%xmm8
 3090         vmovd   -48(%r9),%xmm9
 3091         vpaddd  %xmm6,%xmm12,%xmm12
 3092 
 3093         vpsrld  $2,%xmm14,%xmm14
 3094         vpaddd  %xmm8,%xmm12,%xmm12
 3095         vpshufb %xmm5,%xmm3,%xmm3
 3096         vpor    %xmm7,%xmm14,%xmm14
 3097         vpinsrd $1,-48(%r10),%xmm4,%xmm4
 3098         vpinsrd $1,-48(%r11),%xmm9,%xmm9
 3099         vpaddd  %xmm15,%xmm11,%xmm11
 3100         vpslld  $5,%xmm12,%xmm8
 3101         vpandn  %xmm10,%xmm13,%xmm7
 3102         vpand   %xmm14,%xmm13,%xmm6
 3103 
 3104         vmovdqa %xmm3,48-128(%rax)
 3105         vpaddd  %xmm3,%xmm11,%xmm11
 3106         vpunpckldq      %xmm9,%xmm4,%xmm4
 3107         vpsrld  $27,%xmm12,%xmm9
 3108         vpxor   %xmm7,%xmm6,%xmm6
 3109         vmovd   -44(%r8),%xmm0
 3110 
 3111         vpslld  $30,%xmm13,%xmm7
 3112         vpor    %xmm9,%xmm8,%xmm8
 3113         vmovd   -44(%r9),%xmm9
 3114         vpaddd  %xmm6,%xmm11,%xmm11
 3115 
 3116         vpsrld  $2,%xmm13,%xmm13
 3117         vpaddd  %xmm8,%xmm11,%xmm11
 3118         vpshufb %xmm5,%xmm4,%xmm4
 3119         vpor    %xmm7,%xmm13,%xmm13
 3120         vpinsrd $1,-44(%r10),%xmm0,%xmm0
 3121         vpinsrd $1,-44(%r11),%xmm9,%xmm9
 3122         vpaddd  %xmm15,%xmm10,%xmm10
 3123         vpslld  $5,%xmm11,%xmm8
 3124         vpandn  %xmm14,%xmm12,%xmm7
 3125         vpand   %xmm13,%xmm12,%xmm6
 3126 
 3127         vmovdqa %xmm4,64-128(%rax)
 3128         vpaddd  %xmm4,%xmm10,%xmm10
 3129         vpunpckldq      %xmm9,%xmm0,%xmm0
 3130         vpsrld  $27,%xmm11,%xmm9
 3131         vpxor   %xmm7,%xmm6,%xmm6
 3132         vmovd   -40(%r8),%xmm1
 3133 
 3134         vpslld  $30,%xmm12,%xmm7
 3135         vpor    %xmm9,%xmm8,%xmm8
 3136         vmovd   -40(%r9),%xmm9
 3137         vpaddd  %xmm6,%xmm10,%xmm10
 3138 
 3139         vpsrld  $2,%xmm12,%xmm12
 3140         vpaddd  %xmm8,%xmm10,%xmm10
 3141         vpshufb %xmm5,%xmm0,%xmm0
 3142         vpor    %xmm7,%xmm12,%xmm12
 3143         vpinsrd $1,-40(%r10),%xmm1,%xmm1
 3144         vpinsrd $1,-40(%r11),%xmm9,%xmm9
 3145         vpaddd  %xmm15,%xmm14,%xmm14
 3146         vpslld  $5,%xmm10,%xmm8
 3147         vpandn  %xmm13,%xmm11,%xmm7
 3148         vpand   %xmm12,%xmm11,%xmm6
 3149 
 3150         vmovdqa %xmm0,80-128(%rax)
 3151         vpaddd  %xmm0,%xmm14,%xmm14
 3152         vpunpckldq      %xmm9,%xmm1,%xmm1
 3153         vpsrld  $27,%xmm10,%xmm9
 3154         vpxor   %xmm7,%xmm6,%xmm6
 3155         vmovd   -36(%r8),%xmm2
 3156 
 3157         vpslld  $30,%xmm11,%xmm7
 3158         vpor    %xmm9,%xmm8,%xmm8
 3159         vmovd   -36(%r9),%xmm9
 3160         vpaddd  %xmm6,%xmm14,%xmm14
 3161 
 3162         vpsrld  $2,%xmm11,%xmm11
 3163         vpaddd  %xmm8,%xmm14,%xmm14
 3164         vpshufb %xmm5,%xmm1,%xmm1
 3165         vpor    %xmm7,%xmm11,%xmm11
 3166         vpinsrd $1,-36(%r10),%xmm2,%xmm2
 3167         vpinsrd $1,-36(%r11),%xmm9,%xmm9
 3168         vpaddd  %xmm15,%xmm13,%xmm13
 3169         vpslld  $5,%xmm14,%xmm8
 3170         vpandn  %xmm12,%xmm10,%xmm7
 3171         vpand   %xmm11,%xmm10,%xmm6
 3172 
 3173         vmovdqa %xmm1,96-128(%rax)
 3174         vpaddd  %xmm1,%xmm13,%xmm13
 3175         vpunpckldq      %xmm9,%xmm2,%xmm2
 3176         vpsrld  $27,%xmm14,%xmm9
 3177         vpxor   %xmm7,%xmm6,%xmm6
 3178         vmovd   -32(%r8),%xmm3
 3179 
 3180         vpslld  $30,%xmm10,%xmm7
 3181         vpor    %xmm9,%xmm8,%xmm8
 3182         vmovd   -32(%r9),%xmm9
 3183         vpaddd  %xmm6,%xmm13,%xmm13
 3184 
 3185         vpsrld  $2,%xmm10,%xmm10
 3186         vpaddd  %xmm8,%xmm13,%xmm13
 3187         vpshufb %xmm5,%xmm2,%xmm2
 3188         vpor    %xmm7,%xmm10,%xmm10
 3189         vpinsrd $1,-32(%r10),%xmm3,%xmm3
 3190         vpinsrd $1,-32(%r11),%xmm9,%xmm9
 3191         vpaddd  %xmm15,%xmm12,%xmm12
 3192         vpslld  $5,%xmm13,%xmm8
 3193         vpandn  %xmm11,%xmm14,%xmm7
 3194         vpand   %xmm10,%xmm14,%xmm6
 3195 
 3196         vmovdqa %xmm2,112-128(%rax)
 3197         vpaddd  %xmm2,%xmm12,%xmm12
 3198         vpunpckldq      %xmm9,%xmm3,%xmm3
 3199         vpsrld  $27,%xmm13,%xmm9
 3200         vpxor   %xmm7,%xmm6,%xmm6
 3201         vmovd   -28(%r8),%xmm4
 3202 
 3203         vpslld  $30,%xmm14,%xmm7
 3204         vpor    %xmm9,%xmm8,%xmm8
 3205         vmovd   -28(%r9),%xmm9
 3206         vpaddd  %xmm6,%xmm12,%xmm12
 3207 
 3208         vpsrld  $2,%xmm14,%xmm14
 3209         vpaddd  %xmm8,%xmm12,%xmm12
 3210         vpshufb %xmm5,%xmm3,%xmm3
 3211         vpor    %xmm7,%xmm14,%xmm14
 3212         vpinsrd $1,-28(%r10),%xmm4,%xmm4
 3213         vpinsrd $1,-28(%r11),%xmm9,%xmm9
 3214         vpaddd  %xmm15,%xmm11,%xmm11
 3215         vpslld  $5,%xmm12,%xmm8
 3216         vpandn  %xmm10,%xmm13,%xmm7
 3217         vpand   %xmm14,%xmm13,%xmm6
 3218 
 3219         vmovdqa %xmm3,128-128(%rax)
 3220         vpaddd  %xmm3,%xmm11,%xmm11
 3221         vpunpckldq      %xmm9,%xmm4,%xmm4
 3222         vpsrld  $27,%xmm12,%xmm9
 3223         vpxor   %xmm7,%xmm6,%xmm6
 3224         vmovd   -24(%r8),%xmm0
 3225 
 3226         vpslld  $30,%xmm13,%xmm7
 3227         vpor    %xmm9,%xmm8,%xmm8
 3228         vmovd   -24(%r9),%xmm9
 3229         vpaddd  %xmm6,%xmm11,%xmm11
 3230 
 3231         vpsrld  $2,%xmm13,%xmm13
 3232         vpaddd  %xmm8,%xmm11,%xmm11
 3233         vpshufb %xmm5,%xmm4,%xmm4
 3234         vpor    %xmm7,%xmm13,%xmm13
 3235         vpinsrd $1,-24(%r10),%xmm0,%xmm0
 3236         vpinsrd $1,-24(%r11),%xmm9,%xmm9
 3237         vpaddd  %xmm15,%xmm10,%xmm10
 3238         vpslld  $5,%xmm11,%xmm8
 3239         vpandn  %xmm14,%xmm12,%xmm7
 3240         vpand   %xmm13,%xmm12,%xmm6
 3241 
 3242         vmovdqa %xmm4,144-128(%rax)
 3243         vpaddd  %xmm4,%xmm10,%xmm10
 3244         vpunpckldq      %xmm9,%xmm0,%xmm0
 3245         vpsrld  $27,%xmm11,%xmm9
 3246         vpxor   %xmm7,%xmm6,%xmm6
 3247         vmovd   -20(%r8),%xmm1
 3248 
 3249         vpslld  $30,%xmm12,%xmm7
 3250         vpor    %xmm9,%xmm8,%xmm8
 3251         vmovd   -20(%r9),%xmm9
 3252         vpaddd  %xmm6,%xmm10,%xmm10
 3253 
 3254         vpsrld  $2,%xmm12,%xmm12
 3255         vpaddd  %xmm8,%xmm10,%xmm10
 3256         vpshufb %xmm5,%xmm0,%xmm0
 3257         vpor    %xmm7,%xmm12,%xmm12
 3258         vpinsrd $1,-20(%r10),%xmm1,%xmm1
 3259         vpinsrd $1,-20(%r11),%xmm9,%xmm9
 3260         vpaddd  %xmm15,%xmm14,%xmm14
 3261         vpslld  $5,%xmm10,%xmm8
 3262         vpandn  %xmm13,%xmm11,%xmm7
 3263         vpand   %xmm12,%xmm11,%xmm6
 3264 
 3265         vmovdqa %xmm0,160-128(%rax)
 3266         vpaddd  %xmm0,%xmm14,%xmm14
 3267         vpunpckldq      %xmm9,%xmm1,%xmm1
 3268         vpsrld  $27,%xmm10,%xmm9
 3269         vpxor   %xmm7,%xmm6,%xmm6
 3270         vmovd   -16(%r8),%xmm2
 3271 
 3272         vpslld  $30,%xmm11,%xmm7
 3273         vpor    %xmm9,%xmm8,%xmm8
 3274         vmovd   -16(%r9),%xmm9
 3275         vpaddd  %xmm6,%xmm14,%xmm14
 3276 
 3277         vpsrld  $2,%xmm11,%xmm11
 3278         vpaddd  %xmm8,%xmm14,%xmm14
 3279         vpshufb %xmm5,%xmm1,%xmm1
 3280         vpor    %xmm7,%xmm11,%xmm11
 3281         vpinsrd $1,-16(%r10),%xmm2,%xmm2
 3282         vpinsrd $1,-16(%r11),%xmm9,%xmm9
 3283         vpaddd  %xmm15,%xmm13,%xmm13
 3284         vpslld  $5,%xmm14,%xmm8
 3285         vpandn  %xmm12,%xmm10,%xmm7
 3286         vpand   %xmm11,%xmm10,%xmm6
 3287 
 3288         vmovdqa %xmm1,176-128(%rax)
 3289         vpaddd  %xmm1,%xmm13,%xmm13
 3290         vpunpckldq      %xmm9,%xmm2,%xmm2
 3291         vpsrld  $27,%xmm14,%xmm9
 3292         vpxor   %xmm7,%xmm6,%xmm6
 3293         vmovd   -12(%r8),%xmm3
 3294 
 3295         vpslld  $30,%xmm10,%xmm7
 3296         vpor    %xmm9,%xmm8,%xmm8
 3297         vmovd   -12(%r9),%xmm9
 3298         vpaddd  %xmm6,%xmm13,%xmm13
 3299 
 3300         vpsrld  $2,%xmm10,%xmm10
 3301         vpaddd  %xmm8,%xmm13,%xmm13
 3302         vpshufb %xmm5,%xmm2,%xmm2
 3303         vpor    %xmm7,%xmm10,%xmm10
 3304         vpinsrd $1,-12(%r10),%xmm3,%xmm3
 3305         vpinsrd $1,-12(%r11),%xmm9,%xmm9
 3306         vpaddd  %xmm15,%xmm12,%xmm12
 3307         vpslld  $5,%xmm13,%xmm8
 3308         vpandn  %xmm11,%xmm14,%xmm7
 3309         vpand   %xmm10,%xmm14,%xmm6
 3310 
 3311         vmovdqa %xmm2,192-128(%rax)
 3312         vpaddd  %xmm2,%xmm12,%xmm12
 3313         vpunpckldq      %xmm9,%xmm3,%xmm3
 3314         vpsrld  $27,%xmm13,%xmm9
 3315         vpxor   %xmm7,%xmm6,%xmm6
 3316         vmovd   -8(%r8),%xmm4
 3317 
 3318         vpslld  $30,%xmm14,%xmm7
 3319         vpor    %xmm9,%xmm8,%xmm8
 3320         vmovd   -8(%r9),%xmm9
 3321         vpaddd  %xmm6,%xmm12,%xmm12
 3322 
 3323         vpsrld  $2,%xmm14,%xmm14
 3324         vpaddd  %xmm8,%xmm12,%xmm12
 3325         vpshufb %xmm5,%xmm3,%xmm3
 3326         vpor    %xmm7,%xmm14,%xmm14
 3327         vpinsrd $1,-8(%r10),%xmm4,%xmm4
 3328         vpinsrd $1,-8(%r11),%xmm9,%xmm9
 3329         vpaddd  %xmm15,%xmm11,%xmm11
 3330         vpslld  $5,%xmm12,%xmm8
 3331         vpandn  %xmm10,%xmm13,%xmm7
 3332         vpand   %xmm14,%xmm13,%xmm6
 3333 
 3334         vmovdqa %xmm3,208-128(%rax)
 3335         vpaddd  %xmm3,%xmm11,%xmm11
 3336         vpunpckldq      %xmm9,%xmm4,%xmm4
 3337         vpsrld  $27,%xmm12,%xmm9
 3338         vpxor   %xmm7,%xmm6,%xmm6
 3339         vmovd   -4(%r8),%xmm0
 3340 
 3341         vpslld  $30,%xmm13,%xmm7
 3342         vpor    %xmm9,%xmm8,%xmm8
 3343         vmovd   -4(%r9),%xmm9
 3344         vpaddd  %xmm6,%xmm11,%xmm11
 3345 
 3346         vpsrld  $2,%xmm13,%xmm13
 3347         vpaddd  %xmm8,%xmm11,%xmm11
 3348         vpshufb %xmm5,%xmm4,%xmm4
 3349         vpor    %xmm7,%xmm13,%xmm13
 3350         vmovdqa 0-128(%rax),%xmm1
 3351         vpinsrd $1,-4(%r10),%xmm0,%xmm0
 3352         vpinsrd $1,-4(%r11),%xmm9,%xmm9
 3353         vpaddd  %xmm15,%xmm10,%xmm10
 3354         prefetcht0      63(%r8)
 3355         vpslld  $5,%xmm11,%xmm8
 3356         vpandn  %xmm14,%xmm12,%xmm7
 3357         vpand   %xmm13,%xmm12,%xmm6
 3358 
 3359         vmovdqa %xmm4,224-128(%rax)
 3360         vpaddd  %xmm4,%xmm10,%xmm10
 3361         vpunpckldq      %xmm9,%xmm0,%xmm0
 3362         vpsrld  $27,%xmm11,%xmm9
 3363         prefetcht0      63(%r9)
 3364         vpxor   %xmm7,%xmm6,%xmm6
 3365 
 3366         vpslld  $30,%xmm12,%xmm7
 3367         vpor    %xmm9,%xmm8,%xmm8
 3368         prefetcht0      63(%r10)
 3369         vpaddd  %xmm6,%xmm10,%xmm10
 3370 
 3371         vpsrld  $2,%xmm12,%xmm12
 3372         vpaddd  %xmm8,%xmm10,%xmm10
 3373         prefetcht0      63(%r11)
 3374         vpshufb %xmm5,%xmm0,%xmm0
 3375         vpor    %xmm7,%xmm12,%xmm12
 3376         vmovdqa 16-128(%rax),%xmm2
 3377         vpxor   %xmm3,%xmm1,%xmm1
 3378         vmovdqa 32-128(%rax),%xmm3
 3379 
 3380         vpaddd  %xmm15,%xmm14,%xmm14
 3381         vpslld  $5,%xmm10,%xmm8
 3382         vpandn  %xmm13,%xmm11,%xmm7
 3383 
 3384         vpand   %xmm12,%xmm11,%xmm6
 3385 
 3386         vmovdqa %xmm0,240-128(%rax)
 3387         vpaddd  %xmm0,%xmm14,%xmm14
 3388         vpxor   128-128(%rax),%xmm1,%xmm1
 3389         vpsrld  $27,%xmm10,%xmm9
 3390         vpxor   %xmm7,%xmm6,%xmm6
 3391         vpxor   %xmm3,%xmm1,%xmm1
 3392 
 3393 
 3394         vpslld  $30,%xmm11,%xmm7
 3395         vpor    %xmm9,%xmm8,%xmm8
 3396         vpaddd  %xmm6,%xmm14,%xmm14
 3397 
 3398         vpsrld  $31,%xmm1,%xmm5
 3399         vpaddd  %xmm1,%xmm1,%xmm1
 3400 
 3401         vpsrld  $2,%xmm11,%xmm11
 3402 
 3403         vpaddd  %xmm8,%xmm14,%xmm14
 3404         vpor    %xmm5,%xmm1,%xmm1
 3405         vpor    %xmm7,%xmm11,%xmm11
 3406         vpxor   %xmm4,%xmm2,%xmm2
 3407         vmovdqa 48-128(%rax),%xmm4
 3408 
 3409         vpaddd  %xmm15,%xmm13,%xmm13
 3410         vpslld  $5,%xmm14,%xmm8
 3411         vpandn  %xmm12,%xmm10,%xmm7
 3412 
 3413         vpand   %xmm11,%xmm10,%xmm6
 3414 
 3415         vmovdqa %xmm1,0-128(%rax)
 3416         vpaddd  %xmm1,%xmm13,%xmm13
 3417         vpxor   144-128(%rax),%xmm2,%xmm2
 3418         vpsrld  $27,%xmm14,%xmm9
 3419         vpxor   %xmm7,%xmm6,%xmm6
 3420         vpxor   %xmm4,%xmm2,%xmm2
 3421 
 3422 
 3423         vpslld  $30,%xmm10,%xmm7
 3424         vpor    %xmm9,%xmm8,%xmm8
 3425         vpaddd  %xmm6,%xmm13,%xmm13
 3426 
 3427         vpsrld  $31,%xmm2,%xmm5
 3428         vpaddd  %xmm2,%xmm2,%xmm2
 3429 
 3430         vpsrld  $2,%xmm10,%xmm10
 3431 
 3432         vpaddd  %xmm8,%xmm13,%xmm13
 3433         vpor    %xmm5,%xmm2,%xmm2
 3434         vpor    %xmm7,%xmm10,%xmm10
 3435         vpxor   %xmm0,%xmm3,%xmm3
 3436         vmovdqa 64-128(%rax),%xmm0
 3437 
 3438         vpaddd  %xmm15,%xmm12,%xmm12
 3439         vpslld  $5,%xmm13,%xmm8
 3440         vpandn  %xmm11,%xmm14,%xmm7
 3441 
 3442         vpand   %xmm10,%xmm14,%xmm6
 3443 
 3444         vmovdqa %xmm2,16-128(%rax)
 3445         vpaddd  %xmm2,%xmm12,%xmm12
 3446         vpxor   160-128(%rax),%xmm3,%xmm3
 3447         vpsrld  $27,%xmm13,%xmm9
 3448         vpxor   %xmm7,%xmm6,%xmm6
 3449         vpxor   %xmm0,%xmm3,%xmm3
 3450 
 3451 
 3452         vpslld  $30,%xmm14,%xmm7
 3453         vpor    %xmm9,%xmm8,%xmm8
 3454         vpaddd  %xmm6,%xmm12,%xmm12
 3455 
 3456         vpsrld  $31,%xmm3,%xmm5
 3457         vpaddd  %xmm3,%xmm3,%xmm3
 3458 
 3459         vpsrld  $2,%xmm14,%xmm14
 3460 
 3461         vpaddd  %xmm8,%xmm12,%xmm12
 3462         vpor    %xmm5,%xmm3,%xmm3
 3463         vpor    %xmm7,%xmm14,%xmm14
 3464         vpxor   %xmm1,%xmm4,%xmm4
 3465         vmovdqa 80-128(%rax),%xmm1
 3466 
 3467         vpaddd  %xmm15,%xmm11,%xmm11
 3468         vpslld  $5,%xmm12,%xmm8
 3469         vpandn  %xmm10,%xmm13,%xmm7
 3470 
 3471         vpand   %xmm14,%xmm13,%xmm6
 3472 
 3473         vmovdqa %xmm3,32-128(%rax)
 3474         vpaddd  %xmm3,%xmm11,%xmm11
 3475         vpxor   176-128(%rax),%xmm4,%xmm4
 3476         vpsrld  $27,%xmm12,%xmm9
 3477         vpxor   %xmm7,%xmm6,%xmm6
 3478         vpxor   %xmm1,%xmm4,%xmm4
 3479 
 3480 
 3481         vpslld  $30,%xmm13,%xmm7
 3482         vpor    %xmm9,%xmm8,%xmm8
 3483         vpaddd  %xmm6,%xmm11,%xmm11
 3484 
 3485         vpsrld  $31,%xmm4,%xmm5
 3486         vpaddd  %xmm4,%xmm4,%xmm4
 3487 
 3488         vpsrld  $2,%xmm13,%xmm13
 3489 
 3490         vpaddd  %xmm8,%xmm11,%xmm11
 3491         vpor    %xmm5,%xmm4,%xmm4
 3492         vpor    %xmm7,%xmm13,%xmm13
 3493         vpxor   %xmm2,%xmm0,%xmm0
 3494         vmovdqa 96-128(%rax),%xmm2
 3495 
 3496         vpaddd  %xmm15,%xmm10,%xmm10
 3497         vpslld  $5,%xmm11,%xmm8
 3498         vpandn  %xmm14,%xmm12,%xmm7
 3499 
 3500         vpand   %xmm13,%xmm12,%xmm6
 3501 
 3502         vmovdqa %xmm4,48-128(%rax)
 3503         vpaddd  %xmm4,%xmm10,%xmm10
 3504         vpxor   192-128(%rax),%xmm0,%xmm0
 3505         vpsrld  $27,%xmm11,%xmm9
 3506         vpxor   %xmm7,%xmm6,%xmm6
 3507         vpxor   %xmm2,%xmm0,%xmm0
 3508 
 3509 
 3510         vpslld  $30,%xmm12,%xmm7
 3511         vpor    %xmm9,%xmm8,%xmm8
 3512         vpaddd  %xmm6,%xmm10,%xmm10
 3513 
 3514         vpsrld  $31,%xmm0,%xmm5
 3515         vpaddd  %xmm0,%xmm0,%xmm0
 3516 
 3517         vpsrld  $2,%xmm12,%xmm12
 3518 
 3519         vpaddd  %xmm8,%xmm10,%xmm10
 3520         vpor    %xmm5,%xmm0,%xmm0
 3521         vpor    %xmm7,%xmm12,%xmm12
 3522         vmovdqa 0(%rbp),%xmm15
 3523         vpxor   %xmm3,%xmm1,%xmm1
 3524         vmovdqa 112-128(%rax),%xmm3
 3525 
 3526         vpslld  $5,%xmm10,%xmm8
 3527         vpaddd  %xmm15,%xmm14,%xmm14
 3528         vpxor   %xmm11,%xmm13,%xmm6
 3529         vmovdqa %xmm0,64-128(%rax)
 3530         vpaddd  %xmm0,%xmm14,%xmm14
 3531         vpxor   208-128(%rax),%xmm1,%xmm1
 3532         vpsrld  $27,%xmm10,%xmm9
 3533         vpxor   %xmm12,%xmm6,%xmm6
 3534         vpxor   %xmm3,%xmm1,%xmm1
 3535 
 3536         vpslld  $30,%xmm11,%xmm7
 3537         vpor    %xmm9,%xmm8,%xmm8
 3538         vpaddd  %xmm6,%xmm14,%xmm14
 3539         vpsrld  $31,%xmm1,%xmm5
 3540         vpaddd  %xmm1,%xmm1,%xmm1
 3541 
 3542         vpsrld  $2,%xmm11,%xmm11
 3543         vpaddd  %xmm8,%xmm14,%xmm14
 3544         vpor    %xmm5,%xmm1,%xmm1
 3545         vpor    %xmm7,%xmm11,%xmm11
 3546         vpxor   %xmm4,%xmm2,%xmm2
 3547         vmovdqa 128-128(%rax),%xmm4
 3548 
 3549         vpslld  $5,%xmm14,%xmm8
 3550         vpaddd  %xmm15,%xmm13,%xmm13
 3551         vpxor   %xmm10,%xmm12,%xmm6
 3552         vmovdqa %xmm1,80-128(%rax)
 3553         vpaddd  %xmm1,%xmm13,%xmm13
 3554         vpxor   224-128(%rax),%xmm2,%xmm2
 3555         vpsrld  $27,%xmm14,%xmm9
 3556         vpxor   %xmm11,%xmm6,%xmm6
 3557         vpxor   %xmm4,%xmm2,%xmm2
 3558 
 3559         vpslld  $30,%xmm10,%xmm7
 3560         vpor    %xmm9,%xmm8,%xmm8
 3561         vpaddd  %xmm6,%xmm13,%xmm13
 3562         vpsrld  $31,%xmm2,%xmm5
 3563         vpaddd  %xmm2,%xmm2,%xmm2
 3564 
 3565         vpsrld  $2,%xmm10,%xmm10
 3566         vpaddd  %xmm8,%xmm13,%xmm13
 3567         vpor    %xmm5,%xmm2,%xmm2
 3568         vpor    %xmm7,%xmm10,%xmm10
 3569         vpxor   %xmm0,%xmm3,%xmm3
 3570         vmovdqa 144-128(%rax),%xmm0
 3571 
 3572         vpslld  $5,%xmm13,%xmm8
 3573         vpaddd  %xmm15,%xmm12,%xmm12
 3574         vpxor   %xmm14,%xmm11,%xmm6
 3575         vmovdqa %xmm2,96-128(%rax)
 3576         vpaddd  %xmm2,%xmm12,%xmm12
 3577         vpxor   240-128(%rax),%xmm3,%xmm3
 3578         vpsrld  $27,%xmm13,%xmm9
 3579         vpxor   %xmm10,%xmm6,%xmm6
 3580         vpxor   %xmm0,%xmm3,%xmm3
 3581 
 3582         vpslld  $30,%xmm14,%xmm7
 3583         vpor    %xmm9,%xmm8,%xmm8
 3584         vpaddd  %xmm6,%xmm12,%xmm12
 3585         vpsrld  $31,%xmm3,%xmm5
 3586         vpaddd  %xmm3,%xmm3,%xmm3
 3587 
 3588         vpsrld  $2,%xmm14,%xmm14
 3589         vpaddd  %xmm8,%xmm12,%xmm12
 3590         vpor    %xmm5,%xmm3,%xmm3
 3591         vpor    %xmm7,%xmm14,%xmm14
 3592         vpxor   %xmm1,%xmm4,%xmm4
 3593         vmovdqa 160-128(%rax),%xmm1
 3594 
 3595         vpslld  $5,%xmm12,%xmm8
 3596         vpaddd  %xmm15,%xmm11,%xmm11
 3597         vpxor   %xmm13,%xmm10,%xmm6
 3598         vmovdqa %xmm3,112-128(%rax)
 3599         vpaddd  %xmm3,%xmm11,%xmm11
 3600         vpxor   0-128(%rax),%xmm4,%xmm4
 3601         vpsrld  $27,%xmm12,%xmm9
 3602         vpxor   %xmm14,%xmm6,%xmm6
 3603         vpxor   %xmm1,%xmm4,%xmm4
 3604 
 3605         vpslld  $30,%xmm13,%xmm7
 3606         vpor    %xmm9,%xmm8,%xmm8
 3607         vpaddd  %xmm6,%xmm11,%xmm11
 3608         vpsrld  $31,%xmm4,%xmm5
 3609         vpaddd  %xmm4,%xmm4,%xmm4
 3610 
 3611         vpsrld  $2,%xmm13,%xmm13
 3612         vpaddd  %xmm8,%xmm11,%xmm11
 3613         vpor    %xmm5,%xmm4,%xmm4
 3614         vpor    %xmm7,%xmm13,%xmm13
 3615         vpxor   %xmm2,%xmm0,%xmm0
 3616         vmovdqa 176-128(%rax),%xmm2
 3617 
 3618         vpslld  $5,%xmm11,%xmm8
 3619         vpaddd  %xmm15,%xmm10,%xmm10
 3620         vpxor   %xmm12,%xmm14,%xmm6
 3621         vmovdqa %xmm4,128-128(%rax)
 3622         vpaddd  %xmm4,%xmm10,%xmm10
 3623         vpxor   16-128(%rax),%xmm0,%xmm0
 3624         vpsrld  $27,%xmm11,%xmm9
 3625         vpxor   %xmm13,%xmm6,%xmm6
 3626         vpxor   %xmm2,%xmm0,%xmm0
 3627 
 3628         vpslld  $30,%xmm12,%xmm7
 3629         vpor    %xmm9,%xmm8,%xmm8
 3630         vpaddd  %xmm6,%xmm10,%xmm10
 3631         vpsrld  $31,%xmm0,%xmm5
 3632         vpaddd  %xmm0,%xmm0,%xmm0
 3633 
 3634         vpsrld  $2,%xmm12,%xmm12
 3635         vpaddd  %xmm8,%xmm10,%xmm10
 3636         vpor    %xmm5,%xmm0,%xmm0
 3637         vpor    %xmm7,%xmm12,%xmm12
 3638         vpxor   %xmm3,%xmm1,%xmm1
 3639         vmovdqa 192-128(%rax),%xmm3
 3640 
 3641         vpslld  $5,%xmm10,%xmm8
 3642         vpaddd  %xmm15,%xmm14,%xmm14
 3643         vpxor   %xmm11,%xmm13,%xmm6
 3644         vmovdqa %xmm0,144-128(%rax)
 3645         vpaddd  %xmm0,%xmm14,%xmm14
 3646         vpxor   32-128(%rax),%xmm1,%xmm1
 3647         vpsrld  $27,%xmm10,%xmm9
 3648         vpxor   %xmm12,%xmm6,%xmm6
 3649         vpxor   %xmm3,%xmm1,%xmm1
 3650 
 3651         vpslld  $30,%xmm11,%xmm7
 3652         vpor    %xmm9,%xmm8,%xmm8
 3653         vpaddd  %xmm6,%xmm14,%xmm14
 3654         vpsrld  $31,%xmm1,%xmm5
 3655         vpaddd  %xmm1,%xmm1,%xmm1
 3656 
 3657         vpsrld  $2,%xmm11,%xmm11
 3658         vpaddd  %xmm8,%xmm14,%xmm14
 3659         vpor    %xmm5,%xmm1,%xmm1
 3660         vpor    %xmm7,%xmm11,%xmm11
 3661         vpxor   %xmm4,%xmm2,%xmm2
 3662         vmovdqa 208-128(%rax),%xmm4
 3663 
 3664         vpslld  $5,%xmm14,%xmm8
 3665         vpaddd  %xmm15,%xmm13,%xmm13
 3666         vpxor   %xmm10,%xmm12,%xmm6
 3667         vmovdqa %xmm1,160-128(%rax)
 3668         vpaddd  %xmm1,%xmm13,%xmm13
 3669         vpxor   48-128(%rax),%xmm2,%xmm2
 3670         vpsrld  $27,%xmm14,%xmm9
 3671         vpxor   %xmm11,%xmm6,%xmm6
 3672         vpxor   %xmm4,%xmm2,%xmm2
 3673 
 3674         vpslld  $30,%xmm10,%xmm7
 3675         vpor    %xmm9,%xmm8,%xmm8
 3676         vpaddd  %xmm6,%xmm13,%xmm13
 3677         vpsrld  $31,%xmm2,%xmm5
 3678         vpaddd  %xmm2,%xmm2,%xmm2
 3679 
 3680         vpsrld  $2,%xmm10,%xmm10
 3681         vpaddd  %xmm8,%xmm13,%xmm13
 3682         vpor    %xmm5,%xmm2,%xmm2
 3683         vpor    %xmm7,%xmm10,%xmm10
 3684         vpxor   %xmm0,%xmm3,%xmm3
 3685         vmovdqa 224-128(%rax),%xmm0
 3686 
 3687         vpslld  $5,%xmm13,%xmm8
 3688         vpaddd  %xmm15,%xmm12,%xmm12
 3689         vpxor   %xmm14,%xmm11,%xmm6
 3690         vmovdqa %xmm2,176-128(%rax)
 3691         vpaddd  %xmm2,%xmm12,%xmm12
 3692         vpxor   64-128(%rax),%xmm3,%xmm3
 3693         vpsrld  $27,%xmm13,%xmm9
 3694         vpxor   %xmm10,%xmm6,%xmm6
 3695         vpxor   %xmm0,%xmm3,%xmm3
 3696 
 3697         vpslld  $30,%xmm14,%xmm7
 3698         vpor    %xmm9,%xmm8,%xmm8
 3699         vpaddd  %xmm6,%xmm12,%xmm12
 3700         vpsrld  $31,%xmm3,%xmm5
 3701         vpaddd  %xmm3,%xmm3,%xmm3
 3702 
 3703         vpsrld  $2,%xmm14,%xmm14
 3704         vpaddd  %xmm8,%xmm12,%xmm12
 3705         vpor    %xmm5,%xmm3,%xmm3
 3706         vpor    %xmm7,%xmm14,%xmm14
 3707         vpxor   %xmm1,%xmm4,%xmm4
 3708         vmovdqa 240-128(%rax),%xmm1
 3709 
 3710         vpslld  $5,%xmm12,%xmm8
 3711         vpaddd  %xmm15,%xmm11,%xmm11
 3712         vpxor   %xmm13,%xmm10,%xmm6
 3713         vmovdqa %xmm3,192-128(%rax)
 3714         vpaddd  %xmm3,%xmm11,%xmm11
 3715         vpxor   80-128(%rax),%xmm4,%xmm4
 3716         vpsrld  $27,%xmm12,%xmm9
 3717         vpxor   %xmm14,%xmm6,%xmm6
 3718         vpxor   %xmm1,%xmm4,%xmm4
 3719 
 3720         vpslld  $30,%xmm13,%xmm7
 3721         vpor    %xmm9,%xmm8,%xmm8
 3722         vpaddd  %xmm6,%xmm11,%xmm11
 3723         vpsrld  $31,%xmm4,%xmm5
 3724         vpaddd  %xmm4,%xmm4,%xmm4
 3725 
 3726         vpsrld  $2,%xmm13,%xmm13
 3727         vpaddd  %xmm8,%xmm11,%xmm11
 3728         vpor    %xmm5,%xmm4,%xmm4
 3729         vpor    %xmm7,%xmm13,%xmm13
 3730         vpxor   %xmm2,%xmm0,%xmm0
 3731         vmovdqa 0-128(%rax),%xmm2
 3732 
 3733         vpslld  $5,%xmm11,%xmm8
 3734         vpaddd  %xmm15,%xmm10,%xmm10
 3735         vpxor   %xmm12,%xmm14,%xmm6
 3736         vmovdqa %xmm4,208-128(%rax)
 3737         vpaddd  %xmm4,%xmm10,%xmm10
 3738         vpxor   96-128(%rax),%xmm0,%xmm0
 3739         vpsrld  $27,%xmm11,%xmm9
 3740         vpxor   %xmm13,%xmm6,%xmm6
 3741         vpxor   %xmm2,%xmm0,%xmm0
 3742 
 3743         vpslld  $30,%xmm12,%xmm7
 3744         vpor    %xmm9,%xmm8,%xmm8
 3745         vpaddd  %xmm6,%xmm10,%xmm10
 3746         vpsrld  $31,%xmm0,%xmm5
 3747         vpaddd  %xmm0,%xmm0,%xmm0
 3748 
 3749         vpsrld  $2,%xmm12,%xmm12
 3750         vpaddd  %xmm8,%xmm10,%xmm10
 3751         vpor    %xmm5,%xmm0,%xmm0
 3752         vpor    %xmm7,%xmm12,%xmm12
 3753         vpxor   %xmm3,%xmm1,%xmm1
 3754         vmovdqa 16-128(%rax),%xmm3
 3755 
 3756         vpslld  $5,%xmm10,%xmm8
 3757         vpaddd  %xmm15,%xmm14,%xmm14
 3758         vpxor   %xmm11,%xmm13,%xmm6
 3759         vmovdqa %xmm0,224-128(%rax)
 3760         vpaddd  %xmm0,%xmm14,%xmm14
 3761         vpxor   112-128(%rax),%xmm1,%xmm1
 3762         vpsrld  $27,%xmm10,%xmm9
 3763         vpxor   %xmm12,%xmm6,%xmm6
 3764         vpxor   %xmm3,%xmm1,%xmm1
 3765 
 3766         vpslld  $30,%xmm11,%xmm7
 3767         vpor    %xmm9,%xmm8,%xmm8
 3768         vpaddd  %xmm6,%xmm14,%xmm14
 3769         vpsrld  $31,%xmm1,%xmm5
 3770         vpaddd  %xmm1,%xmm1,%xmm1
 3771 
 3772         vpsrld  $2,%xmm11,%xmm11
 3773         vpaddd  %xmm8,%xmm14,%xmm14
 3774         vpor    %xmm5,%xmm1,%xmm1
 3775         vpor    %xmm7,%xmm11,%xmm11
 3776         vpxor   %xmm4,%xmm2,%xmm2
 3777         vmovdqa 32-128(%rax),%xmm4
 3778 
 3779         vpslld  $5,%xmm14,%xmm8
 3780         vpaddd  %xmm15,%xmm13,%xmm13
 3781         vpxor   %xmm10,%xmm12,%xmm6
 3782         vmovdqa %xmm1,240-128(%rax)
 3783         vpaddd  %xmm1,%xmm13,%xmm13
 3784         vpxor   128-128(%rax),%xmm2,%xmm2
 3785         vpsrld  $27,%xmm14,%xmm9
 3786         vpxor   %xmm11,%xmm6,%xmm6
 3787         vpxor   %xmm4,%xmm2,%xmm2
 3788 
 3789         vpslld  $30,%xmm10,%xmm7
 3790         vpor    %xmm9,%xmm8,%xmm8
 3791         vpaddd  %xmm6,%xmm13,%xmm13
 3792         vpsrld  $31,%xmm2,%xmm5
 3793         vpaddd  %xmm2,%xmm2,%xmm2
 3794 
 3795         vpsrld  $2,%xmm10,%xmm10
 3796         vpaddd  %xmm8,%xmm13,%xmm13
 3797         vpor    %xmm5,%xmm2,%xmm2
 3798         vpor    %xmm7,%xmm10,%xmm10
 3799         vpxor   %xmm0,%xmm3,%xmm3
 3800         vmovdqa 48-128(%rax),%xmm0
 3801 
 3802         vpslld  $5,%xmm13,%xmm8
 3803         vpaddd  %xmm15,%xmm12,%xmm12
 3804         vpxor   %xmm14,%xmm11,%xmm6
 3805         vmovdqa %xmm2,0-128(%rax)
 3806         vpaddd  %xmm2,%xmm12,%xmm12
 3807         vpxor   144-128(%rax),%xmm3,%xmm3
 3808         vpsrld  $27,%xmm13,%xmm9
 3809         vpxor   %xmm10,%xmm6,%xmm6
 3810         vpxor   %xmm0,%xmm3,%xmm3
 3811 
 3812         vpslld  $30,%xmm14,%xmm7
 3813         vpor    %xmm9,%xmm8,%xmm8
 3814         vpaddd  %xmm6,%xmm12,%xmm12
 3815         vpsrld  $31,%xmm3,%xmm5
 3816         vpaddd  %xmm3,%xmm3,%xmm3
 3817 
 3818         vpsrld  $2,%xmm14,%xmm14
 3819         vpaddd  %xmm8,%xmm12,%xmm12
 3820         vpor    %xmm5,%xmm3,%xmm3
 3821         vpor    %xmm7,%xmm14,%xmm14
 3822         vpxor   %xmm1,%xmm4,%xmm4
 3823         vmovdqa 64-128(%rax),%xmm1
 3824 
 3825         vpslld  $5,%xmm12,%xmm8
 3826         vpaddd  %xmm15,%xmm11,%xmm11
 3827         vpxor   %xmm13,%xmm10,%xmm6
 3828         vmovdqa %xmm3,16-128(%rax)
 3829         vpaddd  %xmm3,%xmm11,%xmm11
 3830         vpxor   160-128(%rax),%xmm4,%xmm4
 3831         vpsrld  $27,%xmm12,%xmm9
 3832         vpxor   %xmm14,%xmm6,%xmm6
 3833         vpxor   %xmm1,%xmm4,%xmm4
 3834 
 3835         vpslld  $30,%xmm13,%xmm7
 3836         vpor    %xmm9,%xmm8,%xmm8
 3837         vpaddd  %xmm6,%xmm11,%xmm11
 3838         vpsrld  $31,%xmm4,%xmm5
 3839         vpaddd  %xmm4,%xmm4,%xmm4
 3840 
 3841         vpsrld  $2,%xmm13,%xmm13
 3842         vpaddd  %xmm8,%xmm11,%xmm11
 3843         vpor    %xmm5,%xmm4,%xmm4
 3844         vpor    %xmm7,%xmm13,%xmm13
 3845         vpxor   %xmm2,%xmm0,%xmm0
 3846         vmovdqa 80-128(%rax),%xmm2
 3847 
 3848         vpslld  $5,%xmm11,%xmm8
 3849         vpaddd  %xmm15,%xmm10,%xmm10
 3850         vpxor   %xmm12,%xmm14,%xmm6
 3851         vmovdqa %xmm4,32-128(%rax)
 3852         vpaddd  %xmm4,%xmm10,%xmm10
 3853         vpxor   176-128(%rax),%xmm0,%xmm0
 3854         vpsrld  $27,%xmm11,%xmm9
 3855         vpxor   %xmm13,%xmm6,%xmm6
 3856         vpxor   %xmm2,%xmm0,%xmm0
 3857 
 3858         vpslld  $30,%xmm12,%xmm7
 3859         vpor    %xmm9,%xmm8,%xmm8
 3860         vpaddd  %xmm6,%xmm10,%xmm10
 3861         vpsrld  $31,%xmm0,%xmm5
 3862         vpaddd  %xmm0,%xmm0,%xmm0
 3863 
 3864         vpsrld  $2,%xmm12,%xmm12
 3865         vpaddd  %xmm8,%xmm10,%xmm10
 3866         vpor    %xmm5,%xmm0,%xmm0
 3867         vpor    %xmm7,%xmm12,%xmm12
 3868         vpxor   %xmm3,%xmm1,%xmm1
 3869         vmovdqa 96-128(%rax),%xmm3
 3870 
 3871         vpslld  $5,%xmm10,%xmm8
 3872         vpaddd  %xmm15,%xmm14,%xmm14
 3873         vpxor   %xmm11,%xmm13,%xmm6
 3874         vmovdqa %xmm0,48-128(%rax)
 3875         vpaddd  %xmm0,%xmm14,%xmm14
 3876         vpxor   192-128(%rax),%xmm1,%xmm1
 3877         vpsrld  $27,%xmm10,%xmm9
 3878         vpxor   %xmm12,%xmm6,%xmm6
 3879         vpxor   %xmm3,%xmm1,%xmm1
 3880 
 3881         vpslld  $30,%xmm11,%xmm7
 3882         vpor    %xmm9,%xmm8,%xmm8
 3883         vpaddd  %xmm6,%xmm14,%xmm14
 3884         vpsrld  $31,%xmm1,%xmm5
 3885         vpaddd  %xmm1,%xmm1,%xmm1
 3886 
 3887         vpsrld  $2,%xmm11,%xmm11
 3888         vpaddd  %xmm8,%xmm14,%xmm14
 3889         vpor    %xmm5,%xmm1,%xmm1
 3890         vpor    %xmm7,%xmm11,%xmm11
 3891         vpxor   %xmm4,%xmm2,%xmm2
 3892         vmovdqa 112-128(%rax),%xmm4
 3893 
 3894         vpslld  $5,%xmm14,%xmm8
 3895         vpaddd  %xmm15,%xmm13,%xmm13
 3896         vpxor   %xmm10,%xmm12,%xmm6
 3897         vmovdqa %xmm1,64-128(%rax)
 3898         vpaddd  %xmm1,%xmm13,%xmm13
 3899         vpxor   208-128(%rax),%xmm2,%xmm2
 3900         vpsrld  $27,%xmm14,%xmm9
 3901         vpxor   %xmm11,%xmm6,%xmm6
 3902         vpxor   %xmm4,%xmm2,%xmm2
 3903 
 3904         vpslld  $30,%xmm10,%xmm7
 3905         vpor    %xmm9,%xmm8,%xmm8
 3906         vpaddd  %xmm6,%xmm13,%xmm13
 3907         vpsrld  $31,%xmm2,%xmm5
 3908         vpaddd  %xmm2,%xmm2,%xmm2
 3909 
 3910         vpsrld  $2,%xmm10,%xmm10
 3911         vpaddd  %xmm8,%xmm13,%xmm13
 3912         vpor    %xmm5,%xmm2,%xmm2
 3913         vpor    %xmm7,%xmm10,%xmm10
 3914         vpxor   %xmm0,%xmm3,%xmm3
 3915         vmovdqa 128-128(%rax),%xmm0
 3916 
 3917         vpslld  $5,%xmm13,%xmm8
 3918         vpaddd  %xmm15,%xmm12,%xmm12
 3919         vpxor   %xmm14,%xmm11,%xmm6
 3920         vmovdqa %xmm2,80-128(%rax)
 3921         vpaddd  %xmm2,%xmm12,%xmm12
 3922         vpxor   224-128(%rax),%xmm3,%xmm3
 3923         vpsrld  $27,%xmm13,%xmm9
 3924         vpxor   %xmm10,%xmm6,%xmm6
 3925         vpxor   %xmm0,%xmm3,%xmm3
 3926 
 3927         vpslld  $30,%xmm14,%xmm7
 3928         vpor    %xmm9,%xmm8,%xmm8
 3929         vpaddd  %xmm6,%xmm12,%xmm12
 3930         vpsrld  $31,%xmm3,%xmm5
 3931         vpaddd  %xmm3,%xmm3,%xmm3
 3932 
 3933         vpsrld  $2,%xmm14,%xmm14
 3934         vpaddd  %xmm8,%xmm12,%xmm12
 3935         vpor    %xmm5,%xmm3,%xmm3
 3936         vpor    %xmm7,%xmm14,%xmm14
 3937         vpxor   %xmm1,%xmm4,%xmm4
 3938         vmovdqa 144-128(%rax),%xmm1
 3939 
 3940         vpslld  $5,%xmm12,%xmm8
 3941         vpaddd  %xmm15,%xmm11,%xmm11
 3942         vpxor   %xmm13,%xmm10,%xmm6
 3943         vmovdqa %xmm3,96-128(%rax)
 3944         vpaddd  %xmm3,%xmm11,%xmm11
 3945         vpxor   240-128(%rax),%xmm4,%xmm4
 3946         vpsrld  $27,%xmm12,%xmm9
 3947         vpxor   %xmm14,%xmm6,%xmm6
 3948         vpxor   %xmm1,%xmm4,%xmm4
 3949 
 3950         vpslld  $30,%xmm13,%xmm7
 3951         vpor    %xmm9,%xmm8,%xmm8
 3952         vpaddd  %xmm6,%xmm11,%xmm11
 3953         vpsrld  $31,%xmm4,%xmm5
 3954         vpaddd  %xmm4,%xmm4,%xmm4
 3955 
 3956         vpsrld  $2,%xmm13,%xmm13
 3957         vpaddd  %xmm8,%xmm11,%xmm11
 3958         vpor    %xmm5,%xmm4,%xmm4
 3959         vpor    %xmm7,%xmm13,%xmm13
 3960         vpxor   %xmm2,%xmm0,%xmm0
 3961         vmovdqa 160-128(%rax),%xmm2
 3962 
 3963         vpslld  $5,%xmm11,%xmm8
 3964         vpaddd  %xmm15,%xmm10,%xmm10
 3965         vpxor   %xmm12,%xmm14,%xmm6
 3966         vmovdqa %xmm4,112-128(%rax)
 3967         vpaddd  %xmm4,%xmm10,%xmm10
 3968         vpxor   0-128(%rax),%xmm0,%xmm0
 3969         vpsrld  $27,%xmm11,%xmm9
 3970         vpxor   %xmm13,%xmm6,%xmm6
 3971         vpxor   %xmm2,%xmm0,%xmm0
 3972 
 3973         vpslld  $30,%xmm12,%xmm7
 3974         vpor    %xmm9,%xmm8,%xmm8
 3975         vpaddd  %xmm6,%xmm10,%xmm10
 3976         vpsrld  $31,%xmm0,%xmm5
 3977         vpaddd  %xmm0,%xmm0,%xmm0
 3978 
 3979         vpsrld  $2,%xmm12,%xmm12
 3980         vpaddd  %xmm8,%xmm10,%xmm10
 3981         vpor    %xmm5,%xmm0,%xmm0
 3982         vpor    %xmm7,%xmm12,%xmm12
 3983         vmovdqa 32(%rbp),%xmm15
 3984         vpxor   %xmm3,%xmm1,%xmm1
 3985         vmovdqa 176-128(%rax),%xmm3
 3986 
 3987         vpaddd  %xmm15,%xmm14,%xmm14
 3988         vpslld  $5,%xmm10,%xmm8
 3989         vpand   %xmm12,%xmm13,%xmm7
 3990         vpxor   16-128(%rax),%xmm1,%xmm1
 3991 
 3992         vpaddd  %xmm7,%xmm14,%xmm14
 3993         vpsrld  $27,%xmm10,%xmm9
 3994         vpxor   %xmm12,%xmm13,%xmm6
 3995         vpxor   %xmm3,%xmm1,%xmm1
 3996 
 3997         vmovdqu %xmm0,128-128(%rax)
 3998         vpaddd  %xmm0,%xmm14,%xmm14
 3999         vpor    %xmm9,%xmm8,%xmm8
 4000         vpsrld  $31,%xmm1,%xmm5
 4001         vpand   %xmm11,%xmm6,%xmm6
 4002         vpaddd  %xmm1,%xmm1,%xmm1
 4003 
 4004         vpslld  $30,%xmm11,%xmm7
 4005         vpaddd  %xmm6,%xmm14,%xmm14
 4006 
 4007         vpsrld  $2,%xmm11,%xmm11
 4008         vpaddd  %xmm8,%xmm14,%xmm14
 4009         vpor    %xmm5,%xmm1,%xmm1
 4010         vpor    %xmm7,%xmm11,%xmm11
 4011         vpxor   %xmm4,%xmm2,%xmm2
 4012         vmovdqa 192-128(%rax),%xmm4
 4013 
 4014         vpaddd  %xmm15,%xmm13,%xmm13
 4015         vpslld  $5,%xmm14,%xmm8
 4016         vpand   %xmm11,%xmm12,%xmm7
 4017         vpxor   32-128(%rax),%xmm2,%xmm2
 4018 
 4019         vpaddd  %xmm7,%xmm13,%xmm13
 4020         vpsrld  $27,%xmm14,%xmm9
 4021         vpxor   %xmm11,%xmm12,%xmm6
 4022         vpxor   %xmm4,%xmm2,%xmm2
 4023 
 4024         vmovdqu %xmm1,144-128(%rax)
 4025         vpaddd  %xmm1,%xmm13,%xmm13
 4026         vpor    %xmm9,%xmm8,%xmm8
 4027         vpsrld  $31,%xmm2,%xmm5
 4028         vpand   %xmm10,%xmm6,%xmm6
 4029         vpaddd  %xmm2,%xmm2,%xmm2
 4030 
 4031         vpslld  $30,%xmm10,%xmm7
 4032         vpaddd  %xmm6,%xmm13,%xmm13
 4033 
 4034         vpsrld  $2,%xmm10,%xmm10
 4035         vpaddd  %xmm8,%xmm13,%xmm13
 4036         vpor    %xmm5,%xmm2,%xmm2
 4037         vpor    %xmm7,%xmm10,%xmm10
 4038         vpxor   %xmm0,%xmm3,%xmm3
 4039         vmovdqa 208-128(%rax),%xmm0
 4040 
 4041         vpaddd  %xmm15,%xmm12,%xmm12
 4042         vpslld  $5,%xmm13,%xmm8
 4043         vpand   %xmm10,%xmm11,%xmm7
 4044         vpxor   48-128(%rax),%xmm3,%xmm3
 4045 
 4046         vpaddd  %xmm7,%xmm12,%xmm12
 4047         vpsrld  $27,%xmm13,%xmm9
 4048         vpxor   %xmm10,%xmm11,%xmm6
 4049         vpxor   %xmm0,%xmm3,%xmm3
 4050 
 4051         vmovdqu %xmm2,160-128(%rax)
 4052         vpaddd  %xmm2,%xmm12,%xmm12
 4053         vpor    %xmm9,%xmm8,%xmm8
 4054         vpsrld  $31,%xmm3,%xmm5
 4055         vpand   %xmm14,%xmm6,%xmm6
 4056         vpaddd  %xmm3,%xmm3,%xmm3
 4057 
 4058         vpslld  $30,%xmm14,%xmm7
 4059         vpaddd  %xmm6,%xmm12,%xmm12
 4060 
 4061         vpsrld  $2,%xmm14,%xmm14
 4062         vpaddd  %xmm8,%xmm12,%xmm12
 4063         vpor    %xmm5,%xmm3,%xmm3
 4064         vpor    %xmm7,%xmm14,%xmm14
 4065         vpxor   %xmm1,%xmm4,%xmm4
 4066         vmovdqa 224-128(%rax),%xmm1
 4067 
 4068         vpaddd  %xmm15,%xmm11,%xmm11
 4069         vpslld  $5,%xmm12,%xmm8
 4070         vpand   %xmm14,%xmm10,%xmm7
 4071         vpxor   64-128(%rax),%xmm4,%xmm4
 4072 
 4073         vpaddd  %xmm7,%xmm11,%xmm11
 4074         vpsrld  $27,%xmm12,%xmm9
 4075         vpxor   %xmm14,%xmm10,%xmm6
 4076         vpxor   %xmm1,%xmm4,%xmm4
 4077 
 4078         vmovdqu %xmm3,176-128(%rax)
 4079         vpaddd  %xmm3,%xmm11,%xmm11
 4080         vpor    %xmm9,%xmm8,%xmm8
 4081         vpsrld  $31,%xmm4,%xmm5
 4082         vpand   %xmm13,%xmm6,%xmm6
 4083         vpaddd  %xmm4,%xmm4,%xmm4
 4084 
 4085         vpslld  $30,%xmm13,%xmm7
 4086         vpaddd  %xmm6,%xmm11,%xmm11
 4087 
 4088         vpsrld  $2,%xmm13,%xmm13
 4089         vpaddd  %xmm8,%xmm11,%xmm11
 4090         vpor    %xmm5,%xmm4,%xmm4
 4091         vpor    %xmm7,%xmm13,%xmm13
 4092         vpxor   %xmm2,%xmm0,%xmm0
 4093         vmovdqa 240-128(%rax),%xmm2
 4094 
 4095         vpaddd  %xmm15,%xmm10,%xmm10
 4096         vpslld  $5,%xmm11,%xmm8
 4097         vpand   %xmm13,%xmm14,%xmm7
 4098         vpxor   80-128(%rax),%xmm0,%xmm0
 4099 
 4100         vpaddd  %xmm7,%xmm10,%xmm10
 4101         vpsrld  $27,%xmm11,%xmm9
 4102         vpxor   %xmm13,%xmm14,%xmm6
 4103         vpxor   %xmm2,%xmm0,%xmm0
 4104 
 4105         vmovdqu %xmm4,192-128(%rax)
 4106         vpaddd  %xmm4,%xmm10,%xmm10
 4107         vpor    %xmm9,%xmm8,%xmm8
 4108         vpsrld  $31,%xmm0,%xmm5
 4109         vpand   %xmm12,%xmm6,%xmm6
 4110         vpaddd  %xmm0,%xmm0,%xmm0
 4111 
 4112         vpslld  $30,%xmm12,%xmm7
 4113         vpaddd  %xmm6,%xmm10,%xmm10
 4114 
 4115         vpsrld  $2,%xmm12,%xmm12
 4116         vpaddd  %xmm8,%xmm10,%xmm10
 4117         vpor    %xmm5,%xmm0,%xmm0
 4118         vpor    %xmm7,%xmm12,%xmm12
 4119         vpxor   %xmm3,%xmm1,%xmm1
 4120         vmovdqa 0-128(%rax),%xmm3
 4121 
 4122         vpaddd  %xmm15,%xmm14,%xmm14
 4123         vpslld  $5,%xmm10,%xmm8
 4124         vpand   %xmm12,%xmm13,%xmm7
 4125         vpxor   96-128(%rax),%xmm1,%xmm1
 4126 
 4127         vpaddd  %xmm7,%xmm14,%xmm14
 4128         vpsrld  $27,%xmm10,%xmm9
 4129         vpxor   %xmm12,%xmm13,%xmm6
 4130         vpxor   %xmm3,%xmm1,%xmm1
 4131 
 4132         vmovdqu %xmm0,208-128(%rax)
 4133         vpaddd  %xmm0,%xmm14,%xmm14
 4134         vpor    %xmm9,%xmm8,%xmm8
 4135         vpsrld  $31,%xmm1,%xmm5
 4136         vpand   %xmm11,%xmm6,%xmm6
 4137         vpaddd  %xmm1,%xmm1,%xmm1
 4138 
 4139         vpslld  $30,%xmm11,%xmm7
 4140         vpaddd  %xmm6,%xmm14,%xmm14
 4141 
 4142         vpsrld  $2,%xmm11,%xmm11
 4143         vpaddd  %xmm8,%xmm14,%xmm14
 4144         vpor    %xmm5,%xmm1,%xmm1
 4145         vpor    %xmm7,%xmm11,%xmm11
 4146         vpxor   %xmm4,%xmm2,%xmm2
 4147         vmovdqa 16-128(%rax),%xmm4
 4148 
 4149         vpaddd  %xmm15,%xmm13,%xmm13
 4150         vpslld  $5,%xmm14,%xmm8
 4151         vpand   %xmm11,%xmm12,%xmm7
 4152         vpxor   112-128(%rax),%xmm2,%xmm2
 4153 
 4154         vpaddd  %xmm7,%xmm13,%xmm13
 4155         vpsrld  $27,%xmm14,%xmm9
 4156         vpxor   %xmm11,%xmm12,%xmm6
 4157         vpxor   %xmm4,%xmm2,%xmm2
 4158 
 4159         vmovdqu %xmm1,224-128(%rax)
 4160         vpaddd  %xmm1,%xmm13,%xmm13
 4161         vpor    %xmm9,%xmm8,%xmm8
 4162         vpsrld  $31,%xmm2,%xmm5
 4163         vpand   %xmm10,%xmm6,%xmm6
 4164         vpaddd  %xmm2,%xmm2,%xmm2
 4165 
 4166         vpslld  $30,%xmm10,%xmm7
 4167         vpaddd  %xmm6,%xmm13,%xmm13
 4168 
 4169         vpsrld  $2,%xmm10,%xmm10
 4170         vpaddd  %xmm8,%xmm13,%xmm13
 4171         vpor    %xmm5,%xmm2,%xmm2
 4172         vpor    %xmm7,%xmm10,%xmm10
 4173         vpxor   %xmm0,%xmm3,%xmm3
 4174         vmovdqa 32-128(%rax),%xmm0
 4175 
 4176         vpaddd  %xmm15,%xmm12,%xmm12
 4177         vpslld  $5,%xmm13,%xmm8
 4178         vpand   %xmm10,%xmm11,%xmm7
 4179         vpxor   128-128(%rax),%xmm3,%xmm3
 4180 
 4181         vpaddd  %xmm7,%xmm12,%xmm12
 4182         vpsrld  $27,%xmm13,%xmm9
 4183         vpxor   %xmm10,%xmm11,%xmm6
 4184         vpxor   %xmm0,%xmm3,%xmm3
 4185 
 4186         vmovdqu %xmm2,240-128(%rax)
 4187         vpaddd  %xmm2,%xmm12,%xmm12
 4188         vpor    %xmm9,%xmm8,%xmm8
 4189         vpsrld  $31,%xmm3,%xmm5
 4190         vpand   %xmm14,%xmm6,%xmm6
 4191         vpaddd  %xmm3,%xmm3,%xmm3
 4192 
 4193         vpslld  $30,%xmm14,%xmm7
 4194         vpaddd  %xmm6,%xmm12,%xmm12
 4195 
 4196         vpsrld  $2,%xmm14,%xmm14
 4197         vpaddd  %xmm8,%xmm12,%xmm12
 4198         vpor    %xmm5,%xmm3,%xmm3
 4199         vpor    %xmm7,%xmm14,%xmm14
 4200         vpxor   %xmm1,%xmm4,%xmm4
 4201         vmovdqa 48-128(%rax),%xmm1
 4202 
 4203         vpaddd  %xmm15,%xmm11,%xmm11
 4204         vpslld  $5,%xmm12,%xmm8
 4205         vpand   %xmm14,%xmm10,%xmm7
 4206         vpxor   144-128(%rax),%xmm4,%xmm4
 4207 
 4208         vpaddd  %xmm7,%xmm11,%xmm11
 4209         vpsrld  $27,%xmm12,%xmm9
 4210         vpxor   %xmm14,%xmm10,%xmm6
 4211         vpxor   %xmm1,%xmm4,%xmm4
 4212 
 4213         vmovdqu %xmm3,0-128(%rax)
 4214         vpaddd  %xmm3,%xmm11,%xmm11
 4215         vpor    %xmm9,%xmm8,%xmm8
 4216         vpsrld  $31,%xmm4,%xmm5
 4217         vpand   %xmm13,%xmm6,%xmm6
 4218         vpaddd  %xmm4,%xmm4,%xmm4
 4219 
 4220         vpslld  $30,%xmm13,%xmm7
 4221         vpaddd  %xmm6,%xmm11,%xmm11
 4222 
 4223         vpsrld  $2,%xmm13,%xmm13
 4224         vpaddd  %xmm8,%xmm11,%xmm11
 4225         vpor    %xmm5,%xmm4,%xmm4
 4226         vpor    %xmm7,%xmm13,%xmm13
 4227         vpxor   %xmm2,%xmm0,%xmm0
 4228         vmovdqa 64-128(%rax),%xmm2
 4229 
 4230         vpaddd  %xmm15,%xmm10,%xmm10
 4231         vpslld  $5,%xmm11,%xmm8
 4232         vpand   %xmm13,%xmm14,%xmm7
 4233         vpxor   160-128(%rax),%xmm0,%xmm0
 4234 
 4235         vpaddd  %xmm7,%xmm10,%xmm10
 4236         vpsrld  $27,%xmm11,%xmm9
 4237         vpxor   %xmm13,%xmm14,%xmm6
 4238         vpxor   %xmm2,%xmm0,%xmm0
 4239 
 4240         vmovdqu %xmm4,16-128(%rax)
 4241         vpaddd  %xmm4,%xmm10,%xmm10
 4242         vpor    %xmm9,%xmm8,%xmm8
 4243         vpsrld  $31,%xmm0,%xmm5
 4244         vpand   %xmm12,%xmm6,%xmm6
 4245         vpaddd  %xmm0,%xmm0,%xmm0
 4246 
 4247         vpslld  $30,%xmm12,%xmm7
 4248         vpaddd  %xmm6,%xmm10,%xmm10
 4249 
 4250         vpsrld  $2,%xmm12,%xmm12
 4251         vpaddd  %xmm8,%xmm10,%xmm10
 4252         vpor    %xmm5,%xmm0,%xmm0
 4253         vpor    %xmm7,%xmm12,%xmm12
 4254         vpxor   %xmm3,%xmm1,%xmm1
 4255         vmovdqa 80-128(%rax),%xmm3
 4256 
 4257         vpaddd  %xmm15,%xmm14,%xmm14
 4258         vpslld  $5,%xmm10,%xmm8
 4259         vpand   %xmm12,%xmm13,%xmm7
 4260         vpxor   176-128(%rax),%xmm1,%xmm1
 4261 
 4262         vpaddd  %xmm7,%xmm14,%xmm14
 4263         vpsrld  $27,%xmm10,%xmm9
 4264         vpxor   %xmm12,%xmm13,%xmm6
 4265         vpxor   %xmm3,%xmm1,%xmm1
 4266 
 4267         vmovdqu %xmm0,32-128(%rax)
 4268         vpaddd  %xmm0,%xmm14,%xmm14
 4269         vpor    %xmm9,%xmm8,%xmm8
 4270         vpsrld  $31,%xmm1,%xmm5
 4271         vpand   %xmm11,%xmm6,%xmm6
 4272         vpaddd  %xmm1,%xmm1,%xmm1
 4273 
 4274         vpslld  $30,%xmm11,%xmm7
 4275         vpaddd  %xmm6,%xmm14,%xmm14
 4276 
 4277         vpsrld  $2,%xmm11,%xmm11
 4278         vpaddd  %xmm8,%xmm14,%xmm14
 4279         vpor    %xmm5,%xmm1,%xmm1
 4280         vpor    %xmm7,%xmm11,%xmm11
 4281         vpxor   %xmm4,%xmm2,%xmm2
 4282         vmovdqa 96-128(%rax),%xmm4
 4283 
 4284         vpaddd  %xmm15,%xmm13,%xmm13
 4285         vpslld  $5,%xmm14,%xmm8
 4286         vpand   %xmm11,%xmm12,%xmm7
 4287         vpxor   192-128(%rax),%xmm2,%xmm2
 4288 
 4289         vpaddd  %xmm7,%xmm13,%xmm13
 4290         vpsrld  $27,%xmm14,%xmm9
 4291         vpxor   %xmm11,%xmm12,%xmm6
 4292         vpxor   %xmm4,%xmm2,%xmm2
 4293 
 4294         vmovdqu %xmm1,48-128(%rax)
 4295         vpaddd  %xmm1,%xmm13,%xmm13
 4296         vpor    %xmm9,%xmm8,%xmm8
 4297         vpsrld  $31,%xmm2,%xmm5
 4298         vpand   %xmm10,%xmm6,%xmm6
 4299         vpaddd  %xmm2,%xmm2,%xmm2
 4300 
 4301         vpslld  $30,%xmm10,%xmm7
 4302         vpaddd  %xmm6,%xmm13,%xmm13
 4303 
 4304         vpsrld  $2,%xmm10,%xmm10
 4305         vpaddd  %xmm8,%xmm13,%xmm13
 4306         vpor    %xmm5,%xmm2,%xmm2
 4307         vpor    %xmm7,%xmm10,%xmm10
 4308         vpxor   %xmm0,%xmm3,%xmm3
 4309         vmovdqa 112-128(%rax),%xmm0
 4310 
 4311         vpaddd  %xmm15,%xmm12,%xmm12
 4312         vpslld  $5,%xmm13,%xmm8
 4313         vpand   %xmm10,%xmm11,%xmm7
 4314         vpxor   208-128(%rax),%xmm3,%xmm3
 4315 
 4316         vpaddd  %xmm7,%xmm12,%xmm12
 4317         vpsrld  $27,%xmm13,%xmm9
 4318         vpxor   %xmm10,%xmm11,%xmm6
 4319         vpxor   %xmm0,%xmm3,%xmm3
 4320 
 4321         vmovdqu %xmm2,64-128(%rax)
 4322         vpaddd  %xmm2,%xmm12,%xmm12
 4323         vpor    %xmm9,%xmm8,%xmm8
 4324         vpsrld  $31,%xmm3,%xmm5
 4325         vpand   %xmm14,%xmm6,%xmm6
 4326         vpaddd  %xmm3,%xmm3,%xmm3
 4327 
 4328         vpslld  $30,%xmm14,%xmm7
 4329         vpaddd  %xmm6,%xmm12,%xmm12
 4330 
 4331         vpsrld  $2,%xmm14,%xmm14
 4332         vpaddd  %xmm8,%xmm12,%xmm12
 4333         vpor    %xmm5,%xmm3,%xmm3
 4334         vpor    %xmm7,%xmm14,%xmm14
 4335         vpxor   %xmm1,%xmm4,%xmm4
 4336         vmovdqa 128-128(%rax),%xmm1
 4337 
 4338         vpaddd  %xmm15,%xmm11,%xmm11
 4339         vpslld  $5,%xmm12,%xmm8
 4340         vpand   %xmm14,%xmm10,%xmm7
 4341         vpxor   224-128(%rax),%xmm4,%xmm4
 4342 
 4343         vpaddd  %xmm7,%xmm11,%xmm11
 4344         vpsrld  $27,%xmm12,%xmm9
 4345         vpxor   %xmm14,%xmm10,%xmm6
 4346         vpxor   %xmm1,%xmm4,%xmm4
 4347 
 4348         vmovdqu %xmm3,80-128(%rax)
 4349         vpaddd  %xmm3,%xmm11,%xmm11
 4350         vpor    %xmm9,%xmm8,%xmm8
 4351         vpsrld  $31,%xmm4,%xmm5
 4352         vpand   %xmm13,%xmm6,%xmm6
 4353         vpaddd  %xmm4,%xmm4,%xmm4
 4354 
 4355         vpslld  $30,%xmm13,%xmm7
 4356         vpaddd  %xmm6,%xmm11,%xmm11
 4357 
 4358         vpsrld  $2,%xmm13,%xmm13
 4359         vpaddd  %xmm8,%xmm11,%xmm11
 4360         vpor    %xmm5,%xmm4,%xmm4
 4361         vpor    %xmm7,%xmm13,%xmm13
 4362         vpxor   %xmm2,%xmm0,%xmm0
 4363         vmovdqa 144-128(%rax),%xmm2
 4364 
 4365         vpaddd  %xmm15,%xmm10,%xmm10
 4366         vpslld  $5,%xmm11,%xmm8
 4367         vpand   %xmm13,%xmm14,%xmm7
 4368         vpxor   240-128(%rax),%xmm0,%xmm0
 4369 
 4370         vpaddd  %xmm7,%xmm10,%xmm10
 4371         vpsrld  $27,%xmm11,%xmm9
 4372         vpxor   %xmm13,%xmm14,%xmm6
 4373         vpxor   %xmm2,%xmm0,%xmm0
 4374 
 4375         vmovdqu %xmm4,96-128(%rax)
 4376         vpaddd  %xmm4,%xmm10,%xmm10
 4377         vpor    %xmm9,%xmm8,%xmm8
 4378         vpsrld  $31,%xmm0,%xmm5
 4379         vpand   %xmm12,%xmm6,%xmm6
 4380         vpaddd  %xmm0,%xmm0,%xmm0
 4381 
 4382         vpslld  $30,%xmm12,%xmm7
 4383         vpaddd  %xmm6,%xmm10,%xmm10
 4384 
 4385         vpsrld  $2,%xmm12,%xmm12
 4386         vpaddd  %xmm8,%xmm10,%xmm10
 4387         vpor    %xmm5,%xmm0,%xmm0
 4388         vpor    %xmm7,%xmm12,%xmm12
 4389         vpxor   %xmm3,%xmm1,%xmm1
 4390         vmovdqa 160-128(%rax),%xmm3
 4391 
 4392         vpaddd  %xmm15,%xmm14,%xmm14
 4393         vpslld  $5,%xmm10,%xmm8
 4394         vpand   %xmm12,%xmm13,%xmm7
 4395         vpxor   0-128(%rax),%xmm1,%xmm1
 4396 
 4397         vpaddd  %xmm7,%xmm14,%xmm14
 4398         vpsrld  $27,%xmm10,%xmm9
 4399         vpxor   %xmm12,%xmm13,%xmm6
 4400         vpxor   %xmm3,%xmm1,%xmm1
 4401 
 4402         vmovdqu %xmm0,112-128(%rax)
 4403         vpaddd  %xmm0,%xmm14,%xmm14
 4404         vpor    %xmm9,%xmm8,%xmm8
 4405         vpsrld  $31,%xmm1,%xmm5
 4406         vpand   %xmm11,%xmm6,%xmm6
 4407         vpaddd  %xmm1,%xmm1,%xmm1
 4408 
 4409         vpslld  $30,%xmm11,%xmm7
 4410         vpaddd  %xmm6,%xmm14,%xmm14
 4411 
 4412         vpsrld  $2,%xmm11,%xmm11
 4413         vpaddd  %xmm8,%xmm14,%xmm14
 4414         vpor    %xmm5,%xmm1,%xmm1
 4415         vpor    %xmm7,%xmm11,%xmm11
 4416         vpxor   %xmm4,%xmm2,%xmm2
 4417         vmovdqa 176-128(%rax),%xmm4
 4418 
 4419         vpaddd  %xmm15,%xmm13,%xmm13
 4420         vpslld  $5,%xmm14,%xmm8
 4421         vpand   %xmm11,%xmm12,%xmm7
 4422         vpxor   16-128(%rax),%xmm2,%xmm2
 4423 
 4424         vpaddd  %xmm7,%xmm13,%xmm13
 4425         vpsrld  $27,%xmm14,%xmm9
 4426         vpxor   %xmm11,%xmm12,%xmm6
 4427         vpxor   %xmm4,%xmm2,%xmm2
 4428 
 4429         vmovdqu %xmm1,128-128(%rax)
 4430         vpaddd  %xmm1,%xmm13,%xmm13
 4431         vpor    %xmm9,%xmm8,%xmm8
 4432         vpsrld  $31,%xmm2,%xmm5
 4433         vpand   %xmm10,%xmm6,%xmm6
 4434         vpaddd  %xmm2,%xmm2,%xmm2
 4435 
 4436         vpslld  $30,%xmm10,%xmm7
 4437         vpaddd  %xmm6,%xmm13,%xmm13
 4438 
 4439         vpsrld  $2,%xmm10,%xmm10
 4440         vpaddd  %xmm8,%xmm13,%xmm13
 4441         vpor    %xmm5,%xmm2,%xmm2
 4442         vpor    %xmm7,%xmm10,%xmm10
 4443         vpxor   %xmm0,%xmm3,%xmm3
 4444         vmovdqa 192-128(%rax),%xmm0
 4445 
 4446         vpaddd  %xmm15,%xmm12,%xmm12
 4447         vpslld  $5,%xmm13,%xmm8
 4448         vpand   %xmm10,%xmm11,%xmm7
 4449         vpxor   32-128(%rax),%xmm3,%xmm3
 4450 
 4451         vpaddd  %xmm7,%xmm12,%xmm12
 4452         vpsrld  $27,%xmm13,%xmm9
 4453         vpxor   %xmm10,%xmm11,%xmm6
 4454         vpxor   %xmm0,%xmm3,%xmm3
 4455 
 4456         vmovdqu %xmm2,144-128(%rax)
 4457         vpaddd  %xmm2,%xmm12,%xmm12
 4458         vpor    %xmm9,%xmm8,%xmm8
 4459         vpsrld  $31,%xmm3,%xmm5
 4460         vpand   %xmm14,%xmm6,%xmm6
 4461         vpaddd  %xmm3,%xmm3,%xmm3
 4462 
 4463         vpslld  $30,%xmm14,%xmm7
 4464         vpaddd  %xmm6,%xmm12,%xmm12
 4465 
 4466         vpsrld  $2,%xmm14,%xmm14
 4467         vpaddd  %xmm8,%xmm12,%xmm12
 4468         vpor    %xmm5,%xmm3,%xmm3
 4469         vpor    %xmm7,%xmm14,%xmm14
 4470         vpxor   %xmm1,%xmm4,%xmm4
 4471         vmovdqa 208-128(%rax),%xmm1
 4472 
 4473         vpaddd  %xmm15,%xmm11,%xmm11
 4474         vpslld  $5,%xmm12,%xmm8
 4475         vpand   %xmm14,%xmm10,%xmm7
 4476         vpxor   48-128(%rax),%xmm4,%xmm4
 4477 
 4478         vpaddd  %xmm7,%xmm11,%xmm11
 4479         vpsrld  $27,%xmm12,%xmm9
 4480         vpxor   %xmm14,%xmm10,%xmm6
 4481         vpxor   %xmm1,%xmm4,%xmm4
 4482 
 4483         vmovdqu %xmm3,160-128(%rax)
 4484         vpaddd  %xmm3,%xmm11,%xmm11
 4485         vpor    %xmm9,%xmm8,%xmm8
 4486         vpsrld  $31,%xmm4,%xmm5
 4487         vpand   %xmm13,%xmm6,%xmm6
 4488         vpaddd  %xmm4,%xmm4,%xmm4
 4489 
 4490         vpslld  $30,%xmm13,%xmm7
 4491         vpaddd  %xmm6,%xmm11,%xmm11
 4492 
 4493         vpsrld  $2,%xmm13,%xmm13
 4494         vpaddd  %xmm8,%xmm11,%xmm11
 4495         vpor    %xmm5,%xmm4,%xmm4
 4496         vpor    %xmm7,%xmm13,%xmm13
 4497         vpxor   %xmm2,%xmm0,%xmm0
 4498         vmovdqa 224-128(%rax),%xmm2
 4499 
 4500         vpaddd  %xmm15,%xmm10,%xmm10
 4501         vpslld  $5,%xmm11,%xmm8
 4502         vpand   %xmm13,%xmm14,%xmm7
 4503         vpxor   64-128(%rax),%xmm0,%xmm0
 4504 
 4505         vpaddd  %xmm7,%xmm10,%xmm10
 4506         vpsrld  $27,%xmm11,%xmm9
 4507         vpxor   %xmm13,%xmm14,%xmm6
 4508         vpxor   %xmm2,%xmm0,%xmm0
 4509 
 4510         vmovdqu %xmm4,176-128(%rax)
 4511         vpaddd  %xmm4,%xmm10,%xmm10
 4512         vpor    %xmm9,%xmm8,%xmm8
 4513         vpsrld  $31,%xmm0,%xmm5
 4514         vpand   %xmm12,%xmm6,%xmm6
 4515         vpaddd  %xmm0,%xmm0,%xmm0
 4516 
 4517         vpslld  $30,%xmm12,%xmm7
 4518         vpaddd  %xmm6,%xmm10,%xmm10
 4519 
 4520         vpsrld  $2,%xmm12,%xmm12
 4521         vpaddd  %xmm8,%xmm10,%xmm10
 4522         vpor    %xmm5,%xmm0,%xmm0
 4523         vpor    %xmm7,%xmm12,%xmm12
 4524         vmovdqa 64(%rbp),%xmm15
 4525         vpxor   %xmm3,%xmm1,%xmm1
 4526         vmovdqa 240-128(%rax),%xmm3
 4527 
 4528         vpslld  $5,%xmm10,%xmm8
 4529         vpaddd  %xmm15,%xmm14,%xmm14
 4530         vpxor   %xmm11,%xmm13,%xmm6
 4531         vmovdqa %xmm0,192-128(%rax)
 4532         vpaddd  %xmm0,%xmm14,%xmm14
 4533         vpxor   80-128(%rax),%xmm1,%xmm1
 4534         vpsrld  $27,%xmm10,%xmm9
 4535         vpxor   %xmm12,%xmm6,%xmm6
 4536         vpxor   %xmm3,%xmm1,%xmm1
 4537 
 4538         vpslld  $30,%xmm11,%xmm7
 4539         vpor    %xmm9,%xmm8,%xmm8
 4540         vpaddd  %xmm6,%xmm14,%xmm14
 4541         vpsrld  $31,%xmm1,%xmm5
 4542         vpaddd  %xmm1,%xmm1,%xmm1
 4543 
 4544         vpsrld  $2,%xmm11,%xmm11
 4545         vpaddd  %xmm8,%xmm14,%xmm14
 4546         vpor    %xmm5,%xmm1,%xmm1
 4547         vpor    %xmm7,%xmm11,%xmm11
 4548         vpxor   %xmm4,%xmm2,%xmm2
 4549         vmovdqa 0-128(%rax),%xmm4
 4550 
 4551         vpslld  $5,%xmm14,%xmm8
 4552         vpaddd  %xmm15,%xmm13,%xmm13
 4553         vpxor   %xmm10,%xmm12,%xmm6
 4554         vmovdqa %xmm1,208-128(%rax)
 4555         vpaddd  %xmm1,%xmm13,%xmm13
 4556         vpxor   96-128(%rax),%xmm2,%xmm2
 4557         vpsrld  $27,%xmm14,%xmm9
 4558         vpxor   %xmm11,%xmm6,%xmm6
 4559         vpxor   %xmm4,%xmm2,%xmm2
 4560 
 4561         vpslld  $30,%xmm10,%xmm7
 4562         vpor    %xmm9,%xmm8,%xmm8
 4563         vpaddd  %xmm6,%xmm13,%xmm13
 4564         vpsrld  $31,%xmm2,%xmm5
 4565         vpaddd  %xmm2,%xmm2,%xmm2
 4566 
 4567         vpsrld  $2,%xmm10,%xmm10
 4568         vpaddd  %xmm8,%xmm13,%xmm13
 4569         vpor    %xmm5,%xmm2,%xmm2
 4570         vpor    %xmm7,%xmm10,%xmm10
 4571         vpxor   %xmm0,%xmm3,%xmm3
 4572         vmovdqa 16-128(%rax),%xmm0
 4573 
 4574         vpslld  $5,%xmm13,%xmm8
 4575         vpaddd  %xmm15,%xmm12,%xmm12
 4576         vpxor   %xmm14,%xmm11,%xmm6
 4577         vmovdqa %xmm2,224-128(%rax)
 4578         vpaddd  %xmm2,%xmm12,%xmm12
 4579         vpxor   112-128(%rax),%xmm3,%xmm3
 4580         vpsrld  $27,%xmm13,%xmm9
 4581         vpxor   %xmm10,%xmm6,%xmm6
 4582         vpxor   %xmm0,%xmm3,%xmm3
 4583 
 4584         vpslld  $30,%xmm14,%xmm7
 4585         vpor    %xmm9,%xmm8,%xmm8
 4586         vpaddd  %xmm6,%xmm12,%xmm12
 4587         vpsrld  $31,%xmm3,%xmm5
 4588         vpaddd  %xmm3,%xmm3,%xmm3
 4589 
 4590         vpsrld  $2,%xmm14,%xmm14
 4591         vpaddd  %xmm8,%xmm12,%xmm12
 4592         vpor    %xmm5,%xmm3,%xmm3
 4593         vpor    %xmm7,%xmm14,%xmm14
 4594         vpxor   %xmm1,%xmm4,%xmm4
 4595         vmovdqa 32-128(%rax),%xmm1
 4596 
 4597         vpslld  $5,%xmm12,%xmm8
 4598         vpaddd  %xmm15,%xmm11,%xmm11
 4599         vpxor   %xmm13,%xmm10,%xmm6
 4600         vmovdqa %xmm3,240-128(%rax)
 4601         vpaddd  %xmm3,%xmm11,%xmm11
 4602         vpxor   128-128(%rax),%xmm4,%xmm4
 4603         vpsrld  $27,%xmm12,%xmm9
 4604         vpxor   %xmm14,%xmm6,%xmm6
 4605         vpxor   %xmm1,%xmm4,%xmm4
 4606 
 4607         vpslld  $30,%xmm13,%xmm7
 4608         vpor    %xmm9,%xmm8,%xmm8
 4609         vpaddd  %xmm6,%xmm11,%xmm11
 4610         vpsrld  $31,%xmm4,%xmm5
 4611         vpaddd  %xmm4,%xmm4,%xmm4
 4612 
 4613         vpsrld  $2,%xmm13,%xmm13
 4614         vpaddd  %xmm8,%xmm11,%xmm11
 4615         vpor    %xmm5,%xmm4,%xmm4
 4616         vpor    %xmm7,%xmm13,%xmm13
 4617         vpxor   %xmm2,%xmm0,%xmm0
 4618         vmovdqa 48-128(%rax),%xmm2
 4619 
 4620         vpslld  $5,%xmm11,%xmm8
 4621         vpaddd  %xmm15,%xmm10,%xmm10
 4622         vpxor   %xmm12,%xmm14,%xmm6
 4623         vmovdqa %xmm4,0-128(%rax)
 4624         vpaddd  %xmm4,%xmm10,%xmm10
 4625         vpxor   144-128(%rax),%xmm0,%xmm0
 4626         vpsrld  $27,%xmm11,%xmm9
 4627         vpxor   %xmm13,%xmm6,%xmm6
 4628         vpxor   %xmm2,%xmm0,%xmm0
 4629 
 4630         vpslld  $30,%xmm12,%xmm7
 4631         vpor    %xmm9,%xmm8,%xmm8
 4632         vpaddd  %xmm6,%xmm10,%xmm10
 4633         vpsrld  $31,%xmm0,%xmm5
 4634         vpaddd  %xmm0,%xmm0,%xmm0
 4635 
 4636         vpsrld  $2,%xmm12,%xmm12
 4637         vpaddd  %xmm8,%xmm10,%xmm10
 4638         vpor    %xmm5,%xmm0,%xmm0
 4639         vpor    %xmm7,%xmm12,%xmm12
 4640         vpxor   %xmm3,%xmm1,%xmm1
 4641         vmovdqa 64-128(%rax),%xmm3
 4642 
 4643         vpslld  $5,%xmm10,%xmm8
 4644         vpaddd  %xmm15,%xmm14,%xmm14
 4645         vpxor   %xmm11,%xmm13,%xmm6
 4646         vmovdqa %xmm0,16-128(%rax)
 4647         vpaddd  %xmm0,%xmm14,%xmm14
 4648         vpxor   160-128(%rax),%xmm1,%xmm1
 4649         vpsrld  $27,%xmm10,%xmm9
 4650         vpxor   %xmm12,%xmm6,%xmm6
 4651         vpxor   %xmm3,%xmm1,%xmm1
 4652 
 4653         vpslld  $30,%xmm11,%xmm7
 4654         vpor    %xmm9,%xmm8,%xmm8
 4655         vpaddd  %xmm6,%xmm14,%xmm14
 4656         vpsrld  $31,%xmm1,%xmm5
 4657         vpaddd  %xmm1,%xmm1,%xmm1
 4658 
 4659         vpsrld  $2,%xmm11,%xmm11
 4660         vpaddd  %xmm8,%xmm14,%xmm14
 4661         vpor    %xmm5,%xmm1,%xmm1
 4662         vpor    %xmm7,%xmm11,%xmm11
 4663         vpxor   %xmm4,%xmm2,%xmm2
 4664         vmovdqa 80-128(%rax),%xmm4
 4665 
 4666         vpslld  $5,%xmm14,%xmm8
 4667         vpaddd  %xmm15,%xmm13,%xmm13
 4668         vpxor   %xmm10,%xmm12,%xmm6
 4669         vmovdqa %xmm1,32-128(%rax)
 4670         vpaddd  %xmm1,%xmm13,%xmm13
 4671         vpxor   176-128(%rax),%xmm2,%xmm2
 4672         vpsrld  $27,%xmm14,%xmm9
 4673         vpxor   %xmm11,%xmm6,%xmm6
 4674         vpxor   %xmm4,%xmm2,%xmm2
 4675 
 4676         vpslld  $30,%xmm10,%xmm7
 4677         vpor    %xmm9,%xmm8,%xmm8
 4678         vpaddd  %xmm6,%xmm13,%xmm13
 4679         vpsrld  $31,%xmm2,%xmm5
 4680         vpaddd  %xmm2,%xmm2,%xmm2
 4681 
 4682         vpsrld  $2,%xmm10,%xmm10
 4683         vpaddd  %xmm8,%xmm13,%xmm13
 4684         vpor    %xmm5,%xmm2,%xmm2
 4685         vpor    %xmm7,%xmm10,%xmm10
 4686         vpxor   %xmm0,%xmm3,%xmm3
 4687         vmovdqa 96-128(%rax),%xmm0
 4688 
 4689         vpslld  $5,%xmm13,%xmm8
 4690         vpaddd  %xmm15,%xmm12,%xmm12
 4691         vpxor   %xmm14,%xmm11,%xmm6
 4692         vmovdqa %xmm2,48-128(%rax)
 4693         vpaddd  %xmm2,%xmm12,%xmm12
 4694         vpxor   192-128(%rax),%xmm3,%xmm3
 4695         vpsrld  $27,%xmm13,%xmm9
 4696         vpxor   %xmm10,%xmm6,%xmm6
 4697         vpxor   %xmm0,%xmm3,%xmm3
 4698 
 4699         vpslld  $30,%xmm14,%xmm7
 4700         vpor    %xmm9,%xmm8,%xmm8
 4701         vpaddd  %xmm6,%xmm12,%xmm12
 4702         vpsrld  $31,%xmm3,%xmm5
 4703         vpaddd  %xmm3,%xmm3,%xmm3
 4704 
 4705         vpsrld  $2,%xmm14,%xmm14
 4706         vpaddd  %xmm8,%xmm12,%xmm12
 4707         vpor    %xmm5,%xmm3,%xmm3
 4708         vpor    %xmm7,%xmm14,%xmm14
 4709         vpxor   %xmm1,%xmm4,%xmm4
 4710         vmovdqa 112-128(%rax),%xmm1
 4711 
 4712         vpslld  $5,%xmm12,%xmm8
 4713         vpaddd  %xmm15,%xmm11,%xmm11
 4714         vpxor   %xmm13,%xmm10,%xmm6
 4715         vmovdqa %xmm3,64-128(%rax)
 4716         vpaddd  %xmm3,%xmm11,%xmm11
 4717         vpxor   208-128(%rax),%xmm4,%xmm4
 4718         vpsrld  $27,%xmm12,%xmm9
 4719         vpxor   %xmm14,%xmm6,%xmm6
 4720         vpxor   %xmm1,%xmm4,%xmm4
 4721 
 4722         vpslld  $30,%xmm13,%xmm7
 4723         vpor    %xmm9,%xmm8,%xmm8
 4724         vpaddd  %xmm6,%xmm11,%xmm11
 4725         vpsrld  $31,%xmm4,%xmm5
 4726         vpaddd  %xmm4,%xmm4,%xmm4
 4727 
 4728         vpsrld  $2,%xmm13,%xmm13
 4729         vpaddd  %xmm8,%xmm11,%xmm11
 4730         vpor    %xmm5,%xmm4,%xmm4
 4731         vpor    %xmm7,%xmm13,%xmm13
 4732         vpxor   %xmm2,%xmm0,%xmm0
 4733         vmovdqa 128-128(%rax),%xmm2
 4734 
 4735         vpslld  $5,%xmm11,%xmm8
 4736         vpaddd  %xmm15,%xmm10,%xmm10
 4737         vpxor   %xmm12,%xmm14,%xmm6
 4738         vmovdqa %xmm4,80-128(%rax)
 4739         vpaddd  %xmm4,%xmm10,%xmm10
 4740         vpxor   224-128(%rax),%xmm0,%xmm0
 4741         vpsrld  $27,%xmm11,%xmm9
 4742         vpxor   %xmm13,%xmm6,%xmm6
 4743         vpxor   %xmm2,%xmm0,%xmm0
 4744 
 4745         vpslld  $30,%xmm12,%xmm7
 4746         vpor    %xmm9,%xmm8,%xmm8
 4747         vpaddd  %xmm6,%xmm10,%xmm10
 4748         vpsrld  $31,%xmm0,%xmm5
 4749         vpaddd  %xmm0,%xmm0,%xmm0
 4750 
 4751         vpsrld  $2,%xmm12,%xmm12
 4752         vpaddd  %xmm8,%xmm10,%xmm10
 4753         vpor    %xmm5,%xmm0,%xmm0
 4754         vpor    %xmm7,%xmm12,%xmm12
 4755         vpxor   %xmm3,%xmm1,%xmm1
 4756         vmovdqa 144-128(%rax),%xmm3
 4757 
 4758         vpslld  $5,%xmm10,%xmm8
 4759         vpaddd  %xmm15,%xmm14,%xmm14
 4760         vpxor   %xmm11,%xmm13,%xmm6
 4761         vmovdqa %xmm0,96-128(%rax)
 4762         vpaddd  %xmm0,%xmm14,%xmm14
 4763         vpxor   240-128(%rax),%xmm1,%xmm1
 4764         vpsrld  $27,%xmm10,%xmm9
 4765         vpxor   %xmm12,%xmm6,%xmm6
 4766         vpxor   %xmm3,%xmm1,%xmm1
 4767 
 4768         vpslld  $30,%xmm11,%xmm7
 4769         vpor    %xmm9,%xmm8,%xmm8
 4770         vpaddd  %xmm6,%xmm14,%xmm14
 4771         vpsrld  $31,%xmm1,%xmm5
 4772         vpaddd  %xmm1,%xmm1,%xmm1
 4773 
 4774         vpsrld  $2,%xmm11,%xmm11
 4775         vpaddd  %xmm8,%xmm14,%xmm14
 4776         vpor    %xmm5,%xmm1,%xmm1
 4777         vpor    %xmm7,%xmm11,%xmm11
 4778         vpxor   %xmm4,%xmm2,%xmm2
 4779         vmovdqa 160-128(%rax),%xmm4
 4780 
 4781         vpslld  $5,%xmm14,%xmm8
 4782         vpaddd  %xmm15,%xmm13,%xmm13
 4783         vpxor   %xmm10,%xmm12,%xmm6
 4784         vmovdqa %xmm1,112-128(%rax)
 4785         vpaddd  %xmm1,%xmm13,%xmm13
 4786         vpxor   0-128(%rax),%xmm2,%xmm2
 4787         vpsrld  $27,%xmm14,%xmm9
 4788         vpxor   %xmm11,%xmm6,%xmm6
 4789         vpxor   %xmm4,%xmm2,%xmm2
 4790 
 4791         vpslld  $30,%xmm10,%xmm7
 4792         vpor    %xmm9,%xmm8,%xmm8
 4793         vpaddd  %xmm6,%xmm13,%xmm13
 4794         vpsrld  $31,%xmm2,%xmm5
 4795         vpaddd  %xmm2,%xmm2,%xmm2
 4796 
 4797         vpsrld  $2,%xmm10,%xmm10
 4798         vpaddd  %xmm8,%xmm13,%xmm13
 4799         vpor    %xmm5,%xmm2,%xmm2
 4800         vpor    %xmm7,%xmm10,%xmm10
 4801         vpxor   %xmm0,%xmm3,%xmm3
 4802         vmovdqa 176-128(%rax),%xmm0
 4803 
 4804         vpslld  $5,%xmm13,%xmm8
 4805         vpaddd  %xmm15,%xmm12,%xmm12
 4806         vpxor   %xmm14,%xmm11,%xmm6
 4807         vpaddd  %xmm2,%xmm12,%xmm12
 4808         vpxor   16-128(%rax),%xmm3,%xmm3
 4809         vpsrld  $27,%xmm13,%xmm9
 4810         vpxor   %xmm10,%xmm6,%xmm6
 4811         vpxor   %xmm0,%xmm3,%xmm3
 4812 
 4813         vpslld  $30,%xmm14,%xmm7
 4814         vpor    %xmm9,%xmm8,%xmm8
 4815         vpaddd  %xmm6,%xmm12,%xmm12
 4816         vpsrld  $31,%xmm3,%xmm5
 4817         vpaddd  %xmm3,%xmm3,%xmm3
 4818 
 4819         vpsrld  $2,%xmm14,%xmm14
 4820         vpaddd  %xmm8,%xmm12,%xmm12
 4821         vpor    %xmm5,%xmm3,%xmm3
 4822         vpor    %xmm7,%xmm14,%xmm14
 4823         vpxor   %xmm1,%xmm4,%xmm4
 4824         vmovdqa 192-128(%rax),%xmm1
 4825 
 4826         vpslld  $5,%xmm12,%xmm8
 4827         vpaddd  %xmm15,%xmm11,%xmm11
 4828         vpxor   %xmm13,%xmm10,%xmm6
 4829         vpaddd  %xmm3,%xmm11,%xmm11
 4830         vpxor   32-128(%rax),%xmm4,%xmm4
 4831         vpsrld  $27,%xmm12,%xmm9
 4832         vpxor   %xmm14,%xmm6,%xmm6
 4833         vpxor   %xmm1,%xmm4,%xmm4
 4834 
 4835         vpslld  $30,%xmm13,%xmm7
 4836         vpor    %xmm9,%xmm8,%xmm8
 4837         vpaddd  %xmm6,%xmm11,%xmm11
 4838         vpsrld  $31,%xmm4,%xmm5
 4839         vpaddd  %xmm4,%xmm4,%xmm4
 4840 
 4841         vpsrld  $2,%xmm13,%xmm13
 4842         vpaddd  %xmm8,%xmm11,%xmm11
 4843         vpor    %xmm5,%xmm4,%xmm4
 4844         vpor    %xmm7,%xmm13,%xmm13
 4845         vpxor   %xmm2,%xmm0,%xmm0
 4846         vmovdqa 208-128(%rax),%xmm2
 4847 
 4848         vpslld  $5,%xmm11,%xmm8
 4849         vpaddd  %xmm15,%xmm10,%xmm10
 4850         vpxor   %xmm12,%xmm14,%xmm6
 4851         vpaddd  %xmm4,%xmm10,%xmm10
 4852         vpxor   48-128(%rax),%xmm0,%xmm0
 4853         vpsrld  $27,%xmm11,%xmm9
 4854         vpxor   %xmm13,%xmm6,%xmm6
 4855         vpxor   %xmm2,%xmm0,%xmm0
 4856 
 4857         vpslld  $30,%xmm12,%xmm7
 4858         vpor    %xmm9,%xmm8,%xmm8
 4859         vpaddd  %xmm6,%xmm10,%xmm10
 4860         vpsrld  $31,%xmm0,%xmm5
 4861         vpaddd  %xmm0,%xmm0,%xmm0
 4862 
 4863         vpsrld  $2,%xmm12,%xmm12
 4864         vpaddd  %xmm8,%xmm10,%xmm10
 4865         vpor    %xmm5,%xmm0,%xmm0
 4866         vpor    %xmm7,%xmm12,%xmm12
 4867         vpxor   %xmm3,%xmm1,%xmm1
 4868         vmovdqa 224-128(%rax),%xmm3
 4869 
 4870         vpslld  $5,%xmm10,%xmm8
 4871         vpaddd  %xmm15,%xmm14,%xmm14
 4872         vpxor   %xmm11,%xmm13,%xmm6
 4873         vpaddd  %xmm0,%xmm14,%xmm14
 4874         vpxor   64-128(%rax),%xmm1,%xmm1
 4875         vpsrld  $27,%xmm10,%xmm9
 4876         vpxor   %xmm12,%xmm6,%xmm6
 4877         vpxor   %xmm3,%xmm1,%xmm1
 4878 
 4879         vpslld  $30,%xmm11,%xmm7
 4880         vpor    %xmm9,%xmm8,%xmm8
 4881         vpaddd  %xmm6,%xmm14,%xmm14
 4882         vpsrld  $31,%xmm1,%xmm5
 4883         vpaddd  %xmm1,%xmm1,%xmm1
 4884 
 4885         vpsrld  $2,%xmm11,%xmm11
 4886         vpaddd  %xmm8,%xmm14,%xmm14
 4887         vpor    %xmm5,%xmm1,%xmm1
 4888         vpor    %xmm7,%xmm11,%xmm11
 4889         vpxor   %xmm4,%xmm2,%xmm2
 4890         vmovdqa 240-128(%rax),%xmm4
 4891 
 4892         vpslld  $5,%xmm14,%xmm8
 4893         vpaddd  %xmm15,%xmm13,%xmm13
 4894         vpxor   %xmm10,%xmm12,%xmm6
 4895         vpaddd  %xmm1,%xmm13,%xmm13
 4896         vpxor   80-128(%rax),%xmm2,%xmm2
 4897         vpsrld  $27,%xmm14,%xmm9
 4898         vpxor   %xmm11,%xmm6,%xmm6
 4899         vpxor   %xmm4,%xmm2,%xmm2
 4900 
 4901         vpslld  $30,%xmm10,%xmm7
 4902         vpor    %xmm9,%xmm8,%xmm8
 4903         vpaddd  %xmm6,%xmm13,%xmm13
 4904         vpsrld  $31,%xmm2,%xmm5
 4905         vpaddd  %xmm2,%xmm2,%xmm2
 4906 
 4907         vpsrld  $2,%xmm10,%xmm10
 4908         vpaddd  %xmm8,%xmm13,%xmm13
 4909         vpor    %xmm5,%xmm2,%xmm2
 4910         vpor    %xmm7,%xmm10,%xmm10
 4911         vpxor   %xmm0,%xmm3,%xmm3
 4912         vmovdqa 0-128(%rax),%xmm0
 4913 
 4914         vpslld  $5,%xmm13,%xmm8
 4915         vpaddd  %xmm15,%xmm12,%xmm12
 4916         vpxor   %xmm14,%xmm11,%xmm6
 4917         vpaddd  %xmm2,%xmm12,%xmm12
 4918         vpxor   96-128(%rax),%xmm3,%xmm3
 4919         vpsrld  $27,%xmm13,%xmm9
 4920         vpxor   %xmm10,%xmm6,%xmm6
 4921         vpxor   %xmm0,%xmm3,%xmm3
 4922 
 4923         vpslld  $30,%xmm14,%xmm7
 4924         vpor    %xmm9,%xmm8,%xmm8
 4925         vpaddd  %xmm6,%xmm12,%xmm12
 4926         vpsrld  $31,%xmm3,%xmm5
 4927         vpaddd  %xmm3,%xmm3,%xmm3
 4928 
 4929         vpsrld  $2,%xmm14,%xmm14
 4930         vpaddd  %xmm8,%xmm12,%xmm12
 4931         vpor    %xmm5,%xmm3,%xmm3
 4932         vpor    %xmm7,%xmm14,%xmm14
 4933         vpxor   %xmm1,%xmm4,%xmm4
 4934         vmovdqa 16-128(%rax),%xmm1
 4935 
 4936         vpslld  $5,%xmm12,%xmm8
 4937         vpaddd  %xmm15,%xmm11,%xmm11
 4938         vpxor   %xmm13,%xmm10,%xmm6
 4939         vpaddd  %xmm3,%xmm11,%xmm11
 4940         vpxor   112-128(%rax),%xmm4,%xmm4
 4941         vpsrld  $27,%xmm12,%xmm9
 4942         vpxor   %xmm14,%xmm6,%xmm6
 4943         vpxor   %xmm1,%xmm4,%xmm4
 4944 
 4945         vpslld  $30,%xmm13,%xmm7
 4946         vpor    %xmm9,%xmm8,%xmm8
 4947         vpaddd  %xmm6,%xmm11,%xmm11
 4948         vpsrld  $31,%xmm4,%xmm5
 4949         vpaddd  %xmm4,%xmm4,%xmm4
 4950 
 4951         vpsrld  $2,%xmm13,%xmm13
 4952         vpaddd  %xmm8,%xmm11,%xmm11
 4953         vpor    %xmm5,%xmm4,%xmm4
 4954         vpor    %xmm7,%xmm13,%xmm13
 4955         vpslld  $5,%xmm11,%xmm8
 4956         vpaddd  %xmm15,%xmm10,%xmm10
 4957         vpxor   %xmm12,%xmm14,%xmm6
 4958 
 4959         vpsrld  $27,%xmm11,%xmm9
 4960         vpaddd  %xmm4,%xmm10,%xmm10
 4961         vpxor   %xmm13,%xmm6,%xmm6
 4962 
 4963         vpslld  $30,%xmm12,%xmm7
 4964         vpor    %xmm9,%xmm8,%xmm8
 4965         vpaddd  %xmm6,%xmm10,%xmm10
 4966 
 4967         vpsrld  $2,%xmm12,%xmm12
 4968         vpaddd  %xmm8,%xmm10,%xmm10
 4969         vpor    %xmm7,%xmm12,%xmm12
 4970         movl    $1,%ecx
 4971         cmpl    0(%rbx),%ecx
 4972         cmovgeq %rbp,%r8
 4973         cmpl    4(%rbx),%ecx
 4974         cmovgeq %rbp,%r9
 4975         cmpl    8(%rbx),%ecx
 4976         cmovgeq %rbp,%r10
 4977         cmpl    12(%rbx),%ecx
 4978         cmovgeq %rbp,%r11
 4979         vmovdqu (%rbx),%xmm6
 4980         vpxor   %xmm8,%xmm8,%xmm8
 4981         vmovdqa %xmm6,%xmm7
 4982         vpcmpgtd        %xmm8,%xmm7,%xmm7
 4983         vpaddd  %xmm7,%xmm6,%xmm6
 4984 
 4985         vpand   %xmm7,%xmm10,%xmm10
 4986         vpand   %xmm7,%xmm11,%xmm11
 4987         vpaddd  0(%rdi),%xmm10,%xmm10
 4988         vpand   %xmm7,%xmm12,%xmm12
 4989         vpaddd  32(%rdi),%xmm11,%xmm11
 4990         vpand   %xmm7,%xmm13,%xmm13
 4991         vpaddd  64(%rdi),%xmm12,%xmm12
 4992         vpand   %xmm7,%xmm14,%xmm14
 4993         vpaddd  96(%rdi),%xmm13,%xmm13
 4994         vpaddd  128(%rdi),%xmm14,%xmm14
 4995         vmovdqu %xmm10,0(%rdi)
 4996         vmovdqu %xmm11,32(%rdi)
 4997         vmovdqu %xmm12,64(%rdi)
 4998         vmovdqu %xmm13,96(%rdi)
 4999         vmovdqu %xmm14,128(%rdi)
 5000 
 5001         vmovdqu %xmm6,(%rbx)
 5002         vmovdqu 96(%rbp),%xmm5
 5003         decl    %edx
 5004         jnz     .Loop_avx
 5005 
 5006         movl    280(%rsp),%edx
 5007         leaq    16(%rdi),%rdi
 5008         leaq    64(%rsi),%rsi
 5009         decl    %edx
 5010         jnz     .Loop_grande_avx
 5011 
 5012 .Ldone_avx:
 5013         movq    272(%rsp),%rax
 5014 .cfi_def_cfa    %rax,8
 5015         vzeroupper
 5016         movq    -16(%rax),%rbp
 5017 .cfi_restore    %rbp
 5018         movq    -8(%rax),%rbx
 5019 .cfi_restore    %rbx
 5020         leaq    (%rax),%rsp
 5021 .cfi_def_cfa_register   %rsp
 5022 .Lepilogue_avx:
 5023         .byte   0xf3,0xc3
 5024 .cfi_endproc    
 5025 .size   sha1_multi_block_avx,.-sha1_multi_block_avx
 5026 .type   sha1_multi_block_avx2,@function
 5027 .align  32
 5028 sha1_multi_block_avx2:
 5029 .cfi_startproc  
 5030 _avx2_shortcut:
 5031         movq    %rsp,%rax
 5032 .cfi_def_cfa_register   %rax
 5033         pushq   %rbx
 5034 .cfi_offset     %rbx,-16
 5035         pushq   %rbp
 5036 .cfi_offset     %rbp,-24
 5037         pushq   %r12
 5038 .cfi_offset     %r12,-32
 5039         pushq   %r13
 5040 .cfi_offset     %r13,-40
 5041         pushq   %r14
 5042 .cfi_offset     %r14,-48
 5043         pushq   %r15
 5044 .cfi_offset     %r15,-56
 5045         subq    $576,%rsp
 5046         andq    $-256,%rsp
 5047         movq    %rax,544(%rsp)
 5048 .cfi_escape     0x0f,0x06,0x77,0xa0,0x04,0x06,0x23,0x08
 5049 .Lbody_avx2:
 5050         leaq    K_XX_XX(%rip),%rbp
 5051         shrl    $1,%edx
 5052 
 5053         vzeroupper
 5054 .Loop_grande_avx2:
 5055         movl    %edx,552(%rsp)
 5056         xorl    %edx,%edx
 5057         leaq    512(%rsp),%rbx
 5058         movq    0(%rsi),%r12
 5059         movl    8(%rsi),%ecx
 5060         cmpl    %edx,%ecx
 5061         cmovgl  %ecx,%edx
 5062         testl   %ecx,%ecx
 5063         movl    %ecx,0(%rbx)
 5064         cmovleq %rbp,%r12
 5065         movq    16(%rsi),%r13
 5066         movl    24(%rsi),%ecx
 5067         cmpl    %edx,%ecx
 5068         cmovgl  %ecx,%edx
 5069         testl   %ecx,%ecx
 5070         movl    %ecx,4(%rbx)
 5071         cmovleq %rbp,%r13
 5072         movq    32(%rsi),%r14
 5073         movl    40(%rsi),%ecx
 5074         cmpl    %edx,%ecx
 5075         cmovgl  %ecx,%edx
 5076         testl   %ecx,%ecx
 5077         movl    %ecx,8(%rbx)
 5078         cmovleq %rbp,%r14
 5079         movq    48(%rsi),%r15
 5080         movl    56(%rsi),%ecx
 5081         cmpl    %edx,%ecx
 5082         cmovgl  %ecx,%edx
 5083         testl   %ecx,%ecx
 5084         movl    %ecx,12(%rbx)
 5085         cmovleq %rbp,%r15
 5086         movq    64(%rsi),%r8
 5087         movl    72(%rsi),%ecx
 5088         cmpl    %edx,%ecx
 5089         cmovgl  %ecx,%edx
 5090         testl   %ecx,%ecx
 5091         movl    %ecx,16(%rbx)
 5092         cmovleq %rbp,%r8
 5093         movq    80(%rsi),%r9
 5094         movl    88(%rsi),%ecx
 5095         cmpl    %edx,%ecx
 5096         cmovgl  %ecx,%edx
 5097         testl   %ecx,%ecx
 5098         movl    %ecx,20(%rbx)
 5099         cmovleq %rbp,%r9
 5100         movq    96(%rsi),%r10
 5101         movl    104(%rsi),%ecx
 5102         cmpl    %edx,%ecx
 5103         cmovgl  %ecx,%edx
 5104         testl   %ecx,%ecx
 5105         movl    %ecx,24(%rbx)
 5106         cmovleq %rbp,%r10
 5107         movq    112(%rsi),%r11
 5108         movl    120(%rsi),%ecx
 5109         cmpl    %edx,%ecx
 5110         cmovgl  %ecx,%edx
 5111         testl   %ecx,%ecx
 5112         movl    %ecx,28(%rbx)
 5113         cmovleq %rbp,%r11
 5114         vmovdqu 0(%rdi),%ymm0
 5115         leaq    128(%rsp),%rax
 5116         vmovdqu 32(%rdi),%ymm1
 5117         leaq    256+128(%rsp),%rbx
 5118         vmovdqu 64(%rdi),%ymm2
 5119         vmovdqu 96(%rdi),%ymm3
 5120         vmovdqu 128(%rdi),%ymm4
 5121         vmovdqu 96(%rbp),%ymm9
 5122         jmp     .Loop_avx2
 5123 
 5124 .align  32
 5125 .Loop_avx2:
 5126         vmovdqa -32(%rbp),%ymm15
 5127         vmovd   (%r12),%xmm10
 5128         leaq    64(%r12),%r12
 5129         vmovd   (%r8),%xmm12
 5130         leaq    64(%r8),%r8
 5131         vmovd   (%r13),%xmm7
 5132         leaq    64(%r13),%r13
 5133         vmovd   (%r9),%xmm6
 5134         leaq    64(%r9),%r9
 5135         vpinsrd $1,(%r14),%xmm10,%xmm10
 5136         leaq    64(%r14),%r14
 5137         vpinsrd $1,(%r10),%xmm12,%xmm12
 5138         leaq    64(%r10),%r10
 5139         vpinsrd $1,(%r15),%xmm7,%xmm7
 5140         leaq    64(%r15),%r15
 5141         vpunpckldq      %ymm7,%ymm10,%ymm10
 5142         vpinsrd $1,(%r11),%xmm6,%xmm6
 5143         leaq    64(%r11),%r11
 5144         vpunpckldq      %ymm6,%ymm12,%ymm12
 5145         vmovd   -60(%r12),%xmm11
 5146         vinserti128     $1,%xmm12,%ymm10,%ymm10
 5147         vmovd   -60(%r8),%xmm8
 5148         vpshufb %ymm9,%ymm10,%ymm10
 5149         vmovd   -60(%r13),%xmm7
 5150         vmovd   -60(%r9),%xmm6
 5151         vpinsrd $1,-60(%r14),%xmm11,%xmm11
 5152         vpinsrd $1,-60(%r10),%xmm8,%xmm8
 5153         vpinsrd $1,-60(%r15),%xmm7,%xmm7
 5154         vpunpckldq      %ymm7,%ymm11,%ymm11
 5155         vpinsrd $1,-60(%r11),%xmm6,%xmm6
 5156         vpunpckldq      %ymm6,%ymm8,%ymm8
 5157         vpaddd  %ymm15,%ymm4,%ymm4
 5158         vpslld  $5,%ymm0,%ymm7
 5159         vpandn  %ymm3,%ymm1,%ymm6
 5160         vpand   %ymm2,%ymm1,%ymm5
 5161 
 5162         vmovdqa %ymm10,0-128(%rax)
 5163         vpaddd  %ymm10,%ymm4,%ymm4
 5164         vinserti128     $1,%xmm8,%ymm11,%ymm11
 5165         vpsrld  $27,%ymm0,%ymm8
 5166         vpxor   %ymm6,%ymm5,%ymm5
 5167         vmovd   -56(%r12),%xmm12
 5168 
 5169         vpslld  $30,%ymm1,%ymm6
 5170         vpor    %ymm8,%ymm7,%ymm7
 5171         vmovd   -56(%r8),%xmm8
 5172         vpaddd  %ymm5,%ymm4,%ymm4
 5173 
 5174         vpsrld  $2,%ymm1,%ymm1
 5175         vpaddd  %ymm7,%ymm4,%ymm4
 5176         vpshufb %ymm9,%ymm11,%ymm11
 5177         vpor    %ymm6,%ymm1,%ymm1
 5178         vmovd   -56(%r13),%xmm7
 5179         vmovd   -56(%r9),%xmm6
 5180         vpinsrd $1,-56(%r14),%xmm12,%xmm12
 5181         vpinsrd $1,-56(%r10),%xmm8,%xmm8
 5182         vpinsrd $1,-56(%r15),%xmm7,%xmm7
 5183         vpunpckldq      %ymm7,%ymm12,%ymm12
 5184         vpinsrd $1,-56(%r11),%xmm6,%xmm6
 5185         vpunpckldq      %ymm6,%ymm8,%ymm8
 5186         vpaddd  %ymm15,%ymm3,%ymm3
 5187         vpslld  $5,%ymm4,%ymm7
 5188         vpandn  %ymm2,%ymm0,%ymm6
 5189         vpand   %ymm1,%ymm0,%ymm5
 5190 
 5191         vmovdqa %ymm11,32-128(%rax)
 5192         vpaddd  %ymm11,%ymm3,%ymm3
 5193         vinserti128     $1,%xmm8,%ymm12,%ymm12
 5194         vpsrld  $27,%ymm4,%ymm8
 5195         vpxor   %ymm6,%ymm5,%ymm5
 5196         vmovd   -52(%r12),%xmm13
 5197 
 5198         vpslld  $30,%ymm0,%ymm6
 5199         vpor    %ymm8,%ymm7,%ymm7
 5200         vmovd   -52(%r8),%xmm8
 5201         vpaddd  %ymm5,%ymm3,%ymm3
 5202 
 5203         vpsrld  $2,%ymm0,%ymm0
 5204         vpaddd  %ymm7,%ymm3,%ymm3
 5205         vpshufb %ymm9,%ymm12,%ymm12
 5206         vpor    %ymm6,%ymm0,%ymm0
 5207         vmovd   -52(%r13),%xmm7
 5208         vmovd   -52(%r9),%xmm6
 5209         vpinsrd $1,-52(%r14),%xmm13,%xmm13
 5210         vpinsrd $1,-52(%r10),%xmm8,%xmm8
 5211         vpinsrd $1,-52(%r15),%xmm7,%xmm7
 5212         vpunpckldq      %ymm7,%ymm13,%ymm13
 5213         vpinsrd $1,-52(%r11),%xmm6,%xmm6
 5214         vpunpckldq      %ymm6,%ymm8,%ymm8
 5215         vpaddd  %ymm15,%ymm2,%ymm2
 5216         vpslld  $5,%ymm3,%ymm7
 5217         vpandn  %ymm1,%ymm4,%ymm6
 5218         vpand   %ymm0,%ymm4,%ymm5
 5219 
 5220         vmovdqa %ymm12,64-128(%rax)
 5221         vpaddd  %ymm12,%ymm2,%ymm2
 5222         vinserti128     $1,%xmm8,%ymm13,%ymm13
 5223         vpsrld  $27,%ymm3,%ymm8
 5224         vpxor   %ymm6,%ymm5,%ymm5
 5225         vmovd   -48(%r12),%xmm14
 5226 
 5227         vpslld  $30,%ymm4,%ymm6
 5228         vpor    %ymm8,%ymm7,%ymm7
 5229         vmovd   -48(%r8),%xmm8
 5230         vpaddd  %ymm5,%ymm2,%ymm2
 5231 
 5232         vpsrld  $2,%ymm4,%ymm4
 5233         vpaddd  %ymm7,%ymm2,%ymm2
 5234         vpshufb %ymm9,%ymm13,%ymm13
 5235         vpor    %ymm6,%ymm4,%ymm4
 5236         vmovd   -48(%r13),%xmm7
 5237         vmovd   -48(%r9),%xmm6
 5238         vpinsrd $1,-48(%r14),%xmm14,%xmm14
 5239         vpinsrd $1,-48(%r10),%xmm8,%xmm8
 5240         vpinsrd $1,-48(%r15),%xmm7,%xmm7
 5241         vpunpckldq      %ymm7,%ymm14,%ymm14
 5242         vpinsrd $1,-48(%r11),%xmm6,%xmm6
 5243         vpunpckldq      %ymm6,%ymm8,%ymm8
 5244         vpaddd  %ymm15,%ymm1,%ymm1
 5245         vpslld  $5,%ymm2,%ymm7
 5246         vpandn  %ymm0,%ymm3,%ymm6
 5247         vpand   %ymm4,%ymm3,%ymm5
 5248 
 5249         vmovdqa %ymm13,96-128(%rax)
 5250         vpaddd  %ymm13,%ymm1,%ymm1
 5251         vinserti128     $1,%xmm8,%ymm14,%ymm14
 5252         vpsrld  $27,%ymm2,%ymm8
 5253         vpxor   %ymm6,%ymm5,%ymm5
 5254         vmovd   -44(%r12),%xmm10
 5255 
 5256         vpslld  $30,%ymm3,%ymm6
 5257         vpor    %ymm8,%ymm7,%ymm7
 5258         vmovd   -44(%r8),%xmm8
 5259         vpaddd  %ymm5,%ymm1,%ymm1
 5260 
 5261         vpsrld  $2,%ymm3,%ymm3
 5262         vpaddd  %ymm7,%ymm1,%ymm1
 5263         vpshufb %ymm9,%ymm14,%ymm14
 5264         vpor    %ymm6,%ymm3,%ymm3
 5265         vmovd   -44(%r13),%xmm7
 5266         vmovd   -44(%r9),%xmm6
 5267         vpinsrd $1,-44(%r14),%xmm10,%xmm10
 5268         vpinsrd $1,-44(%r10),%xmm8,%xmm8
 5269         vpinsrd $1,-44(%r15),%xmm7,%xmm7
 5270         vpunpckldq      %ymm7,%ymm10,%ymm10
 5271         vpinsrd $1,-44(%r11),%xmm6,%xmm6
 5272         vpunpckldq      %ymm6,%ymm8,%ymm8
 5273         vpaddd  %ymm15,%ymm0,%ymm0
 5274         vpslld  $5,%ymm1,%ymm7
 5275         vpandn  %ymm4,%ymm2,%ymm6
 5276         vpand   %ymm3,%ymm2,%ymm5
 5277 
 5278         vmovdqa %ymm14,128-128(%rax)
 5279         vpaddd  %ymm14,%ymm0,%ymm0
 5280         vinserti128     $1,%xmm8,%ymm10,%ymm10
 5281         vpsrld  $27,%ymm1,%ymm8
 5282         vpxor   %ymm6,%ymm5,%ymm5
 5283         vmovd   -40(%r12),%xmm11
 5284 
 5285         vpslld  $30,%ymm2,%ymm6
 5286         vpor    %ymm8,%ymm7,%ymm7
 5287         vmovd   -40(%r8),%xmm8
 5288         vpaddd  %ymm5,%ymm0,%ymm0
 5289 
 5290         vpsrld  $2,%ymm2,%ymm2
 5291         vpaddd  %ymm7,%ymm0,%ymm0
 5292         vpshufb %ymm9,%ymm10,%ymm10
 5293         vpor    %ymm6,%ymm2,%ymm2
 5294         vmovd   -40(%r13),%xmm7
 5295         vmovd   -40(%r9),%xmm6
 5296         vpinsrd $1,-40(%r14),%xmm11,%xmm11
 5297         vpinsrd $1,-40(%r10),%xmm8,%xmm8
 5298         vpinsrd $1,-40(%r15),%xmm7,%xmm7
 5299         vpunpckldq      %ymm7,%ymm11,%ymm11
 5300         vpinsrd $1,-40(%r11),%xmm6,%xmm6
 5301         vpunpckldq      %ymm6,%ymm8,%ymm8
 5302         vpaddd  %ymm15,%ymm4,%ymm4
 5303         vpslld  $5,%ymm0,%ymm7
 5304         vpandn  %ymm3,%ymm1,%ymm6
 5305         vpand   %ymm2,%ymm1,%ymm5
 5306 
 5307         vmovdqa %ymm10,160-128(%rax)
 5308         vpaddd  %ymm10,%ymm4,%ymm4
 5309         vinserti128     $1,%xmm8,%ymm11,%ymm11
 5310         vpsrld  $27,%ymm0,%ymm8
 5311         vpxor   %ymm6,%ymm5,%ymm5
 5312         vmovd   -36(%r12),%xmm12
 5313 
 5314         vpslld  $30,%ymm1,%ymm6
 5315         vpor    %ymm8,%ymm7,%ymm7
 5316         vmovd   -36(%r8),%xmm8
 5317         vpaddd  %ymm5,%ymm4,%ymm4
 5318 
 5319         vpsrld  $2,%ymm1,%ymm1
 5320         vpaddd  %ymm7,%ymm4,%ymm4
 5321         vpshufb %ymm9,%ymm11,%ymm11
 5322         vpor    %ymm6,%ymm1,%ymm1
 5323         vmovd   -36(%r13),%xmm7
 5324         vmovd   -36(%r9),%xmm6
 5325         vpinsrd $1,-36(%r14),%xmm12,%xmm12
 5326         vpinsrd $1,-36(%r10),%xmm8,%xmm8
 5327         vpinsrd $1,-36(%r15),%xmm7,%xmm7
 5328         vpunpckldq      %ymm7,%ymm12,%ymm12
 5329         vpinsrd $1,-36(%r11),%xmm6,%xmm6
 5330         vpunpckldq      %ymm6,%ymm8,%ymm8
 5331         vpaddd  %ymm15,%ymm3,%ymm3
 5332         vpslld  $5,%ymm4,%ymm7
 5333         vpandn  %ymm2,%ymm0,%ymm6
 5334         vpand   %ymm1,%ymm0,%ymm5
 5335 
 5336         vmovdqa %ymm11,192-128(%rax)
 5337         vpaddd  %ymm11,%ymm3,%ymm3
 5338         vinserti128     $1,%xmm8,%ymm12,%ymm12
 5339         vpsrld  $27,%ymm4,%ymm8
 5340         vpxor   %ymm6,%ymm5,%ymm5
 5341         vmovd   -32(%r12),%xmm13
 5342 
 5343         vpslld  $30,%ymm0,%ymm6
 5344         vpor    %ymm8,%ymm7,%ymm7
 5345         vmovd   -32(%r8),%xmm8
 5346         vpaddd  %ymm5,%ymm3,%ymm3
 5347 
 5348         vpsrld  $2,%ymm0,%ymm0
 5349         vpaddd  %ymm7,%ymm3,%ymm3
 5350         vpshufb %ymm9,%ymm12,%ymm12
 5351         vpor    %ymm6,%ymm0,%ymm0
 5352         vmovd   -32(%r13),%xmm7
 5353         vmovd   -32(%r9),%xmm6
 5354         vpinsrd $1,-32(%r14),%xmm13,%xmm13
 5355         vpinsrd $1,-32(%r10),%xmm8,%xmm8
 5356         vpinsrd $1,-32(%r15),%xmm7,%xmm7
 5357         vpunpckldq      %ymm7,%ymm13,%ymm13
 5358         vpinsrd $1,-32(%r11),%xmm6,%xmm6
 5359         vpunpckldq      %ymm6,%ymm8,%ymm8
 5360         vpaddd  %ymm15,%ymm2,%ymm2
 5361         vpslld  $5,%ymm3,%ymm7
 5362         vpandn  %ymm1,%ymm4,%ymm6
 5363         vpand   %ymm0,%ymm4,%ymm5
 5364 
 5365         vmovdqa %ymm12,224-128(%rax)
 5366         vpaddd  %ymm12,%ymm2,%ymm2
 5367         vinserti128     $1,%xmm8,%ymm13,%ymm13
 5368         vpsrld  $27,%ymm3,%ymm8
 5369         vpxor   %ymm6,%ymm5,%ymm5
 5370         vmovd   -28(%r12),%xmm14
 5371 
 5372         vpslld  $30,%ymm4,%ymm6
 5373         vpor    %ymm8,%ymm7,%ymm7
 5374         vmovd   -28(%r8),%xmm8
 5375         vpaddd  %ymm5,%ymm2,%ymm2
 5376 
 5377         vpsrld  $2,%ymm4,%ymm4
 5378         vpaddd  %ymm7,%ymm2,%ymm2
 5379         vpshufb %ymm9,%ymm13,%ymm13
 5380         vpor    %ymm6,%ymm4,%ymm4
 5381         vmovd   -28(%r13),%xmm7
 5382         vmovd   -28(%r9),%xmm6
 5383         vpinsrd $1,-28(%r14),%xmm14,%xmm14
 5384         vpinsrd $1,-28(%r10),%xmm8,%xmm8
 5385         vpinsrd $1,-28(%r15),%xmm7,%xmm7
 5386         vpunpckldq      %ymm7,%ymm14,%ymm14
 5387         vpinsrd $1,-28(%r11),%xmm6,%xmm6
 5388         vpunpckldq      %ymm6,%ymm8,%ymm8
 5389         vpaddd  %ymm15,%ymm1,%ymm1
 5390         vpslld  $5,%ymm2,%ymm7
 5391         vpandn  %ymm0,%ymm3,%ymm6
 5392         vpand   %ymm4,%ymm3,%ymm5
 5393 
 5394         vmovdqa %ymm13,256-256-128(%rbx)
 5395         vpaddd  %ymm13,%ymm1,%ymm1
 5396         vinserti128     $1,%xmm8,%ymm14,%ymm14
 5397         vpsrld  $27,%ymm2,%ymm8
 5398         vpxor   %ymm6,%ymm5,%ymm5
 5399         vmovd   -24(%r12),%xmm10
 5400 
 5401         vpslld  $30,%ymm3,%ymm6
 5402         vpor    %ymm8,%ymm7,%ymm7
 5403         vmovd   -24(%r8),%xmm8
 5404         vpaddd  %ymm5,%ymm1,%ymm1
 5405 
 5406         vpsrld  $2,%ymm3,%ymm3
 5407         vpaddd  %ymm7,%ymm1,%ymm1
 5408         vpshufb %ymm9,%ymm14,%ymm14
 5409         vpor    %ymm6,%ymm3,%ymm3
 5410         vmovd   -24(%r13),%xmm7
 5411         vmovd   -24(%r9),%xmm6
 5412         vpinsrd $1,-24(%r14),%xmm10,%xmm10
 5413         vpinsrd $1,-24(%r10),%xmm8,%xmm8
 5414         vpinsrd $1,-24(%r15),%xmm7,%xmm7
 5415         vpunpckldq      %ymm7,%ymm10,%ymm10
 5416         vpinsrd $1,-24(%r11),%xmm6,%xmm6
 5417         vpunpckldq      %ymm6,%ymm8,%ymm8
 5418         vpaddd  %ymm15,%ymm0,%ymm0
 5419         vpslld  $5,%ymm1,%ymm7
 5420         vpandn  %ymm4,%ymm2,%ymm6
 5421         vpand   %ymm3,%ymm2,%ymm5
 5422 
 5423         vmovdqa %ymm14,288-256-128(%rbx)
 5424         vpaddd  %ymm14,%ymm0,%ymm0
 5425         vinserti128     $1,%xmm8,%ymm10,%ymm10
 5426         vpsrld  $27,%ymm1,%ymm8
 5427         vpxor   %ymm6,%ymm5,%ymm5
 5428         vmovd   -20(%r12),%xmm11
 5429 
 5430         vpslld  $30,%ymm2,%ymm6
 5431         vpor    %ymm8,%ymm7,%ymm7
 5432         vmovd   -20(%r8),%xmm8
 5433         vpaddd  %ymm5,%ymm0,%ymm0
 5434 
 5435         vpsrld  $2,%ymm2,%ymm2
 5436         vpaddd  %ymm7,%ymm0,%ymm0
 5437         vpshufb %ymm9,%ymm10,%ymm10
 5438         vpor    %ymm6,%ymm2,%ymm2
 5439         vmovd   -20(%r13),%xmm7
 5440         vmovd   -20(%r9),%xmm6
 5441         vpinsrd $1,-20(%r14),%xmm11,%xmm11
 5442         vpinsrd $1,-20(%r10),%xmm8,%xmm8
 5443         vpinsrd $1,-20(%r15),%xmm7,%xmm7
 5444         vpunpckldq      %ymm7,%ymm11,%ymm11
 5445         vpinsrd $1,-20(%r11),%xmm6,%xmm6
 5446         vpunpckldq      %ymm6,%ymm8,%ymm8
 5447         vpaddd  %ymm15,%ymm4,%ymm4
 5448         vpslld  $5,%ymm0,%ymm7
 5449         vpandn  %ymm3,%ymm1,%ymm6
 5450         vpand   %ymm2,%ymm1,%ymm5
 5451 
 5452         vmovdqa %ymm10,320-256-128(%rbx)
 5453         vpaddd  %ymm10,%ymm4,%ymm4
 5454         vinserti128     $1,%xmm8,%ymm11,%ymm11
 5455         vpsrld  $27,%ymm0,%ymm8
 5456         vpxor   %ymm6,%ymm5,%ymm5
 5457         vmovd   -16(%r12),%xmm12
 5458 
 5459         vpslld  $30,%ymm1,%ymm6
 5460         vpor    %ymm8,%ymm7,%ymm7
 5461         vmovd   -16(%r8),%xmm8
 5462         vpaddd  %ymm5,%ymm4,%ymm4
 5463 
 5464         vpsrld  $2,%ymm1,%ymm1
 5465         vpaddd  %ymm7,%ymm4,%ymm4
 5466         vpshufb %ymm9,%ymm11,%ymm11
 5467         vpor    %ymm6,%ymm1,%ymm1
 5468         vmovd   -16(%r13),%xmm7
 5469         vmovd   -16(%r9),%xmm6
 5470         vpinsrd $1,-16(%r14),%xmm12,%xmm12
 5471         vpinsrd $1,-16(%r10),%xmm8,%xmm8
 5472         vpinsrd $1,-16(%r15),%xmm7,%xmm7
 5473         vpunpckldq      %ymm7,%ymm12,%ymm12
 5474         vpinsrd $1,-16(%r11),%xmm6,%xmm6
 5475         vpunpckldq      %ymm6,%ymm8,%ymm8
 5476         vpaddd  %ymm15,%ymm3,%ymm3
 5477         vpslld  $5,%ymm4,%ymm7
 5478         vpandn  %ymm2,%ymm0,%ymm6
 5479         vpand   %ymm1,%ymm0,%ymm5
 5480 
 5481         vmovdqa %ymm11,352-256-128(%rbx)
 5482         vpaddd  %ymm11,%ymm3,%ymm3
 5483         vinserti128     $1,%xmm8,%ymm12,%ymm12
 5484         vpsrld  $27,%ymm4,%ymm8
 5485         vpxor   %ymm6,%ymm5,%ymm5
 5486         vmovd   -12(%r12),%xmm13
 5487 
 5488         vpslld  $30,%ymm0,%ymm6
 5489         vpor    %ymm8,%ymm7,%ymm7
 5490         vmovd   -12(%r8),%xmm8
 5491         vpaddd  %ymm5,%ymm3,%ymm3
 5492 
 5493         vpsrld  $2,%ymm0,%ymm0
 5494         vpaddd  %ymm7,%ymm3,%ymm3
 5495         vpshufb %ymm9,%ymm12,%ymm12
 5496         vpor    %ymm6,%ymm0,%ymm0
 5497         vmovd   -12(%r13),%xmm7
 5498         vmovd   -12(%r9),%xmm6
 5499         vpinsrd $1,-12(%r14),%xmm13,%xmm13
 5500         vpinsrd $1,-12(%r10),%xmm8,%xmm8
 5501         vpinsrd $1,-12(%r15),%xmm7,%xmm7
 5502         vpunpckldq      %ymm7,%ymm13,%ymm13
 5503         vpinsrd $1,-12(%r11),%xmm6,%xmm6
 5504         vpunpckldq      %ymm6,%ymm8,%ymm8
 5505         vpaddd  %ymm15,%ymm2,%ymm2
 5506         vpslld  $5,%ymm3,%ymm7
 5507         vpandn  %ymm1,%ymm4,%ymm6
 5508         vpand   %ymm0,%ymm4,%ymm5
 5509 
 5510         vmovdqa %ymm12,384-256-128(%rbx)
 5511         vpaddd  %ymm12,%ymm2,%ymm2
 5512         vinserti128     $1,%xmm8,%ymm13,%ymm13
 5513         vpsrld  $27,%ymm3,%ymm8
 5514         vpxor   %ymm6,%ymm5,%ymm5
 5515         vmovd   -8(%r12),%xmm14
 5516 
 5517         vpslld  $30,%ymm4,%ymm6
 5518         vpor    %ymm8,%ymm7,%ymm7
 5519         vmovd   -8(%r8),%xmm8
 5520         vpaddd  %ymm5,%ymm2,%ymm2
 5521 
 5522         vpsrld  $2,%ymm4,%ymm4
 5523         vpaddd  %ymm7,%ymm2,%ymm2
 5524         vpshufb %ymm9,%ymm13,%ymm13
 5525         vpor    %ymm6,%ymm4,%ymm4
 5526         vmovd   -8(%r13),%xmm7
 5527         vmovd   -8(%r9),%xmm6
 5528         vpinsrd $1,-8(%r14),%xmm14,%xmm14
 5529         vpinsrd $1,-8(%r10),%xmm8,%xmm8
 5530         vpinsrd $1,-8(%r15),%xmm7,%xmm7
 5531         vpunpckldq      %ymm7,%ymm14,%ymm14
 5532         vpinsrd $1,-8(%r11),%xmm6,%xmm6
 5533         vpunpckldq      %ymm6,%ymm8,%ymm8
 5534         vpaddd  %ymm15,%ymm1,%ymm1
 5535         vpslld  $5,%ymm2,%ymm7
 5536         vpandn  %ymm0,%ymm3,%ymm6
 5537         vpand   %ymm4,%ymm3,%ymm5
 5538 
 5539         vmovdqa %ymm13,416-256-128(%rbx)
 5540         vpaddd  %ymm13,%ymm1,%ymm1
 5541         vinserti128     $1,%xmm8,%ymm14,%ymm14
 5542         vpsrld  $27,%ymm2,%ymm8
 5543         vpxor   %ymm6,%ymm5,%ymm5
 5544         vmovd   -4(%r12),%xmm10
 5545 
 5546         vpslld  $30,%ymm3,%ymm6
 5547         vpor    %ymm8,%ymm7,%ymm7
 5548         vmovd   -4(%r8),%xmm8
 5549         vpaddd  %ymm5,%ymm1,%ymm1
 5550 
 5551         vpsrld  $2,%ymm3,%ymm3
 5552         vpaddd  %ymm7,%ymm1,%ymm1
 5553         vpshufb %ymm9,%ymm14,%ymm14
 5554         vpor    %ymm6,%ymm3,%ymm3
 5555         vmovdqa 0-128(%rax),%ymm11
 5556         vmovd   -4(%r13),%xmm7
 5557         vmovd   -4(%r9),%xmm6
 5558         vpinsrd $1,-4(%r14),%xmm10,%xmm10
 5559         vpinsrd $1,-4(%r10),%xmm8,%xmm8
 5560         vpinsrd $1,-4(%r15),%xmm7,%xmm7
 5561         vpunpckldq      %ymm7,%ymm10,%ymm10
 5562         vpinsrd $1,-4(%r11),%xmm6,%xmm6
 5563         vpunpckldq      %ymm6,%ymm8,%ymm8
 5564         vpaddd  %ymm15,%ymm0,%ymm0
 5565         prefetcht0      63(%r12)
 5566         vpslld  $5,%ymm1,%ymm7
 5567         vpandn  %ymm4,%ymm2,%ymm6
 5568         vpand   %ymm3,%ymm2,%ymm5
 5569 
 5570         vmovdqa %ymm14,448-256-128(%rbx)
 5571         vpaddd  %ymm14,%ymm0,%ymm0
 5572         vinserti128     $1,%xmm8,%ymm10,%ymm10
 5573         vpsrld  $27,%ymm1,%ymm8
 5574         prefetcht0      63(%r13)
 5575         vpxor   %ymm6,%ymm5,%ymm5
 5576 
 5577         vpslld  $30,%ymm2,%ymm6
 5578         vpor    %ymm8,%ymm7,%ymm7
 5579         prefetcht0      63(%r14)
 5580         vpaddd  %ymm5,%ymm0,%ymm0
 5581 
 5582         vpsrld  $2,%ymm2,%ymm2
 5583         vpaddd  %ymm7,%ymm0,%ymm0
 5584         prefetcht0      63(%r15)
 5585         vpshufb %ymm9,%ymm10,%ymm10
 5586         vpor    %ymm6,%ymm2,%ymm2
 5587         vmovdqa 32-128(%rax),%ymm12
 5588         vpxor   %ymm13,%ymm11,%ymm11
 5589         vmovdqa 64-128(%rax),%ymm13
 5590 
 5591         vpaddd  %ymm15,%ymm4,%ymm4
 5592         vpslld  $5,%ymm0,%ymm7
 5593         vpandn  %ymm3,%ymm1,%ymm6
 5594         prefetcht0      63(%r8)
 5595         vpand   %ymm2,%ymm1,%ymm5
 5596 
 5597         vmovdqa %ymm10,480-256-128(%rbx)
 5598         vpaddd  %ymm10,%ymm4,%ymm4
 5599         vpxor   256-256-128(%rbx),%ymm11,%ymm11
 5600         vpsrld  $27,%ymm0,%ymm8
 5601         vpxor   %ymm6,%ymm5,%ymm5
 5602         vpxor   %ymm13,%ymm11,%ymm11
 5603         prefetcht0      63(%r9)
 5604 
 5605         vpslld  $30,%ymm1,%ymm6
 5606         vpor    %ymm8,%ymm7,%ymm7
 5607         vpaddd  %ymm5,%ymm4,%ymm4
 5608         prefetcht0      63(%r10)
 5609         vpsrld  $31,%ymm11,%ymm9
 5610         vpaddd  %ymm11,%ymm11,%ymm11
 5611 
 5612         vpsrld  $2,%ymm1,%ymm1
 5613         prefetcht0      63(%r11)
 5614         vpaddd  %ymm7,%ymm4,%ymm4
 5615         vpor    %ymm9,%ymm11,%ymm11
 5616         vpor    %ymm6,%ymm1,%ymm1
 5617         vpxor   %ymm14,%ymm12,%ymm12
 5618         vmovdqa 96-128(%rax),%ymm14
 5619 
 5620         vpaddd  %ymm15,%ymm3,%ymm3
 5621         vpslld  $5,%ymm4,%ymm7
 5622         vpandn  %ymm2,%ymm0,%ymm6
 5623 
 5624         vpand   %ymm1,%ymm0,%ymm5
 5625 
 5626         vmovdqa %ymm11,0-128(%rax)
 5627         vpaddd  %ymm11,%ymm3,%ymm3
 5628         vpxor   288-256-128(%rbx),%ymm12,%ymm12
 5629         vpsrld  $27,%ymm4,%ymm8
 5630         vpxor   %ymm6,%ymm5,%ymm5
 5631         vpxor   %ymm14,%ymm12,%ymm12
 5632 
 5633 
 5634         vpslld  $30,%ymm0,%ymm6
 5635         vpor    %ymm8,%ymm7,%ymm7
 5636         vpaddd  %ymm5,%ymm3,%ymm3
 5637 
 5638         vpsrld  $31,%ymm12,%ymm9
 5639         vpaddd  %ymm12,%ymm12,%ymm12
 5640 
 5641         vpsrld  $2,%ymm0,%ymm0
 5642 
 5643         vpaddd  %ymm7,%ymm3,%ymm3
 5644         vpor    %ymm9,%ymm12,%ymm12
 5645         vpor    %ymm6,%ymm0,%ymm0
 5646         vpxor   %ymm10,%ymm13,%ymm13
 5647         vmovdqa 128-128(%rax),%ymm10
 5648 
 5649         vpaddd  %ymm15,%ymm2,%ymm2
 5650         vpslld  $5,%ymm3,%ymm7
 5651         vpandn  %ymm1,%ymm4,%ymm6
 5652 
 5653         vpand   %ymm0,%ymm4,%ymm5
 5654 
 5655         vmovdqa %ymm12,32-128(%rax)
 5656         vpaddd  %ymm12,%ymm2,%ymm2
 5657         vpxor   320-256-128(%rbx),%ymm13,%ymm13
 5658         vpsrld  $27,%ymm3,%ymm8
 5659         vpxor   %ymm6,%ymm5,%ymm5
 5660         vpxor   %ymm10,%ymm13,%ymm13
 5661 
 5662 
 5663         vpslld  $30,%ymm4,%ymm6
 5664         vpor    %ymm8,%ymm7,%ymm7
 5665         vpaddd  %ymm5,%ymm2,%ymm2
 5666 
 5667         vpsrld  $31,%ymm13,%ymm9
 5668         vpaddd  %ymm13,%ymm13,%ymm13
 5669 
 5670         vpsrld  $2,%ymm4,%ymm4
 5671 
 5672         vpaddd  %ymm7,%ymm2,%ymm2
 5673         vpor    %ymm9,%ymm13,%ymm13
 5674         vpor    %ymm6,%ymm4,%ymm4
 5675         vpxor   %ymm11,%ymm14,%ymm14
 5676         vmovdqa 160-128(%rax),%ymm11
 5677 
 5678         vpaddd  %ymm15,%ymm1,%ymm1
 5679         vpslld  $5,%ymm2,%ymm7
 5680         vpandn  %ymm0,%ymm3,%ymm6
 5681 
 5682         vpand   %ymm4,%ymm3,%ymm5
 5683 
 5684         vmovdqa %ymm13,64-128(%rax)
 5685         vpaddd  %ymm13,%ymm1,%ymm1
 5686         vpxor   352-256-128(%rbx),%ymm14,%ymm14
 5687         vpsrld  $27,%ymm2,%ymm8
 5688         vpxor   %ymm6,%ymm5,%ymm5
 5689         vpxor   %ymm11,%ymm14,%ymm14
 5690 
 5691 
 5692         vpslld  $30,%ymm3,%ymm6
 5693         vpor    %ymm8,%ymm7,%ymm7
 5694         vpaddd  %ymm5,%ymm1,%ymm1
 5695 
 5696         vpsrld  $31,%ymm14,%ymm9
 5697         vpaddd  %ymm14,%ymm14,%ymm14
 5698 
 5699         vpsrld  $2,%ymm3,%ymm3
 5700 
 5701         vpaddd  %ymm7,%ymm1,%ymm1
 5702         vpor    %ymm9,%ymm14,%ymm14
 5703         vpor    %ymm6,%ymm3,%ymm3
 5704         vpxor   %ymm12,%ymm10,%ymm10
 5705         vmovdqa 192-128(%rax),%ymm12
 5706 
 5707         vpaddd  %ymm15,%ymm0,%ymm0
 5708         vpslld  $5,%ymm1,%ymm7
 5709         vpandn  %ymm4,%ymm2,%ymm6
 5710 
 5711         vpand   %ymm3,%ymm2,%ymm5
 5712 
 5713         vmovdqa %ymm14,96-128(%rax)
 5714         vpaddd  %ymm14,%ymm0,%ymm0
 5715         vpxor   384-256-128(%rbx),%ymm10,%ymm10
 5716         vpsrld  $27,%ymm1,%ymm8
 5717         vpxor   %ymm6,%ymm5,%ymm5
 5718         vpxor   %ymm12,%ymm10,%ymm10
 5719 
 5720 
 5721         vpslld  $30,%ymm2,%ymm6
 5722         vpor    %ymm8,%ymm7,%ymm7
 5723         vpaddd  %ymm5,%ymm0,%ymm0
 5724 
 5725         vpsrld  $31,%ymm10,%ymm9
 5726         vpaddd  %ymm10,%ymm10,%ymm10
 5727 
 5728         vpsrld  $2,%ymm2,%ymm2
 5729 
 5730         vpaddd  %ymm7,%ymm0,%ymm0
 5731         vpor    %ymm9,%ymm10,%ymm10
 5732         vpor    %ymm6,%ymm2,%ymm2
 5733         vmovdqa 0(%rbp),%ymm15
 5734         vpxor   %ymm13,%ymm11,%ymm11
 5735         vmovdqa 224-128(%rax),%ymm13
 5736 
 5737         vpslld  $5,%ymm0,%ymm7
 5738         vpaddd  %ymm15,%ymm4,%ymm4
 5739         vpxor   %ymm1,%ymm3,%ymm5
 5740         vmovdqa %ymm10,128-128(%rax)
 5741         vpaddd  %ymm10,%ymm4,%ymm4
 5742         vpxor   416-256-128(%rbx),%ymm11,%ymm11
 5743         vpsrld  $27,%ymm0,%ymm8
 5744         vpxor   %ymm2,%ymm5,%ymm5
 5745         vpxor   %ymm13,%ymm11,%ymm11
 5746 
 5747         vpslld  $30,%ymm1,%ymm6
 5748         vpor    %ymm8,%ymm7,%ymm7
 5749         vpaddd  %ymm5,%ymm4,%ymm4
 5750         vpsrld  $31,%ymm11,%ymm9
 5751         vpaddd  %ymm11,%ymm11,%ymm11
 5752 
 5753         vpsrld  $2,%ymm1,%ymm1
 5754         vpaddd  %ymm7,%ymm4,%ymm4
 5755         vpor    %ymm9,%ymm11,%ymm11
 5756         vpor    %ymm6,%ymm1,%ymm1
 5757         vpxor   %ymm14,%ymm12,%ymm12
 5758         vmovdqa 256-256-128(%rbx),%ymm14
 5759 
 5760         vpslld  $5,%ymm4,%ymm7
 5761         vpaddd  %ymm15,%ymm3,%ymm3
 5762         vpxor   %ymm0,%ymm2,%ymm5
 5763         vmovdqa %ymm11,160-128(%rax)
 5764         vpaddd  %ymm11,%ymm3,%ymm3
 5765         vpxor   448-256-128(%rbx),%ymm12,%ymm12
 5766         vpsrld  $27,%ymm4,%ymm8
 5767         vpxor   %ymm1,%ymm5,%ymm5
 5768         vpxor   %ymm14,%ymm12,%ymm12
 5769 
 5770         vpslld  $30,%ymm0,%ymm6
 5771         vpor    %ymm8,%ymm7,%ymm7
 5772         vpaddd  %ymm5,%ymm3,%ymm3
 5773         vpsrld  $31,%ymm12,%ymm9
 5774         vpaddd  %ymm12,%ymm12,%ymm12
 5775 
 5776         vpsrld  $2,%ymm0,%ymm0
 5777         vpaddd  %ymm7,%ymm3,%ymm3
 5778         vpor    %ymm9,%ymm12,%ymm12
 5779         vpor    %ymm6,%ymm0,%ymm0
 5780         vpxor   %ymm10,%ymm13,%ymm13
 5781         vmovdqa 288-256-128(%rbx),%ymm10
 5782 
 5783         vpslld  $5,%ymm3,%ymm7
 5784         vpaddd  %ymm15,%ymm2,%ymm2
 5785         vpxor   %ymm4,%ymm1,%ymm5
 5786         vmovdqa %ymm12,192-128(%rax)
 5787         vpaddd  %ymm12,%ymm2,%ymm2
 5788         vpxor   480-256-128(%rbx),%ymm13,%ymm13
 5789         vpsrld  $27,%ymm3,%ymm8
 5790         vpxor   %ymm0,%ymm5,%ymm5
 5791         vpxor   %ymm10,%ymm13,%ymm13
 5792 
 5793         vpslld  $30,%ymm4,%ymm6
 5794         vpor    %ymm8,%ymm7,%ymm7
 5795         vpaddd  %ymm5,%ymm2,%ymm2
 5796         vpsrld  $31,%ymm13,%ymm9
 5797         vpaddd  %ymm13,%ymm13,%ymm13
 5798 
 5799         vpsrld  $2,%ymm4,%ymm4
 5800         vpaddd  %ymm7,%ymm2,%ymm2
 5801         vpor    %ymm9,%ymm13,%ymm13
 5802         vpor    %ymm6,%ymm4,%ymm4
 5803         vpxor   %ymm11,%ymm14,%ymm14
 5804         vmovdqa 320-256-128(%rbx),%ymm11
 5805 
 5806         vpslld  $5,%ymm2,%ymm7
 5807         vpaddd  %ymm15,%ymm1,%ymm1
 5808         vpxor   %ymm3,%ymm0,%ymm5
 5809         vmovdqa %ymm13,224-128(%rax)
 5810         vpaddd  %ymm13,%ymm1,%ymm1
 5811         vpxor   0-128(%rax),%ymm14,%ymm14
 5812         vpsrld  $27,%ymm2,%ymm8
 5813         vpxor   %ymm4,%ymm5,%ymm5
 5814         vpxor   %ymm11,%ymm14,%ymm14
 5815 
 5816         vpslld  $30,%ymm3,%ymm6
 5817         vpor    %ymm8,%ymm7,%ymm7
 5818         vpaddd  %ymm5,%ymm1,%ymm1
 5819         vpsrld  $31,%ymm14,%ymm9
 5820         vpaddd  %ymm14,%ymm14,%ymm14
 5821 
 5822         vpsrld  $2,%ymm3,%ymm3
 5823         vpaddd  %ymm7,%ymm1,%ymm1
 5824         vpor    %ymm9,%ymm14,%ymm14
 5825         vpor    %ymm6,%ymm3,%ymm3
 5826         vpxor   %ymm12,%ymm10,%ymm10
 5827         vmovdqa 352-256-128(%rbx),%ymm12
 5828 
 5829         vpslld  $5,%ymm1,%ymm7
 5830         vpaddd  %ymm15,%ymm0,%ymm0
 5831         vpxor   %ymm2,%ymm4,%ymm5
 5832         vmovdqa %ymm14,256-256-128(%rbx)
 5833         vpaddd  %ymm14,%ymm0,%ymm0
 5834         vpxor   32-128(%rax),%ymm10,%ymm10
 5835         vpsrld  $27,%ymm1,%ymm8
 5836         vpxor   %ymm3,%ymm5,%ymm5
 5837         vpxor   %ymm12,%ymm10,%ymm10
 5838 
 5839         vpslld  $30,%ymm2,%ymm6
 5840         vpor    %ymm8,%ymm7,%ymm7
 5841         vpaddd  %ymm5,%ymm0,%ymm0
 5842         vpsrld  $31,%ymm10,%ymm9
 5843         vpaddd  %ymm10,%ymm10,%ymm10
 5844 
 5845         vpsrld  $2,%ymm2,%ymm2
 5846         vpaddd  %ymm7,%ymm0,%ymm0
 5847         vpor    %ymm9,%ymm10,%ymm10
 5848         vpor    %ymm6,%ymm2,%ymm2
 5849         vpxor   %ymm13,%ymm11,%ymm11
 5850         vmovdqa 384-256-128(%rbx),%ymm13
 5851 
 5852         vpslld  $5,%ymm0,%ymm7
 5853         vpaddd  %ymm15,%ymm4,%ymm4
 5854         vpxor   %ymm1,%ymm3,%ymm5
 5855         vmovdqa %ymm10,288-256-128(%rbx)
 5856         vpaddd  %ymm10,%ymm4,%ymm4
 5857         vpxor   64-128(%rax),%ymm11,%ymm11
 5858         vpsrld  $27,%ymm0,%ymm8
 5859         vpxor   %ymm2,%ymm5,%ymm5
 5860         vpxor   %ymm13,%ymm11,%ymm11
 5861 
 5862         vpslld  $30,%ymm1,%ymm6
 5863         vpor    %ymm8,%ymm7,%ymm7
 5864         vpaddd  %ymm5,%ymm4,%ymm4
 5865         vpsrld  $31,%ymm11,%ymm9
 5866         vpaddd  %ymm11,%ymm11,%ymm11
 5867 
 5868         vpsrld  $2,%ymm1,%ymm1
 5869         vpaddd  %ymm7,%ymm4,%ymm4
 5870         vpor    %ymm9,%ymm11,%ymm11
 5871         vpor    %ymm6,%ymm1,%ymm1
 5872         vpxor   %ymm14,%ymm12,%ymm12
 5873         vmovdqa 416-256-128(%rbx),%ymm14
 5874 
 5875         vpslld  $5,%ymm4,%ymm7
 5876         vpaddd  %ymm15,%ymm3,%ymm3
 5877         vpxor   %ymm0,%ymm2,%ymm5
 5878         vmovdqa %ymm11,320-256-128(%rbx)
 5879         vpaddd  %ymm11,%ymm3,%ymm3
 5880         vpxor   96-128(%rax),%ymm12,%ymm12
 5881         vpsrld  $27,%ymm4,%ymm8
 5882         vpxor   %ymm1,%ymm5,%ymm5
 5883         vpxor   %ymm14,%ymm12,%ymm12
 5884 
 5885         vpslld  $30,%ymm0,%ymm6
 5886         vpor    %ymm8,%ymm7,%ymm7
 5887         vpaddd  %ymm5,%ymm3,%ymm3
 5888         vpsrld  $31,%ymm12,%ymm9
 5889         vpaddd  %ymm12,%ymm12,%ymm12
 5890 
 5891         vpsrld  $2,%ymm0,%ymm0
 5892         vpaddd  %ymm7,%ymm3,%ymm3
 5893         vpor    %ymm9,%ymm12,%ymm12
 5894         vpor    %ymm6,%ymm0,%ymm0
 5895         vpxor   %ymm10,%ymm13,%ymm13
 5896         vmovdqa 448-256-128(%rbx),%ymm10
 5897 
 5898         vpslld  $5,%ymm3,%ymm7
 5899         vpaddd  %ymm15,%ymm2,%ymm2
 5900         vpxor   %ymm4,%ymm1,%ymm5
 5901         vmovdqa %ymm12,352-256-128(%rbx)
 5902         vpaddd  %ymm12,%ymm2,%ymm2
 5903         vpxor   128-128(%rax),%ymm13,%ymm13
 5904         vpsrld  $27,%ymm3,%ymm8
 5905         vpxor   %ymm0,%ymm5,%ymm5
 5906         vpxor   %ymm10,%ymm13,%ymm13
 5907 
 5908         vpslld  $30,%ymm4,%ymm6
 5909         vpor    %ymm8,%ymm7,%ymm7
 5910         vpaddd  %ymm5,%ymm2,%ymm2
 5911         vpsrld  $31,%ymm13,%ymm9
 5912         vpaddd  %ymm13,%ymm13,%ymm13
 5913 
 5914         vpsrld  $2,%ymm4,%ymm4
 5915         vpaddd  %ymm7,%ymm2,%ymm2
 5916         vpor    %ymm9,%ymm13,%ymm13
 5917         vpor    %ymm6,%ymm4,%ymm4
 5918         vpxor   %ymm11,%ymm14,%ymm14
 5919         vmovdqa 480-256-128(%rbx),%ymm11
 5920 
 5921         vpslld  $5,%ymm2,%ymm7
 5922         vpaddd  %ymm15,%ymm1,%ymm1
 5923         vpxor   %ymm3,%ymm0,%ymm5
 5924         vmovdqa %ymm13,384-256-128(%rbx)
 5925         vpaddd  %ymm13,%ymm1,%ymm1
 5926         vpxor   160-128(%rax),%ymm14,%ymm14
 5927         vpsrld  $27,%ymm2,%ymm8
 5928         vpxor   %ymm4,%ymm5,%ymm5
 5929         vpxor   %ymm11,%ymm14,%ymm14
 5930 
 5931         vpslld  $30,%ymm3,%ymm6
 5932         vpor    %ymm8,%ymm7,%ymm7
 5933         vpaddd  %ymm5,%ymm1,%ymm1
 5934         vpsrld  $31,%ymm14,%ymm9
 5935         vpaddd  %ymm14,%ymm14,%ymm14
 5936 
 5937         vpsrld  $2,%ymm3,%ymm3
 5938         vpaddd  %ymm7,%ymm1,%ymm1
 5939         vpor    %ymm9,%ymm14,%ymm14
 5940         vpor    %ymm6,%ymm3,%ymm3
 5941         vpxor   %ymm12,%ymm10,%ymm10
 5942         vmovdqa 0-128(%rax),%ymm12
 5943 
 5944         vpslld  $5,%ymm1,%ymm7
 5945         vpaddd  %ymm15,%ymm0,%ymm0
 5946         vpxor   %ymm2,%ymm4,%ymm5
 5947         vmovdqa %ymm14,416-256-128(%rbx)
 5948         vpaddd  %ymm14,%ymm0,%ymm0
 5949         vpxor   192-128(%rax),%ymm10,%ymm10
 5950         vpsrld  $27,%ymm1,%ymm8
 5951         vpxor   %ymm3,%ymm5,%ymm5
 5952         vpxor   %ymm12,%ymm10,%ymm10
 5953 
 5954         vpslld  $30,%ymm2,%ymm6
 5955         vpor    %ymm8,%ymm7,%ymm7
 5956         vpaddd  %ymm5,%ymm0,%ymm0
 5957         vpsrld  $31,%ymm10,%ymm9
 5958         vpaddd  %ymm10,%ymm10,%ymm10
 5959 
 5960         vpsrld  $2,%ymm2,%ymm2
 5961         vpaddd  %ymm7,%ymm0,%ymm0
 5962         vpor    %ymm9,%ymm10,%ymm10
 5963         vpor    %ymm6,%ymm2,%ymm2
 5964         vpxor   %ymm13,%ymm11,%ymm11
 5965         vmovdqa 32-128(%rax),%ymm13
 5966 
 5967         vpslld  $5,%ymm0,%ymm7
 5968         vpaddd  %ymm15,%ymm4,%ymm4
 5969         vpxor   %ymm1,%ymm3,%ymm5
 5970         vmovdqa %ymm10,448-256-128(%rbx)
 5971         vpaddd  %ymm10,%ymm4,%ymm4
 5972         vpxor   224-128(%rax),%ymm11,%ymm11
 5973         vpsrld  $27,%ymm0,%ymm8
 5974         vpxor   %ymm2,%ymm5,%ymm5
 5975         vpxor   %ymm13,%ymm11,%ymm11
 5976 
 5977         vpslld  $30,%ymm1,%ymm6
 5978         vpor    %ymm8,%ymm7,%ymm7
 5979         vpaddd  %ymm5,%ymm4,%ymm4
 5980         vpsrld  $31,%ymm11,%ymm9
 5981         vpaddd  %ymm11,%ymm11,%ymm11
 5982 
 5983         vpsrld  $2,%ymm1,%ymm1
 5984         vpaddd  %ymm7,%ymm4,%ymm4
 5985         vpor    %ymm9,%ymm11,%ymm11
 5986         vpor    %ymm6,%ymm1,%ymm1
 5987         vpxor   %ymm14,%ymm12,%ymm12
 5988         vmovdqa 64-128(%rax),%ymm14
 5989 
 5990         vpslld  $5,%ymm4,%ymm7
 5991         vpaddd  %ymm15,%ymm3,%ymm3
 5992         vpxor   %ymm0,%ymm2,%ymm5
 5993         vmovdqa %ymm11,480-256-128(%rbx)
 5994         vpaddd  %ymm11,%ymm3,%ymm3
 5995         vpxor   256-256-128(%rbx),%ymm12,%ymm12
 5996         vpsrld  $27,%ymm4,%ymm8
 5997         vpxor   %ymm1,%ymm5,%ymm5
 5998         vpxor   %ymm14,%ymm12,%ymm12
 5999 
 6000         vpslld  $30,%ymm0,%ymm6
 6001         vpor    %ymm8,%ymm7,%ymm7
 6002         vpaddd  %ymm5,%ymm3,%ymm3
 6003         vpsrld  $31,%ymm12,%ymm9
 6004         vpaddd  %ymm12,%ymm12,%ymm12
 6005 
 6006         vpsrld  $2,%ymm0,%ymm0
 6007         vpaddd  %ymm7,%ymm3,%ymm3
 6008         vpor    %ymm9,%ymm12,%ymm12
 6009         vpor    %ymm6,%ymm0,%ymm0
 6010         vpxor   %ymm10,%ymm13,%ymm13
 6011         vmovdqa 96-128(%rax),%ymm10
 6012 
 6013         vpslld  $5,%ymm3,%ymm7
 6014         vpaddd  %ymm15,%ymm2,%ymm2
 6015         vpxor   %ymm4,%ymm1,%ymm5
 6016         vmovdqa %ymm12,0-128(%rax)
 6017         vpaddd  %ymm12,%ymm2,%ymm2
 6018         vpxor   288-256-128(%rbx),%ymm13,%ymm13
 6019         vpsrld  $27,%ymm3,%ymm8
 6020         vpxor   %ymm0,%ymm5,%ymm5
 6021         vpxor   %ymm10,%ymm13,%ymm13
 6022 
 6023         vpslld  $30,%ymm4,%ymm6
 6024         vpor    %ymm8,%ymm7,%ymm7
 6025         vpaddd  %ymm5,%ymm2,%ymm2
 6026         vpsrld  $31,%ymm13,%ymm9
 6027         vpaddd  %ymm13,%ymm13,%ymm13
 6028 
 6029         vpsrld  $2,%ymm4,%ymm4
 6030         vpaddd  %ymm7,%ymm2,%ymm2
 6031         vpor    %ymm9,%ymm13,%ymm13
 6032         vpor    %ymm6,%ymm4,%ymm4
 6033         vpxor   %ymm11,%ymm14,%ymm14
 6034         vmovdqa 128-128(%rax),%ymm11
 6035 
 6036         vpslld  $5,%ymm2,%ymm7
 6037         vpaddd  %ymm15,%ymm1,%ymm1
 6038         vpxor   %ymm3,%ymm0,%ymm5
 6039         vmovdqa %ymm13,32-128(%rax)
 6040         vpaddd  %ymm13,%ymm1,%ymm1
 6041         vpxor   320-256-128(%rbx),%ymm14,%ymm14
 6042         vpsrld  $27,%ymm2,%ymm8
 6043         vpxor   %ymm4,%ymm5,%ymm5
 6044         vpxor   %ymm11,%ymm14,%ymm14
 6045 
 6046         vpslld  $30,%ymm3,%ymm6
 6047         vpor    %ymm8,%ymm7,%ymm7
 6048         vpaddd  %ymm5,%ymm1,%ymm1
 6049         vpsrld  $31,%ymm14,%ymm9
 6050         vpaddd  %ymm14,%ymm14,%ymm14
 6051 
 6052         vpsrld  $2,%ymm3,%ymm3
 6053         vpaddd  %ymm7,%ymm1,%ymm1
 6054         vpor    %ymm9,%ymm14,%ymm14
 6055         vpor    %ymm6,%ymm3,%ymm3
 6056         vpxor   %ymm12,%ymm10,%ymm10
 6057         vmovdqa 160-128(%rax),%ymm12
 6058 
 6059         vpslld  $5,%ymm1,%ymm7
 6060         vpaddd  %ymm15,%ymm0,%ymm0
 6061         vpxor   %ymm2,%ymm4,%ymm5
 6062         vmovdqa %ymm14,64-128(%rax)
 6063         vpaddd  %ymm14,%ymm0,%ymm0
 6064         vpxor   352-256-128(%rbx),%ymm10,%ymm10
 6065         vpsrld  $27,%ymm1,%ymm8
 6066         vpxor   %ymm3,%ymm5,%ymm5
 6067         vpxor   %ymm12,%ymm10,%ymm10
 6068 
 6069         vpslld  $30,%ymm2,%ymm6
 6070         vpor    %ymm8,%ymm7,%ymm7
 6071         vpaddd  %ymm5,%ymm0,%ymm0
 6072         vpsrld  $31,%ymm10,%ymm9
 6073         vpaddd  %ymm10,%ymm10,%ymm10
 6074 
 6075         vpsrld  $2,%ymm2,%ymm2
 6076         vpaddd  %ymm7,%ymm0,%ymm0
 6077         vpor    %ymm9,%ymm10,%ymm10
 6078         vpor    %ymm6,%ymm2,%ymm2
 6079         vpxor   %ymm13,%ymm11,%ymm11
 6080         vmovdqa 192-128(%rax),%ymm13
 6081 
 6082         vpslld  $5,%ymm0,%ymm7
 6083         vpaddd  %ymm15,%ymm4,%ymm4
 6084         vpxor   %ymm1,%ymm3,%ymm5
 6085         vmovdqa %ymm10,96-128(%rax)
 6086         vpaddd  %ymm10,%ymm4,%ymm4
 6087         vpxor   384-256-128(%rbx),%ymm11,%ymm11
 6088         vpsrld  $27,%ymm0,%ymm8
 6089         vpxor   %ymm2,%ymm5,%ymm5
 6090         vpxor   %ymm13,%ymm11,%ymm11
 6091 
 6092         vpslld  $30,%ymm1,%ymm6
 6093         vpor    %ymm8,%ymm7,%ymm7
 6094         vpaddd  %ymm5,%ymm4,%ymm4
 6095         vpsrld  $31,%ymm11,%ymm9
 6096         vpaddd  %ymm11,%ymm11,%ymm11
 6097 
 6098         vpsrld  $2,%ymm1,%ymm1
 6099         vpaddd  %ymm7,%ymm4,%ymm4
 6100         vpor    %ymm9,%ymm11,%ymm11
 6101         vpor    %ymm6,%ymm1,%ymm1
 6102         vpxor   %ymm14,%ymm12,%ymm12
 6103         vmovdqa 224-128(%rax),%ymm14
 6104 
 6105         vpslld  $5,%ymm4,%ymm7
 6106         vpaddd  %ymm15,%ymm3,%ymm3
 6107         vpxor   %ymm0,%ymm2,%ymm5
 6108         vmovdqa %ymm11,128-128(%rax)
 6109         vpaddd  %ymm11,%ymm3,%ymm3
 6110         vpxor   416-256-128(%rbx),%ymm12,%ymm12
 6111         vpsrld  $27,%ymm4,%ymm8
 6112         vpxor   %ymm1,%ymm5,%ymm5
 6113         vpxor   %ymm14,%ymm12,%ymm12
 6114 
 6115         vpslld  $30,%ymm0,%ymm6
 6116         vpor    %ymm8,%ymm7,%ymm7
 6117         vpaddd  %ymm5,%ymm3,%ymm3
 6118         vpsrld  $31,%ymm12,%ymm9
 6119         vpaddd  %ymm12,%ymm12,%ymm12
 6120 
 6121         vpsrld  $2,%ymm0,%ymm0
 6122         vpaddd  %ymm7,%ymm3,%ymm3
 6123         vpor    %ymm9,%ymm12,%ymm12
 6124         vpor    %ymm6,%ymm0,%ymm0
 6125         vpxor   %ymm10,%ymm13,%ymm13
 6126         vmovdqa 256-256-128(%rbx),%ymm10
 6127 
 6128         vpslld  $5,%ymm3,%ymm7
 6129         vpaddd  %ymm15,%ymm2,%ymm2
 6130         vpxor   %ymm4,%ymm1,%ymm5
 6131         vmovdqa %ymm12,160-128(%rax)
 6132         vpaddd  %ymm12,%ymm2,%ymm2
 6133         vpxor   448-256-128(%rbx),%ymm13,%ymm13
 6134         vpsrld  $27,%ymm3,%ymm8
 6135         vpxor   %ymm0,%ymm5,%ymm5
 6136         vpxor   %ymm10,%ymm13,%ymm13
 6137 
 6138         vpslld  $30,%ymm4,%ymm6
 6139         vpor    %ymm8,%ymm7,%ymm7
 6140         vpaddd  %ymm5,%ymm2,%ymm2
 6141         vpsrld  $31,%ymm13,%ymm9
 6142         vpaddd  %ymm13,%ymm13,%ymm13
 6143 
 6144         vpsrld  $2,%ymm4,%ymm4
 6145         vpaddd  %ymm7,%ymm2,%ymm2
 6146         vpor    %ymm9,%ymm13,%ymm13
 6147         vpor    %ymm6,%ymm4,%ymm4
 6148         vpxor   %ymm11,%ymm14,%ymm14
 6149         vmovdqa 288-256-128(%rbx),%ymm11
 6150 
 6151         vpslld  $5,%ymm2,%ymm7
 6152         vpaddd  %ymm15,%ymm1,%ymm1
 6153         vpxor   %ymm3,%ymm0,%ymm5
 6154         vmovdqa %ymm13,192-128(%rax)
 6155         vpaddd  %ymm13,%ymm1,%ymm1
 6156         vpxor   480-256-128(%rbx),%ymm14,%ymm14
 6157         vpsrld  $27,%ymm2,%ymm8
 6158         vpxor   %ymm4,%ymm5,%ymm5
 6159         vpxor   %ymm11,%ymm14,%ymm14
 6160 
 6161         vpslld  $30,%ymm3,%ymm6
 6162         vpor    %ymm8,%ymm7,%ymm7
 6163         vpaddd  %ymm5,%ymm1,%ymm1
 6164         vpsrld  $31,%ymm14,%ymm9
 6165         vpaddd  %ymm14,%ymm14,%ymm14
 6166 
 6167         vpsrld  $2,%ymm3,%ymm3
 6168         vpaddd  %ymm7,%ymm1,%ymm1
 6169         vpor    %ymm9,%ymm14,%ymm14
 6170         vpor    %ymm6,%ymm3,%ymm3
 6171         vpxor   %ymm12,%ymm10,%ymm10
 6172         vmovdqa 320-256-128(%rbx),%ymm12
 6173 
 6174         vpslld  $5,%ymm1,%ymm7
 6175         vpaddd  %ymm15,%ymm0,%ymm0
 6176         vpxor   %ymm2,%ymm4,%ymm5
 6177         vmovdqa %ymm14,224-128(%rax)
 6178         vpaddd  %ymm14,%ymm0,%ymm0
 6179         vpxor   0-128(%rax),%ymm10,%ymm10
 6180         vpsrld  $27,%ymm1,%ymm8
 6181         vpxor   %ymm3,%ymm5,%ymm5
 6182         vpxor   %ymm12,%ymm10,%ymm10
 6183 
 6184         vpslld  $30,%ymm2,%ymm6
 6185         vpor    %ymm8,%ymm7,%ymm7
 6186         vpaddd  %ymm5,%ymm0,%ymm0
 6187         vpsrld  $31,%ymm10,%ymm9
 6188         vpaddd  %ymm10,%ymm10,%ymm10
 6189 
 6190         vpsrld  $2,%ymm2,%ymm2
 6191         vpaddd  %ymm7,%ymm0,%ymm0
 6192         vpor    %ymm9,%ymm10,%ymm10
 6193         vpor    %ymm6,%ymm2,%ymm2
 6194         vmovdqa 32(%rbp),%ymm15
 6195         vpxor   %ymm13,%ymm11,%ymm11
 6196         vmovdqa 352-256-128(%rbx),%ymm13
 6197 
 6198         vpaddd  %ymm15,%ymm4,%ymm4
 6199         vpslld  $5,%ymm0,%ymm7
 6200         vpand   %ymm2,%ymm3,%ymm6
 6201         vpxor   32-128(%rax),%ymm11,%ymm11
 6202 
 6203         vpaddd  %ymm6,%ymm4,%ymm4
 6204         vpsrld  $27,%ymm0,%ymm8
 6205         vpxor   %ymm2,%ymm3,%ymm5
 6206         vpxor   %ymm13,%ymm11,%ymm11
 6207 
 6208         vmovdqu %ymm10,256-256-128(%rbx)
 6209         vpaddd  %ymm10,%ymm4,%ymm4
 6210         vpor    %ymm8,%ymm7,%ymm7
 6211         vpsrld  $31,%ymm11,%ymm9
 6212         vpand   %ymm1,%ymm5,%ymm5
 6213         vpaddd  %ymm11,%ymm11,%ymm11
 6214 
 6215         vpslld  $30,%ymm1,%ymm6
 6216         vpaddd  %ymm5,%ymm4,%ymm4
 6217 
 6218         vpsrld  $2,%ymm1,%ymm1
 6219         vpaddd  %ymm7,%ymm4,%ymm4
 6220         vpor    %ymm9,%ymm11,%ymm11
 6221         vpor    %ymm6,%ymm1,%ymm1
 6222         vpxor   %ymm14,%ymm12,%ymm12
 6223         vmovdqa 384-256-128(%rbx),%ymm14
 6224 
 6225         vpaddd  %ymm15,%ymm3,%ymm3
 6226         vpslld  $5,%ymm4,%ymm7
 6227         vpand   %ymm1,%ymm2,%ymm6
 6228         vpxor   64-128(%rax),%ymm12,%ymm12
 6229 
 6230         vpaddd  %ymm6,%ymm3,%ymm3
 6231         vpsrld  $27,%ymm4,%ymm8
 6232         vpxor   %ymm1,%ymm2,%ymm5
 6233         vpxor   %ymm14,%ymm12,%ymm12
 6234 
 6235         vmovdqu %ymm11,288-256-128(%rbx)
 6236         vpaddd  %ymm11,%ymm3,%ymm3
 6237         vpor    %ymm8,%ymm7,%ymm7
 6238         vpsrld  $31,%ymm12,%ymm9
 6239         vpand   %ymm0,%ymm5,%ymm5
 6240         vpaddd  %ymm12,%ymm12,%ymm12
 6241 
 6242         vpslld  $30,%ymm0,%ymm6
 6243         vpaddd  %ymm5,%ymm3,%ymm3
 6244 
 6245         vpsrld  $2,%ymm0,%ymm0
 6246         vpaddd  %ymm7,%ymm3,%ymm3
 6247         vpor    %ymm9,%ymm12,%ymm12
 6248         vpor    %ymm6,%ymm0,%ymm0
 6249         vpxor   %ymm10,%ymm13,%ymm13
 6250         vmovdqa 416-256-128(%rbx),%ymm10
 6251 
 6252         vpaddd  %ymm15,%ymm2,%ymm2
 6253         vpslld  $5,%ymm3,%ymm7
 6254         vpand   %ymm0,%ymm1,%ymm6
 6255         vpxor   96-128(%rax),%ymm13,%ymm13
 6256 
 6257         vpaddd  %ymm6,%ymm2,%ymm2
 6258         vpsrld  $27,%ymm3,%ymm8
 6259         vpxor   %ymm0,%ymm1,%ymm5
 6260         vpxor   %ymm10,%ymm13,%ymm13
 6261 
 6262         vmovdqu %ymm12,320-256-128(%rbx)
 6263         vpaddd  %ymm12,%ymm2,%ymm2
 6264         vpor    %ymm8,%ymm7,%ymm7
 6265         vpsrld  $31,%ymm13,%ymm9
 6266         vpand   %ymm4,%ymm5,%ymm5
 6267         vpaddd  %ymm13,%ymm13,%ymm13
 6268 
 6269         vpslld  $30,%ymm4,%ymm6
 6270         vpaddd  %ymm5,%ymm2,%ymm2
 6271 
 6272         vpsrld  $2,%ymm4,%ymm4
 6273         vpaddd  %ymm7,%ymm2,%ymm2
 6274         vpor    %ymm9,%ymm13,%ymm13
 6275         vpor    %ymm6,%ymm4,%ymm4
 6276         vpxor   %ymm11,%ymm14,%ymm14
 6277         vmovdqa 448-256-128(%rbx),%ymm11
 6278 
 6279         vpaddd  %ymm15,%ymm1,%ymm1
 6280         vpslld  $5,%ymm2,%ymm7
 6281         vpand   %ymm4,%ymm0,%ymm6
 6282         vpxor   128-128(%rax),%ymm14,%ymm14
 6283 
 6284         vpaddd  %ymm6,%ymm1,%ymm1
 6285         vpsrld  $27,%ymm2,%ymm8
 6286         vpxor   %ymm4,%ymm0,%ymm5
 6287         vpxor   %ymm11,%ymm14,%ymm14
 6288 
 6289         vmovdqu %ymm13,352-256-128(%rbx)
 6290         vpaddd  %ymm13,%ymm1,%ymm1
 6291         vpor    %ymm8,%ymm7,%ymm7
 6292         vpsrld  $31,%ymm14,%ymm9
 6293         vpand   %ymm3,%ymm5,%ymm5
 6294         vpaddd  %ymm14,%ymm14,%ymm14
 6295 
 6296         vpslld  $30,%ymm3,%ymm6
 6297         vpaddd  %ymm5,%ymm1,%ymm1
 6298 
 6299         vpsrld  $2,%ymm3,%ymm3
 6300         vpaddd  %ymm7,%ymm1,%ymm1
 6301         vpor    %ymm9,%ymm14,%ymm14
 6302         vpor    %ymm6,%ymm3,%ymm3
 6303         vpxor   %ymm12,%ymm10,%ymm10
 6304         vmovdqa 480-256-128(%rbx),%ymm12
 6305 
 6306         vpaddd  %ymm15,%ymm0,%ymm0
 6307         vpslld  $5,%ymm1,%ymm7
 6308         vpand   %ymm3,%ymm4,%ymm6
 6309         vpxor   160-128(%rax),%ymm10,%ymm10
 6310 
 6311         vpaddd  %ymm6,%ymm0,%ymm0
 6312         vpsrld  $27,%ymm1,%ymm8
 6313         vpxor   %ymm3,%ymm4,%ymm5
 6314         vpxor   %ymm12,%ymm10,%ymm10
 6315 
 6316         vmovdqu %ymm14,384-256-128(%rbx)
 6317         vpaddd  %ymm14,%ymm0,%ymm0
 6318         vpor    %ymm8,%ymm7,%ymm7
 6319         vpsrld  $31,%ymm10,%ymm9
 6320         vpand   %ymm2,%ymm5,%ymm5
 6321         vpaddd  %ymm10,%ymm10,%ymm10
 6322 
 6323         vpslld  $30,%ymm2,%ymm6
 6324         vpaddd  %ymm5,%ymm0,%ymm0
 6325 
 6326         vpsrld  $2,%ymm2,%ymm2
 6327         vpaddd  %ymm7,%ymm0,%ymm0
 6328         vpor    %ymm9,%ymm10,%ymm10
 6329         vpor    %ymm6,%ymm2,%ymm2
 6330         vpxor   %ymm13,%ymm11,%ymm11
 6331         vmovdqa 0-128(%rax),%ymm13
 6332 
 6333         vpaddd  %ymm15,%ymm4,%ymm4
 6334         vpslld  $5,%ymm0,%ymm7
 6335         vpand   %ymm2,%ymm3,%ymm6
 6336         vpxor   192-128(%rax),%ymm11,%ymm11
 6337 
 6338         vpaddd  %ymm6,%ymm4,%ymm4
 6339         vpsrld  $27,%ymm0,%ymm8
 6340         vpxor   %ymm2,%ymm3,%ymm5
 6341         vpxor   %ymm13,%ymm11,%ymm11
 6342 
 6343         vmovdqu %ymm10,416-256-128(%rbx)
 6344         vpaddd  %ymm10,%ymm4,%ymm4
 6345         vpor    %ymm8,%ymm7,%ymm7
 6346         vpsrld  $31,%ymm11,%ymm9
 6347         vpand   %ymm1,%ymm5,%ymm5
 6348         vpaddd  %ymm11,%ymm11,%ymm11
 6349 
 6350         vpslld  $30,%ymm1,%ymm6
 6351         vpaddd  %ymm5,%ymm4,%ymm4
 6352 
 6353         vpsrld  $2,%ymm1,%ymm1
 6354         vpaddd  %ymm7,%ymm4,%ymm4
 6355         vpor    %ymm9,%ymm11,%ymm11
 6356         vpor    %ymm6,%ymm1,%ymm1
 6357         vpxor   %ymm14,%ymm12,%ymm12
 6358         vmovdqa 32-128(%rax),%ymm14
 6359 
 6360         vpaddd  %ymm15,%ymm3,%ymm3
 6361         vpslld  $5,%ymm4,%ymm7
 6362         vpand   %ymm1,%ymm2,%ymm6
 6363         vpxor   224-128(%rax),%ymm12,%ymm12
 6364 
 6365         vpaddd  %ymm6,%ymm3,%ymm3
 6366         vpsrld  $27,%ymm4,%ymm8
 6367         vpxor   %ymm1,%ymm2,%ymm5
 6368         vpxor   %ymm14,%ymm12,%ymm12
 6369 
 6370         vmovdqu %ymm11,448-256-128(%rbx)
 6371         vpaddd  %ymm11,%ymm3,%ymm3
 6372         vpor    %ymm8,%ymm7,%ymm7
 6373         vpsrld  $31,%ymm12,%ymm9
 6374         vpand   %ymm0,%ymm5,%ymm5
 6375         vpaddd  %ymm12,%ymm12,%ymm12
 6376 
 6377         vpslld  $30,%ymm0,%ymm6
 6378         vpaddd  %ymm5,%ymm3,%ymm3
 6379 
 6380         vpsrld  $2,%ymm0,%ymm0
 6381         vpaddd  %ymm7,%ymm3,%ymm3
 6382         vpor    %ymm9,%ymm12,%ymm12
 6383         vpor    %ymm6,%ymm0,%ymm0
 6384         vpxor   %ymm10,%ymm13,%ymm13
 6385         vmovdqa 64-128(%rax),%ymm10
 6386 
 6387         vpaddd  %ymm15,%ymm2,%ymm2
 6388         vpslld  $5,%ymm3,%ymm7
 6389         vpand   %ymm0,%ymm1,%ymm6
 6390         vpxor   256-256-128(%rbx),%ymm13,%ymm13
 6391 
 6392         vpaddd  %ymm6,%ymm2,%ymm2
 6393         vpsrld  $27,%ymm3,%ymm8
 6394         vpxor   %ymm0,%ymm1,%ymm5
 6395         vpxor   %ymm10,%ymm13,%ymm13
 6396 
 6397         vmovdqu %ymm12,480-256-128(%rbx)
 6398         vpaddd  %ymm12,%ymm2,%ymm2
 6399         vpor    %ymm8,%ymm7,%ymm7
 6400         vpsrld  $31,%ymm13,%ymm9
 6401         vpand   %ymm4,%ymm5,%ymm5
 6402         vpaddd  %ymm13,%ymm13,%ymm13
 6403 
 6404         vpslld  $30,%ymm4,%ymm6
 6405         vpaddd  %ymm5,%ymm2,%ymm2
 6406 
 6407         vpsrld  $2,%ymm4,%ymm4
 6408         vpaddd  %ymm7,%ymm2,%ymm2
 6409         vpor    %ymm9,%ymm13,%ymm13
 6410         vpor    %ymm6,%ymm4,%ymm4
 6411         vpxor   %ymm11,%ymm14,%ymm14
 6412         vmovdqa 96-128(%rax),%ymm11
 6413 
 6414         vpaddd  %ymm15,%ymm1,%ymm1
 6415         vpslld  $5,%ymm2,%ymm7
 6416         vpand   %ymm4,%ymm0,%ymm6
 6417         vpxor   288-256-128(%rbx),%ymm14,%ymm14
 6418 
 6419         vpaddd  %ymm6,%ymm1,%ymm1
 6420         vpsrld  $27,%ymm2,%ymm8
 6421         vpxor   %ymm4,%ymm0,%ymm5
 6422         vpxor   %ymm11,%ymm14,%ymm14
 6423 
 6424         vmovdqu %ymm13,0-128(%rax)
 6425         vpaddd  %ymm13,%ymm1,%ymm1
 6426         vpor    %ymm8,%ymm7,%ymm7
 6427         vpsrld  $31,%ymm14,%ymm9
 6428         vpand   %ymm3,%ymm5,%ymm5
 6429         vpaddd  %ymm14,%ymm14,%ymm14
 6430 
 6431         vpslld  $30,%ymm3,%ymm6
 6432         vpaddd  %ymm5,%ymm1,%ymm1
 6433 
 6434         vpsrld  $2,%ymm3,%ymm3
 6435         vpaddd  %ymm7,%ymm1,%ymm1
 6436         vpor    %ymm9,%ymm14,%ymm14
 6437         vpor    %ymm6,%ymm3,%ymm3
 6438         vpxor   %ymm12,%ymm10,%ymm10
 6439         vmovdqa 128-128(%rax),%ymm12
 6440 
 6441         vpaddd  %ymm15,%ymm0,%ymm0
 6442         vpslld  $5,%ymm1,%ymm7
 6443         vpand   %ymm3,%ymm4,%ymm6
 6444         vpxor   320-256-128(%rbx),%ymm10,%ymm10
 6445 
 6446         vpaddd  %ymm6,%ymm0,%ymm0
 6447         vpsrld  $27,%ymm1,%ymm8
 6448         vpxor   %ymm3,%ymm4,%ymm5
 6449         vpxor   %ymm12,%ymm10,%ymm10
 6450 
 6451         vmovdqu %ymm14,32-128(%rax)
 6452         vpaddd  %ymm14,%ymm0,%ymm0
 6453         vpor    %ymm8,%ymm7,%ymm7
 6454         vpsrld  $31,%ymm10,%ymm9
 6455         vpand   %ymm2,%ymm5,%ymm5
 6456         vpaddd  %ymm10,%ymm10,%ymm10
 6457 
 6458         vpslld  $30,%ymm2,%ymm6
 6459         vpaddd  %ymm5,%ymm0,%ymm0
 6460 
 6461         vpsrld  $2,%ymm2,%ymm2
 6462         vpaddd  %ymm7,%ymm0,%ymm0
 6463         vpor    %ymm9,%ymm10,%ymm10
 6464         vpor    %ymm6,%ymm2,%ymm2
 6465         vpxor   %ymm13,%ymm11,%ymm11
 6466         vmovdqa 160-128(%rax),%ymm13
 6467 
 6468         vpaddd  %ymm15,%ymm4,%ymm4
 6469         vpslld  $5,%ymm0,%ymm7
 6470         vpand   %ymm2,%ymm3,%ymm6
 6471         vpxor   352-256-128(%rbx),%ymm11,%ymm11
 6472 
 6473         vpaddd  %ymm6,%ymm4,%ymm4
 6474         vpsrld  $27,%ymm0,%ymm8
 6475         vpxor   %ymm2,%ymm3,%ymm5
 6476         vpxor   %ymm13,%ymm11,%ymm11
 6477 
 6478         vmovdqu %ymm10,64-128(%rax)
 6479         vpaddd  %ymm10,%ymm4,%ymm4
 6480         vpor    %ymm8,%ymm7,%ymm7
 6481         vpsrld  $31,%ymm11,%ymm9
 6482         vpand   %ymm1,%ymm5,%ymm5
 6483         vpaddd  %ymm11,%ymm11,%ymm11
 6484 
 6485         vpslld  $30,%ymm1,%ymm6
 6486         vpaddd  %ymm5,%ymm4,%ymm4
 6487 
 6488         vpsrld  $2,%ymm1,%ymm1
 6489         vpaddd  %ymm7,%ymm4,%ymm4
 6490         vpor    %ymm9,%ymm11,%ymm11
 6491         vpor    %ymm6,%ymm1,%ymm1
 6492         vpxor   %ymm14,%ymm12,%ymm12
 6493         vmovdqa 192-128(%rax),%ymm14
 6494 
 6495         vpaddd  %ymm15,%ymm3,%ymm3
 6496         vpslld  $5,%ymm4,%ymm7
 6497         vpand   %ymm1,%ymm2,%ymm6
 6498         vpxor   384-256-128(%rbx),%ymm12,%ymm12
 6499 
 6500         vpaddd  %ymm6,%ymm3,%ymm3
 6501         vpsrld  $27,%ymm4,%ymm8
 6502         vpxor   %ymm1,%ymm2,%ymm5
 6503         vpxor   %ymm14,%ymm12,%ymm12
 6504 
 6505         vmovdqu %ymm11,96-128(%rax)
 6506         vpaddd  %ymm11,%ymm3,%ymm3
 6507         vpor    %ymm8,%ymm7,%ymm7
 6508         vpsrld  $31,%ymm12,%ymm9
 6509         vpand   %ymm0,%ymm5,%ymm5
 6510         vpaddd  %ymm12,%ymm12,%ymm12
 6511 
 6512         vpslld  $30,%ymm0,%ymm6
 6513         vpaddd  %ymm5,%ymm3,%ymm3
 6514 
 6515         vpsrld  $2,%ymm0,%ymm0
 6516         vpaddd  %ymm7,%ymm3,%ymm3
 6517         vpor    %ymm9,%ymm12,%ymm12
 6518         vpor    %ymm6,%ymm0,%ymm0
 6519         vpxor   %ymm10,%ymm13,%ymm13
 6520         vmovdqa 224-128(%rax),%ymm10
 6521 
 6522         vpaddd  %ymm15,%ymm2,%ymm2
 6523         vpslld  $5,%ymm3,%ymm7
 6524         vpand   %ymm0,%ymm1,%ymm6
 6525         vpxor   416-256-128(%rbx),%ymm13,%ymm13
 6526 
 6527         vpaddd  %ymm6,%ymm2,%ymm2
 6528         vpsrld  $27,%ymm3,%ymm8
 6529         vpxor   %ymm0,%ymm1,%ymm5
 6530         vpxor   %ymm10,%ymm13,%ymm13
 6531 
 6532         vmovdqu %ymm12,128-128(%rax)
 6533         vpaddd  %ymm12,%ymm2,%ymm2
 6534         vpor    %ymm8,%ymm7,%ymm7
 6535         vpsrld  $31,%ymm13,%ymm9
 6536         vpand   %ymm4,%ymm5,%ymm5
 6537         vpaddd  %ymm13,%ymm13,%ymm13
 6538 
 6539         vpslld  $30,%ymm4,%ymm6
 6540         vpaddd  %ymm5,%ymm2,%ymm2
 6541 
 6542         vpsrld  $2,%ymm4,%ymm4
 6543         vpaddd  %ymm7,%ymm2,%ymm2
 6544         vpor    %ymm9,%ymm13,%ymm13
 6545         vpor    %ymm6,%ymm4,%ymm4
 6546         vpxor   %ymm11,%ymm14,%ymm14
 6547         vmovdqa 256-256-128(%rbx),%ymm11
 6548 
 6549         vpaddd  %ymm15,%ymm1,%ymm1
 6550         vpslld  $5,%ymm2,%ymm7
 6551         vpand   %ymm4,%ymm0,%ymm6
 6552         vpxor   448-256-128(%rbx),%ymm14,%ymm14
 6553 
 6554         vpaddd  %ymm6,%ymm1,%ymm1
 6555         vpsrld  $27,%ymm2,%ymm8
 6556         vpxor   %ymm4,%ymm0,%ymm5
 6557         vpxor   %ymm11,%ymm14,%ymm14
 6558 
 6559         vmovdqu %ymm13,160-128(%rax)
 6560         vpaddd  %ymm13,%ymm1,%ymm1
 6561         vpor    %ymm8,%ymm7,%ymm7
 6562         vpsrld  $31,%ymm14,%ymm9
 6563         vpand   %ymm3,%ymm5,%ymm5
 6564         vpaddd  %ymm14,%ymm14,%ymm14
 6565 
 6566         vpslld  $30,%ymm3,%ymm6
 6567         vpaddd  %ymm5,%ymm1,%ymm1
 6568 
 6569         vpsrld  $2,%ymm3,%ymm3
 6570         vpaddd  %ymm7,%ymm1,%ymm1
 6571         vpor    %ymm9,%ymm14,%ymm14
 6572         vpor    %ymm6,%ymm3,%ymm3
 6573         vpxor   %ymm12,%ymm10,%ymm10
 6574         vmovdqa 288-256-128(%rbx),%ymm12
 6575 
 6576         vpaddd  %ymm15,%ymm0,%ymm0
 6577         vpslld  $5,%ymm1,%ymm7
 6578         vpand   %ymm3,%ymm4,%ymm6
 6579         vpxor   480-256-128(%rbx),%ymm10,%ymm10
 6580 
 6581         vpaddd  %ymm6,%ymm0,%ymm0
 6582         vpsrld  $27,%ymm1,%ymm8
 6583         vpxor   %ymm3,%ymm4,%ymm5
 6584         vpxor   %ymm12,%ymm10,%ymm10
 6585 
 6586         vmovdqu %ymm14,192-128(%rax)
 6587         vpaddd  %ymm14,%ymm0,%ymm0
 6588         vpor    %ymm8,%ymm7,%ymm7
 6589         vpsrld  $31,%ymm10,%ymm9
 6590         vpand   %ymm2,%ymm5,%ymm5
 6591         vpaddd  %ymm10,%ymm10,%ymm10
 6592 
 6593         vpslld  $30,%ymm2,%ymm6
 6594         vpaddd  %ymm5,%ymm0,%ymm0
 6595 
 6596         vpsrld  $2,%ymm2,%ymm2
 6597         vpaddd  %ymm7,%ymm0,%ymm0
 6598         vpor    %ymm9,%ymm10,%ymm10
 6599         vpor    %ymm6,%ymm2,%ymm2
 6600         vpxor   %ymm13,%ymm11,%ymm11
 6601         vmovdqa 320-256-128(%rbx),%ymm13
 6602 
 6603         vpaddd  %ymm15,%ymm4,%ymm4
 6604         vpslld  $5,%ymm0,%ymm7
 6605         vpand   %ymm2,%ymm3,%ymm6
 6606         vpxor   0-128(%rax),%ymm11,%ymm11
 6607 
 6608         vpaddd  %ymm6,%ymm4,%ymm4
 6609         vpsrld  $27,%ymm0,%ymm8
 6610         vpxor   %ymm2,%ymm3,%ymm5
 6611         vpxor   %ymm13,%ymm11,%ymm11
 6612 
 6613         vmovdqu %ymm10,224-128(%rax)
 6614         vpaddd  %ymm10,%ymm4,%ymm4
 6615         vpor    %ymm8,%ymm7,%ymm7
 6616         vpsrld  $31,%ymm11,%ymm9
 6617         vpand   %ymm1,%ymm5,%ymm5
 6618         vpaddd  %ymm11,%ymm11,%ymm11
 6619 
 6620         vpslld  $30,%ymm1,%ymm6
 6621         vpaddd  %ymm5,%ymm4,%ymm4
 6622 
 6623         vpsrld  $2,%ymm1,%ymm1
 6624         vpaddd  %ymm7,%ymm4,%ymm4
 6625         vpor    %ymm9,%ymm11,%ymm11
 6626         vpor    %ymm6,%ymm1,%ymm1
 6627         vpxor   %ymm14,%ymm12,%ymm12
 6628         vmovdqa 352-256-128(%rbx),%ymm14
 6629 
 6630         vpaddd  %ymm15,%ymm3,%ymm3
 6631         vpslld  $5,%ymm4,%ymm7
 6632         vpand   %ymm1,%ymm2,%ymm6
 6633         vpxor   32-128(%rax),%ymm12,%ymm12
 6634 
 6635         vpaddd  %ymm6,%ymm3,%ymm3
 6636         vpsrld  $27,%ymm4,%ymm8
 6637         vpxor   %ymm1,%ymm2,%ymm5
 6638         vpxor   %ymm14,%ymm12,%ymm12
 6639 
 6640         vmovdqu %ymm11,256-256-128(%rbx)
 6641         vpaddd  %ymm11,%ymm3,%ymm3
 6642         vpor    %ymm8,%ymm7,%ymm7
 6643         vpsrld  $31,%ymm12,%ymm9
 6644         vpand   %ymm0,%ymm5,%ymm5
 6645         vpaddd  %ymm12,%ymm12,%ymm12
 6646 
 6647         vpslld  $30,%ymm0,%ymm6
 6648         vpaddd  %ymm5,%ymm3,%ymm3
 6649 
 6650         vpsrld  $2,%ymm0,%ymm0
 6651         vpaddd  %ymm7,%ymm3,%ymm3
 6652         vpor    %ymm9,%ymm12,%ymm12
 6653         vpor    %ymm6,%ymm0,%ymm0
 6654         vpxor   %ymm10,%ymm13,%ymm13
 6655         vmovdqa 384-256-128(%rbx),%ymm10
 6656 
 6657         vpaddd  %ymm15,%ymm2,%ymm2
 6658         vpslld  $5,%ymm3,%ymm7
 6659         vpand   %ymm0,%ymm1,%ymm6
 6660         vpxor   64-128(%rax),%ymm13,%ymm13
 6661 
 6662         vpaddd  %ymm6,%ymm2,%ymm2
 6663         vpsrld  $27,%ymm3,%ymm8
 6664         vpxor   %ymm0,%ymm1,%ymm5
 6665         vpxor   %ymm10,%ymm13,%ymm13
 6666 
 6667         vmovdqu %ymm12,288-256-128(%rbx)
 6668         vpaddd  %ymm12,%ymm2,%ymm2
 6669         vpor    %ymm8,%ymm7,%ymm7
 6670         vpsrld  $31,%ymm13,%ymm9
 6671         vpand   %ymm4,%ymm5,%ymm5
 6672         vpaddd  %ymm13,%ymm13,%ymm13
 6673 
 6674         vpslld  $30,%ymm4,%ymm6
 6675         vpaddd  %ymm5,%ymm2,%ymm2
 6676 
 6677         vpsrld  $2,%ymm4,%ymm4
 6678         vpaddd  %ymm7,%ymm2,%ymm2
 6679         vpor    %ymm9,%ymm13,%ymm13
 6680         vpor    %ymm6,%ymm4,%ymm4
 6681         vpxor   %ymm11,%ymm14,%ymm14
 6682         vmovdqa 416-256-128(%rbx),%ymm11
 6683 
 6684         vpaddd  %ymm15,%ymm1,%ymm1
 6685         vpslld  $5,%ymm2,%ymm7
 6686         vpand   %ymm4,%ymm0,%ymm6
 6687         vpxor   96-128(%rax),%ymm14,%ymm14
 6688 
 6689         vpaddd  %ymm6,%ymm1,%ymm1
 6690         vpsrld  $27,%ymm2,%ymm8
 6691         vpxor   %ymm4,%ymm0,%ymm5
 6692         vpxor   %ymm11,%ymm14,%ymm14
 6693 
 6694         vmovdqu %ymm13,320-256-128(%rbx)
 6695         vpaddd  %ymm13,%ymm1,%ymm1
 6696         vpor    %ymm8,%ymm7,%ymm7
 6697         vpsrld  $31,%ymm14,%ymm9
 6698         vpand   %ymm3,%ymm5,%ymm5
 6699         vpaddd  %ymm14,%ymm14,%ymm14
 6700 
 6701         vpslld  $30,%ymm3,%ymm6
 6702         vpaddd  %ymm5,%ymm1,%ymm1
 6703 
 6704         vpsrld  $2,%ymm3,%ymm3
 6705         vpaddd  %ymm7,%ymm1,%ymm1
 6706         vpor    %ymm9,%ymm14,%ymm14
 6707         vpor    %ymm6,%ymm3,%ymm3
 6708         vpxor   %ymm12,%ymm10,%ymm10
 6709         vmovdqa 448-256-128(%rbx),%ymm12
 6710 
 6711         vpaddd  %ymm15,%ymm0,%ymm0
 6712         vpslld  $5,%ymm1,%ymm7
 6713         vpand   %ymm3,%ymm4,%ymm6
 6714         vpxor   128-128(%rax),%ymm10,%ymm10
 6715 
 6716         vpaddd  %ymm6,%ymm0,%ymm0
 6717         vpsrld  $27,%ymm1,%ymm8
 6718         vpxor   %ymm3,%ymm4,%ymm5
 6719         vpxor   %ymm12,%ymm10,%ymm10
 6720 
 6721         vmovdqu %ymm14,352-256-128(%rbx)
 6722         vpaddd  %ymm14,%ymm0,%ymm0
 6723         vpor    %ymm8,%ymm7,%ymm7
 6724         vpsrld  $31,%ymm10,%ymm9
 6725         vpand   %ymm2,%ymm5,%ymm5
 6726         vpaddd  %ymm10,%ymm10,%ymm10
 6727 
 6728         vpslld  $30,%ymm2,%ymm6
 6729         vpaddd  %ymm5,%ymm0,%ymm0
 6730 
 6731         vpsrld  $2,%ymm2,%ymm2
 6732         vpaddd  %ymm7,%ymm0,%ymm0
 6733         vpor    %ymm9,%ymm10,%ymm10
 6734         vpor    %ymm6,%ymm2,%ymm2
 6735         vmovdqa 64(%rbp),%ymm15
 6736         vpxor   %ymm13,%ymm11,%ymm11
 6737         vmovdqa 480-256-128(%rbx),%ymm13
 6738 
 6739         vpslld  $5,%ymm0,%ymm7
 6740         vpaddd  %ymm15,%ymm4,%ymm4
 6741         vpxor   %ymm1,%ymm3,%ymm5
 6742         vmovdqa %ymm10,384-256-128(%rbx)
 6743         vpaddd  %ymm10,%ymm4,%ymm4
 6744         vpxor   160-128(%rax),%ymm11,%ymm11
 6745         vpsrld  $27,%ymm0,%ymm8
 6746         vpxor   %ymm2,%ymm5,%ymm5
 6747         vpxor   %ymm13,%ymm11,%ymm11
 6748 
 6749         vpslld  $30,%ymm1,%ymm6
 6750         vpor    %ymm8,%ymm7,%ymm7
 6751         vpaddd  %ymm5,%ymm4,%ymm4
 6752         vpsrld  $31,%ymm11,%ymm9
 6753         vpaddd  %ymm11,%ymm11,%ymm11
 6754 
 6755         vpsrld  $2,%ymm1,%ymm1
 6756         vpaddd  %ymm7,%ymm4,%ymm4
 6757         vpor    %ymm9,%ymm11,%ymm11
 6758         vpor    %ymm6,%ymm1,%ymm1
 6759         vpxor   %ymm14,%ymm12,%ymm12
 6760         vmovdqa 0-128(%rax),%ymm14
 6761 
 6762         vpslld  $5,%ymm4,%ymm7
 6763         vpaddd  %ymm15,%ymm3,%ymm3
 6764         vpxor   %ymm0,%ymm2,%ymm5
 6765         vmovdqa %ymm11,416-256-128(%rbx)
 6766         vpaddd  %ymm11,%ymm3,%ymm3
 6767         vpxor   192-128(%rax),%ymm12,%ymm12
 6768         vpsrld  $27,%ymm4,%ymm8
 6769         vpxor   %ymm1,%ymm5,%ymm5
 6770         vpxor   %ymm14,%ymm12,%ymm12
 6771 
 6772         vpslld  $30,%ymm0,%ymm6
 6773         vpor    %ymm8,%ymm7,%ymm7
 6774         vpaddd  %ymm5,%ymm3,%ymm3
 6775         vpsrld  $31,%ymm12,%ymm9
 6776         vpaddd  %ymm12,%ymm12,%ymm12
 6777 
 6778         vpsrld  $2,%ymm0,%ymm0
 6779         vpaddd  %ymm7,%ymm3,%ymm3
 6780         vpor    %ymm9,%ymm12,%ymm12
 6781         vpor    %ymm6,%ymm0,%ymm0
 6782         vpxor   %ymm10,%ymm13,%ymm13
 6783         vmovdqa 32-128(%rax),%ymm10
 6784 
 6785         vpslld  $5,%ymm3,%ymm7
 6786         vpaddd  %ymm15,%ymm2,%ymm2
 6787         vpxor   %ymm4,%ymm1,%ymm5
 6788         vmovdqa %ymm12,448-256-128(%rbx)
 6789         vpaddd  %ymm12,%ymm2,%ymm2
 6790         vpxor   224-128(%rax),%ymm13,%ymm13
 6791         vpsrld  $27,%ymm3,%ymm8
 6792         vpxor   %ymm0,%ymm5,%ymm5
 6793         vpxor   %ymm10,%ymm13,%ymm13
 6794 
 6795         vpslld  $30,%ymm4,%ymm6
 6796         vpor    %ymm8,%ymm7,%ymm7
 6797         vpaddd  %ymm5,%ymm2,%ymm2
 6798         vpsrld  $31,%ymm13,%ymm9
 6799         vpaddd  %ymm13,%ymm13,%ymm13
 6800 
 6801         vpsrld  $2,%ymm4,%ymm4
 6802         vpaddd  %ymm7,%ymm2,%ymm2
 6803         vpor    %ymm9,%ymm13,%ymm13
 6804         vpor    %ymm6,%ymm4,%ymm4
 6805         vpxor   %ymm11,%ymm14,%ymm14
 6806         vmovdqa 64-128(%rax),%ymm11
 6807 
 6808         vpslld  $5,%ymm2,%ymm7
 6809         vpaddd  %ymm15,%ymm1,%ymm1
 6810         vpxor   %ymm3,%ymm0,%ymm5
 6811         vmovdqa %ymm13,480-256-128(%rbx)
 6812         vpaddd  %ymm13,%ymm1,%ymm1
 6813         vpxor   256-256-128(%rbx),%ymm14,%ymm14
 6814         vpsrld  $27,%ymm2,%ymm8
 6815         vpxor   %ymm4,%ymm5,%ymm5
 6816         vpxor   %ymm11,%ymm14,%ymm14
 6817 
 6818         vpslld  $30,%ymm3,%ymm6
 6819         vpor    %ymm8,%ymm7,%ymm7
 6820         vpaddd  %ymm5,%ymm1,%ymm1
 6821         vpsrld  $31,%ymm14,%ymm9
 6822         vpaddd  %ymm14,%ymm14,%ymm14
 6823 
 6824         vpsrld  $2,%ymm3,%ymm3
 6825         vpaddd  %ymm7,%ymm1,%ymm1
 6826         vpor    %ymm9,%ymm14,%ymm14
 6827         vpor    %ymm6,%ymm3,%ymm3
 6828         vpxor   %ymm12,%ymm10,%ymm10
 6829         vmovdqa 96-128(%rax),%ymm12
 6830 
 6831         vpslld  $5,%ymm1,%ymm7
 6832         vpaddd  %ymm15,%ymm0,%ymm0
 6833         vpxor   %ymm2,%ymm4,%ymm5
 6834         vmovdqa %ymm14,0-128(%rax)
 6835         vpaddd  %ymm14,%ymm0,%ymm0
 6836         vpxor   288-256-128(%rbx),%ymm10,%ymm10
 6837         vpsrld  $27,%ymm1,%ymm8
 6838         vpxor   %ymm3,%ymm5,%ymm5
 6839         vpxor   %ymm12,%ymm10,%ymm10
 6840 
 6841         vpslld  $30,%ymm2,%ymm6
 6842         vpor    %ymm8,%ymm7,%ymm7
 6843         vpaddd  %ymm5,%ymm0,%ymm0
 6844         vpsrld  $31,%ymm10,%ymm9
 6845         vpaddd  %ymm10,%ymm10,%ymm10
 6846 
 6847         vpsrld  $2,%ymm2,%ymm2
 6848         vpaddd  %ymm7,%ymm0,%ymm0
 6849         vpor    %ymm9,%ymm10,%ymm10
 6850         vpor    %ymm6,%ymm2,%ymm2
 6851         vpxor   %ymm13,%ymm11,%ymm11
 6852         vmovdqa 128-128(%rax),%ymm13
 6853 
 6854         vpslld  $5,%ymm0,%ymm7
 6855         vpaddd  %ymm15,%ymm4,%ymm4
 6856         vpxor   %ymm1,%ymm3,%ymm5
 6857         vmovdqa %ymm10,32-128(%rax)
 6858         vpaddd  %ymm10,%ymm4,%ymm4
 6859         vpxor   320-256-128(%rbx),%ymm11,%ymm11
 6860         vpsrld  $27,%ymm0,%ymm8
 6861         vpxor   %ymm2,%ymm5,%ymm5
 6862         vpxor   %ymm13,%ymm11,%ymm11
 6863 
 6864         vpslld  $30,%ymm1,%ymm6
 6865         vpor    %ymm8,%ymm7,%ymm7
 6866         vpaddd  %ymm5,%ymm4,%ymm4
 6867         vpsrld  $31,%ymm11,%ymm9
 6868         vpaddd  %ymm11,%ymm11,%ymm11
 6869 
 6870         vpsrld  $2,%ymm1,%ymm1
 6871         vpaddd  %ymm7,%ymm4,%ymm4
 6872         vpor    %ymm9,%ymm11,%ymm11
 6873         vpor    %ymm6,%ymm1,%ymm1
 6874         vpxor   %ymm14,%ymm12,%ymm12
 6875         vmovdqa 160-128(%rax),%ymm14
 6876 
 6877         vpslld  $5,%ymm4,%ymm7
 6878         vpaddd  %ymm15,%ymm3,%ymm3
 6879         vpxor   %ymm0,%ymm2,%ymm5
 6880         vmovdqa %ymm11,64-128(%rax)
 6881         vpaddd  %ymm11,%ymm3,%ymm3
 6882         vpxor   352-256-128(%rbx),%ymm12,%ymm12
 6883         vpsrld  $27,%ymm4,%ymm8
 6884         vpxor   %ymm1,%ymm5,%ymm5
 6885         vpxor   %ymm14,%ymm12,%ymm12
 6886 
 6887         vpslld  $30,%ymm0,%ymm6
 6888         vpor    %ymm8,%ymm7,%ymm7
 6889         vpaddd  %ymm5,%ymm3,%ymm3
 6890         vpsrld  $31,%ymm12,%ymm9
 6891         vpaddd  %ymm12,%ymm12,%ymm12
 6892 
 6893         vpsrld  $2,%ymm0,%ymm0
 6894         vpaddd  %ymm7,%ymm3,%ymm3
 6895         vpor    %ymm9,%ymm12,%ymm12
 6896         vpor    %ymm6,%ymm0,%ymm0
 6897         vpxor   %ymm10,%ymm13,%ymm13
 6898         vmovdqa 192-128(%rax),%ymm10
 6899 
 6900         vpslld  $5,%ymm3,%ymm7
 6901         vpaddd  %ymm15,%ymm2,%ymm2
 6902         vpxor   %ymm4,%ymm1,%ymm5
 6903         vmovdqa %ymm12,96-128(%rax)
 6904         vpaddd  %ymm12,%ymm2,%ymm2
 6905         vpxor   384-256-128(%rbx),%ymm13,%ymm13
 6906         vpsrld  $27,%ymm3,%ymm8
 6907         vpxor   %ymm0,%ymm5,%ymm5
 6908         vpxor   %ymm10,%ymm13,%ymm13
 6909 
 6910         vpslld  $30,%ymm4,%ymm6
 6911         vpor    %ymm8,%ymm7,%ymm7
 6912         vpaddd  %ymm5,%ymm2,%ymm2
 6913         vpsrld  $31,%ymm13,%ymm9
 6914         vpaddd  %ymm13,%ymm13,%ymm13
 6915 
 6916         vpsrld  $2,%ymm4,%ymm4
 6917         vpaddd  %ymm7,%ymm2,%ymm2
 6918         vpor    %ymm9,%ymm13,%ymm13
 6919         vpor    %ymm6,%ymm4,%ymm4
 6920         vpxor   %ymm11,%ymm14,%ymm14
 6921         vmovdqa 224-128(%rax),%ymm11
 6922 
 6923         vpslld  $5,%ymm2,%ymm7
 6924         vpaddd  %ymm15,%ymm1,%ymm1
 6925         vpxor   %ymm3,%ymm0,%ymm5
 6926         vmovdqa %ymm13,128-128(%rax)
 6927         vpaddd  %ymm13,%ymm1,%ymm1
 6928         vpxor   416-256-128(%rbx),%ymm14,%ymm14
 6929         vpsrld  $27,%ymm2,%ymm8
 6930         vpxor   %ymm4,%ymm5,%ymm5
 6931         vpxor   %ymm11,%ymm14,%ymm14
 6932 
 6933         vpslld  $30,%ymm3,%ymm6
 6934         vpor    %ymm8,%ymm7,%ymm7
 6935         vpaddd  %ymm5,%ymm1,%ymm1
 6936         vpsrld  $31,%ymm14,%ymm9
 6937         vpaddd  %ymm14,%ymm14,%ymm14
 6938 
 6939         vpsrld  $2,%ymm3,%ymm3
 6940         vpaddd  %ymm7,%ymm1,%ymm1
 6941         vpor    %ymm9,%ymm14,%ymm14
 6942         vpor    %ymm6,%ymm3,%ymm3
 6943         vpxor   %ymm12,%ymm10,%ymm10
 6944         vmovdqa 256-256-128(%rbx),%ymm12
 6945 
 6946         vpslld  $5,%ymm1,%ymm7
 6947         vpaddd  %ymm15,%ymm0,%ymm0
 6948         vpxor   %ymm2,%ymm4,%ymm5
 6949         vmovdqa %ymm14,160-128(%rax)
 6950         vpaddd  %ymm14,%ymm0,%ymm0
 6951         vpxor   448-256-128(%rbx),%ymm10,%ymm10
 6952         vpsrld  $27,%ymm1,%ymm8
 6953         vpxor   %ymm3,%ymm5,%ymm5
 6954         vpxor   %ymm12,%ymm10,%ymm10
 6955 
 6956         vpslld  $30,%ymm2,%ymm6
 6957         vpor    %ymm8,%ymm7,%ymm7
 6958         vpaddd  %ymm5,%ymm0,%ymm0
 6959         vpsrld  $31,%ymm10,%ymm9
 6960         vpaddd  %ymm10,%ymm10,%ymm10
 6961 
 6962         vpsrld  $2,%ymm2,%ymm2
 6963         vpaddd  %ymm7,%ymm0,%ymm0
 6964         vpor    %ymm9,%ymm10,%ymm10
 6965         vpor    %ymm6,%ymm2,%ymm2
 6966         vpxor   %ymm13,%ymm11,%ymm11
 6967         vmovdqa 288-256-128(%rbx),%ymm13
 6968 
 6969         vpslld  $5,%ymm0,%ymm7
 6970         vpaddd  %ymm15,%ymm4,%ymm4
 6971         vpxor   %ymm1,%ymm3,%ymm5
 6972         vmovdqa %ymm10,192-128(%rax)
 6973         vpaddd  %ymm10,%ymm4,%ymm4
 6974         vpxor   480-256-128(%rbx),%ymm11,%ymm11
 6975         vpsrld  $27,%ymm0,%ymm8
 6976         vpxor   %ymm2,%ymm5,%ymm5
 6977         vpxor   %ymm13,%ymm11,%ymm11
 6978 
 6979         vpslld  $30,%ymm1,%ymm6
 6980         vpor    %ymm8,%ymm7,%ymm7
 6981         vpaddd  %ymm5,%ymm4,%ymm4
 6982         vpsrld  $31,%ymm11,%ymm9
 6983         vpaddd  %ymm11,%ymm11,%ymm11
 6984 
 6985         vpsrld  $2,%ymm1,%ymm1
 6986         vpaddd  %ymm7,%ymm4,%ymm4
 6987         vpor    %ymm9,%ymm11,%ymm11
 6988         vpor    %ymm6,%ymm1,%ymm1
 6989         vpxor   %ymm14,%ymm12,%ymm12
 6990         vmovdqa 320-256-128(%rbx),%ymm14
 6991 
 6992         vpslld  $5,%ymm4,%ymm7
 6993         vpaddd  %ymm15,%ymm3,%ymm3
 6994         vpxor   %ymm0,%ymm2,%ymm5
 6995         vmovdqa %ymm11,224-128(%rax)
 6996         vpaddd  %ymm11,%ymm3,%ymm3
 6997         vpxor   0-128(%rax),%ymm12,%ymm12
 6998         vpsrld  $27,%ymm4,%ymm8
 6999         vpxor   %ymm1,%ymm5,%ymm5
 7000         vpxor   %ymm14,%ymm12,%ymm12
 7001 
 7002         vpslld  $30,%ymm0,%ymm6
 7003         vpor    %ymm8,%ymm7,%ymm7
 7004         vpaddd  %ymm5,%ymm3,%ymm3
 7005         vpsrld  $31,%ymm12,%ymm9
 7006         vpaddd  %ymm12,%ymm12,%ymm12
 7007 
 7008         vpsrld  $2,%ymm0,%ymm0
 7009         vpaddd  %ymm7,%ymm3,%ymm3
 7010         vpor    %ymm9,%ymm12,%ymm12
 7011         vpor    %ymm6,%ymm0,%ymm0
 7012         vpxor   %ymm10,%ymm13,%ymm13
 7013         vmovdqa 352-256-128(%rbx),%ymm10
 7014 
 7015         vpslld  $5,%ymm3,%ymm7
 7016         vpaddd  %ymm15,%ymm2,%ymm2
 7017         vpxor   %ymm4,%ymm1,%ymm5
 7018         vpaddd  %ymm12,%ymm2,%ymm2
 7019         vpxor   32-128(%rax),%ymm13,%ymm13
 7020         vpsrld  $27,%ymm3,%ymm8
 7021         vpxor   %ymm0,%ymm5,%ymm5
 7022         vpxor   %ymm10,%ymm13,%ymm13
 7023 
 7024         vpslld  $30,%ymm4,%ymm6
 7025         vpor    %ymm8,%ymm7,%ymm7
 7026         vpaddd  %ymm5,%ymm2,%ymm2
 7027         vpsrld  $31,%ymm13,%ymm9
 7028         vpaddd  %ymm13,%ymm13,%ymm13
 7029 
 7030         vpsrld  $2,%ymm4,%ymm4
 7031         vpaddd  %ymm7,%ymm2,%ymm2
 7032         vpor    %ymm9,%ymm13,%ymm13
 7033         vpor    %ymm6,%ymm4,%ymm4
 7034         vpxor   %ymm11,%ymm14,%ymm14
 7035         vmovdqa 384-256-128(%rbx),%ymm11
 7036 
 7037         vpslld  $5,%ymm2,%ymm7
 7038         vpaddd  %ymm15,%ymm1,%ymm1
 7039         vpxor   %ymm3,%ymm0,%ymm5
 7040         vpaddd  %ymm13,%ymm1,%ymm1
 7041         vpxor   64-128(%rax),%ymm14,%ymm14
 7042         vpsrld  $27,%ymm2,%ymm8
 7043         vpxor   %ymm4,%ymm5,%ymm5
 7044         vpxor   %ymm11,%ymm14,%ymm14
 7045 
 7046         vpslld  $30,%ymm3,%ymm6
 7047         vpor    %ymm8,%ymm7,%ymm7
 7048         vpaddd  %ymm5,%ymm1,%ymm1
 7049         vpsrld  $31,%ymm14,%ymm9
 7050         vpaddd  %ymm14,%ymm14,%ymm14
 7051 
 7052         vpsrld  $2,%ymm3,%ymm3
 7053         vpaddd  %ymm7,%ymm1,%ymm1
 7054         vpor    %ymm9,%ymm14,%ymm14
 7055         vpor    %ymm6,%ymm3,%ymm3
 7056         vpxor   %ymm12,%ymm10,%ymm10
 7057         vmovdqa 416-256-128(%rbx),%ymm12
 7058 
 7059         vpslld  $5,%ymm1,%ymm7
 7060         vpaddd  %ymm15,%ymm0,%ymm0
 7061         vpxor   %ymm2,%ymm4,%ymm5
 7062         vpaddd  %ymm14,%ymm0,%ymm0
 7063         vpxor   96-128(%rax),%ymm10,%ymm10
 7064         vpsrld  $27,%ymm1,%ymm8
 7065         vpxor   %ymm3,%ymm5,%ymm5
 7066         vpxor   %ymm12,%ymm10,%ymm10
 7067 
 7068         vpslld  $30,%ymm2,%ymm6
 7069         vpor    %ymm8,%ymm7,%ymm7
 7070         vpaddd  %ymm5,%ymm0,%ymm0
 7071         vpsrld  $31,%ymm10,%ymm9
 7072         vpaddd  %ymm10,%ymm10,%ymm10
 7073 
 7074         vpsrld  $2,%ymm2,%ymm2
 7075         vpaddd  %ymm7,%ymm0,%ymm0
 7076         vpor    %ymm9,%ymm10,%ymm10
 7077         vpor    %ymm6,%ymm2,%ymm2
 7078         vpxor   %ymm13,%ymm11,%ymm11
 7079         vmovdqa 448-256-128(%rbx),%ymm13
 7080 
 7081         vpslld  $5,%ymm0,%ymm7
 7082         vpaddd  %ymm15,%ymm4,%ymm4
 7083         vpxor   %ymm1,%ymm3,%ymm5
 7084         vpaddd  %ymm10,%ymm4,%ymm4
 7085         vpxor   128-128(%rax),%ymm11,%ymm11
 7086         vpsrld  $27,%ymm0,%ymm8
 7087         vpxor   %ymm2,%ymm5,%ymm5
 7088         vpxor   %ymm13,%ymm11,%ymm11
 7089 
 7090         vpslld  $30,%ymm1,%ymm6
 7091         vpor    %ymm8,%ymm7,%ymm7
 7092         vpaddd  %ymm5,%ymm4,%ymm4
 7093         vpsrld  $31,%ymm11,%ymm9
 7094         vpaddd  %ymm11,%ymm11,%ymm11
 7095 
 7096         vpsrld  $2,%ymm1,%ymm1
 7097         vpaddd  %ymm7,%ymm4,%ymm4
 7098         vpor    %ymm9,%ymm11,%ymm11
 7099         vpor    %ymm6,%ymm1,%ymm1
 7100         vpxor   %ymm14,%ymm12,%ymm12
 7101         vmovdqa 480-256-128(%rbx),%ymm14
 7102 
 7103         vpslld  $5,%ymm4,%ymm7
 7104         vpaddd  %ymm15,%ymm3,%ymm3
 7105         vpxor   %ymm0,%ymm2,%ymm5
 7106         vpaddd  %ymm11,%ymm3,%ymm3
 7107         vpxor   160-128(%rax),%ymm12,%ymm12
 7108         vpsrld  $27,%ymm4,%ymm8
 7109         vpxor   %ymm1,%ymm5,%ymm5
 7110         vpxor   %ymm14,%ymm12,%ymm12
 7111 
 7112         vpslld  $30,%ymm0,%ymm6
 7113         vpor    %ymm8,%ymm7,%ymm7
 7114         vpaddd  %ymm5,%ymm3,%ymm3
 7115         vpsrld  $31,%ymm12,%ymm9
 7116         vpaddd  %ymm12,%ymm12,%ymm12
 7117 
 7118         vpsrld  $2,%ymm0,%ymm0
 7119         vpaddd  %ymm7,%ymm3,%ymm3
 7120         vpor    %ymm9,%ymm12,%ymm12
 7121         vpor    %ymm6,%ymm0,%ymm0
 7122         vpxor   %ymm10,%ymm13,%ymm13
 7123         vmovdqa 0-128(%rax),%ymm10
 7124 
 7125         vpslld  $5,%ymm3,%ymm7
 7126         vpaddd  %ymm15,%ymm2,%ymm2
 7127         vpxor   %ymm4,%ymm1,%ymm5
 7128         vpaddd  %ymm12,%ymm2,%ymm2
 7129         vpxor   192-128(%rax),%ymm13,%ymm13
 7130         vpsrld  $27,%ymm3,%ymm8
 7131         vpxor   %ymm0,%ymm5,%ymm5
 7132         vpxor   %ymm10,%ymm13,%ymm13
 7133 
 7134         vpslld  $30,%ymm4,%ymm6
 7135         vpor    %ymm8,%ymm7,%ymm7
 7136         vpaddd  %ymm5,%ymm2,%ymm2
 7137         vpsrld  $31,%ymm13,%ymm9
 7138         vpaddd  %ymm13,%ymm13,%ymm13
 7139 
 7140         vpsrld  $2,%ymm4,%ymm4
 7141         vpaddd  %ymm7,%ymm2,%ymm2
 7142         vpor    %ymm9,%ymm13,%ymm13
 7143         vpor    %ymm6,%ymm4,%ymm4
 7144         vpxor   %ymm11,%ymm14,%ymm14
 7145         vmovdqa 32-128(%rax),%ymm11
 7146 
 7147         vpslld  $5,%ymm2,%ymm7
 7148         vpaddd  %ymm15,%ymm1,%ymm1
 7149         vpxor   %ymm3,%ymm0,%ymm5
 7150         vpaddd  %ymm13,%ymm1,%ymm1
 7151         vpxor   224-128(%rax),%ymm14,%ymm14
 7152         vpsrld  $27,%ymm2,%ymm8
 7153         vpxor   %ymm4,%ymm5,%ymm5
 7154         vpxor   %ymm11,%ymm14,%ymm14
 7155 
 7156         vpslld  $30,%ymm3,%ymm6
 7157         vpor    %ymm8,%ymm7,%ymm7
 7158         vpaddd  %ymm5,%ymm1,%ymm1
 7159         vpsrld  $31,%ymm14,%ymm9
 7160         vpaddd  %ymm14,%ymm14,%ymm14
 7161 
 7162         vpsrld  $2,%ymm3,%ymm3
 7163         vpaddd  %ymm7,%ymm1,%ymm1
 7164         vpor    %ymm9,%ymm14,%ymm14
 7165         vpor    %ymm6,%ymm3,%ymm3
 7166         vpslld  $5,%ymm1,%ymm7
 7167         vpaddd  %ymm15,%ymm0,%ymm0
 7168         vpxor   %ymm2,%ymm4,%ymm5
 7169 
 7170         vpsrld  $27,%ymm1,%ymm8
 7171         vpaddd  %ymm14,%ymm0,%ymm0
 7172         vpxor   %ymm3,%ymm5,%ymm5
 7173 
 7174         vpslld  $30,%ymm2,%ymm6
 7175         vpor    %ymm8,%ymm7,%ymm7
 7176         vpaddd  %ymm5,%ymm0,%ymm0
 7177 
 7178         vpsrld  $2,%ymm2,%ymm2
 7179         vpaddd  %ymm7,%ymm0,%ymm0
 7180         vpor    %ymm6,%ymm2,%ymm2
 7181         movl    $1,%ecx
 7182         leaq    512(%rsp),%rbx
 7183         cmpl    0(%rbx),%ecx
 7184         cmovgeq %rbp,%r12
 7185         cmpl    4(%rbx),%ecx
 7186         cmovgeq %rbp,%r13
 7187         cmpl    8(%rbx),%ecx
 7188         cmovgeq %rbp,%r14
 7189         cmpl    12(%rbx),%ecx
 7190         cmovgeq %rbp,%r15
 7191         cmpl    16(%rbx),%ecx
 7192         cmovgeq %rbp,%r8
 7193         cmpl    20(%rbx),%ecx
 7194         cmovgeq %rbp,%r9
 7195         cmpl    24(%rbx),%ecx
 7196         cmovgeq %rbp,%r10
 7197         cmpl    28(%rbx),%ecx
 7198         cmovgeq %rbp,%r11
 7199         vmovdqu (%rbx),%ymm5
 7200         vpxor   %ymm7,%ymm7,%ymm7
 7201         vmovdqa %ymm5,%ymm6
 7202         vpcmpgtd        %ymm7,%ymm6,%ymm6
 7203         vpaddd  %ymm6,%ymm5,%ymm5
 7204 
 7205         vpand   %ymm6,%ymm0,%ymm0
 7206         vpand   %ymm6,%ymm1,%ymm1
 7207         vpaddd  0(%rdi),%ymm0,%ymm0
 7208         vpand   %ymm6,%ymm2,%ymm2
 7209         vpaddd  32(%rdi),%ymm1,%ymm1
 7210         vpand   %ymm6,%ymm3,%ymm3
 7211         vpaddd  64(%rdi),%ymm2,%ymm2
 7212         vpand   %ymm6,%ymm4,%ymm4
 7213         vpaddd  96(%rdi),%ymm3,%ymm3
 7214         vpaddd  128(%rdi),%ymm4,%ymm4
 7215         vmovdqu %ymm0,0(%rdi)
 7216         vmovdqu %ymm1,32(%rdi)
 7217         vmovdqu %ymm2,64(%rdi)
 7218         vmovdqu %ymm3,96(%rdi)
 7219         vmovdqu %ymm4,128(%rdi)
 7220 
 7221         vmovdqu %ymm5,(%rbx)
 7222         leaq    256+128(%rsp),%rbx
 7223         vmovdqu 96(%rbp),%ymm9
 7224         decl    %edx
 7225         jnz     .Loop_avx2
 7226 
 7227 
 7228 
 7229 
 7230 
 7231 
 7232 
 7233 .Ldone_avx2:
 7234         movq    544(%rsp),%rax
 7235 .cfi_def_cfa    %rax,8
 7236         vzeroupper
 7237         movq    -48(%rax),%r15
 7238 .cfi_restore    %r15
 7239         movq    -40(%rax),%r14
 7240 .cfi_restore    %r14
 7241         movq    -32(%rax),%r13
 7242 .cfi_restore    %r13
 7243         movq    -24(%rax),%r12
 7244 .cfi_restore    %r12
 7245         movq    -16(%rax),%rbp
 7246 .cfi_restore    %rbp
 7247         movq    -8(%rax),%rbx
 7248 .cfi_restore    %rbx
 7249         leaq    (%rax),%rsp
 7250 .cfi_def_cfa_register   %rsp
 7251 .Lepilogue_avx2:
 7252         .byte   0xf3,0xc3
 7253 .cfi_endproc    
 7254 .size   sha1_multi_block_avx2,.-sha1_multi_block_avx2
 7255 
 7256 .align  256
 7257 .long   0x5a827999,0x5a827999,0x5a827999,0x5a827999
 7258 .long   0x5a827999,0x5a827999,0x5a827999,0x5a827999
 7259 K_XX_XX:
 7260 .long   0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
 7261 .long   0x6ed9eba1,0x6ed9eba1,0x6ed9eba1,0x6ed9eba1
 7262 .long   0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
 7263 .long   0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc,0x8f1bbcdc
 7264 .long   0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
 7265 .long   0xca62c1d6,0xca62c1d6,0xca62c1d6,0xca62c1d6
 7266 .long   0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
 7267 .long   0x00010203,0x04050607,0x08090a0b,0x0c0d0e0f
 7268 .byte   0xf,0xe,0xd,0xc,0xb,0xa,0x9,0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1,0x0
 7269 .byte   83,72,65,49,32,109,117,108,116,105,45,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

Cache object: 390d6c789cdaa63f0f6e96ec6e0abd58


[ 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.