Text file src/crypto/sha1/sha1block_amd64.s

     1  // Code generated by command: go run sha1block_amd64_asm.go -out ../sha1block_amd64.s -pkg sha1. DO NOT EDIT.
     2  
     3  //go:build !purego
     4  
     5  #include "textflag.h"
     6  
     7  // func blockAMD64(dig *digest, p []byte)
     8  TEXT ·blockAMD64(SB), NOSPLIT, $64-32
     9  	MOVQ dig+0(FP), BP
    10  	MOVQ p_base+8(FP), SI
    11  	MOVQ p_len+16(FP), DX
    12  	SHRQ $0x06, DX
    13  	SHLQ $0x06, DX
    14  	LEAQ (SI)(DX*1), DI
    15  	MOVL (BP), AX
    16  	MOVL 4(BP), BX
    17  	MOVL 8(BP), CX
    18  	MOVL 12(BP), DX
    19  	MOVL 16(BP), BP
    20  	CMPQ SI, DI
    21  	JEQ  end
    22  
    23  loop:
    24  	MOVL   AX, R11
    25  	MOVL   BX, R12
    26  	MOVL   CX, R13
    27  	MOVL   DX, R14
    28  	MOVL   BP, R15
    29  	MOVL   (SI), R10
    30  	BSWAPL R10
    31  	MOVL   R10, (SP)
    32  	MOVL   DX, R9
    33  	XORL   CX, R9
    34  	ANDL   BX, R9
    35  	XORL   DX, R9
    36  	ROLL   $0x1e, BX
    37  	ADDL   R9, BP
    38  	MOVL   AX, R8
    39  	ROLL   $0x05, R8
    40  	LEAL   1518500249(BP)(R10*1), BP
    41  	ADDL   R8, BP
    42  	MOVL   4(SI), R10
    43  	BSWAPL R10
    44  	MOVL   R10, 4(SP)
    45  	MOVL   CX, R9
    46  	XORL   BX, R9
    47  	ANDL   AX, R9
    48  	XORL   CX, R9
    49  	ROLL   $0x1e, AX
    50  	ADDL   R9, DX
    51  	MOVL   BP, R8
    52  	ROLL   $0x05, R8
    53  	LEAL   1518500249(DX)(R10*1), DX
    54  	ADDL   R8, DX
    55  	MOVL   8(SI), R10
    56  	BSWAPL R10
    57  	MOVL   R10, 8(SP)
    58  	MOVL   BX, R9
    59  	XORL   AX, R9
    60  	ANDL   BP, R9
    61  	XORL   BX, R9
    62  	ROLL   $0x1e, BP
    63  	ADDL   R9, CX
    64  	MOVL   DX, R8
    65  	ROLL   $0x05, R8
    66  	LEAL   1518500249(CX)(R10*1), CX
    67  	ADDL   R8, CX
    68  	MOVL   12(SI), R10
    69  	BSWAPL R10
    70  	MOVL   R10, 12(SP)
    71  	MOVL   AX, R9
    72  	XORL   BP, R9
    73  	ANDL   DX, R9
    74  	XORL   AX, R9
    75  	ROLL   $0x1e, DX
    76  	ADDL   R9, BX
    77  	MOVL   CX, R8
    78  	ROLL   $0x05, R8
    79  	LEAL   1518500249(BX)(R10*1), BX
    80  	ADDL   R8, BX
    81  	MOVL   16(SI), R10
    82  	BSWAPL R10
    83  	MOVL   R10, 16(SP)
    84  	MOVL   BP, R9
    85  	XORL   DX, R9
    86  	ANDL   CX, R9
    87  	XORL   BP, R9
    88  	ROLL   $0x1e, CX
    89  	ADDL   R9, AX
    90  	MOVL   BX, R8
    91  	ROLL   $0x05, R8
    92  	LEAL   1518500249(AX)(R10*1), AX
    93  	ADDL   R8, AX
    94  	MOVL   20(SI), R10
    95  	BSWAPL R10
    96  	MOVL   R10, 20(SP)
    97  	MOVL   DX, R9
    98  	XORL   CX, R9
    99  	ANDL   BX, R9
   100  	XORL   DX, R9
   101  	ROLL   $0x1e, BX
   102  	ADDL   R9, BP
   103  	MOVL   AX, R8
   104  	ROLL   $0x05, R8
   105  	LEAL   1518500249(BP)(R10*1), BP
   106  	ADDL   R8, BP
   107  	MOVL   24(SI), R10
   108  	BSWAPL R10
   109  	MOVL   R10, 24(SP)
   110  	MOVL   CX, R9
   111  	XORL   BX, R9
   112  	ANDL   AX, R9
   113  	XORL   CX, R9
   114  	ROLL   $0x1e, AX
   115  	ADDL   R9, DX
   116  	MOVL   BP, R8
   117  	ROLL   $0x05, R8
   118  	LEAL   1518500249(DX)(R10*1), DX
   119  	ADDL   R8, DX
   120  	MOVL   28(SI), R10
   121  	BSWAPL R10
   122  	MOVL   R10, 28(SP)
   123  	MOVL   BX, R9
   124  	XORL   AX, R9
   125  	ANDL   BP, R9
   126  	XORL   BX, R9
   127  	ROLL   $0x1e, BP
   128  	ADDL   R9, CX
   129  	MOVL   DX, R8
   130  	ROLL   $0x05, R8
   131  	LEAL   1518500249(CX)(R10*1), CX
   132  	ADDL   R8, CX
   133  	MOVL   32(SI), R10
   134  	BSWAPL R10
   135  	MOVL   R10, 32(SP)
   136  	MOVL   AX, R9
   137  	XORL   BP, R9
   138  	ANDL   DX, R9
   139  	XORL   AX, R9
   140  	ROLL   $0x1e, DX
   141  	ADDL   R9, BX
   142  	MOVL   CX, R8
   143  	ROLL   $0x05, R8
   144  	LEAL   1518500249(BX)(R10*1), BX
   145  	ADDL   R8, BX
   146  	MOVL   36(SI), R10
   147  	BSWAPL R10
   148  	MOVL   R10, 36(SP)
   149  	MOVL   BP, R9
   150  	XORL   DX, R9
   151  	ANDL   CX, R9
   152  	XORL   BP, R9
   153  	ROLL   $0x1e, CX
   154  	ADDL   R9, AX
   155  	MOVL   BX, R8
   156  	ROLL   $0x05, R8
   157  	LEAL   1518500249(AX)(R10*1), AX
   158  	ADDL   R8, AX
   159  	MOVL   40(SI), R10
   160  	BSWAPL R10
   161  	MOVL   R10, 40(SP)
   162  	MOVL   DX, R9
   163  	XORL   CX, R9
   164  	ANDL   BX, R9
   165  	XORL   DX, R9
   166  	ROLL   $0x1e, BX
   167  	ADDL   R9, BP
   168  	MOVL   AX, R8
   169  	ROLL   $0x05, R8
   170  	LEAL   1518500249(BP)(R10*1), BP
   171  	ADDL   R8, BP
   172  	MOVL   44(SI), R10
   173  	BSWAPL R10
   174  	MOVL   R10, 44(SP)
   175  	MOVL   CX, R9
   176  	XORL   BX, R9
   177  	ANDL   AX, R9
   178  	XORL   CX, R9
   179  	ROLL   $0x1e, AX
   180  	ADDL   R9, DX
   181  	MOVL   BP, R8
   182  	ROLL   $0x05, R8
   183  	LEAL   1518500249(DX)(R10*1), DX
   184  	ADDL   R8, DX
   185  	MOVL   48(SI), R10
   186  	BSWAPL R10
   187  	MOVL   R10, 48(SP)
   188  	MOVL   BX, R9
   189  	XORL   AX, R9
   190  	ANDL   BP, R9
   191  	XORL   BX, R9
   192  	ROLL   $0x1e, BP
   193  	ADDL   R9, CX
   194  	MOVL   DX, R8
   195  	ROLL   $0x05, R8
   196  	LEAL   1518500249(CX)(R10*1), CX
   197  	ADDL   R8, CX
   198  	MOVL   52(SI), R10
   199  	BSWAPL R10
   200  	MOVL   R10, 52(SP)
   201  	MOVL   AX, R9
   202  	XORL   BP, R9
   203  	ANDL   DX, R9
   204  	XORL   AX, R9
   205  	ROLL   $0x1e, DX
   206  	ADDL   R9, BX
   207  	MOVL   CX, R8
   208  	ROLL   $0x05, R8
   209  	LEAL   1518500249(BX)(R10*1), BX
   210  	ADDL   R8, BX
   211  	MOVL   56(SI), R10
   212  	BSWAPL R10
   213  	MOVL   R10, 56(SP)
   214  	MOVL   BP, R9
   215  	XORL   DX, R9
   216  	ANDL   CX, R9
   217  	XORL   BP, R9
   218  	ROLL   $0x1e, CX
   219  	ADDL   R9, AX
   220  	MOVL   BX, R8
   221  	ROLL   $0x05, R8
   222  	LEAL   1518500249(AX)(R10*1), AX
   223  	ADDL   R8, AX
   224  	MOVL   60(SI), R10
   225  	BSWAPL R10
   226  	MOVL   R10, 60(SP)
   227  	MOVL   DX, R9
   228  	XORL   CX, R9
   229  	ANDL   BX, R9
   230  	XORL   DX, R9
   231  	ROLL   $0x1e, BX
   232  	ADDL   R9, BP
   233  	MOVL   AX, R8
   234  	ROLL   $0x05, R8
   235  	LEAL   1518500249(BP)(R10*1), BP
   236  	ADDL   R8, BP
   237  	MOVL   (SP), R10
   238  	XORL   52(SP), R10
   239  	XORL   32(SP), R10
   240  	XORL   8(SP), R10
   241  	ROLL   $0x01, R10
   242  	MOVL   R10, (SP)
   243  	MOVL   CX, R9
   244  	XORL   BX, R9
   245  	ANDL   AX, R9
   246  	XORL   CX, R9
   247  	ROLL   $0x1e, AX
   248  	ADDL   R9, DX
   249  	MOVL   BP, R8
   250  	ROLL   $0x05, R8
   251  	LEAL   1518500249(DX)(R10*1), DX
   252  	ADDL   R8, DX
   253  	MOVL   4(SP), R10
   254  	XORL   56(SP), R10
   255  	XORL   36(SP), R10
   256  	XORL   12(SP), R10
   257  	ROLL   $0x01, R10
   258  	MOVL   R10, 4(SP)
   259  	MOVL   BX, R9
   260  	XORL   AX, R9
   261  	ANDL   BP, R9
   262  	XORL   BX, R9
   263  	ROLL   $0x1e, BP
   264  	ADDL   R9, CX
   265  	MOVL   DX, R8
   266  	ROLL   $0x05, R8
   267  	LEAL   1518500249(CX)(R10*1), CX
   268  	ADDL   R8, CX
   269  	MOVL   8(SP), R10
   270  	XORL   60(SP), R10
   271  	XORL   40(SP), R10
   272  	XORL   16(SP), R10
   273  	ROLL   $0x01, R10
   274  	MOVL   R10, 8(SP)
   275  	MOVL   AX, R9
   276  	XORL   BP, R9
   277  	ANDL   DX, R9
   278  	XORL   AX, R9
   279  	ROLL   $0x1e, DX
   280  	ADDL   R9, BX
   281  	MOVL   CX, R8
   282  	ROLL   $0x05, R8
   283  	LEAL   1518500249(BX)(R10*1), BX
   284  	ADDL   R8, BX
   285  	MOVL   12(SP), R10
   286  	XORL   (SP), R10
   287  	XORL   44(SP), R10
   288  	XORL   20(SP), R10
   289  	ROLL   $0x01, R10
   290  	MOVL   R10, 12(SP)
   291  	MOVL   BP, R9
   292  	XORL   DX, R9
   293  	ANDL   CX, R9
   294  	XORL   BP, R9
   295  	ROLL   $0x1e, CX
   296  	ADDL   R9, AX
   297  	MOVL   BX, R8
   298  	ROLL   $0x05, R8
   299  	LEAL   1518500249(AX)(R10*1), AX
   300  	ADDL   R8, AX
   301  	MOVL   16(SP), R10
   302  	XORL   4(SP), R10
   303  	XORL   48(SP), R10
   304  	XORL   24(SP), R10
   305  	ROLL   $0x01, R10
   306  	MOVL   R10, 16(SP)
   307  	MOVL   BX, R9
   308  	XORL   CX, R9
   309  	XORL   DX, R9
   310  	ROLL   $0x1e, BX
   311  	ADDL   R9, BP
   312  	MOVL   AX, R8
   313  	ROLL   $0x05, R8
   314  	LEAL   1859775393(BP)(R10*1), BP
   315  	ADDL   R8, BP
   316  	MOVL   20(SP), R10
   317  	XORL   8(SP), R10
   318  	XORL   52(SP), R10
   319  	XORL   28(SP), R10
   320  	ROLL   $0x01, R10
   321  	MOVL   R10, 20(SP)
   322  	MOVL   AX, R9
   323  	XORL   BX, R9
   324  	XORL   CX, R9
   325  	ROLL   $0x1e, AX
   326  	ADDL   R9, DX
   327  	MOVL   BP, R8
   328  	ROLL   $0x05, R8
   329  	LEAL   1859775393(DX)(R10*1), DX
   330  	ADDL   R8, DX
   331  	MOVL   24(SP), R10
   332  	XORL   12(SP), R10
   333  	XORL   56(SP), R10
   334  	XORL   32(SP), R10
   335  	ROLL   $0x01, R10
   336  	MOVL   R10, 24(SP)
   337  	MOVL   BP, R9
   338  	XORL   AX, R9
   339  	XORL   BX, R9
   340  	ROLL   $0x1e, BP
   341  	ADDL   R9, CX
   342  	MOVL   DX, R8
   343  	ROLL   $0x05, R8
   344  	LEAL   1859775393(CX)(R10*1), CX
   345  	ADDL   R8, CX
   346  	MOVL   28(SP), R10
   347  	XORL   16(SP), R10
   348  	XORL   60(SP), R10
   349  	XORL   36(SP), R10
   350  	ROLL   $0x01, R10
   351  	MOVL   R10, 28(SP)
   352  	MOVL   DX, R9
   353  	XORL   BP, R9
   354  	XORL   AX, R9
   355  	ROLL   $0x1e, DX
   356  	ADDL   R9, BX
   357  	MOVL   CX, R8
   358  	ROLL   $0x05, R8
   359  	LEAL   1859775393(BX)(R10*1), BX
   360  	ADDL   R8, BX
   361  	MOVL   32(SP), R10
   362  	XORL   20(SP), R10
   363  	XORL   (SP), R10
   364  	XORL   40(SP), R10
   365  	ROLL   $0x01, R10
   366  	MOVL   R10, 32(SP)
   367  	MOVL   CX, R9
   368  	XORL   DX, R9
   369  	XORL   BP, R9
   370  	ROLL   $0x1e, CX
   371  	ADDL   R9, AX
   372  	MOVL   BX, R8
   373  	ROLL   $0x05, R8
   374  	LEAL   1859775393(AX)(R10*1), AX
   375  	ADDL   R8, AX
   376  	MOVL   36(SP), R10
   377  	XORL   24(SP), R10
   378  	XORL   4(SP), R10
   379  	XORL   44(SP), R10
   380  	ROLL   $0x01, R10
   381  	MOVL   R10, 36(SP)
   382  	MOVL   BX, R9
   383  	XORL   CX, R9
   384  	XORL   DX, R9
   385  	ROLL   $0x1e, BX
   386  	ADDL   R9, BP
   387  	MOVL   AX, R8
   388  	ROLL   $0x05, R8
   389  	LEAL   1859775393(BP)(R10*1), BP
   390  	ADDL   R8, BP
   391  	MOVL   40(SP), R10
   392  	XORL   28(SP), R10
   393  	XORL   8(SP), R10
   394  	XORL   48(SP), R10
   395  	ROLL   $0x01, R10
   396  	MOVL   R10, 40(SP)
   397  	MOVL   AX, R9
   398  	XORL   BX, R9
   399  	XORL   CX, R9
   400  	ROLL   $0x1e, AX
   401  	ADDL   R9, DX
   402  	MOVL   BP, R8
   403  	ROLL   $0x05, R8
   404  	LEAL   1859775393(DX)(R10*1), DX
   405  	ADDL   R8, DX
   406  	MOVL   44(SP), R10
   407  	XORL   32(SP), R10
   408  	XORL   12(SP), R10
   409  	XORL   52(SP), R10
   410  	ROLL   $0x01, R10
   411  	MOVL   R10, 44(SP)
   412  	MOVL   BP, R9
   413  	XORL   AX, R9
   414  	XORL   BX, R9
   415  	ROLL   $0x1e, BP
   416  	ADDL   R9, CX
   417  	MOVL   DX, R8
   418  	ROLL   $0x05, R8
   419  	LEAL   1859775393(CX)(R10*1), CX
   420  	ADDL   R8, CX
   421  	MOVL   48(SP), R10
   422  	XORL   36(SP), R10
   423  	XORL   16(SP), R10
   424  	XORL   56(SP), R10
   425  	ROLL   $0x01, R10
   426  	MOVL   R10, 48(SP)
   427  	MOVL   DX, R9
   428  	XORL   BP, R9
   429  	XORL   AX, R9
   430  	ROLL   $0x1e, DX
   431  	ADDL   R9, BX
   432  	MOVL   CX, R8
   433  	ROLL   $0x05, R8
   434  	LEAL   1859775393(BX)(R10*1), BX
   435  	ADDL   R8, BX
   436  	MOVL   52(SP), R10
   437  	XORL   40(SP), R10
   438  	XORL   20(SP), R10
   439  	XORL   60(SP), R10
   440  	ROLL   $0x01, R10
   441  	MOVL   R10, 52(SP)
   442  	MOVL   CX, R9
   443  	XORL   DX, R9
   444  	XORL   BP, R9
   445  	ROLL   $0x1e, CX
   446  	ADDL   R9, AX
   447  	MOVL   BX, R8
   448  	ROLL   $0x05, R8
   449  	LEAL   1859775393(AX)(R10*1), AX
   450  	ADDL   R8, AX
   451  	MOVL   56(SP), R10
   452  	XORL   44(SP), R10
   453  	XORL   24(SP), R10
   454  	XORL   (SP), R10
   455  	ROLL   $0x01, R10
   456  	MOVL   R10, 56(SP)
   457  	MOVL   BX, R9
   458  	XORL   CX, R9
   459  	XORL   DX, R9
   460  	ROLL   $0x1e, BX
   461  	ADDL   R9, BP
   462  	MOVL   AX, R8
   463  	ROLL   $0x05, R8
   464  	LEAL   1859775393(BP)(R10*1), BP
   465  	ADDL   R8, BP
   466  	MOVL   60(SP), R10
   467  	XORL   48(SP), R10
   468  	XORL   28(SP), R10
   469  	XORL   4(SP), R10
   470  	ROLL   $0x01, R10
   471  	MOVL   R10, 60(SP)
   472  	MOVL   AX, R9
   473  	XORL   BX, R9
   474  	XORL   CX, R9
   475  	ROLL   $0x1e, AX
   476  	ADDL   R9, DX
   477  	MOVL   BP, R8
   478  	ROLL   $0x05, R8
   479  	LEAL   1859775393(DX)(R10*1), DX
   480  	ADDL   R8, DX
   481  	MOVL   (SP), R10
   482  	XORL   52(SP), R10
   483  	XORL   32(SP), R10
   484  	XORL   8(SP), R10
   485  	ROLL   $0x01, R10
   486  	MOVL   R10, (SP)
   487  	MOVL   BP, R9
   488  	XORL   AX, R9
   489  	XORL   BX, R9
   490  	ROLL   $0x1e, BP
   491  	ADDL   R9, CX
   492  	MOVL   DX, R8
   493  	ROLL   $0x05, R8
   494  	LEAL   1859775393(CX)(R10*1), CX
   495  	ADDL   R8, CX
   496  	MOVL   4(SP), R10
   497  	XORL   56(SP), R10
   498  	XORL   36(SP), R10
   499  	XORL   12(SP), R10
   500  	ROLL   $0x01, R10
   501  	MOVL   R10, 4(SP)
   502  	MOVL   DX, R9
   503  	XORL   BP, R9
   504  	XORL   AX, R9
   505  	ROLL   $0x1e, DX
   506  	ADDL   R9, BX
   507  	MOVL   CX, R8
   508  	ROLL   $0x05, R8
   509  	LEAL   1859775393(BX)(R10*1), BX
   510  	ADDL   R8, BX
   511  	MOVL   8(SP), R10
   512  	XORL   60(SP), R10
   513  	XORL   40(SP), R10
   514  	XORL   16(SP), R10
   515  	ROLL   $0x01, R10
   516  	MOVL   R10, 8(SP)
   517  	MOVL   CX, R9
   518  	XORL   DX, R9
   519  	XORL   BP, R9
   520  	ROLL   $0x1e, CX
   521  	ADDL   R9, AX
   522  	MOVL   BX, R8
   523  	ROLL   $0x05, R8
   524  	LEAL   1859775393(AX)(R10*1), AX
   525  	ADDL   R8, AX
   526  	MOVL   12(SP), R10
   527  	XORL   (SP), R10
   528  	XORL   44(SP), R10
   529  	XORL   20(SP), R10
   530  	ROLL   $0x01, R10
   531  	MOVL   R10, 12(SP)
   532  	MOVL   BX, R9
   533  	XORL   CX, R9
   534  	XORL   DX, R9
   535  	ROLL   $0x1e, BX
   536  	ADDL   R9, BP
   537  	MOVL   AX, R8
   538  	ROLL   $0x05, R8
   539  	LEAL   1859775393(BP)(R10*1), BP
   540  	ADDL   R8, BP
   541  	MOVL   16(SP), R10
   542  	XORL   4(SP), R10
   543  	XORL   48(SP), R10
   544  	XORL   24(SP), R10
   545  	ROLL   $0x01, R10
   546  	MOVL   R10, 16(SP)
   547  	MOVL   AX, R9
   548  	XORL   BX, R9
   549  	XORL   CX, R9
   550  	ROLL   $0x1e, AX
   551  	ADDL   R9, DX
   552  	MOVL   BP, R8
   553  	ROLL   $0x05, R8
   554  	LEAL   1859775393(DX)(R10*1), DX
   555  	ADDL   R8, DX
   556  	MOVL   20(SP), R10
   557  	XORL   8(SP), R10
   558  	XORL   52(SP), R10
   559  	XORL   28(SP), R10
   560  	ROLL   $0x01, R10
   561  	MOVL   R10, 20(SP)
   562  	MOVL   BP, R9
   563  	XORL   AX, R9
   564  	XORL   BX, R9
   565  	ROLL   $0x1e, BP
   566  	ADDL   R9, CX
   567  	MOVL   DX, R8
   568  	ROLL   $0x05, R8
   569  	LEAL   1859775393(CX)(R10*1), CX
   570  	ADDL   R8, CX
   571  	MOVL   24(SP), R10
   572  	XORL   12(SP), R10
   573  	XORL   56(SP), R10
   574  	XORL   32(SP), R10
   575  	ROLL   $0x01, R10
   576  	MOVL   R10, 24(SP)
   577  	MOVL   DX, R9
   578  	XORL   BP, R9
   579  	XORL   AX, R9
   580  	ROLL   $0x1e, DX
   581  	ADDL   R9, BX
   582  	MOVL   CX, R8
   583  	ROLL   $0x05, R8
   584  	LEAL   1859775393(BX)(R10*1), BX
   585  	ADDL   R8, BX
   586  	MOVL   28(SP), R10
   587  	XORL   16(SP), R10
   588  	XORL   60(SP), R10
   589  	XORL   36(SP), R10
   590  	ROLL   $0x01, R10
   591  	MOVL   R10, 28(SP)
   592  	MOVL   CX, R9
   593  	XORL   DX, R9
   594  	XORL   BP, R9
   595  	ROLL   $0x1e, CX
   596  	ADDL   R9, AX
   597  	MOVL   BX, R8
   598  	ROLL   $0x05, R8
   599  	LEAL   1859775393(AX)(R10*1), AX
   600  	ADDL   R8, AX
   601  	MOVL   32(SP), R10
   602  	XORL   20(SP), R10
   603  	XORL   (SP), R10
   604  	XORL   40(SP), R10
   605  	ROLL   $0x01, R10
   606  	MOVL   R10, 32(SP)
   607  	MOVL   BX, R8
   608  	ORL    CX, R8
   609  	ANDL   DX, R8
   610  	MOVL   BX, R9
   611  	ANDL   CX, R9
   612  	ORL    R8, R9
   613  	ROLL   $0x1e, BX
   614  	ADDL   R9, BP
   615  	MOVL   AX, R8
   616  	ROLL   $0x05, R8
   617  	LEAL   2400959708(BP)(R10*1), BP
   618  	ADDL   R8, BP
   619  	MOVL   36(SP), R10
   620  	XORL   24(SP), R10
   621  	XORL   4(SP), R10
   622  	XORL   44(SP), R10
   623  	ROLL   $0x01, R10
   624  	MOVL   R10, 36(SP)
   625  	MOVL   AX, R8
   626  	ORL    BX, R8
   627  	ANDL   CX, R8
   628  	MOVL   AX, R9
   629  	ANDL   BX, R9
   630  	ORL    R8, R9
   631  	ROLL   $0x1e, AX
   632  	ADDL   R9, DX
   633  	MOVL   BP, R8
   634  	ROLL   $0x05, R8
   635  	LEAL   2400959708(DX)(R10*1), DX
   636  	ADDL   R8, DX
   637  	MOVL   40(SP), R10
   638  	XORL   28(SP), R10
   639  	XORL   8(SP), R10
   640  	XORL   48(SP), R10
   641  	ROLL   $0x01, R10
   642  	MOVL   R10, 40(SP)
   643  	MOVL   BP, R8
   644  	ORL    AX, R8
   645  	ANDL   BX, R8
   646  	MOVL   BP, R9
   647  	ANDL   AX, R9
   648  	ORL    R8, R9
   649  	ROLL   $0x1e, BP
   650  	ADDL   R9, CX
   651  	MOVL   DX, R8
   652  	ROLL   $0x05, R8
   653  	LEAL   2400959708(CX)(R10*1), CX
   654  	ADDL   R8, CX
   655  	MOVL   44(SP), R10
   656  	XORL   32(SP), R10
   657  	XORL   12(SP), R10
   658  	XORL   52(SP), R10
   659  	ROLL   $0x01, R10
   660  	MOVL   R10, 44(SP)
   661  	MOVL   DX, R8
   662  	ORL    BP, R8
   663  	ANDL   AX, R8
   664  	MOVL   DX, R9
   665  	ANDL   BP, R9
   666  	ORL    R8, R9
   667  	ROLL   $0x1e, DX
   668  	ADDL   R9, BX
   669  	MOVL   CX, R8
   670  	ROLL   $0x05, R8
   671  	LEAL   2400959708(BX)(R10*1), BX
   672  	ADDL   R8, BX
   673  	MOVL   48(SP), R10
   674  	XORL   36(SP), R10
   675  	XORL   16(SP), R10
   676  	XORL   56(SP), R10
   677  	ROLL   $0x01, R10
   678  	MOVL   R10, 48(SP)
   679  	MOVL   CX, R8
   680  	ORL    DX, R8
   681  	ANDL   BP, R8
   682  	MOVL   CX, R9
   683  	ANDL   DX, R9
   684  	ORL    R8, R9
   685  	ROLL   $0x1e, CX
   686  	ADDL   R9, AX
   687  	MOVL   BX, R8
   688  	ROLL   $0x05, R8
   689  	LEAL   2400959708(AX)(R10*1), AX
   690  	ADDL   R8, AX
   691  	MOVL   52(SP), R10
   692  	XORL   40(SP), R10
   693  	XORL   20(SP), R10
   694  	XORL   60(SP), R10
   695  	ROLL   $0x01, R10
   696  	MOVL   R10, 52(SP)
   697  	MOVL   BX, R8
   698  	ORL    CX, R8
   699  	ANDL   DX, R8
   700  	MOVL   BX, R9
   701  	ANDL   CX, R9
   702  	ORL    R8, R9
   703  	ROLL   $0x1e, BX
   704  	ADDL   R9, BP
   705  	MOVL   AX, R8
   706  	ROLL   $0x05, R8
   707  	LEAL   2400959708(BP)(R10*1), BP
   708  	ADDL   R8, BP
   709  	MOVL   56(SP), R10
   710  	XORL   44(SP), R10
   711  	XORL   24(SP), R10
   712  	XORL   (SP), R10
   713  	ROLL   $0x01, R10
   714  	MOVL   R10, 56(SP)
   715  	MOVL   AX, R8
   716  	ORL    BX, R8
   717  	ANDL   CX, R8
   718  	MOVL   AX, R9
   719  	ANDL   BX, R9
   720  	ORL    R8, R9
   721  	ROLL   $0x1e, AX
   722  	ADDL   R9, DX
   723  	MOVL   BP, R8
   724  	ROLL   $0x05, R8
   725  	LEAL   2400959708(DX)(R10*1), DX
   726  	ADDL   R8, DX
   727  	MOVL   60(SP), R10
   728  	XORL   48(SP), R10
   729  	XORL   28(SP), R10
   730  	XORL   4(SP), R10
   731  	ROLL   $0x01, R10
   732  	MOVL   R10, 60(SP)
   733  	MOVL   BP, R8
   734  	ORL    AX, R8
   735  	ANDL   BX, R8
   736  	MOVL   BP, R9
   737  	ANDL   AX, R9
   738  	ORL    R8, R9
   739  	ROLL   $0x1e, BP
   740  	ADDL   R9, CX
   741  	MOVL   DX, R8
   742  	ROLL   $0x05, R8
   743  	LEAL   2400959708(CX)(R10*1), CX
   744  	ADDL   R8, CX
   745  	MOVL   (SP), R10
   746  	XORL   52(SP), R10
   747  	XORL   32(SP), R10
   748  	XORL   8(SP), R10
   749  	ROLL   $0x01, R10
   750  	MOVL   R10, (SP)
   751  	MOVL   DX, R8
   752  	ORL    BP, R8
   753  	ANDL   AX, R8
   754  	MOVL   DX, R9
   755  	ANDL   BP, R9
   756  	ORL    R8, R9
   757  	ROLL   $0x1e, DX
   758  	ADDL   R9, BX
   759  	MOVL   CX, R8
   760  	ROLL   $0x05, R8
   761  	LEAL   2400959708(BX)(R10*1), BX
   762  	ADDL   R8, BX
   763  	MOVL   4(SP), R10
   764  	XORL   56(SP), R10
   765  	XORL   36(SP), R10
   766  	XORL   12(SP), R10
   767  	ROLL   $0x01, R10
   768  	MOVL   R10, 4(SP)
   769  	MOVL   CX, R8
   770  	ORL    DX, R8
   771  	ANDL   BP, R8
   772  	MOVL   CX, R9
   773  	ANDL   DX, R9
   774  	ORL    R8, R9
   775  	ROLL   $0x1e, CX
   776  	ADDL   R9, AX
   777  	MOVL   BX, R8
   778  	ROLL   $0x05, R8
   779  	LEAL   2400959708(AX)(R10*1), AX
   780  	ADDL   R8, AX
   781  	MOVL   8(SP), R10
   782  	XORL   60(SP), R10
   783  	XORL   40(SP), R10
   784  	XORL   16(SP), R10
   785  	ROLL   $0x01, R10
   786  	MOVL   R10, 8(SP)
   787  	MOVL   BX, R8
   788  	ORL    CX, R8
   789  	ANDL   DX, R8
   790  	MOVL   BX, R9
   791  	ANDL   CX, R9
   792  	ORL    R8, R9
   793  	ROLL   $0x1e, BX
   794  	ADDL   R9, BP
   795  	MOVL   AX, R8
   796  	ROLL   $0x05, R8
   797  	LEAL   2400959708(BP)(R10*1), BP
   798  	ADDL   R8, BP
   799  	MOVL   12(SP), R10
   800  	XORL   (SP), R10
   801  	XORL   44(SP), R10
   802  	XORL   20(SP), R10
   803  	ROLL   $0x01, R10
   804  	MOVL   R10, 12(SP)
   805  	MOVL   AX, R8
   806  	ORL    BX, R8
   807  	ANDL   CX, R8
   808  	MOVL   AX, R9
   809  	ANDL   BX, R9
   810  	ORL    R8, R9
   811  	ROLL   $0x1e, AX
   812  	ADDL   R9, DX
   813  	MOVL   BP, R8
   814  	ROLL   $0x05, R8
   815  	LEAL   2400959708(DX)(R10*1), DX
   816  	ADDL   R8, DX
   817  	MOVL   16(SP), R10
   818  	XORL   4(SP), R10
   819  	XORL   48(SP), R10
   820  	XORL   24(SP), R10
   821  	ROLL   $0x01, R10
   822  	MOVL   R10, 16(SP)
   823  	MOVL   BP, R8
   824  	ORL    AX, R8
   825  	ANDL   BX, R8
   826  	MOVL   BP, R9
   827  	ANDL   AX, R9
   828  	ORL    R8, R9
   829  	ROLL   $0x1e, BP
   830  	ADDL   R9, CX
   831  	MOVL   DX, R8
   832  	ROLL   $0x05, R8
   833  	LEAL   2400959708(CX)(R10*1), CX
   834  	ADDL   R8, CX
   835  	MOVL   20(SP), R10
   836  	XORL   8(SP), R10
   837  	XORL   52(SP), R10
   838  	XORL   28(SP), R10
   839  	ROLL   $0x01, R10
   840  	MOVL   R10, 20(SP)
   841  	MOVL   DX, R8
   842  	ORL    BP, R8
   843  	ANDL   AX, R8
   844  	MOVL   DX, R9
   845  	ANDL   BP, R9
   846  	ORL    R8, R9
   847  	ROLL   $0x1e, DX
   848  	ADDL   R9, BX
   849  	MOVL   CX, R8
   850  	ROLL   $0x05, R8
   851  	LEAL   2400959708(BX)(R10*1), BX
   852  	ADDL   R8, BX
   853  	MOVL   24(SP), R10
   854  	XORL   12(SP), R10
   855  	XORL   56(SP), R10
   856  	XORL   32(SP), R10
   857  	ROLL   $0x01, R10
   858  	MOVL   R10, 24(SP)
   859  	MOVL   CX, R8
   860  	ORL    DX, R8
   861  	ANDL   BP, R8
   862  	MOVL   CX, R9
   863  	ANDL   DX, R9
   864  	ORL    R8, R9
   865  	ROLL   $0x1e, CX
   866  	ADDL   R9, AX
   867  	MOVL   BX, R8
   868  	ROLL   $0x05, R8
   869  	LEAL   2400959708(AX)(R10*1), AX
   870  	ADDL   R8, AX
   871  	MOVL   28(SP), R10
   872  	XORL   16(SP), R10
   873  	XORL   60(SP), R10
   874  	XORL   36(SP), R10
   875  	ROLL   $0x01, R10
   876  	MOVL   R10, 28(SP)
   877  	MOVL   BX, R8
   878  	ORL    CX, R8
   879  	ANDL   DX, R8
   880  	MOVL   BX, R9
   881  	ANDL   CX, R9
   882  	ORL    R8, R9
   883  	ROLL   $0x1e, BX
   884  	ADDL   R9, BP
   885  	MOVL   AX, R8
   886  	ROLL   $0x05, R8
   887  	LEAL   2400959708(BP)(R10*1), BP
   888  	ADDL   R8, BP
   889  	MOVL   32(SP), R10
   890  	XORL   20(SP), R10
   891  	XORL   (SP), R10
   892  	XORL   40(SP), R10
   893  	ROLL   $0x01, R10
   894  	MOVL   R10, 32(SP)
   895  	MOVL   AX, R8
   896  	ORL    BX, R8
   897  	ANDL   CX, R8
   898  	MOVL   AX, R9
   899  	ANDL   BX, R9
   900  	ORL    R8, R9
   901  	ROLL   $0x1e, AX
   902  	ADDL   R9, DX
   903  	MOVL   BP, R8
   904  	ROLL   $0x05, R8
   905  	LEAL   2400959708(DX)(R10*1), DX
   906  	ADDL   R8, DX
   907  	MOVL   36(SP), R10
   908  	XORL   24(SP), R10
   909  	XORL   4(SP), R10
   910  	XORL   44(SP), R10
   911  	ROLL   $0x01, R10
   912  	MOVL   R10, 36(SP)
   913  	MOVL   BP, R8
   914  	ORL    AX, R8
   915  	ANDL   BX, R8
   916  	MOVL   BP, R9
   917  	ANDL   AX, R9
   918  	ORL    R8, R9
   919  	ROLL   $0x1e, BP
   920  	ADDL   R9, CX
   921  	MOVL   DX, R8
   922  	ROLL   $0x05, R8
   923  	LEAL   2400959708(CX)(R10*1), CX
   924  	ADDL   R8, CX
   925  	MOVL   40(SP), R10
   926  	XORL   28(SP), R10
   927  	XORL   8(SP), R10
   928  	XORL   48(SP), R10
   929  	ROLL   $0x01, R10
   930  	MOVL   R10, 40(SP)
   931  	MOVL   DX, R8
   932  	ORL    BP, R8
   933  	ANDL   AX, R8
   934  	MOVL   DX, R9
   935  	ANDL   BP, R9
   936  	ORL    R8, R9
   937  	ROLL   $0x1e, DX
   938  	ADDL   R9, BX
   939  	MOVL   CX, R8
   940  	ROLL   $0x05, R8
   941  	LEAL   2400959708(BX)(R10*1), BX
   942  	ADDL   R8, BX
   943  	MOVL   44(SP), R10
   944  	XORL   32(SP), R10
   945  	XORL   12(SP), R10
   946  	XORL   52(SP), R10
   947  	ROLL   $0x01, R10
   948  	MOVL   R10, 44(SP)
   949  	MOVL   CX, R8
   950  	ORL    DX, R8
   951  	ANDL   BP, R8
   952  	MOVL   CX, R9
   953  	ANDL   DX, R9
   954  	ORL    R8, R9
   955  	ROLL   $0x1e, CX
   956  	ADDL   R9, AX
   957  	MOVL   BX, R8
   958  	ROLL   $0x05, R8
   959  	LEAL   2400959708(AX)(R10*1), AX
   960  	ADDL   R8, AX
   961  	MOVL   48(SP), R10
   962  	XORL   36(SP), R10
   963  	XORL   16(SP), R10
   964  	XORL   56(SP), R10
   965  	ROLL   $0x01, R10
   966  	MOVL   R10, 48(SP)
   967  	MOVL   BX, R9
   968  	XORL   CX, R9
   969  	XORL   DX, R9
   970  	ROLL   $0x1e, BX
   971  	ADDL   R9, BP
   972  	MOVL   AX, R8
   973  	ROLL   $0x05, R8
   974  	LEAL   3395469782(BP)(R10*1), BP
   975  	ADDL   R8, BP
   976  	MOVL   52(SP), R10
   977  	XORL   40(SP), R10
   978  	XORL   20(SP), R10
   979  	XORL   60(SP), R10
   980  	ROLL   $0x01, R10
   981  	MOVL   R10, 52(SP)
   982  	MOVL   AX, R9
   983  	XORL   BX, R9
   984  	XORL   CX, R9
   985  	ROLL   $0x1e, AX
   986  	ADDL   R9, DX
   987  	MOVL   BP, R8
   988  	ROLL   $0x05, R8
   989  	LEAL   3395469782(DX)(R10*1), DX
   990  	ADDL   R8, DX
   991  	MOVL   56(SP), R10
   992  	XORL   44(SP), R10
   993  	XORL   24(SP), R10
   994  	XORL   (SP), R10
   995  	ROLL   $0x01, R10
   996  	MOVL   R10, 56(SP)
   997  	MOVL   BP, R9
   998  	XORL   AX, R9
   999  	XORL   BX, R9
  1000  	ROLL   $0x1e, BP
  1001  	ADDL   R9, CX
  1002  	MOVL   DX, R8
  1003  	ROLL   $0x05, R8
  1004  	LEAL   3395469782(CX)(R10*1), CX
  1005  	ADDL   R8, CX
  1006  	MOVL   60(SP), R10
  1007  	XORL   48(SP), R10
  1008  	XORL   28(SP), R10
  1009  	XORL   4(SP), R10
  1010  	ROLL   $0x01, R10
  1011  	MOVL   R10, 60(SP)
  1012  	MOVL   DX, R9
  1013  	XORL   BP, R9
  1014  	XORL   AX, R9
  1015  	ROLL   $0x1e, DX
  1016  	ADDL   R9, BX
  1017  	MOVL   CX, R8
  1018  	ROLL   $0x05, R8
  1019  	LEAL   3395469782(BX)(R10*1), BX
  1020  	ADDL   R8, BX
  1021  	MOVL   (SP), R10
  1022  	XORL   52(SP), R10
  1023  	XORL   32(SP), R10
  1024  	XORL   8(SP), R10
  1025  	ROLL   $0x01, R10
  1026  	MOVL   R10, (SP)
  1027  	MOVL   CX, R9
  1028  	XORL   DX, R9
  1029  	XORL   BP, R9
  1030  	ROLL   $0x1e, CX
  1031  	ADDL   R9, AX
  1032  	MOVL   BX, R8
  1033  	ROLL   $0x05, R8
  1034  	LEAL   3395469782(AX)(R10*1), AX
  1035  	ADDL   R8, AX
  1036  	MOVL   4(SP), R10
  1037  	XORL   56(SP), R10
  1038  	XORL   36(SP), R10
  1039  	XORL   12(SP), R10
  1040  	ROLL   $0x01, R10
  1041  	MOVL   R10, 4(SP)
  1042  	MOVL   BX, R9
  1043  	XORL   CX, R9
  1044  	XORL   DX, R9
  1045  	ROLL   $0x1e, BX
  1046  	ADDL   R9, BP
  1047  	MOVL   AX, R8
  1048  	ROLL   $0x05, R8
  1049  	LEAL   3395469782(BP)(R10*1), BP
  1050  	ADDL   R8, BP
  1051  	MOVL   8(SP), R10
  1052  	XORL   60(SP), R10
  1053  	XORL   40(SP), R10
  1054  	XORL   16(SP), R10
  1055  	ROLL   $0x01, R10
  1056  	MOVL   R10, 8(SP)
  1057  	MOVL   AX, R9
  1058  	XORL   BX, R9
  1059  	XORL   CX, R9
  1060  	ROLL   $0x1e, AX
  1061  	ADDL   R9, DX
  1062  	MOVL   BP, R8
  1063  	ROLL   $0x05, R8
  1064  	LEAL   3395469782(DX)(R10*1), DX
  1065  	ADDL   R8, DX
  1066  	MOVL   12(SP), R10
  1067  	XORL   (SP), R10
  1068  	XORL   44(SP), R10
  1069  	XORL   20(SP), R10
  1070  	ROLL   $0x01, R10
  1071  	MOVL   R10, 12(SP)
  1072  	MOVL   BP, R9
  1073  	XORL   AX, R9
  1074  	XORL   BX, R9
  1075  	ROLL   $0x1e, BP
  1076  	ADDL   R9, CX
  1077  	MOVL   DX, R8
  1078  	ROLL   $0x05, R8
  1079  	LEAL   3395469782(CX)(R10*1), CX
  1080  	ADDL   R8, CX
  1081  	MOVL   16(SP), R10
  1082  	XORL   4(SP), R10
  1083  	XORL   48(SP), R10
  1084  	XORL   24(SP), R10
  1085  	ROLL   $0x01, R10
  1086  	MOVL   R10, 16(SP)
  1087  	MOVL   DX, R9
  1088  	XORL   BP, R9
  1089  	XORL   AX, R9
  1090  	ROLL   $0x1e, DX
  1091  	ADDL   R9, BX
  1092  	MOVL   CX, R8
  1093  	ROLL   $0x05, R8
  1094  	LEAL   3395469782(BX)(R10*1), BX
  1095  	ADDL   R8, BX
  1096  	MOVL   20(SP), R10
  1097  	XORL   8(SP), R10
  1098  	XORL   52(SP), R10
  1099  	XORL   28(SP), R10
  1100  	ROLL   $0x01, R10
  1101  	MOVL   R10, 20(SP)
  1102  	MOVL   CX, R9
  1103  	XORL   DX, R9
  1104  	XORL   BP, R9
  1105  	ROLL   $0x1e, CX
  1106  	ADDL   R9, AX
  1107  	MOVL   BX, R8
  1108  	ROLL   $0x05, R8
  1109  	LEAL   3395469782(AX)(R10*1), AX
  1110  	ADDL   R8, AX
  1111  	MOVL   24(SP), R10
  1112  	XORL   12(SP), R10
  1113  	XORL   56(SP), R10
  1114  	XORL   32(SP), R10
  1115  	ROLL   $0x01, R10
  1116  	MOVL   R10, 24(SP)
  1117  	MOVL   BX, R9
  1118  	XORL   CX, R9
  1119  	XORL   DX, R9
  1120  	ROLL   $0x1e, BX
  1121  	ADDL   R9, BP
  1122  	MOVL   AX, R8
  1123  	ROLL   $0x05, R8
  1124  	LEAL   3395469782(BP)(R10*1), BP
  1125  	ADDL   R8, BP
  1126  	MOVL   28(SP), R10
  1127  	XORL   16(SP), R10
  1128  	XORL   60(SP), R10
  1129  	XORL   36(SP), R10
  1130  	ROLL   $0x01, R10
  1131  	MOVL   R10, 28(SP)
  1132  	MOVL   AX, R9
  1133  	XORL   BX, R9
  1134  	XORL   CX, R9
  1135  	ROLL   $0x1e, AX
  1136  	ADDL   R9, DX
  1137  	MOVL   BP, R8
  1138  	ROLL   $0x05, R8
  1139  	LEAL   3395469782(DX)(R10*1), DX
  1140  	ADDL   R8, DX
  1141  	MOVL   32(SP), R10
  1142  	XORL   20(SP), R10
  1143  	XORL   (SP), R10
  1144  	XORL   40(SP), R10
  1145  	ROLL   $0x01, R10
  1146  	MOVL   R10, 32(SP)
  1147  	MOVL   BP, R9
  1148  	XORL   AX, R9
  1149  	XORL   BX, R9
  1150  	ROLL   $0x1e, BP
  1151  	ADDL   R9, CX
  1152  	MOVL   DX, R8
  1153  	ROLL   $0x05, R8
  1154  	LEAL   3395469782(CX)(R10*1), CX
  1155  	ADDL   R8, CX
  1156  	MOVL   36(SP), R10
  1157  	XORL   24(SP), R10
  1158  	XORL   4(SP), R10
  1159  	XORL   44(SP), R10
  1160  	ROLL   $0x01, R10
  1161  	MOVL   R10, 36(SP)
  1162  	MOVL   DX, R9
  1163  	XORL   BP, R9
  1164  	XORL   AX, R9
  1165  	ROLL   $0x1e, DX
  1166  	ADDL   R9, BX
  1167  	MOVL   CX, R8
  1168  	ROLL   $0x05, R8
  1169  	LEAL   3395469782(BX)(R10*1), BX
  1170  	ADDL   R8, BX
  1171  	MOVL   40(SP), R10
  1172  	XORL   28(SP), R10
  1173  	XORL   8(SP), R10
  1174  	XORL   48(SP), R10
  1175  	ROLL   $0x01, R10
  1176  	MOVL   R10, 40(SP)
  1177  	MOVL   CX, R9
  1178  	XORL   DX, R9
  1179  	XORL   BP, R9
  1180  	ROLL   $0x1e, CX
  1181  	ADDL   R9, AX
  1182  	MOVL   BX, R8
  1183  	ROLL   $0x05, R8
  1184  	LEAL   3395469782(AX)(R10*1), AX
  1185  	ADDL   R8, AX
  1186  	MOVL   44(SP), R10
  1187  	XORL   32(SP), R10
  1188  	XORL   12(SP), R10
  1189  	XORL   52(SP), R10
  1190  	ROLL   $0x01, R10
  1191  	MOVL   R10, 44(SP)
  1192  	MOVL   BX, R9
  1193  	XORL   CX, R9
  1194  	XORL   DX, R9
  1195  	ROLL   $0x1e, BX
  1196  	ADDL   R9, BP
  1197  	MOVL   AX, R8
  1198  	ROLL   $0x05, R8
  1199  	LEAL   3395469782(BP)(R10*1), BP
  1200  	ADDL   R8, BP
  1201  	MOVL   48(SP), R10
  1202  	XORL   36(SP), R10
  1203  	XORL   16(SP), R10
  1204  	XORL   56(SP), R10
  1205  	ROLL   $0x01, R10
  1206  	MOVL   R10, 48(SP)
  1207  	MOVL   AX, R9
  1208  	XORL   BX, R9
  1209  	XORL   CX, R9
  1210  	ROLL   $0x1e, AX
  1211  	ADDL   R9, DX
  1212  	MOVL   BP, R8
  1213  	ROLL   $0x05, R8
  1214  	LEAL   3395469782(DX)(R10*1), DX
  1215  	ADDL   R8, DX
  1216  	MOVL   52(SP), R10
  1217  	XORL   40(SP), R10
  1218  	XORL   20(SP), R10
  1219  	XORL   60(SP), R10
  1220  	ROLL   $0x01, R10
  1221  	MOVL   R10, 52(SP)
  1222  	MOVL   BP, R9
  1223  	XORL   AX, R9
  1224  	XORL   BX, R9
  1225  	ROLL   $0x1e, BP
  1226  	ADDL   R9, CX
  1227  	MOVL   DX, R8
  1228  	ROLL   $0x05, R8
  1229  	LEAL   3395469782(CX)(R10*1), CX
  1230  	ADDL   R8, CX
  1231  	MOVL   56(SP), R10
  1232  	XORL   44(SP), R10
  1233  	XORL   24(SP), R10
  1234  	XORL   (SP), R10
  1235  	ROLL   $0x01, R10
  1236  	MOVL   R10, 56(SP)
  1237  	MOVL   DX, R9
  1238  	XORL   BP, R9
  1239  	XORL   AX, R9
  1240  	ROLL   $0x1e, DX
  1241  	ADDL   R9, BX
  1242  	MOVL   CX, R8
  1243  	ROLL   $0x05, R8
  1244  	LEAL   3395469782(BX)(R10*1), BX
  1245  	ADDL   R8, BX
  1246  	MOVL   60(SP), R10
  1247  	XORL   48(SP), R10
  1248  	XORL   28(SP), R10
  1249  	XORL   4(SP), R10
  1250  	ROLL   $0x01, R10
  1251  	MOVL   R10, 60(SP)
  1252  	MOVL   CX, R9
  1253  	XORL   DX, R9
  1254  	XORL   BP, R9
  1255  	ROLL   $0x1e, CX
  1256  	ADDL   R9, AX
  1257  	MOVL   BX, R8
  1258  	ROLL   $0x05, R8
  1259  	LEAL   3395469782(AX)(R10*1), AX
  1260  	ADDL   R8, AX
  1261  	ADDL   R11, AX
  1262  	ADDL   R12, BX
  1263  	ADDL   R13, CX
  1264  	ADDL   R14, DX
  1265  	ADDL   R15, BP
  1266  	ADDQ   $0x40, SI
  1267  	CMPQ   SI, DI
  1268  	JB     loop
  1269  
  1270  end:
  1271  	MOVQ dig+0(FP), DI
  1272  	MOVL AX, (DI)
  1273  	MOVL BX, 4(DI)
  1274  	MOVL CX, 8(DI)
  1275  	MOVL DX, 12(DI)
  1276  	MOVL BP, 16(DI)
  1277  	RET
  1278  
  1279  // func blockAVX2(dig *digest, p []byte)
  1280  // Requires: AVX, AVX2, BMI, BMI2, CMOV
  1281  TEXT ·blockAVX2(SB), $1408-32
  1282  	MOVQ        dig+0(FP), DI
  1283  	MOVQ        p_base+8(FP), SI
  1284  	MOVQ        p_len+16(FP), DX
  1285  	SHRQ        $0x06, DX
  1286  	SHLQ        $0x06, DX
  1287  	LEAQ        K_XMM_AR<>+0(SB), R8
  1288  	MOVQ        DI, R9
  1289  	MOVQ        SI, R10
  1290  	LEAQ        64(SI), R13
  1291  	ADDQ        SI, DX
  1292  	ADDQ        $0x40, DX
  1293  	MOVQ        DX, R11
  1294  	CMPQ        R13, R11
  1295  	CMOVQCC     R8, R13
  1296  	VMOVDQU     BSWAP_SHUFB_CTL<>+0(SB), Y10
  1297  	MOVL        (R9), CX
  1298  	MOVL        4(R9), SI
  1299  	MOVL        8(R9), DI
  1300  	MOVL        12(R9), AX
  1301  	MOVL        16(R9), DX
  1302  	MOVQ        SP, R14
  1303  	LEAQ        672(SP), R15
  1304  	VMOVDQU     (R10), X0
  1305  	VINSERTI128 $0x01, (R13), Y0, Y0
  1306  	VPSHUFB     Y10, Y0, Y15
  1307  	VPADDD      (R8), Y15, Y0
  1308  	VMOVDQU     Y0, (R14)
  1309  	VMOVDQU     16(R10), X0
  1310  	VINSERTI128 $0x01, 16(R13), Y0, Y0
  1311  	VPSHUFB     Y10, Y0, Y14
  1312  	VPADDD      (R8), Y14, Y0
  1313  	VMOVDQU     Y0, 32(R14)
  1314  	VMOVDQU     32(R10), X0
  1315  	VINSERTI128 $0x01, 32(R13), Y0, Y0
  1316  	VPSHUFB     Y10, Y0, Y13
  1317  	VPADDD      (R8), Y13, Y0
  1318  	VMOVDQU     Y0, 64(R14)
  1319  	VMOVDQU     48(R10), X0
  1320  	VINSERTI128 $0x01, 48(R13), Y0, Y0
  1321  	VPSHUFB     Y10, Y0, Y12
  1322  	VPADDD      (R8), Y12, Y0
  1323  	VMOVDQU     Y0, 96(R14)
  1324  	VPALIGNR    $0x08, Y15, Y14, Y8
  1325  	VPSRLDQ     $0x04, Y12, Y0
  1326  	VPXOR       Y13, Y8, Y8
  1327  	VPXOR       Y15, Y0, Y0
  1328  	VPXOR       Y0, Y8, Y8
  1329  	VPSLLDQ     $0x0c, Y8, Y9
  1330  	VPSLLD      $0x01, Y8, Y0
  1331  	VPSRLD      $0x1f, Y8, Y8
  1332  	VPOR        Y8, Y0, Y0
  1333  	VPSLLD      $0x02, Y9, Y8
  1334  	VPSRLD      $0x1e, Y9, Y9
  1335  	VPXOR       Y8, Y0, Y0
  1336  	VPXOR       Y9, Y0, Y8
  1337  	VPADDD      (R8), Y8, Y0
  1338  	VMOVDQU     Y0, 128(R14)
  1339  	VPALIGNR    $0x08, Y14, Y13, Y7
  1340  	VPSRLDQ     $0x04, Y8, Y0
  1341  	VPXOR       Y12, Y7, Y7
  1342  	VPXOR       Y14, Y0, Y0
  1343  	VPXOR       Y0, Y7, Y7
  1344  	VPSLLDQ     $0x0c, Y7, Y9
  1345  	VPSLLD      $0x01, Y7, Y0
  1346  	VPSRLD      $0x1f, Y7, Y7
  1347  	VPOR        Y7, Y0, Y0
  1348  	VPSLLD      $0x02, Y9, Y7
  1349  	VPSRLD      $0x1e, Y9, Y9
  1350  	VPXOR       Y7, Y0, Y0
  1351  	VPXOR       Y9, Y0, Y7
  1352  	VPADDD      32(R8), Y7, Y0
  1353  	VMOVDQU     Y0, 160(R14)
  1354  	VPALIGNR    $0x08, Y13, Y12, Y5
  1355  	VPSRLDQ     $0x04, Y7, Y0
  1356  	VPXOR       Y8, Y5, Y5
  1357  	VPXOR       Y13, Y0, Y0
  1358  	VPXOR       Y0, Y5, Y5
  1359  	VPSLLDQ     $0x0c, Y5, Y9
  1360  	VPSLLD      $0x01, Y5, Y0
  1361  	VPSRLD      $0x1f, Y5, Y5
  1362  	VPOR        Y5, Y0, Y0
  1363  	VPSLLD      $0x02, Y9, Y5
  1364  	VPSRLD      $0x1e, Y9, Y9
  1365  	VPXOR       Y5, Y0, Y0
  1366  	VPXOR       Y9, Y0, Y5
  1367  	VPADDD      32(R8), Y5, Y0
  1368  	VMOVDQU     Y0, 192(R14)
  1369  	VPALIGNR    $0x08, Y12, Y8, Y3
  1370  	VPSRLDQ     $0x04, Y5, Y0
  1371  	VPXOR       Y7, Y3, Y3
  1372  	VPXOR       Y12, Y0, Y0
  1373  	VPXOR       Y0, Y3, Y3
  1374  	VPSLLDQ     $0x0c, Y3, Y9
  1375  	VPSLLD      $0x01, Y3, Y0
  1376  	VPSRLD      $0x1f, Y3, Y3
  1377  	VPOR        Y3, Y0, Y0
  1378  	VPSLLD      $0x02, Y9, Y3
  1379  	VPSRLD      $0x1e, Y9, Y9
  1380  	VPXOR       Y3, Y0, Y0
  1381  	VPXOR       Y9, Y0, Y3
  1382  	VPADDD      32(R8), Y3, Y0
  1383  	VMOVDQU     Y0, 224(R14)
  1384  	VPALIGNR    $0x08, Y5, Y3, Y0
  1385  	VPXOR       Y14, Y15, Y15
  1386  	VPXOR       Y8, Y0, Y0
  1387  	VPXOR       Y0, Y15, Y15
  1388  	VPSLLD      $0x02, Y15, Y0
  1389  	VPSRLD      $0x1e, Y15, Y15
  1390  	VPOR        Y15, Y0, Y15
  1391  	VPADDD      32(R8), Y15, Y0
  1392  	VMOVDQU     Y0, 256(R14)
  1393  	VPALIGNR    $0x08, Y3, Y15, Y0
  1394  	VPXOR       Y13, Y14, Y14
  1395  	VPXOR       Y7, Y0, Y0
  1396  	VPXOR       Y0, Y14, Y14
  1397  	VPSLLD      $0x02, Y14, Y0
  1398  	VPSRLD      $0x1e, Y14, Y14
  1399  	VPOR        Y14, Y0, Y14
  1400  	VPADDD      32(R8), Y14, Y0
  1401  	VMOVDQU     Y0, 288(R14)
  1402  	VPALIGNR    $0x08, Y15, Y14, Y0
  1403  	VPXOR       Y12, Y13, Y13
  1404  	VPXOR       Y5, Y0, Y0
  1405  	VPXOR       Y0, Y13, Y13
  1406  	VPSLLD      $0x02, Y13, Y0
  1407  	VPSRLD      $0x1e, Y13, Y13
  1408  	VPOR        Y13, Y0, Y13
  1409  	VPADDD      64(R8), Y13, Y0
  1410  	VMOVDQU     Y0, 320(R14)
  1411  	VPALIGNR    $0x08, Y14, Y13, Y0
  1412  	VPXOR       Y8, Y12, Y12
  1413  	VPXOR       Y3, Y0, Y0
  1414  	VPXOR       Y0, Y12, Y12
  1415  	VPSLLD      $0x02, Y12, Y0
  1416  	VPSRLD      $0x1e, Y12, Y12
  1417  	VPOR        Y12, Y0, Y12
  1418  	VPADDD      64(R8), Y12, Y0
  1419  	VMOVDQU     Y0, 352(R14)
  1420  	VPALIGNR    $0x08, Y13, Y12, Y0
  1421  	VPXOR       Y7, Y8, Y8
  1422  	VPXOR       Y15, Y0, Y0
  1423  	VPXOR       Y0, Y8, Y8
  1424  	VPSLLD      $0x02, Y8, Y0
  1425  	VPSRLD      $0x1e, Y8, Y8
  1426  	VPOR        Y8, Y0, Y8
  1427  	VPADDD      64(R8), Y8, Y0
  1428  	VMOVDQU     Y0, 384(R14)
  1429  	VPALIGNR    $0x08, Y12, Y8, Y0
  1430  	VPXOR       Y5, Y7, Y7
  1431  	VPXOR       Y14, Y0, Y0
  1432  	VPXOR       Y0, Y7, Y7
  1433  	VPSLLD      $0x02, Y7, Y0
  1434  	VPSRLD      $0x1e, Y7, Y7
  1435  	VPOR        Y7, Y0, Y7
  1436  	VPADDD      64(R8), Y7, Y0
  1437  	VMOVDQU     Y0, 416(R14)
  1438  	VPALIGNR    $0x08, Y8, Y7, Y0
  1439  	VPXOR       Y3, Y5, Y5
  1440  	VPXOR       Y13, Y0, Y0
  1441  	VPXOR       Y0, Y5, Y5
  1442  	VPSLLD      $0x02, Y5, Y0
  1443  	VPSRLD      $0x1e, Y5, Y5
  1444  	VPOR        Y5, Y0, Y5
  1445  	VPADDD      64(R8), Y5, Y0
  1446  	VMOVDQU     Y0, 448(R14)
  1447  	VPALIGNR    $0x08, Y7, Y5, Y0
  1448  	VPXOR       Y15, Y3, Y3
  1449  	VPXOR       Y12, Y0, Y0
  1450  	VPXOR       Y0, Y3, Y3
  1451  	VPSLLD      $0x02, Y3, Y0
  1452  	VPSRLD      $0x1e, Y3, Y3
  1453  	VPOR        Y3, Y0, Y3
  1454  	VPADDD      96(R8), Y3, Y0
  1455  	VMOVDQU     Y0, 480(R14)
  1456  	VPALIGNR    $0x08, Y5, Y3, Y0
  1457  	VPXOR       Y14, Y15, Y15
  1458  	VPXOR       Y8, Y0, Y0
  1459  	VPXOR       Y0, Y15, Y15
  1460  	VPSLLD      $0x02, Y15, Y0
  1461  	VPSRLD      $0x1e, Y15, Y15
  1462  	VPOR        Y15, Y0, Y15
  1463  	VPADDD      96(R8), Y15, Y0
  1464  	VMOVDQU     Y0, 512(R14)
  1465  	VPALIGNR    $0x08, Y3, Y15, Y0
  1466  	VPXOR       Y13, Y14, Y14
  1467  	VPXOR       Y7, Y0, Y0
  1468  	VPXOR       Y0, Y14, Y14
  1469  	VPSLLD      $0x02, Y14, Y0
  1470  	VPSRLD      $0x1e, Y14, Y14
  1471  	VPOR        Y14, Y0, Y14
  1472  	VPADDD      96(R8), Y14, Y0
  1473  	VMOVDQU     Y0, 544(R14)
  1474  	VPALIGNR    $0x08, Y15, Y14, Y0
  1475  	VPXOR       Y12, Y13, Y13
  1476  	VPXOR       Y5, Y0, Y0
  1477  	VPXOR       Y0, Y13, Y13
  1478  	VPSLLD      $0x02, Y13, Y0
  1479  	VPSRLD      $0x1e, Y13, Y13
  1480  	VPOR        Y13, Y0, Y13
  1481  	VPADDD      96(R8), Y13, Y0
  1482  	VMOVDQU     Y0, 576(R14)
  1483  	VPALIGNR    $0x08, Y14, Y13, Y0
  1484  	VPXOR       Y8, Y12, Y12
  1485  	VPXOR       Y3, Y0, Y0
  1486  	VPXOR       Y0, Y12, Y12
  1487  	VPSLLD      $0x02, Y12, Y0
  1488  	VPSRLD      $0x1e, Y12, Y12
  1489  	VPOR        Y12, Y0, Y12
  1490  	VPADDD      96(R8), Y12, Y0
  1491  	VMOVDQU     Y0, 608(R14)
  1492  	XCHGQ       R15, R14
  1493  
  1494  loop:
  1495  	CMPQ R10, R8
  1496  	JNE  begin
  1497  	VZEROUPPER
  1498  	RET
  1499  
  1500  begin:
  1501  	MOVL        SI, BX
  1502  	RORXL       $0x02, SI, SI
  1503  	ANDNL       AX, BX, BP
  1504  	ANDL        DI, BX
  1505  	XORL        BP, BX
  1506  	ADDL        (R15), DX
  1507  	ANDNL       DI, CX, BP
  1508  	LEAL        (DX)(BX*1), DX
  1509  	RORXL       $0x1b, CX, R12
  1510  	RORXL       $0x02, CX, BX
  1511  	VMOVDQU     128(R10), X0
  1512  	ANDL        SI, CX
  1513  	XORL        BP, CX
  1514  	LEAL        (DX)(R12*1), DX
  1515  	ADDL        4(R15), AX
  1516  	ANDNL       SI, DX, BP
  1517  	LEAL        (AX)(CX*1), AX
  1518  	RORXL       $0x1b, DX, R12
  1519  	RORXL       $0x02, DX, CX
  1520  	VINSERTI128 $0x01, 128(R13), Y0, Y0
  1521  	ANDL        BX, DX
  1522  	XORL        BP, DX
  1523  	LEAL        (AX)(R12*1), AX
  1524  	ADDL        8(R15), DI
  1525  	ANDNL       BX, AX, BP
  1526  	LEAL        (DI)(DX*1), DI
  1527  	RORXL       $0x1b, AX, R12
  1528  	RORXL       $0x02, AX, DX
  1529  	VPSHUFB     Y10, Y0, Y15
  1530  	ANDL        CX, AX
  1531  	XORL        BP, AX
  1532  	LEAL        (DI)(R12*1), DI
  1533  	ADDL        12(R15), SI
  1534  	ANDNL       CX, DI, BP
  1535  	LEAL        (SI)(AX*1), SI
  1536  	RORXL       $0x1b, DI, R12
  1537  	RORXL       $0x02, DI, AX
  1538  	ANDL        DX, DI
  1539  	XORL        BP, DI
  1540  	LEAL        (SI)(R12*1), SI
  1541  	ADDL        32(R15), BX
  1542  	ANDNL       DX, SI, BP
  1543  	LEAL        (BX)(DI*1), BX
  1544  	RORXL       $0x1b, SI, R12
  1545  	RORXL       $0x02, SI, DI
  1546  	VPADDD      (R8), Y15, Y0
  1547  	ANDL        AX, SI
  1548  	XORL        BP, SI
  1549  	LEAL        (BX)(R12*1), BX
  1550  	ADDL        36(R15), CX
  1551  	ANDNL       AX, BX, BP
  1552  	LEAL        (CX)(SI*1), CX
  1553  	RORXL       $0x1b, BX, R12
  1554  	RORXL       $0x02, BX, SI
  1555  	ANDL        DI, BX
  1556  	XORL        BP, BX
  1557  	LEAL        (CX)(R12*1), CX
  1558  	ADDL        40(R15), DX
  1559  	ANDNL       DI, CX, BP
  1560  	LEAL        (DX)(BX*1), DX
  1561  	RORXL       $0x1b, CX, R12
  1562  	RORXL       $0x02, CX, BX
  1563  	ANDL        SI, CX
  1564  	XORL        BP, CX
  1565  	LEAL        (DX)(R12*1), DX
  1566  	ADDL        44(R15), AX
  1567  	ANDNL       SI, DX, BP
  1568  	LEAL        (AX)(CX*1), AX
  1569  	RORXL       $0x1b, DX, R12
  1570  	RORXL       $0x02, DX, CX
  1571  	VMOVDQU     Y0, (R14)
  1572  	ANDL        BX, DX
  1573  	XORL        BP, DX
  1574  	LEAL        (AX)(R12*1), AX
  1575  	ADDL        64(R15), DI
  1576  	ANDNL       BX, AX, BP
  1577  	LEAL        (DI)(DX*1), DI
  1578  	RORXL       $0x1b, AX, R12
  1579  	RORXL       $0x02, AX, DX
  1580  	VMOVDQU     144(R10), X0
  1581  	ANDL        CX, AX
  1582  	XORL        BP, AX
  1583  	LEAL        (DI)(R12*1), DI
  1584  	ADDL        68(R15), SI
  1585  	ANDNL       CX, DI, BP
  1586  	LEAL        (SI)(AX*1), SI
  1587  	RORXL       $0x1b, DI, R12
  1588  	RORXL       $0x02, DI, AX
  1589  	VINSERTI128 $0x01, 144(R13), Y0, Y0
  1590  	ANDL        DX, DI
  1591  	XORL        BP, DI
  1592  	LEAL        (SI)(R12*1), SI
  1593  	ADDL        72(R15), BX
  1594  	ANDNL       DX, SI, BP
  1595  	LEAL        (BX)(DI*1), BX
  1596  	RORXL       $0x1b, SI, R12
  1597  	RORXL       $0x02, SI, DI
  1598  	VPSHUFB     Y10, Y0, Y14
  1599  	ANDL        AX, SI
  1600  	XORL        BP, SI
  1601  	LEAL        (BX)(R12*1), BX
  1602  	ADDL        76(R15), CX
  1603  	ANDNL       AX, BX, BP
  1604  	LEAL        (CX)(SI*1), CX
  1605  	RORXL       $0x1b, BX, R12
  1606  	RORXL       $0x02, BX, SI
  1607  	ANDL        DI, BX
  1608  	XORL        BP, BX
  1609  	LEAL        (CX)(R12*1), CX
  1610  	ADDL        96(R15), DX
  1611  	ANDNL       DI, CX, BP
  1612  	LEAL        (DX)(BX*1), DX
  1613  	RORXL       $0x1b, CX, R12
  1614  	RORXL       $0x02, CX, BX
  1615  	VPADDD      (R8), Y14, Y0
  1616  	ANDL        SI, CX
  1617  	XORL        BP, CX
  1618  	LEAL        (DX)(R12*1), DX
  1619  	ADDL        100(R15), AX
  1620  	ANDNL       SI, DX, BP
  1621  	LEAL        (AX)(CX*1), AX
  1622  	RORXL       $0x1b, DX, R12
  1623  	RORXL       $0x02, DX, CX
  1624  	ANDL        BX, DX
  1625  	XORL        BP, DX
  1626  	LEAL        (AX)(R12*1), AX
  1627  	ADDL        104(R15), DI
  1628  	ANDNL       BX, AX, BP
  1629  	LEAL        (DI)(DX*1), DI
  1630  	RORXL       $0x1b, AX, R12
  1631  	RORXL       $0x02, AX, DX
  1632  	ANDL        CX, AX
  1633  	XORL        BP, AX
  1634  	LEAL        (DI)(R12*1), DI
  1635  	ADDL        108(R15), SI
  1636  	ANDNL       CX, DI, BP
  1637  	LEAL        (SI)(AX*1), SI
  1638  	RORXL       $0x1b, DI, R12
  1639  	RORXL       $0x02, DI, AX
  1640  	VMOVDQU     Y0, 32(R14)
  1641  	ANDL        DX, DI
  1642  	XORL        BP, DI
  1643  	LEAL        (SI)(R12*1), SI
  1644  	ADDL        128(R15), BX
  1645  	ANDNL       DX, SI, BP
  1646  	LEAL        (BX)(DI*1), BX
  1647  	RORXL       $0x1b, SI, R12
  1648  	RORXL       $0x02, SI, DI
  1649  	VMOVDQU     160(R10), X0
  1650  	ANDL        AX, SI
  1651  	XORL        BP, SI
  1652  	LEAL        (BX)(R12*1), BX
  1653  	ADDL        132(R15), CX
  1654  	ANDNL       AX, BX, BP
  1655  	LEAL        (CX)(SI*1), CX
  1656  	RORXL       $0x1b, BX, R12
  1657  	RORXL       $0x02, BX, SI
  1658  	VINSERTI128 $0x01, 160(R13), Y0, Y0
  1659  	ANDL        DI, BX
  1660  	XORL        BP, BX
  1661  	LEAL        (CX)(R12*1), CX
  1662  	ADDL        136(R15), DX
  1663  	ANDNL       DI, CX, BP
  1664  	LEAL        (DX)(BX*1), DX
  1665  	RORXL       $0x1b, CX, R12
  1666  	RORXL       $0x02, CX, BX
  1667  	VPSHUFB     Y10, Y0, Y13
  1668  	ANDL        SI, CX
  1669  	XORL        BP, CX
  1670  	LEAL        (DX)(R12*1), DX
  1671  	ADDL        140(R15), AX
  1672  	LEAL        (AX)(CX*1), AX
  1673  	RORXL       $0x1b, DX, R12
  1674  	RORXL       $0x02, DX, CX
  1675  	XORL        BX, DX
  1676  	ADDL        R12, AX
  1677  	XORL        SI, DX
  1678  	ADDL        160(R15), DI
  1679  	LEAL        (DI)(DX*1), DI
  1680  	RORXL       $0x1b, AX, R12
  1681  	RORXL       $0x02, AX, DX
  1682  	VPADDD      (R8), Y13, Y0
  1683  	XORL        CX, AX
  1684  	ADDL        R12, DI
  1685  	XORL        BX, AX
  1686  	ADDL        164(R15), SI
  1687  	LEAL        (SI)(AX*1), SI
  1688  	RORXL       $0x1b, DI, R12
  1689  	RORXL       $0x02, DI, AX
  1690  	XORL        DX, DI
  1691  	ADDL        R12, SI
  1692  	XORL        CX, DI
  1693  	ADDL        168(R15), BX
  1694  	LEAL        (BX)(DI*1), BX
  1695  	RORXL       $0x1b, SI, R12
  1696  	RORXL       $0x02, SI, DI
  1697  	XORL        AX, SI
  1698  	ADDL        R12, BX
  1699  	XORL        DX, SI
  1700  	ADDL        172(R15), CX
  1701  	LEAL        (CX)(SI*1), CX
  1702  	RORXL       $0x1b, BX, R12
  1703  	RORXL       $0x02, BX, SI
  1704  	VMOVDQU     Y0, 64(R14)
  1705  	XORL        DI, BX
  1706  	ADDL        R12, CX
  1707  	XORL        AX, BX
  1708  	ADDL        192(R15), DX
  1709  	LEAL        (DX)(BX*1), DX
  1710  	RORXL       $0x1b, CX, R12
  1711  	RORXL       $0x02, CX, BX
  1712  	VMOVDQU     176(R10), X0
  1713  	XORL        SI, CX
  1714  	ADDL        R12, DX
  1715  	XORL        DI, CX
  1716  	ADDL        196(R15), AX
  1717  	LEAL        (AX)(CX*1), AX
  1718  	RORXL       $0x1b, DX, R12
  1719  	RORXL       $0x02, DX, CX
  1720  	VINSERTI128 $0x01, 176(R13), Y0, Y0
  1721  	XORL        BX, DX
  1722  	ADDL        R12, AX
  1723  	XORL        SI, DX
  1724  	ADDL        200(R15), DI
  1725  	LEAL        (DI)(DX*1), DI
  1726  	RORXL       $0x1b, AX, R12
  1727  	RORXL       $0x02, AX, DX
  1728  	VPSHUFB     Y10, Y0, Y12
  1729  	XORL        CX, AX
  1730  	ADDL        R12, DI
  1731  	XORL        BX, AX
  1732  	ADDL        204(R15), SI
  1733  	LEAL        (SI)(AX*1), SI
  1734  	RORXL       $0x1b, DI, R12
  1735  	RORXL       $0x02, DI, AX
  1736  	XORL        DX, DI
  1737  	ADDL        R12, SI
  1738  	XORL        CX, DI
  1739  	ADDL        224(R15), BX
  1740  	LEAL        (BX)(DI*1), BX
  1741  	RORXL       $0x1b, SI, R12
  1742  	RORXL       $0x02, SI, DI
  1743  	VPADDD      (R8), Y12, Y0
  1744  	XORL        AX, SI
  1745  	ADDL        R12, BX
  1746  	XORL        DX, SI
  1747  	ADDL        228(R15), CX
  1748  	LEAL        (CX)(SI*1), CX
  1749  	RORXL       $0x1b, BX, R12
  1750  	RORXL       $0x02, BX, SI
  1751  	XORL        DI, BX
  1752  	ADDL        R12, CX
  1753  	XORL        AX, BX
  1754  	ADDL        232(R15), DX
  1755  	LEAL        (DX)(BX*1), DX
  1756  	RORXL       $0x1b, CX, R12
  1757  	RORXL       $0x02, CX, BX
  1758  	XORL        SI, CX
  1759  	ADDL        R12, DX
  1760  	XORL        DI, CX
  1761  	ADDL        236(R15), AX
  1762  	LEAL        (AX)(CX*1), AX
  1763  	RORXL       $0x1b, DX, R12
  1764  	RORXL       $0x02, DX, CX
  1765  	VMOVDQU     Y0, 96(R14)
  1766  	XORL        BX, DX
  1767  	ADDL        R12, AX
  1768  	XORL        SI, DX
  1769  	ADDL        256(R15), DI
  1770  	LEAL        (DI)(DX*1), DI
  1771  	RORXL       $0x1b, AX, R12
  1772  	RORXL       $0x02, AX, DX
  1773  	VPALIGNR    $0x08, Y15, Y14, Y8
  1774  	VPSRLDQ     $0x04, Y12, Y0
  1775  	XORL        CX, AX
  1776  	ADDL        R12, DI
  1777  	XORL        BX, AX
  1778  	ADDL        260(R15), SI
  1779  	LEAL        (SI)(AX*1), SI
  1780  	RORXL       $0x1b, DI, R12
  1781  	RORXL       $0x02, DI, AX
  1782  	VPXOR       Y13, Y8, Y8
  1783  	VPXOR       Y15, Y0, Y0
  1784  	XORL        DX, DI
  1785  	ADDL        R12, SI
  1786  	XORL        CX, DI
  1787  	ADDL        264(R15), BX
  1788  	LEAL        (BX)(DI*1), BX
  1789  	RORXL       $0x1b, SI, R12
  1790  	RORXL       $0x02, SI, DI
  1791  	VPXOR       Y0, Y8, Y8
  1792  	VPSLLDQ     $0x0c, Y8, Y9
  1793  	XORL        AX, SI
  1794  	ADDL        R12, BX
  1795  	XORL        DX, SI
  1796  	ADDL        268(R15), CX
  1797  	LEAL        (CX)(SI*1), CX
  1798  	RORXL       $0x1b, BX, R12
  1799  	RORXL       $0x02, BX, SI
  1800  	VPSLLD      $0x01, Y8, Y0
  1801  	VPSRLD      $0x1f, Y8, Y8
  1802  	XORL        DI, BX
  1803  	ADDL        R12, CX
  1804  	XORL        AX, BX
  1805  	ADDL        288(R15), DX
  1806  	LEAL        (DX)(BX*1), DX
  1807  	RORXL       $0x1b, CX, R12
  1808  	RORXL       $0x02, CX, BX
  1809  	VPOR        Y8, Y0, Y0
  1810  	VPSLLD      $0x02, Y9, Y8
  1811  	XORL        SI, CX
  1812  	ADDL        R12, DX
  1813  	XORL        DI, CX
  1814  	ADDL        292(R15), AX
  1815  	LEAL        (AX)(CX*1), AX
  1816  	RORXL       $0x1b, DX, R12
  1817  	RORXL       $0x02, DX, CX
  1818  	VPSRLD      $0x1e, Y9, Y9
  1819  	VPXOR       Y8, Y0, Y0
  1820  	XORL        BX, DX
  1821  	ADDL        R12, AX
  1822  	XORL        SI, DX
  1823  	ADDL        296(R15), DI
  1824  	LEAL        (DI)(DX*1), DI
  1825  	RORXL       $0x1b, AX, R12
  1826  	RORXL       $0x02, AX, DX
  1827  	XORL        CX, AX
  1828  	ADDL        R12, DI
  1829  	XORL        BX, AX
  1830  	ADDL        300(R15), SI
  1831  	VPXOR       Y9, Y0, Y8
  1832  	VPADDD      (R8), Y8, Y0
  1833  	VMOVDQU     Y0, 128(R14)
  1834  	LEAL        (SI)(AX*1), SI
  1835  	MOVL        DX, BP
  1836  	ORL         DI, BP
  1837  	RORXL       $0x1b, DI, R12
  1838  	RORXL       $0x02, DI, AX
  1839  	ANDL        CX, BP
  1840  	ANDL        DX, DI
  1841  	ORL         BP, DI
  1842  	ADDL        R12, SI
  1843  	ADDL        320(R15), BX
  1844  	VPALIGNR    $0x08, Y14, Y13, Y7
  1845  	VPSRLDQ     $0x04, Y8, Y0
  1846  	LEAL        (BX)(DI*1), BX
  1847  	MOVL        AX, BP
  1848  	ORL         SI, BP
  1849  	RORXL       $0x1b, SI, R12
  1850  	RORXL       $0x02, SI, DI
  1851  	ANDL        DX, BP
  1852  	ANDL        AX, SI
  1853  	ORL         BP, SI
  1854  	ADDL        R12, BX
  1855  	ADDL        324(R15), CX
  1856  	VPXOR       Y12, Y7, Y7
  1857  	VPXOR       Y14, Y0, Y0
  1858  	LEAL        (CX)(SI*1), CX
  1859  	MOVL        DI, BP
  1860  	ORL         BX, BP
  1861  	RORXL       $0x1b, BX, R12
  1862  	RORXL       $0x02, BX, SI
  1863  	ANDL        AX, BP
  1864  	ANDL        DI, BX
  1865  	ORL         BP, BX
  1866  	ADDL        R12, CX
  1867  	ADDL        328(R15), DX
  1868  	VPXOR       Y0, Y7, Y7
  1869  	VPSLLDQ     $0x0c, Y7, Y9
  1870  	LEAL        (DX)(BX*1), DX
  1871  	MOVL        SI, BP
  1872  	ORL         CX, BP
  1873  	RORXL       $0x1b, CX, R12
  1874  	RORXL       $0x02, CX, BX
  1875  	ANDL        DI, BP
  1876  	ANDL        SI, CX
  1877  	ORL         BP, CX
  1878  	ADDL        R12, DX
  1879  	ADDL        332(R15), AX
  1880  	VPSLLD      $0x01, Y7, Y0
  1881  	VPSRLD      $0x1f, Y7, Y7
  1882  	LEAL        (AX)(CX*1), AX
  1883  	MOVL        BX, BP
  1884  	ORL         DX, BP
  1885  	RORXL       $0x1b, DX, R12
  1886  	RORXL       $0x02, DX, CX
  1887  	ANDL        SI, BP
  1888  	ANDL        BX, DX
  1889  	ORL         BP, DX
  1890  	ADDL        R12, AX
  1891  	ADDL        352(R15), DI
  1892  	VPOR        Y7, Y0, Y0
  1893  	VPSLLD      $0x02, Y9, Y7
  1894  	LEAL        (DI)(DX*1), DI
  1895  	MOVL        CX, BP
  1896  	ORL         AX, BP
  1897  	RORXL       $0x1b, AX, R12
  1898  	RORXL       $0x02, AX, DX
  1899  	ANDL        BX, BP
  1900  	ANDL        CX, AX
  1901  	ORL         BP, AX
  1902  	ADDL        R12, DI
  1903  	ADDL        356(R15), SI
  1904  	VPSRLD      $0x1e, Y9, Y9
  1905  	VPXOR       Y7, Y0, Y0
  1906  	LEAL        (SI)(AX*1), SI
  1907  	MOVL        DX, BP
  1908  	ORL         DI, BP
  1909  	RORXL       $0x1b, DI, R12
  1910  	RORXL       $0x02, DI, AX
  1911  	ANDL        CX, BP
  1912  	ANDL        DX, DI
  1913  	ORL         BP, DI
  1914  	ADDL        R12, SI
  1915  	ADDL        360(R15), BX
  1916  	LEAL        (BX)(DI*1), BX
  1917  	MOVL        AX, BP
  1918  	ORL         SI, BP
  1919  	RORXL       $0x1b, SI, R12
  1920  	RORXL       $0x02, SI, DI
  1921  	ANDL        DX, BP
  1922  	ANDL        AX, SI
  1923  	ORL         BP, SI
  1924  	ADDL        R12, BX
  1925  	ADDL        364(R15), CX
  1926  	VPXOR       Y9, Y0, Y7
  1927  	VPADDD      32(R8), Y7, Y0
  1928  	VMOVDQU     Y0, 160(R14)
  1929  	LEAL        (CX)(SI*1), CX
  1930  	MOVL        DI, BP
  1931  	ORL         BX, BP
  1932  	RORXL       $0x1b, BX, R12
  1933  	RORXL       $0x02, BX, SI
  1934  	ANDL        AX, BP
  1935  	ANDL        DI, BX
  1936  	ORL         BP, BX
  1937  	ADDL        R12, CX
  1938  	ADDL        384(R15), DX
  1939  	VPALIGNR    $0x08, Y13, Y12, Y5
  1940  	VPSRLDQ     $0x04, Y7, Y0
  1941  	LEAL        (DX)(BX*1), DX
  1942  	MOVL        SI, BP
  1943  	ORL         CX, BP
  1944  	RORXL       $0x1b, CX, R12
  1945  	RORXL       $0x02, CX, BX
  1946  	ANDL        DI, BP
  1947  	ANDL        SI, CX
  1948  	ORL         BP, CX
  1949  	ADDL        R12, DX
  1950  	ADDL        388(R15), AX
  1951  	VPXOR       Y8, Y5, Y5
  1952  	VPXOR       Y13, Y0, Y0
  1953  	LEAL        (AX)(CX*1), AX
  1954  	MOVL        BX, BP
  1955  	ORL         DX, BP
  1956  	RORXL       $0x1b, DX, R12
  1957  	RORXL       $0x02, DX, CX
  1958  	ANDL        SI, BP
  1959  	ANDL        BX, DX
  1960  	ORL         BP, DX
  1961  	ADDL        R12, AX
  1962  	ADDL        392(R15), DI
  1963  	VPXOR       Y0, Y5, Y5
  1964  	VPSLLDQ     $0x0c, Y5, Y9
  1965  	LEAL        (DI)(DX*1), DI
  1966  	MOVL        CX, BP
  1967  	ORL         AX, BP
  1968  	RORXL       $0x1b, AX, R12
  1969  	RORXL       $0x02, AX, DX
  1970  	ANDL        BX, BP
  1971  	ANDL        CX, AX
  1972  	ORL         BP, AX
  1973  	ADDL        R12, DI
  1974  	ADDL        396(R15), SI
  1975  	VPSLLD      $0x01, Y5, Y0
  1976  	VPSRLD      $0x1f, Y5, Y5
  1977  	LEAL        (SI)(AX*1), SI
  1978  	MOVL        DX, BP
  1979  	ORL         DI, BP
  1980  	RORXL       $0x1b, DI, R12
  1981  	RORXL       $0x02, DI, AX
  1982  	ANDL        CX, BP
  1983  	ANDL        DX, DI
  1984  	ORL         BP, DI
  1985  	ADDL        R12, SI
  1986  	ADDL        416(R15), BX
  1987  	VPOR        Y5, Y0, Y0
  1988  	VPSLLD      $0x02, Y9, Y5
  1989  	LEAL        (BX)(DI*1), BX
  1990  	MOVL        AX, BP
  1991  	ORL         SI, BP
  1992  	RORXL       $0x1b, SI, R12
  1993  	RORXL       $0x02, SI, DI
  1994  	ANDL        DX, BP
  1995  	ANDL        AX, SI
  1996  	ORL         BP, SI
  1997  	ADDL        R12, BX
  1998  	ADDL        420(R15), CX
  1999  	VPSRLD      $0x1e, Y9, Y9
  2000  	VPXOR       Y5, Y0, Y0
  2001  	LEAL        (CX)(SI*1), CX
  2002  	MOVL        DI, BP
  2003  	ORL         BX, BP
  2004  	RORXL       $0x1b, BX, R12
  2005  	RORXL       $0x02, BX, SI
  2006  	ANDL        AX, BP
  2007  	ANDL        DI, BX
  2008  	ORL         BP, BX
  2009  	ADDL        R12, CX
  2010  	ADDL        424(R15), DX
  2011  	LEAL        (DX)(BX*1), DX
  2012  	MOVL        SI, BP
  2013  	ORL         CX, BP
  2014  	RORXL       $0x1b, CX, R12
  2015  	RORXL       $0x02, CX, BX
  2016  	ANDL        DI, BP
  2017  	ANDL        SI, CX
  2018  	ORL         BP, CX
  2019  	ADDL        R12, DX
  2020  	ADDL        428(R15), AX
  2021  	VPXOR       Y9, Y0, Y5
  2022  	VPADDD      32(R8), Y5, Y0
  2023  	VMOVDQU     Y0, 192(R14)
  2024  	LEAL        (AX)(CX*1), AX
  2025  	MOVL        BX, BP
  2026  	ORL         DX, BP
  2027  	RORXL       $0x1b, DX, R12
  2028  	RORXL       $0x02, DX, CX
  2029  	ANDL        SI, BP
  2030  	ANDL        BX, DX
  2031  	ORL         BP, DX
  2032  	ADDL        R12, AX
  2033  	ADDL        448(R15), DI
  2034  	VPALIGNR    $0x08, Y12, Y8, Y3
  2035  	VPSRLDQ     $0x04, Y5, Y0
  2036  	LEAL        (DI)(DX*1), DI
  2037  	MOVL        CX, BP
  2038  	ORL         AX, BP
  2039  	RORXL       $0x1b, AX, R12
  2040  	RORXL       $0x02, AX, DX
  2041  	ANDL        BX, BP
  2042  	ANDL        CX, AX
  2043  	ORL         BP, AX
  2044  	ADDL        R12, DI
  2045  	ADDL        452(R15), SI
  2046  	VPXOR       Y7, Y3, Y3
  2047  	VPXOR       Y12, Y0, Y0
  2048  	LEAL        (SI)(AX*1), SI
  2049  	MOVL        DX, BP
  2050  	ORL         DI, BP
  2051  	RORXL       $0x1b, DI, R12
  2052  	RORXL       $0x02, DI, AX
  2053  	ANDL        CX, BP
  2054  	ANDL        DX, DI
  2055  	ORL         BP, DI
  2056  	ADDL        R12, SI
  2057  	ADDL        456(R15), BX
  2058  	VPXOR       Y0, Y3, Y3
  2059  	VPSLLDQ     $0x0c, Y3, Y9
  2060  	LEAL        (BX)(DI*1), BX
  2061  	MOVL        AX, BP
  2062  	ORL         SI, BP
  2063  	RORXL       $0x1b, SI, R12
  2064  	RORXL       $0x02, SI, DI
  2065  	ANDL        DX, BP
  2066  	ANDL        AX, SI
  2067  	ORL         BP, SI
  2068  	ADDL        R12, BX
  2069  	ADDL        460(R15), CX
  2070  	LEAL        (CX)(SI*1), CX
  2071  	RORXL       $0x1b, BX, R12
  2072  	RORXL       $0x02, BX, SI
  2073  	VPSLLD      $0x01, Y3, Y0
  2074  	VPSRLD      $0x1f, Y3, Y3
  2075  	XORL        DI, BX
  2076  	ADDL        R12, CX
  2077  	XORL        AX, BX
  2078  	ADDQ        $0x80, R10
  2079  	CMPQ        R10, R11
  2080  	CMOVQCC     R8, R10
  2081  	ADDL        480(R15), DX
  2082  	LEAL        (DX)(BX*1), DX
  2083  	RORXL       $0x1b, CX, R12
  2084  	RORXL       $0x02, CX, BX
  2085  	VPOR        Y3, Y0, Y0
  2086  	VPSLLD      $0x02, Y9, Y3
  2087  	XORL        SI, CX
  2088  	ADDL        R12, DX
  2089  	XORL        DI, CX
  2090  	ADDL        484(R15), AX
  2091  	LEAL        (AX)(CX*1), AX
  2092  	RORXL       $0x1b, DX, R12
  2093  	RORXL       $0x02, DX, CX
  2094  	VPSRLD      $0x1e, Y9, Y9
  2095  	VPXOR       Y3, Y0, Y0
  2096  	XORL        BX, DX
  2097  	ADDL        R12, AX
  2098  	XORL        SI, DX
  2099  	ADDL        488(R15), DI
  2100  	LEAL        (DI)(DX*1), DI
  2101  	RORXL       $0x1b, AX, R12
  2102  	RORXL       $0x02, AX, DX
  2103  	XORL        CX, AX
  2104  	ADDL        R12, DI
  2105  	XORL        BX, AX
  2106  	ADDL        492(R15), SI
  2107  	LEAL        (SI)(AX*1), SI
  2108  	RORXL       $0x1b, DI, R12
  2109  	RORXL       $0x02, DI, AX
  2110  	VPXOR       Y9, Y0, Y3
  2111  	VPADDD      32(R8), Y3, Y0
  2112  	VMOVDQU     Y0, 224(R14)
  2113  	XORL        DX, DI
  2114  	ADDL        R12, SI
  2115  	XORL        CX, DI
  2116  	ADDL        512(R15), BX
  2117  	LEAL        (BX)(DI*1), BX
  2118  	RORXL       $0x1b, SI, R12
  2119  	RORXL       $0x02, SI, DI
  2120  	VPALIGNR    $0x08, Y5, Y3, Y0
  2121  	XORL        AX, SI
  2122  	ADDL        R12, BX
  2123  	XORL        DX, SI
  2124  	ADDL        516(R15), CX
  2125  	LEAL        (CX)(SI*1), CX
  2126  	RORXL       $0x1b, BX, R12
  2127  	RORXL       $0x02, BX, SI
  2128  	VPXOR       Y14, Y15, Y15
  2129  	XORL        DI, BX
  2130  	ADDL        R12, CX
  2131  	XORL        AX, BX
  2132  	ADDL        520(R15), DX
  2133  	LEAL        (DX)(BX*1), DX
  2134  	RORXL       $0x1b, CX, R12
  2135  	RORXL       $0x02, CX, BX
  2136  	VPXOR       Y8, Y0, Y0
  2137  	XORL        SI, CX
  2138  	ADDL        R12, DX
  2139  	XORL        DI, CX
  2140  	ADDL        524(R15), AX
  2141  	LEAL        (AX)(CX*1), AX
  2142  	RORXL       $0x1b, DX, R12
  2143  	RORXL       $0x02, DX, CX
  2144  	VPXOR       Y0, Y15, Y15
  2145  	XORL        BX, DX
  2146  	ADDL        R12, AX
  2147  	XORL        SI, DX
  2148  	ADDL        544(R15), DI
  2149  	LEAL        (DI)(DX*1), DI
  2150  	RORXL       $0x1b, AX, R12
  2151  	RORXL       $0x02, AX, DX
  2152  	VPSLLD      $0x02, Y15, Y0
  2153  	XORL        CX, AX
  2154  	ADDL        R12, DI
  2155  	XORL        BX, AX
  2156  	ADDL        548(R15), SI
  2157  	LEAL        (SI)(AX*1), SI
  2158  	RORXL       $0x1b, DI, R12
  2159  	RORXL       $0x02, DI, AX
  2160  	VPSRLD      $0x1e, Y15, Y15
  2161  	VPOR        Y15, Y0, Y15
  2162  	XORL        DX, DI
  2163  	ADDL        R12, SI
  2164  	XORL        CX, DI
  2165  	ADDL        552(R15), BX
  2166  	LEAL        (BX)(DI*1), BX
  2167  	RORXL       $0x1b, SI, R12
  2168  	RORXL       $0x02, SI, DI
  2169  	XORL        AX, SI
  2170  	ADDL        R12, BX
  2171  	XORL        DX, SI
  2172  	ADDL        556(R15), CX
  2173  	LEAL        (CX)(SI*1), CX
  2174  	RORXL       $0x1b, BX, R12
  2175  	RORXL       $0x02, BX, SI
  2176  	VPADDD      32(R8), Y15, Y0
  2177  	VMOVDQU     Y0, 256(R14)
  2178  	XORL        DI, BX
  2179  	ADDL        R12, CX
  2180  	XORL        AX, BX
  2181  	ADDL        576(R15), DX
  2182  	LEAL        (DX)(BX*1), DX
  2183  	RORXL       $0x1b, CX, R12
  2184  	RORXL       $0x02, CX, BX
  2185  	VPALIGNR    $0x08, Y3, Y15, Y0
  2186  	XORL        SI, CX
  2187  	ADDL        R12, DX
  2188  	XORL        DI, CX
  2189  	ADDL        580(R15), AX
  2190  	LEAL        (AX)(CX*1), AX
  2191  	RORXL       $0x1b, DX, R12
  2192  	RORXL       $0x02, DX, CX
  2193  	VPXOR       Y13, Y14, Y14
  2194  	XORL        BX, DX
  2195  	ADDL        R12, AX
  2196  	XORL        SI, DX
  2197  	ADDL        584(R15), DI
  2198  	LEAL        (DI)(DX*1), DI
  2199  	RORXL       $0x1b, AX, R12
  2200  	RORXL       $0x02, AX, DX
  2201  	VPXOR       Y7, Y0, Y0
  2202  	XORL        CX, AX
  2203  	ADDL        R12, DI
  2204  	XORL        BX, AX
  2205  	ADDL        588(R15), SI
  2206  	LEAL        (SI)(AX*1), SI
  2207  	RORXL       $0x1b, DI, R12
  2208  	RORXL       $0x02, DI, AX
  2209  	VPXOR       Y0, Y14, Y14
  2210  	XORL        DX, DI
  2211  	ADDL        R12, SI
  2212  	XORL        CX, DI
  2213  	ADDL        608(R15), BX
  2214  	LEAL        (BX)(DI*1), BX
  2215  	RORXL       $0x1b, SI, R12
  2216  	RORXL       $0x02, SI, DI
  2217  	VPSLLD      $0x02, Y14, Y0
  2218  	XORL        AX, SI
  2219  	ADDL        R12, BX
  2220  	XORL        DX, SI
  2221  	ADDL        612(R15), CX
  2222  	LEAL        (CX)(SI*1), CX
  2223  	RORXL       $0x1b, BX, R12
  2224  	RORXL       $0x02, BX, SI
  2225  	VPSRLD      $0x1e, Y14, Y14
  2226  	VPOR        Y14, Y0, Y14
  2227  	XORL        DI, BX
  2228  	ADDL        R12, CX
  2229  	XORL        AX, BX
  2230  	ADDL        616(R15), DX
  2231  	LEAL        (DX)(BX*1), DX
  2232  	RORXL       $0x1b, CX, R12
  2233  	RORXL       $0x02, CX, BX
  2234  	XORL        SI, CX
  2235  	ADDL        R12, DX
  2236  	XORL        DI, CX
  2237  	ADDL        620(R15), AX
  2238  	LEAL        (AX)(CX*1), AX
  2239  	RORXL       $0x1b, DX, R12
  2240  	VPADDD      32(R8), Y14, Y0
  2241  	VMOVDQU     Y0, 288(R14)
  2242  	ADDL        R12, AX
  2243  	ADDL        (R9), AX
  2244  	MOVL        AX, (R9)
  2245  	ADDL        4(R9), DX
  2246  	MOVL        DX, 4(R9)
  2247  	ADDL        8(R9), BX
  2248  	MOVL        BX, 8(R9)
  2249  	ADDL        12(R9), SI
  2250  	MOVL        SI, 12(R9)
  2251  	ADDL        16(R9), DI
  2252  	MOVL        DI, 16(R9)
  2253  	CMPQ        R10, R8
  2254  	JE          loop
  2255  	MOVL        DX, CX
  2256  	MOVL        CX, DX
  2257  	RORXL       $0x02, CX, CX
  2258  	ANDNL       SI, DX, BP
  2259  	ANDL        BX, DX
  2260  	XORL        BP, DX
  2261  	ADDL        16(R15), DI
  2262  	ANDNL       BX, AX, BP
  2263  	LEAL        (DI)(DX*1), DI
  2264  	RORXL       $0x1b, AX, R12
  2265  	RORXL       $0x02, AX, DX
  2266  	VPALIGNR    $0x08, Y15, Y14, Y0
  2267  	ANDL        CX, AX
  2268  	XORL        BP, AX
  2269  	LEAL        (DI)(R12*1), DI
  2270  	ADDL        20(R15), SI
  2271  	ANDNL       CX, DI, BP
  2272  	LEAL        (SI)(AX*1), SI
  2273  	RORXL       $0x1b, DI, R12
  2274  	RORXL       $0x02, DI, AX
  2275  	VPXOR       Y12, Y13, Y13
  2276  	ANDL        DX, DI
  2277  	XORL        BP, DI
  2278  	LEAL        (SI)(R12*1), SI
  2279  	ADDL        24(R15), BX
  2280  	ANDNL       DX, SI, BP
  2281  	LEAL        (BX)(DI*1), BX
  2282  	RORXL       $0x1b, SI, R12
  2283  	RORXL       $0x02, SI, DI
  2284  	VPXOR       Y5, Y0, Y0
  2285  	ANDL        AX, SI
  2286  	XORL        BP, SI
  2287  	LEAL        (BX)(R12*1), BX
  2288  	ADDL        28(R15), CX
  2289  	ANDNL       AX, BX, BP
  2290  	LEAL        (CX)(SI*1), CX
  2291  	RORXL       $0x1b, BX, R12
  2292  	RORXL       $0x02, BX, SI
  2293  	VPXOR       Y0, Y13, Y13
  2294  	ANDL        DI, BX
  2295  	XORL        BP, BX
  2296  	LEAL        (CX)(R12*1), CX
  2297  	ADDL        48(R15), DX
  2298  	ANDNL       DI, CX, BP
  2299  	LEAL        (DX)(BX*1), DX
  2300  	RORXL       $0x1b, CX, R12
  2301  	RORXL       $0x02, CX, BX
  2302  	VPSLLD      $0x02, Y13, Y0
  2303  	ANDL        SI, CX
  2304  	XORL        BP, CX
  2305  	LEAL        (DX)(R12*1), DX
  2306  	ADDL        52(R15), AX
  2307  	ANDNL       SI, DX, BP
  2308  	LEAL        (AX)(CX*1), AX
  2309  	RORXL       $0x1b, DX, R12
  2310  	RORXL       $0x02, DX, CX
  2311  	VPSRLD      $0x1e, Y13, Y13
  2312  	VPOR        Y13, Y0, Y13
  2313  	ANDL        BX, DX
  2314  	XORL        BP, DX
  2315  	LEAL        (AX)(R12*1), AX
  2316  	ADDL        56(R15), DI
  2317  	ANDNL       BX, AX, BP
  2318  	LEAL        (DI)(DX*1), DI
  2319  	RORXL       $0x1b, AX, R12
  2320  	RORXL       $0x02, AX, DX
  2321  	ANDL        CX, AX
  2322  	XORL        BP, AX
  2323  	LEAL        (DI)(R12*1), DI
  2324  	ADDL        60(R15), SI
  2325  	ANDNL       CX, DI, BP
  2326  	LEAL        (SI)(AX*1), SI
  2327  	RORXL       $0x1b, DI, R12
  2328  	RORXL       $0x02, DI, AX
  2329  	VPADDD      64(R8), Y13, Y0
  2330  	VMOVDQU     Y0, 320(R14)
  2331  	ANDL        DX, DI
  2332  	XORL        BP, DI
  2333  	LEAL        (SI)(R12*1), SI
  2334  	ADDL        80(R15), BX
  2335  	ANDNL       DX, SI, BP
  2336  	LEAL        (BX)(DI*1), BX
  2337  	RORXL       $0x1b, SI, R12
  2338  	RORXL       $0x02, SI, DI
  2339  	VPALIGNR    $0x08, Y14, Y13, Y0
  2340  	ANDL        AX, SI
  2341  	XORL        BP, SI
  2342  	LEAL        (BX)(R12*1), BX
  2343  	ADDL        84(R15), CX
  2344  	ANDNL       AX, BX, BP
  2345  	LEAL        (CX)(SI*1), CX
  2346  	RORXL       $0x1b, BX, R12
  2347  	RORXL       $0x02, BX, SI
  2348  	VPXOR       Y8, Y12, Y12
  2349  	ANDL        DI, BX
  2350  	XORL        BP, BX
  2351  	LEAL        (CX)(R12*1), CX
  2352  	ADDL        88(R15), DX
  2353  	ANDNL       DI, CX, BP
  2354  	LEAL        (DX)(BX*1), DX
  2355  	RORXL       $0x1b, CX, R12
  2356  	RORXL       $0x02, CX, BX
  2357  	VPXOR       Y3, Y0, Y0
  2358  	ANDL        SI, CX
  2359  	XORL        BP, CX
  2360  	LEAL        (DX)(R12*1), DX
  2361  	ADDL        92(R15), AX
  2362  	ANDNL       SI, DX, BP
  2363  	LEAL        (AX)(CX*1), AX
  2364  	RORXL       $0x1b, DX, R12
  2365  	RORXL       $0x02, DX, CX
  2366  	VPXOR       Y0, Y12, Y12
  2367  	ANDL        BX, DX
  2368  	XORL        BP, DX
  2369  	LEAL        (AX)(R12*1), AX
  2370  	ADDL        112(R15), DI
  2371  	ANDNL       BX, AX, BP
  2372  	LEAL        (DI)(DX*1), DI
  2373  	RORXL       $0x1b, AX, R12
  2374  	RORXL       $0x02, AX, DX
  2375  	VPSLLD      $0x02, Y12, Y0
  2376  	ANDL        CX, AX
  2377  	XORL        BP, AX
  2378  	LEAL        (DI)(R12*1), DI
  2379  	ADDL        116(R15), SI
  2380  	ANDNL       CX, DI, BP
  2381  	LEAL        (SI)(AX*1), SI
  2382  	RORXL       $0x1b, DI, R12
  2383  	RORXL       $0x02, DI, AX
  2384  	VPSRLD      $0x1e, Y12, Y12
  2385  	VPOR        Y12, Y0, Y12
  2386  	ANDL        DX, DI
  2387  	XORL        BP, DI
  2388  	LEAL        (SI)(R12*1), SI
  2389  	ADDL        120(R15), BX
  2390  	ANDNL       DX, SI, BP
  2391  	LEAL        (BX)(DI*1), BX
  2392  	RORXL       $0x1b, SI, R12
  2393  	RORXL       $0x02, SI, DI
  2394  	ANDL        AX, SI
  2395  	XORL        BP, SI
  2396  	LEAL        (BX)(R12*1), BX
  2397  	ADDL        124(R15), CX
  2398  	ANDNL       AX, BX, BP
  2399  	LEAL        (CX)(SI*1), CX
  2400  	RORXL       $0x1b, BX, R12
  2401  	RORXL       $0x02, BX, SI
  2402  	VPADDD      64(R8), Y12, Y0
  2403  	VMOVDQU     Y0, 352(R14)
  2404  	ANDL        DI, BX
  2405  	XORL        BP, BX
  2406  	LEAL        (CX)(R12*1), CX
  2407  	ADDL        144(R15), DX
  2408  	ANDNL       DI, CX, BP
  2409  	LEAL        (DX)(BX*1), DX
  2410  	RORXL       $0x1b, CX, R12
  2411  	RORXL       $0x02, CX, BX
  2412  	VPALIGNR    $0x08, Y13, Y12, Y0
  2413  	ANDL        SI, CX
  2414  	XORL        BP, CX
  2415  	LEAL        (DX)(R12*1), DX
  2416  	ADDL        148(R15), AX
  2417  	ANDNL       SI, DX, BP
  2418  	LEAL        (AX)(CX*1), AX
  2419  	RORXL       $0x1b, DX, R12
  2420  	RORXL       $0x02, DX, CX
  2421  	VPXOR       Y7, Y8, Y8
  2422  	ANDL        BX, DX
  2423  	XORL        BP, DX
  2424  	LEAL        (AX)(R12*1), AX
  2425  	ADDL        152(R15), DI
  2426  	ANDNL       BX, AX, BP
  2427  	LEAL        (DI)(DX*1), DI
  2428  	RORXL       $0x1b, AX, R12
  2429  	RORXL       $0x02, AX, DX
  2430  	VPXOR       Y15, Y0, Y0
  2431  	ANDL        CX, AX
  2432  	XORL        BP, AX
  2433  	LEAL        (DI)(R12*1), DI
  2434  	ADDL        156(R15), SI
  2435  	LEAL        (SI)(AX*1), SI
  2436  	RORXL       $0x1b, DI, R12
  2437  	RORXL       $0x02, DI, AX
  2438  	VPXOR       Y0, Y8, Y8
  2439  	XORL        DX, DI
  2440  	ADDL        R12, SI
  2441  	XORL        CX, DI
  2442  	ADDL        176(R15), BX
  2443  	LEAL        (BX)(DI*1), BX
  2444  	RORXL       $0x1b, SI, R12
  2445  	RORXL       $0x02, SI, DI
  2446  	VPSLLD      $0x02, Y8, Y0
  2447  	XORL        AX, SI
  2448  	ADDL        R12, BX
  2449  	XORL        DX, SI
  2450  	ADDL        180(R15), CX
  2451  	LEAL        (CX)(SI*1), CX
  2452  	RORXL       $0x1b, BX, R12
  2453  	RORXL       $0x02, BX, SI
  2454  	VPSRLD      $0x1e, Y8, Y8
  2455  	VPOR        Y8, Y0, Y8
  2456  	XORL        DI, BX
  2457  	ADDL        R12, CX
  2458  	XORL        AX, BX
  2459  	ADDL        184(R15), DX
  2460  	LEAL        (DX)(BX*1), DX
  2461  	RORXL       $0x1b, CX, R12
  2462  	RORXL       $0x02, CX, BX
  2463  	XORL        SI, CX
  2464  	ADDL        R12, DX
  2465  	XORL        DI, CX
  2466  	ADDL        188(R15), AX
  2467  	LEAL        (AX)(CX*1), AX
  2468  	RORXL       $0x1b, DX, R12
  2469  	RORXL       $0x02, DX, CX
  2470  	VPADDD      64(R8), Y8, Y0
  2471  	VMOVDQU     Y0, 384(R14)
  2472  	XORL        BX, DX
  2473  	ADDL        R12, AX
  2474  	XORL        SI, DX
  2475  	ADDL        208(R15), DI
  2476  	LEAL        (DI)(DX*1), DI
  2477  	RORXL       $0x1b, AX, R12
  2478  	RORXL       $0x02, AX, DX
  2479  	VPALIGNR    $0x08, Y12, Y8, Y0
  2480  	XORL        CX, AX
  2481  	ADDL        R12, DI
  2482  	XORL        BX, AX
  2483  	ADDL        212(R15), SI
  2484  	LEAL        (SI)(AX*1), SI
  2485  	RORXL       $0x1b, DI, R12
  2486  	RORXL       $0x02, DI, AX
  2487  	VPXOR       Y5, Y7, Y7
  2488  	XORL        DX, DI
  2489  	ADDL        R12, SI
  2490  	XORL        CX, DI
  2491  	ADDL        216(R15), BX
  2492  	LEAL        (BX)(DI*1), BX
  2493  	RORXL       $0x1b, SI, R12
  2494  	RORXL       $0x02, SI, DI
  2495  	VPXOR       Y14, Y0, Y0
  2496  	XORL        AX, SI
  2497  	ADDL        R12, BX
  2498  	XORL        DX, SI
  2499  	ADDL        220(R15), CX
  2500  	LEAL        (CX)(SI*1), CX
  2501  	RORXL       $0x1b, BX, R12
  2502  	RORXL       $0x02, BX, SI
  2503  	VPXOR       Y0, Y7, Y7
  2504  	XORL        DI, BX
  2505  	ADDL        R12, CX
  2506  	XORL        AX, BX
  2507  	ADDL        240(R15), DX
  2508  	LEAL        (DX)(BX*1), DX
  2509  	RORXL       $0x1b, CX, R12
  2510  	RORXL       $0x02, CX, BX
  2511  	VPSLLD      $0x02, Y7, Y0
  2512  	XORL        SI, CX
  2513  	ADDL        R12, DX
  2514  	XORL        DI, CX
  2515  	ADDL        244(R15), AX
  2516  	LEAL        (AX)(CX*1), AX
  2517  	RORXL       $0x1b, DX, R12
  2518  	RORXL       $0x02, DX, CX
  2519  	VPSRLD      $0x1e, Y7, Y7
  2520  	VPOR        Y7, Y0, Y7
  2521  	XORL        BX, DX
  2522  	ADDL        R12, AX
  2523  	XORL        SI, DX
  2524  	ADDL        248(R15), DI
  2525  	LEAL        (DI)(DX*1), DI
  2526  	RORXL       $0x1b, AX, R12
  2527  	RORXL       $0x02, AX, DX
  2528  	XORL        CX, AX
  2529  	ADDL        R12, DI
  2530  	XORL        BX, AX
  2531  	ADDL        252(R15), SI
  2532  	LEAL        (SI)(AX*1), SI
  2533  	RORXL       $0x1b, DI, R12
  2534  	RORXL       $0x02, DI, AX
  2535  	VPADDD      64(R8), Y7, Y0
  2536  	VMOVDQU     Y0, 416(R14)
  2537  	XORL        DX, DI
  2538  	ADDL        R12, SI
  2539  	XORL        CX, DI
  2540  	ADDL        272(R15), BX
  2541  	LEAL        (BX)(DI*1), BX
  2542  	RORXL       $0x1b, SI, R12
  2543  	RORXL       $0x02, SI, DI
  2544  	VPALIGNR    $0x08, Y8, Y7, Y0
  2545  	XORL        AX, SI
  2546  	ADDL        R12, BX
  2547  	XORL        DX, SI
  2548  	ADDL        276(R15), CX
  2549  	LEAL        (CX)(SI*1), CX
  2550  	RORXL       $0x1b, BX, R12
  2551  	RORXL       $0x02, BX, SI
  2552  	VPXOR       Y3, Y5, Y5
  2553  	XORL        DI, BX
  2554  	ADDL        R12, CX
  2555  	XORL        AX, BX
  2556  	ADDL        280(R15), DX
  2557  	LEAL        (DX)(BX*1), DX
  2558  	RORXL       $0x1b, CX, R12
  2559  	RORXL       $0x02, CX, BX
  2560  	VPXOR       Y13, Y0, Y0
  2561  	XORL        SI, CX
  2562  	ADDL        R12, DX
  2563  	XORL        DI, CX
  2564  	ADDL        284(R15), AX
  2565  	LEAL        (AX)(CX*1), AX
  2566  	RORXL       $0x1b, DX, R12
  2567  	RORXL       $0x02, DX, CX
  2568  	VPXOR       Y0, Y5, Y5
  2569  	XORL        BX, DX
  2570  	ADDL        R12, AX
  2571  	XORL        SI, DX
  2572  	ADDL        304(R15), DI
  2573  	LEAL        (DI)(DX*1), DI
  2574  	RORXL       $0x1b, AX, R12
  2575  	RORXL       $0x02, AX, DX
  2576  	VPSLLD      $0x02, Y5, Y0
  2577  	XORL        CX, AX
  2578  	ADDL        R12, DI
  2579  	XORL        BX, AX
  2580  	ADDL        308(R15), SI
  2581  	LEAL        (SI)(AX*1), SI
  2582  	RORXL       $0x1b, DI, R12
  2583  	RORXL       $0x02, DI, AX
  2584  	VPSRLD      $0x1e, Y5, Y5
  2585  	VPOR        Y5, Y0, Y5
  2586  	XORL        DX, DI
  2587  	ADDL        R12, SI
  2588  	XORL        CX, DI
  2589  	ADDL        312(R15), BX
  2590  	LEAL        (BX)(DI*1), BX
  2591  	RORXL       $0x1b, SI, R12
  2592  	RORXL       $0x02, SI, DI
  2593  	XORL        AX, SI
  2594  	ADDL        R12, BX
  2595  	XORL        DX, SI
  2596  	ADDL        316(R15), CX
  2597  	VPADDD      64(R8), Y5, Y0
  2598  	VMOVDQU     Y0, 448(R14)
  2599  	LEAL        (CX)(SI*1), CX
  2600  	MOVL        DI, BP
  2601  	ORL         BX, BP
  2602  	RORXL       $0x1b, BX, R12
  2603  	RORXL       $0x02, BX, SI
  2604  	ANDL        AX, BP
  2605  	ANDL        DI, BX
  2606  	ORL         BP, BX
  2607  	ADDL        R12, CX
  2608  	ADDL        336(R15), DX
  2609  	VPALIGNR    $0x08, Y7, Y5, Y0
  2610  	LEAL        (DX)(BX*1), DX
  2611  	MOVL        SI, BP
  2612  	ORL         CX, BP
  2613  	RORXL       $0x1b, CX, R12
  2614  	RORXL       $0x02, CX, BX
  2615  	ANDL        DI, BP
  2616  	ANDL        SI, CX
  2617  	ORL         BP, CX
  2618  	ADDL        R12, DX
  2619  	ADDL        340(R15), AX
  2620  	VPXOR       Y15, Y3, Y3
  2621  	LEAL        (AX)(CX*1), AX
  2622  	MOVL        BX, BP
  2623  	ORL         DX, BP
  2624  	RORXL       $0x1b, DX, R12
  2625  	RORXL       $0x02, DX, CX
  2626  	ANDL        SI, BP
  2627  	ANDL        BX, DX
  2628  	ORL         BP, DX
  2629  	ADDL        R12, AX
  2630  	ADDL        344(R15), DI
  2631  	VPXOR       Y12, Y0, Y0
  2632  	LEAL        (DI)(DX*1), DI
  2633  	MOVL        CX, BP
  2634  	ORL         AX, BP
  2635  	RORXL       $0x1b, AX, R12
  2636  	RORXL       $0x02, AX, DX
  2637  	ANDL        BX, BP
  2638  	ANDL        CX, AX
  2639  	ORL         BP, AX
  2640  	ADDL        R12, DI
  2641  	ADDL        348(R15), SI
  2642  	VPXOR       Y0, Y3, Y3
  2643  	LEAL        (SI)(AX*1), SI
  2644  	MOVL        DX, BP
  2645  	ORL         DI, BP
  2646  	RORXL       $0x1b, DI, R12
  2647  	RORXL       $0x02, DI, AX
  2648  	ANDL        CX, BP
  2649  	ANDL        DX, DI
  2650  	ORL         BP, DI
  2651  	ADDL        R12, SI
  2652  	ADDL        368(R15), BX
  2653  	VPSLLD      $0x02, Y3, Y0
  2654  	LEAL        (BX)(DI*1), BX
  2655  	MOVL        AX, BP
  2656  	ORL         SI, BP
  2657  	RORXL       $0x1b, SI, R12
  2658  	RORXL       $0x02, SI, DI
  2659  	ANDL        DX, BP
  2660  	ANDL        AX, SI
  2661  	ORL         BP, SI
  2662  	ADDL        R12, BX
  2663  	ADDL        372(R15), CX
  2664  	VPSRLD      $0x1e, Y3, Y3
  2665  	VPOR        Y3, Y0, Y3
  2666  	LEAL        (CX)(SI*1), CX
  2667  	MOVL        DI, BP
  2668  	ORL         BX, BP
  2669  	RORXL       $0x1b, BX, R12
  2670  	RORXL       $0x02, BX, SI
  2671  	ANDL        AX, BP
  2672  	ANDL        DI, BX
  2673  	ORL         BP, BX
  2674  	ADDL        R12, CX
  2675  	ADDL        376(R15), DX
  2676  	LEAL        (DX)(BX*1), DX
  2677  	MOVL        SI, BP
  2678  	ORL         CX, BP
  2679  	RORXL       $0x1b, CX, R12
  2680  	RORXL       $0x02, CX, BX
  2681  	ANDL        DI, BP
  2682  	ANDL        SI, CX
  2683  	ORL         BP, CX
  2684  	ADDL        R12, DX
  2685  	ADDL        380(R15), AX
  2686  	VPADDD      96(R8), Y3, Y0
  2687  	VMOVDQU     Y0, 480(R14)
  2688  	LEAL        (AX)(CX*1), AX
  2689  	MOVL        BX, BP
  2690  	ORL         DX, BP
  2691  	RORXL       $0x1b, DX, R12
  2692  	RORXL       $0x02, DX, CX
  2693  	ANDL        SI, BP
  2694  	ANDL        BX, DX
  2695  	ORL         BP, DX
  2696  	ADDL        R12, AX
  2697  	ADDL        400(R15), DI
  2698  	VPALIGNR    $0x08, Y5, Y3, Y0
  2699  	LEAL        (DI)(DX*1), DI
  2700  	MOVL        CX, BP
  2701  	ORL         AX, BP
  2702  	RORXL       $0x1b, AX, R12
  2703  	RORXL       $0x02, AX, DX
  2704  	ANDL        BX, BP
  2705  	ANDL        CX, AX
  2706  	ORL         BP, AX
  2707  	ADDL        R12, DI
  2708  	ADDL        404(R15), SI
  2709  	VPXOR       Y14, Y15, Y15
  2710  	LEAL        (SI)(AX*1), SI
  2711  	MOVL        DX, BP
  2712  	ORL         DI, BP
  2713  	RORXL       $0x1b, DI, R12
  2714  	RORXL       $0x02, DI, AX
  2715  	ANDL        CX, BP
  2716  	ANDL        DX, DI
  2717  	ORL         BP, DI
  2718  	ADDL        R12, SI
  2719  	ADDL        408(R15), BX
  2720  	VPXOR       Y8, Y0, Y0
  2721  	LEAL        (BX)(DI*1), BX
  2722  	MOVL        AX, BP
  2723  	ORL         SI, BP
  2724  	RORXL       $0x1b, SI, R12
  2725  	RORXL       $0x02, SI, DI
  2726  	ANDL        DX, BP
  2727  	ANDL        AX, SI
  2728  	ORL         BP, SI
  2729  	ADDL        R12, BX
  2730  	ADDL        412(R15), CX
  2731  	VPXOR       Y0, Y15, Y15
  2732  	LEAL        (CX)(SI*1), CX
  2733  	MOVL        DI, BP
  2734  	ORL         BX, BP
  2735  	RORXL       $0x1b, BX, R12
  2736  	RORXL       $0x02, BX, SI
  2737  	ANDL        AX, BP
  2738  	ANDL        DI, BX
  2739  	ORL         BP, BX
  2740  	ADDL        R12, CX
  2741  	ADDL        432(R15), DX
  2742  	VPSLLD      $0x02, Y15, Y0
  2743  	LEAL        (DX)(BX*1), DX
  2744  	MOVL        SI, BP
  2745  	ORL         CX, BP
  2746  	RORXL       $0x1b, CX, R12
  2747  	RORXL       $0x02, CX, BX
  2748  	ANDL        DI, BP
  2749  	ANDL        SI, CX
  2750  	ORL         BP, CX
  2751  	ADDL        R12, DX
  2752  	ADDL        436(R15), AX
  2753  	VPSRLD      $0x1e, Y15, Y15
  2754  	VPOR        Y15, Y0, Y15
  2755  	LEAL        (AX)(CX*1), AX
  2756  	MOVL        BX, BP
  2757  	ORL         DX, BP
  2758  	RORXL       $0x1b, DX, R12
  2759  	RORXL       $0x02, DX, CX
  2760  	ANDL        SI, BP
  2761  	ANDL        BX, DX
  2762  	ORL         BP, DX
  2763  	ADDL        R12, AX
  2764  	ADDL        440(R15), DI
  2765  	LEAL        (DI)(DX*1), DI
  2766  	MOVL        CX, BP
  2767  	ORL         AX, BP
  2768  	RORXL       $0x1b, AX, R12
  2769  	RORXL       $0x02, AX, DX
  2770  	ANDL        BX, BP
  2771  	ANDL        CX, AX
  2772  	ORL         BP, AX
  2773  	ADDL        R12, DI
  2774  	ADDL        444(R15), SI
  2775  	VPADDD      96(R8), Y15, Y0
  2776  	VMOVDQU     Y0, 512(R14)
  2777  	LEAL        (SI)(AX*1), SI
  2778  	MOVL        DX, BP
  2779  	ORL         DI, BP
  2780  	RORXL       $0x1b, DI, R12
  2781  	RORXL       $0x02, DI, AX
  2782  	ANDL        CX, BP
  2783  	ANDL        DX, DI
  2784  	ORL         BP, DI
  2785  	ADDL        R12, SI
  2786  	ADDL        464(R15), BX
  2787  	VPALIGNR    $0x08, Y3, Y15, Y0
  2788  	LEAL        (BX)(DI*1), BX
  2789  	MOVL        AX, BP
  2790  	ORL         SI, BP
  2791  	RORXL       $0x1b, SI, R12
  2792  	RORXL       $0x02, SI, DI
  2793  	ANDL        DX, BP
  2794  	ANDL        AX, SI
  2795  	ORL         BP, SI
  2796  	ADDL        R12, BX
  2797  	ADDL        468(R15), CX
  2798  	VPXOR       Y13, Y14, Y14
  2799  	LEAL        (CX)(SI*1), CX
  2800  	MOVL        DI, BP
  2801  	ORL         BX, BP
  2802  	RORXL       $0x1b, BX, R12
  2803  	RORXL       $0x02, BX, SI
  2804  	ANDL        AX, BP
  2805  	ANDL        DI, BX
  2806  	ORL         BP, BX
  2807  	ADDL        R12, CX
  2808  	ADDL        472(R15), DX
  2809  	VPXOR       Y7, Y0, Y0
  2810  	LEAL        (DX)(BX*1), DX
  2811  	MOVL        SI, BP
  2812  	ORL         CX, BP
  2813  	RORXL       $0x1b, CX, R12
  2814  	RORXL       $0x02, CX, BX
  2815  	ANDL        DI, BP
  2816  	ANDL        SI, CX
  2817  	ORL         BP, CX
  2818  	ADDL        R12, DX
  2819  	ADDL        476(R15), AX
  2820  	LEAL        (AX)(CX*1), AX
  2821  	RORXL       $0x1b, DX, R12
  2822  	RORXL       $0x02, DX, CX
  2823  	VPXOR       Y0, Y14, Y14
  2824  	XORL        BX, DX
  2825  	ADDL        R12, AX
  2826  	XORL        SI, DX
  2827  	ADDQ        $0x80, R13
  2828  	CMPQ        R13, R11
  2829  	CMOVQCC     R8, R10
  2830  	ADDL        496(R15), DI
  2831  	LEAL        (DI)(DX*1), DI
  2832  	RORXL       $0x1b, AX, R12
  2833  	RORXL       $0x02, AX, DX
  2834  	VPSLLD      $0x02, Y14, Y0
  2835  	XORL        CX, AX
  2836  	ADDL        R12, DI
  2837  	XORL        BX, AX
  2838  	ADDL        500(R15), SI
  2839  	LEAL        (SI)(AX*1), SI
  2840  	RORXL       $0x1b, DI, R12
  2841  	RORXL       $0x02, DI, AX
  2842  	VPSRLD      $0x1e, Y14, Y14
  2843  	VPOR        Y14, Y0, Y14
  2844  	XORL        DX, DI
  2845  	ADDL        R12, SI
  2846  	XORL        CX, DI
  2847  	ADDL        504(R15), BX
  2848  	LEAL        (BX)(DI*1), BX
  2849  	RORXL       $0x1b, SI, R12
  2850  	RORXL       $0x02, SI, DI
  2851  	XORL        AX, SI
  2852  	ADDL        R12, BX
  2853  	XORL        DX, SI
  2854  	ADDL        508(R15), CX
  2855  	LEAL        (CX)(SI*1), CX
  2856  	RORXL       $0x1b, BX, R12
  2857  	RORXL       $0x02, BX, SI
  2858  	VPADDD      96(R8), Y14, Y0
  2859  	VMOVDQU     Y0, 544(R14)
  2860  	XORL        DI, BX
  2861  	ADDL        R12, CX
  2862  	XORL        AX, BX
  2863  	ADDL        528(R15), DX
  2864  	LEAL        (DX)(BX*1), DX
  2865  	RORXL       $0x1b, CX, R12
  2866  	RORXL       $0x02, CX, BX
  2867  	VPALIGNR    $0x08, Y15, Y14, Y0
  2868  	XORL        SI, CX
  2869  	ADDL        R12, DX
  2870  	XORL        DI, CX
  2871  	ADDL        532(R15), AX
  2872  	LEAL        (AX)(CX*1), AX
  2873  	RORXL       $0x1b, DX, R12
  2874  	RORXL       $0x02, DX, CX
  2875  	VPXOR       Y12, Y13, Y13
  2876  	XORL        BX, DX
  2877  	ADDL        R12, AX
  2878  	XORL        SI, DX
  2879  	ADDL        536(R15), DI
  2880  	LEAL        (DI)(DX*1), DI
  2881  	RORXL       $0x1b, AX, R12
  2882  	RORXL       $0x02, AX, DX
  2883  	VPXOR       Y5, Y0, Y0
  2884  	XORL        CX, AX
  2885  	ADDL        R12, DI
  2886  	XORL        BX, AX
  2887  	ADDL        540(R15), SI
  2888  	LEAL        (SI)(AX*1), SI
  2889  	RORXL       $0x1b, DI, R12
  2890  	RORXL       $0x02, DI, AX
  2891  	VPXOR       Y0, Y13, Y13
  2892  	XORL        DX, DI
  2893  	ADDL        R12, SI
  2894  	XORL        CX, DI
  2895  	ADDL        560(R15), BX
  2896  	LEAL        (BX)(DI*1), BX
  2897  	RORXL       $0x1b, SI, R12
  2898  	RORXL       $0x02, SI, DI
  2899  	VPSLLD      $0x02, Y13, Y0
  2900  	XORL        AX, SI
  2901  	ADDL        R12, BX
  2902  	XORL        DX, SI
  2903  	ADDL        564(R15), CX
  2904  	LEAL        (CX)(SI*1), CX
  2905  	RORXL       $0x1b, BX, R12
  2906  	RORXL       $0x02, BX, SI
  2907  	VPSRLD      $0x1e, Y13, Y13
  2908  	VPOR        Y13, Y0, Y13
  2909  	XORL        DI, BX
  2910  	ADDL        R12, CX
  2911  	XORL        AX, BX
  2912  	ADDL        568(R15), DX
  2913  	LEAL        (DX)(BX*1), DX
  2914  	RORXL       $0x1b, CX, R12
  2915  	RORXL       $0x02, CX, BX
  2916  	XORL        SI, CX
  2917  	ADDL        R12, DX
  2918  	XORL        DI, CX
  2919  	ADDL        572(R15), AX
  2920  	LEAL        (AX)(CX*1), AX
  2921  	RORXL       $0x1b, DX, R12
  2922  	RORXL       $0x02, DX, CX
  2923  	VPADDD      96(R8), Y13, Y0
  2924  	VMOVDQU     Y0, 576(R14)
  2925  	XORL        BX, DX
  2926  	ADDL        R12, AX
  2927  	XORL        SI, DX
  2928  	ADDL        592(R15), DI
  2929  	LEAL        (DI)(DX*1), DI
  2930  	RORXL       $0x1b, AX, R12
  2931  	RORXL       $0x02, AX, DX
  2932  	VPALIGNR    $0x08, Y14, Y13, Y0
  2933  	XORL        CX, AX
  2934  	ADDL        R12, DI
  2935  	XORL        BX, AX
  2936  	ADDL        596(R15), SI
  2937  	LEAL        (SI)(AX*1), SI
  2938  	RORXL       $0x1b, DI, R12
  2939  	RORXL       $0x02, DI, AX
  2940  	VPXOR       Y8, Y12, Y12
  2941  	XORL        DX, DI
  2942  	ADDL        R12, SI
  2943  	XORL        CX, DI
  2944  	ADDL        600(R15), BX
  2945  	LEAL        (BX)(DI*1), BX
  2946  	RORXL       $0x1b, SI, R12
  2947  	RORXL       $0x02, SI, DI
  2948  	VPXOR       Y3, Y0, Y0
  2949  	XORL        AX, SI
  2950  	ADDL        R12, BX
  2951  	XORL        DX, SI
  2952  	ADDL        604(R15), CX
  2953  	LEAL        (CX)(SI*1), CX
  2954  	RORXL       $0x1b, BX, R12
  2955  	RORXL       $0x02, BX, SI
  2956  	VPXOR       Y0, Y12, Y12
  2957  	XORL        DI, BX
  2958  	ADDL        R12, CX
  2959  	XORL        AX, BX
  2960  	ADDL        624(R15), DX
  2961  	LEAL        (DX)(BX*1), DX
  2962  	RORXL       $0x1b, CX, R12
  2963  	RORXL       $0x02, CX, BX
  2964  	VPSLLD      $0x02, Y12, Y0
  2965  	XORL        SI, CX
  2966  	ADDL        R12, DX
  2967  	XORL        DI, CX
  2968  	ADDL        628(R15), AX
  2969  	LEAL        (AX)(CX*1), AX
  2970  	RORXL       $0x1b, DX, R12
  2971  	RORXL       $0x02, DX, CX
  2972  	VPSRLD      $0x1e, Y12, Y12
  2973  	VPOR        Y12, Y0, Y12
  2974  	XORL        BX, DX
  2975  	ADDL        R12, AX
  2976  	XORL        SI, DX
  2977  	ADDL        632(R15), DI
  2978  	LEAL        (DI)(DX*1), DI
  2979  	RORXL       $0x1b, AX, R12
  2980  	RORXL       $0x02, AX, DX
  2981  	XORL        CX, AX
  2982  	ADDL        R12, DI
  2983  	XORL        BX, AX
  2984  	ADDL        636(R15), SI
  2985  	LEAL        (SI)(AX*1), SI
  2986  	RORXL       $0x1b, DI, R12
  2987  	VPADDD      96(R8), Y12, Y0
  2988  	VMOVDQU     Y0, 608(R14)
  2989  	ADDL        R12, SI
  2990  	ADDL        (R9), SI
  2991  	MOVL        SI, (R9)
  2992  	ADDL        4(R9), DI
  2993  	MOVL        DI, 4(R9)
  2994  	ADDL        8(R9), DX
  2995  	MOVL        DX, 8(R9)
  2996  	ADDL        12(R9), CX
  2997  	MOVL        CX, 12(R9)
  2998  	ADDL        16(R9), BX
  2999  	MOVL        BX, 16(R9)
  3000  	MOVL        SI, R12
  3001  	MOVL        DI, SI
  3002  	MOVL        DX, DI
  3003  	MOVL        BX, DX
  3004  	MOVL        CX, AX
  3005  	MOVL        R12, CX
  3006  	XCHGQ       R15, R14
  3007  	JMP         loop
  3008  
  3009  DATA K_XMM_AR<>+0(SB)/4, $0x5a827999
  3010  DATA K_XMM_AR<>+4(SB)/4, $0x5a827999
  3011  DATA K_XMM_AR<>+8(SB)/4, $0x5a827999
  3012  DATA K_XMM_AR<>+12(SB)/4, $0x5a827999
  3013  DATA K_XMM_AR<>+16(SB)/4, $0x5a827999
  3014  DATA K_XMM_AR<>+20(SB)/4, $0x5a827999
  3015  DATA K_XMM_AR<>+24(SB)/4, $0x5a827999
  3016  DATA K_XMM_AR<>+28(SB)/4, $0x5a827999
  3017  DATA K_XMM_AR<>+32(SB)/4, $0x6ed9eba1
  3018  DATA K_XMM_AR<>+36(SB)/4, $0x6ed9eba1
  3019  DATA K_XMM_AR<>+40(SB)/4, $0x6ed9eba1
  3020  DATA K_XMM_AR<>+44(SB)/4, $0x6ed9eba1
  3021  DATA K_XMM_AR<>+48(SB)/4, $0x6ed9eba1
  3022  DATA K_XMM_AR<>+52(SB)/4, $0x6ed9eba1
  3023  DATA K_XMM_AR<>+56(SB)/4, $0x6ed9eba1
  3024  DATA K_XMM_AR<>+60(SB)/4, $0x6ed9eba1
  3025  DATA K_XMM_AR<>+64(SB)/4, $0x8f1bbcdc
  3026  DATA K_XMM_AR<>+68(SB)/4, $0x8f1bbcdc
  3027  DATA K_XMM_AR<>+72(SB)/4, $0x8f1bbcdc
  3028  DATA K_XMM_AR<>+76(SB)/4, $0x8f1bbcdc
  3029  DATA K_XMM_AR<>+80(SB)/4, $0x8f1bbcdc
  3030  DATA K_XMM_AR<>+84(SB)/4, $0x8f1bbcdc
  3031  DATA K_XMM_AR<>+88(SB)/4, $0x8f1bbcdc
  3032  DATA K_XMM_AR<>+92(SB)/4, $0x8f1bbcdc
  3033  DATA K_XMM_AR<>+96(SB)/4, $0xca62c1d6
  3034  DATA K_XMM_AR<>+100(SB)/4, $0xca62c1d6
  3035  DATA K_XMM_AR<>+104(SB)/4, $0xca62c1d6
  3036  DATA K_XMM_AR<>+108(SB)/4, $0xca62c1d6
  3037  DATA K_XMM_AR<>+112(SB)/4, $0xca62c1d6
  3038  DATA K_XMM_AR<>+116(SB)/4, $0xca62c1d6
  3039  DATA K_XMM_AR<>+120(SB)/4, $0xca62c1d6
  3040  DATA K_XMM_AR<>+124(SB)/4, $0xca62c1d6
  3041  GLOBL K_XMM_AR<>(SB), RODATA, $128
  3042  
  3043  DATA BSWAP_SHUFB_CTL<>+0(SB)/4, $0x00010203
  3044  DATA BSWAP_SHUFB_CTL<>+4(SB)/4, $0x04050607
  3045  DATA BSWAP_SHUFB_CTL<>+8(SB)/4, $0x08090a0b
  3046  DATA BSWAP_SHUFB_CTL<>+12(SB)/4, $0x0c0d0e0f
  3047  DATA BSWAP_SHUFB_CTL<>+16(SB)/4, $0x00010203
  3048  DATA BSWAP_SHUFB_CTL<>+20(SB)/4, $0x04050607
  3049  DATA BSWAP_SHUFB_CTL<>+24(SB)/4, $0x08090a0b
  3050  DATA BSWAP_SHUFB_CTL<>+28(SB)/4, $0x0c0d0e0f
  3051  GLOBL BSWAP_SHUFB_CTL<>(SB), RODATA, $32
  3052  

View as plain text