1// Copyright 2012 The Go Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// This code was translated into a form compatible with 6a from the public 6// domain sources in SUPERCOP: http://bench.cr.yp.to/supercop.html 7 8// +build amd64,!gccgo,!appengine 9 10// func ladderstep(inout *[5][5]uint64) 11TEXT ·ladderstep(SB),0,$384-8 12 MOVQ inout+0(FP),DI 13 14 MOVQ SP,R11 15 MOVQ $31,CX 16 NOTQ CX 17 ANDQ CX,SP 18 ADDQ $32,SP 19 20 MOVQ R11,0(SP) 21 MOVQ R12,8(SP) 22 MOVQ R13,16(SP) 23 MOVQ R14,24(SP) 24 MOVQ R15,32(SP) 25 MOVQ BX,40(SP) 26 MOVQ BP,48(SP) 27 MOVQ 40(DI),SI 28 MOVQ 48(DI),DX 29 MOVQ 56(DI),CX 30 MOVQ 64(DI),R8 31 MOVQ 72(DI),R9 32 MOVQ SI,AX 33 MOVQ DX,R10 34 MOVQ CX,R11 35 MOVQ R8,R12 36 MOVQ R9,R13 37 ADDQ ·_2P0(SB),AX 38 ADDQ ·_2P1234(SB),R10 39 ADDQ ·_2P1234(SB),R11 40 ADDQ ·_2P1234(SB),R12 41 ADDQ ·_2P1234(SB),R13 42 ADDQ 80(DI),SI 43 ADDQ 88(DI),DX 44 ADDQ 96(DI),CX 45 ADDQ 104(DI),R8 46 ADDQ 112(DI),R9 47 SUBQ 80(DI),AX 48 SUBQ 88(DI),R10 49 SUBQ 96(DI),R11 50 SUBQ 104(DI),R12 51 SUBQ 112(DI),R13 52 MOVQ SI,56(SP) 53 MOVQ DX,64(SP) 54 MOVQ CX,72(SP) 55 MOVQ R8,80(SP) 56 MOVQ R9,88(SP) 57 MOVQ AX,96(SP) 58 MOVQ R10,104(SP) 59 MOVQ R11,112(SP) 60 MOVQ R12,120(SP) 61 MOVQ R13,128(SP) 62 MOVQ 96(SP),AX 63 MULQ 96(SP) 64 MOVQ AX,SI 65 MOVQ DX,CX 66 MOVQ 96(SP),AX 67 SHLQ $1,AX 68 MULQ 104(SP) 69 MOVQ AX,R8 70 MOVQ DX,R9 71 MOVQ 96(SP),AX 72 SHLQ $1,AX 73 MULQ 112(SP) 74 MOVQ AX,R10 75 MOVQ DX,R11 76 MOVQ 96(SP),AX 77 SHLQ $1,AX 78 MULQ 120(SP) 79 MOVQ AX,R12 80 MOVQ DX,R13 81 MOVQ 96(SP),AX 82 SHLQ $1,AX 83 MULQ 128(SP) 84 MOVQ AX,R14 85 MOVQ DX,R15 86 MOVQ 104(SP),AX 87 MULQ 104(SP) 88 ADDQ AX,R10 89 ADCQ DX,R11 90 MOVQ 104(SP),AX 91 SHLQ $1,AX 92 MULQ 112(SP) 93 ADDQ AX,R12 94 ADCQ DX,R13 95 MOVQ 104(SP),AX 96 SHLQ $1,AX 97 MULQ 120(SP) 98 ADDQ AX,R14 99 ADCQ DX,R15 100 MOVQ 104(SP),DX 101 IMUL3Q $38,DX,AX 102 MULQ 128(SP) 103 ADDQ AX,SI 104 ADCQ DX,CX 105 MOVQ 112(SP),AX 106 MULQ 112(SP) 107 ADDQ AX,R14 108 ADCQ DX,R15 109 MOVQ 112(SP),DX 110 IMUL3Q $38,DX,AX 111 MULQ 120(SP) 112 ADDQ AX,SI 113 ADCQ DX,CX 114 MOVQ 112(SP),DX 115 IMUL3Q $38,DX,AX 116 MULQ 128(SP) 117 ADDQ AX,R8 118 ADCQ DX,R9 119 MOVQ 120(SP),DX 120 IMUL3Q $19,DX,AX 121 MULQ 120(SP) 122 ADDQ AX,R8 123 ADCQ DX,R9 124 MOVQ 120(SP),DX 125 IMUL3Q $38,DX,AX 126 MULQ 128(SP) 127 ADDQ AX,R10 128 ADCQ DX,R11 129 MOVQ 128(SP),DX 130 IMUL3Q $19,DX,AX 131 MULQ 128(SP) 132 ADDQ AX,R12 133 ADCQ DX,R13 134 MOVQ ·REDMASK51(SB),DX 135 SHLQ $13,CX:SI 136 ANDQ DX,SI 137 SHLQ $13,R9:R8 138 ANDQ DX,R8 139 ADDQ CX,R8 140 SHLQ $13,R11:R10 141 ANDQ DX,R10 142 ADDQ R9,R10 143 SHLQ $13,R13:R12 144 ANDQ DX,R12 145 ADDQ R11,R12 146 SHLQ $13,R15:R14 147 ANDQ DX,R14 148 ADDQ R13,R14 149 IMUL3Q $19,R15,CX 150 ADDQ CX,SI 151 MOVQ SI,CX 152 SHRQ $51,CX 153 ADDQ R8,CX 154 ANDQ DX,SI 155 MOVQ CX,R8 156 SHRQ $51,CX 157 ADDQ R10,CX 158 ANDQ DX,R8 159 MOVQ CX,R9 160 SHRQ $51,CX 161 ADDQ R12,CX 162 ANDQ DX,R9 163 MOVQ CX,AX 164 SHRQ $51,CX 165 ADDQ R14,CX 166 ANDQ DX,AX 167 MOVQ CX,R10 168 SHRQ $51,CX 169 IMUL3Q $19,CX,CX 170 ADDQ CX,SI 171 ANDQ DX,R10 172 MOVQ SI,136(SP) 173 MOVQ R8,144(SP) 174 MOVQ R9,152(SP) 175 MOVQ AX,160(SP) 176 MOVQ R10,168(SP) 177 MOVQ 56(SP),AX 178 MULQ 56(SP) 179 MOVQ AX,SI 180 MOVQ DX,CX 181 MOVQ 56(SP),AX 182 SHLQ $1,AX 183 MULQ 64(SP) 184 MOVQ AX,R8 185 MOVQ DX,R9 186 MOVQ 56(SP),AX 187 SHLQ $1,AX 188 MULQ 72(SP) 189 MOVQ AX,R10 190 MOVQ DX,R11 191 MOVQ 56(SP),AX 192 SHLQ $1,AX 193 MULQ 80(SP) 194 MOVQ AX,R12 195 MOVQ DX,R13 196 MOVQ 56(SP),AX 197 SHLQ $1,AX 198 MULQ 88(SP) 199 MOVQ AX,R14 200 MOVQ DX,R15 201 MOVQ 64(SP),AX 202 MULQ 64(SP) 203 ADDQ AX,R10 204 ADCQ DX,R11 205 MOVQ 64(SP),AX 206 SHLQ $1,AX 207 MULQ 72(SP) 208 ADDQ AX,R12 209 ADCQ DX,R13 210 MOVQ 64(SP),AX 211 SHLQ $1,AX 212 MULQ 80(SP) 213 ADDQ AX,R14 214 ADCQ DX,R15 215 MOVQ 64(SP),DX 216 IMUL3Q $38,DX,AX 217 MULQ 88(SP) 218 ADDQ AX,SI 219 ADCQ DX,CX 220 MOVQ 72(SP),AX 221 MULQ 72(SP) 222 ADDQ AX,R14 223 ADCQ DX,R15 224 MOVQ 72(SP),DX 225 IMUL3Q $38,DX,AX 226 MULQ 80(SP) 227 ADDQ AX,SI 228 ADCQ DX,CX 229 MOVQ 72(SP),DX 230 IMUL3Q $38,DX,AX 231 MULQ 88(SP) 232 ADDQ AX,R8 233 ADCQ DX,R9 234 MOVQ 80(SP),DX 235 IMUL3Q $19,DX,AX 236 MULQ 80(SP) 237 ADDQ AX,R8 238 ADCQ DX,R9 239 MOVQ 80(SP),DX 240 IMUL3Q $38,DX,AX 241 MULQ 88(SP) 242 ADDQ AX,R10 243 ADCQ DX,R11 244 MOVQ 88(SP),DX 245 IMUL3Q $19,DX,AX 246 MULQ 88(SP) 247 ADDQ AX,R12 248 ADCQ DX,R13 249 MOVQ ·REDMASK51(SB),DX 250 SHLQ $13,CX:SI 251 ANDQ DX,SI 252 SHLQ $13,R9:R8 253 ANDQ DX,R8 254 ADDQ CX,R8 255 SHLQ $13,R11:R10 256 ANDQ DX,R10 257 ADDQ R9,R10 258 SHLQ $13,R13:R12 259 ANDQ DX,R12 260 ADDQ R11,R12 261 SHLQ $13,R15:R14 262 ANDQ DX,R14 263 ADDQ R13,R14 264 IMUL3Q $19,R15,CX 265 ADDQ CX,SI 266 MOVQ SI,CX 267 SHRQ $51,CX 268 ADDQ R8,CX 269 ANDQ DX,SI 270 MOVQ CX,R8 271 SHRQ $51,CX 272 ADDQ R10,CX 273 ANDQ DX,R8 274 MOVQ CX,R9 275 SHRQ $51,CX 276 ADDQ R12,CX 277 ANDQ DX,R9 278 MOVQ CX,AX 279 SHRQ $51,CX 280 ADDQ R14,CX 281 ANDQ DX,AX 282 MOVQ CX,R10 283 SHRQ $51,CX 284 IMUL3Q $19,CX,CX 285 ADDQ CX,SI 286 ANDQ DX,R10 287 MOVQ SI,176(SP) 288 MOVQ R8,184(SP) 289 MOVQ R9,192(SP) 290 MOVQ AX,200(SP) 291 MOVQ R10,208(SP) 292 MOVQ SI,SI 293 MOVQ R8,DX 294 MOVQ R9,CX 295 MOVQ AX,R8 296 MOVQ R10,R9 297 ADDQ ·_2P0(SB),SI 298 ADDQ ·_2P1234(SB),DX 299 ADDQ ·_2P1234(SB),CX 300 ADDQ ·_2P1234(SB),R8 301 ADDQ ·_2P1234(SB),R9 302 SUBQ 136(SP),SI 303 SUBQ 144(SP),DX 304 SUBQ 152(SP),CX 305 SUBQ 160(SP),R8 306 SUBQ 168(SP),R9 307 MOVQ SI,216(SP) 308 MOVQ DX,224(SP) 309 MOVQ CX,232(SP) 310 MOVQ R8,240(SP) 311 MOVQ R9,248(SP) 312 MOVQ 120(DI),SI 313 MOVQ 128(DI),DX 314 MOVQ 136(DI),CX 315 MOVQ 144(DI),R8 316 MOVQ 152(DI),R9 317 MOVQ SI,AX 318 MOVQ DX,R10 319 MOVQ CX,R11 320 MOVQ R8,R12 321 MOVQ R9,R13 322 ADDQ ·_2P0(SB),AX 323 ADDQ ·_2P1234(SB),R10 324 ADDQ ·_2P1234(SB),R11 325 ADDQ ·_2P1234(SB),R12 326 ADDQ ·_2P1234(SB),R13 327 ADDQ 160(DI),SI 328 ADDQ 168(DI),DX 329 ADDQ 176(DI),CX 330 ADDQ 184(DI),R8 331 ADDQ 192(DI),R9 332 SUBQ 160(DI),AX 333 SUBQ 168(DI),R10 334 SUBQ 176(DI),R11 335 SUBQ 184(DI),R12 336 SUBQ 192(DI),R13 337 MOVQ SI,256(SP) 338 MOVQ DX,264(SP) 339 MOVQ CX,272(SP) 340 MOVQ R8,280(SP) 341 MOVQ R9,288(SP) 342 MOVQ AX,296(SP) 343 MOVQ R10,304(SP) 344 MOVQ R11,312(SP) 345 MOVQ R12,320(SP) 346 MOVQ R13,328(SP) 347 MOVQ 280(SP),SI 348 IMUL3Q $19,SI,AX 349 MOVQ AX,336(SP) 350 MULQ 112(SP) 351 MOVQ AX,SI 352 MOVQ DX,CX 353 MOVQ 288(SP),DX 354 IMUL3Q $19,DX,AX 355 MOVQ AX,344(SP) 356 MULQ 104(SP) 357 ADDQ AX,SI 358 ADCQ DX,CX 359 MOVQ 256(SP),AX 360 MULQ 96(SP) 361 ADDQ AX,SI 362 ADCQ DX,CX 363 MOVQ 256(SP),AX 364 MULQ 104(SP) 365 MOVQ AX,R8 366 MOVQ DX,R9 367 MOVQ 256(SP),AX 368 MULQ 112(SP) 369 MOVQ AX,R10 370 MOVQ DX,R11 371 MOVQ 256(SP),AX 372 MULQ 120(SP) 373 MOVQ AX,R12 374 MOVQ DX,R13 375 MOVQ 256(SP),AX 376 MULQ 128(SP) 377 MOVQ AX,R14 378 MOVQ DX,R15 379 MOVQ 264(SP),AX 380 MULQ 96(SP) 381 ADDQ AX,R8 382 ADCQ DX,R9 383 MOVQ 264(SP),AX 384 MULQ 104(SP) 385 ADDQ AX,R10 386 ADCQ DX,R11 387 MOVQ 264(SP),AX 388 MULQ 112(SP) 389 ADDQ AX,R12 390 ADCQ DX,R13 391 MOVQ 264(SP),AX 392 MULQ 120(SP) 393 ADDQ AX,R14 394 ADCQ DX,R15 395 MOVQ 264(SP),DX 396 IMUL3Q $19,DX,AX 397 MULQ 128(SP) 398 ADDQ AX,SI 399 ADCQ DX,CX 400 MOVQ 272(SP),AX 401 MULQ 96(SP) 402 ADDQ AX,R10 403 ADCQ DX,R11 404 MOVQ 272(SP),AX 405 MULQ 104(SP) 406 ADDQ AX,R12 407 ADCQ DX,R13 408 MOVQ 272(SP),AX 409 MULQ 112(SP) 410 ADDQ AX,R14 411 ADCQ DX,R15 412 MOVQ 272(SP),DX 413 IMUL3Q $19,DX,AX 414 MULQ 120(SP) 415 ADDQ AX,SI 416 ADCQ DX,CX 417 MOVQ 272(SP),DX 418 IMUL3Q $19,DX,AX 419 MULQ 128(SP) 420 ADDQ AX,R8 421 ADCQ DX,R9 422 MOVQ 280(SP),AX 423 MULQ 96(SP) 424 ADDQ AX,R12 425 ADCQ DX,R13 426 MOVQ 280(SP),AX 427 MULQ 104(SP) 428 ADDQ AX,R14 429 ADCQ DX,R15 430 MOVQ 336(SP),AX 431 MULQ 120(SP) 432 ADDQ AX,R8 433 ADCQ DX,R9 434 MOVQ 336(SP),AX 435 MULQ 128(SP) 436 ADDQ AX,R10 437 ADCQ DX,R11 438 MOVQ 288(SP),AX 439 MULQ 96(SP) 440 ADDQ AX,R14 441 ADCQ DX,R15 442 MOVQ 344(SP),AX 443 MULQ 112(SP) 444 ADDQ AX,R8 445 ADCQ DX,R9 446 MOVQ 344(SP),AX 447 MULQ 120(SP) 448 ADDQ AX,R10 449 ADCQ DX,R11 450 MOVQ 344(SP),AX 451 MULQ 128(SP) 452 ADDQ AX,R12 453 ADCQ DX,R13 454 MOVQ ·REDMASK51(SB),DX 455 SHLQ $13,CX:SI 456 ANDQ DX,SI 457 SHLQ $13,R9:R8 458 ANDQ DX,R8 459 ADDQ CX,R8 460 SHLQ $13,R11:R10 461 ANDQ DX,R10 462 ADDQ R9,R10 463 SHLQ $13,R13:R12 464 ANDQ DX,R12 465 ADDQ R11,R12 466 SHLQ $13,R15:R14 467 ANDQ DX,R14 468 ADDQ R13,R14 469 IMUL3Q $19,R15,CX 470 ADDQ CX,SI 471 MOVQ SI,CX 472 SHRQ $51,CX 473 ADDQ R8,CX 474 MOVQ CX,R8 475 SHRQ $51,CX 476 ANDQ DX,SI 477 ADDQ R10,CX 478 MOVQ CX,R9 479 SHRQ $51,CX 480 ANDQ DX,R8 481 ADDQ R12,CX 482 MOVQ CX,AX 483 SHRQ $51,CX 484 ANDQ DX,R9 485 ADDQ R14,CX 486 MOVQ CX,R10 487 SHRQ $51,CX 488 ANDQ DX,AX 489 IMUL3Q $19,CX,CX 490 ADDQ CX,SI 491 ANDQ DX,R10 492 MOVQ SI,96(SP) 493 MOVQ R8,104(SP) 494 MOVQ R9,112(SP) 495 MOVQ AX,120(SP) 496 MOVQ R10,128(SP) 497 MOVQ 320(SP),SI 498 IMUL3Q $19,SI,AX 499 MOVQ AX,256(SP) 500 MULQ 72(SP) 501 MOVQ AX,SI 502 MOVQ DX,CX 503 MOVQ 328(SP),DX 504 IMUL3Q $19,DX,AX 505 MOVQ AX,264(SP) 506 MULQ 64(SP) 507 ADDQ AX,SI 508 ADCQ DX,CX 509 MOVQ 296(SP),AX 510 MULQ 56(SP) 511 ADDQ AX,SI 512 ADCQ DX,CX 513 MOVQ 296(SP),AX 514 MULQ 64(SP) 515 MOVQ AX,R8 516 MOVQ DX,R9 517 MOVQ 296(SP),AX 518 MULQ 72(SP) 519 MOVQ AX,R10 520 MOVQ DX,R11 521 MOVQ 296(SP),AX 522 MULQ 80(SP) 523 MOVQ AX,R12 524 MOVQ DX,R13 525 MOVQ 296(SP),AX 526 MULQ 88(SP) 527 MOVQ AX,R14 528 MOVQ DX,R15 529 MOVQ 304(SP),AX 530 MULQ 56(SP) 531 ADDQ AX,R8 532 ADCQ DX,R9 533 MOVQ 304(SP),AX 534 MULQ 64(SP) 535 ADDQ AX,R10 536 ADCQ DX,R11 537 MOVQ 304(SP),AX 538 MULQ 72(SP) 539 ADDQ AX,R12 540 ADCQ DX,R13 541 MOVQ 304(SP),AX 542 MULQ 80(SP) 543 ADDQ AX,R14 544 ADCQ DX,R15 545 MOVQ 304(SP),DX 546 IMUL3Q $19,DX,AX 547 MULQ 88(SP) 548 ADDQ AX,SI 549 ADCQ DX,CX 550 MOVQ 312(SP),AX 551 MULQ 56(SP) 552 ADDQ AX,R10 553 ADCQ DX,R11 554 MOVQ 312(SP),AX 555 MULQ 64(SP) 556 ADDQ AX,R12 557 ADCQ DX,R13 558 MOVQ 312(SP),AX 559 MULQ 72(SP) 560 ADDQ AX,R14 561 ADCQ DX,R15 562 MOVQ 312(SP),DX 563 IMUL3Q $19,DX,AX 564 MULQ 80(SP) 565 ADDQ AX,SI 566 ADCQ DX,CX 567 MOVQ 312(SP),DX 568 IMUL3Q $19,DX,AX 569 MULQ 88(SP) 570 ADDQ AX,R8 571 ADCQ DX,R9 572 MOVQ 320(SP),AX 573 MULQ 56(SP) 574 ADDQ AX,R12 575 ADCQ DX,R13 576 MOVQ 320(SP),AX 577 MULQ 64(SP) 578 ADDQ AX,R14 579 ADCQ DX,R15 580 MOVQ 256(SP),AX 581 MULQ 80(SP) 582 ADDQ AX,R8 583 ADCQ DX,R9 584 MOVQ 256(SP),AX 585 MULQ 88(SP) 586 ADDQ AX,R10 587 ADCQ DX,R11 588 MOVQ 328(SP),AX 589 MULQ 56(SP) 590 ADDQ AX,R14 591 ADCQ DX,R15 592 MOVQ 264(SP),AX 593 MULQ 72(SP) 594 ADDQ AX,R8 595 ADCQ DX,R9 596 MOVQ 264(SP),AX 597 MULQ 80(SP) 598 ADDQ AX,R10 599 ADCQ DX,R11 600 MOVQ 264(SP),AX 601 MULQ 88(SP) 602 ADDQ AX,R12 603 ADCQ DX,R13 604 MOVQ ·REDMASK51(SB),DX 605 SHLQ $13,CX:SI 606 ANDQ DX,SI 607 SHLQ $13,R9:R8 608 ANDQ DX,R8 609 ADDQ CX,R8 610 SHLQ $13,R11:R10 611 ANDQ DX,R10 612 ADDQ R9,R10 613 SHLQ $13,R13:R12 614 ANDQ DX,R12 615 ADDQ R11,R12 616 SHLQ $13,R15:R14 617 ANDQ DX,R14 618 ADDQ R13,R14 619 IMUL3Q $19,R15,CX 620 ADDQ CX,SI 621 MOVQ SI,CX 622 SHRQ $51,CX 623 ADDQ R8,CX 624 MOVQ CX,R8 625 SHRQ $51,CX 626 ANDQ DX,SI 627 ADDQ R10,CX 628 MOVQ CX,R9 629 SHRQ $51,CX 630 ANDQ DX,R8 631 ADDQ R12,CX 632 MOVQ CX,AX 633 SHRQ $51,CX 634 ANDQ DX,R9 635 ADDQ R14,CX 636 MOVQ CX,R10 637 SHRQ $51,CX 638 ANDQ DX,AX 639 IMUL3Q $19,CX,CX 640 ADDQ CX,SI 641 ANDQ DX,R10 642 MOVQ SI,DX 643 MOVQ R8,CX 644 MOVQ R9,R11 645 MOVQ AX,R12 646 MOVQ R10,R13 647 ADDQ ·_2P0(SB),DX 648 ADDQ ·_2P1234(SB),CX 649 ADDQ ·_2P1234(SB),R11 650 ADDQ ·_2P1234(SB),R12 651 ADDQ ·_2P1234(SB),R13 652 ADDQ 96(SP),SI 653 ADDQ 104(SP),R8 654 ADDQ 112(SP),R9 655 ADDQ 120(SP),AX 656 ADDQ 128(SP),R10 657 SUBQ 96(SP),DX 658 SUBQ 104(SP),CX 659 SUBQ 112(SP),R11 660 SUBQ 120(SP),R12 661 SUBQ 128(SP),R13 662 MOVQ SI,120(DI) 663 MOVQ R8,128(DI) 664 MOVQ R9,136(DI) 665 MOVQ AX,144(DI) 666 MOVQ R10,152(DI) 667 MOVQ DX,160(DI) 668 MOVQ CX,168(DI) 669 MOVQ R11,176(DI) 670 MOVQ R12,184(DI) 671 MOVQ R13,192(DI) 672 MOVQ 120(DI),AX 673 MULQ 120(DI) 674 MOVQ AX,SI 675 MOVQ DX,CX 676 MOVQ 120(DI),AX 677 SHLQ $1,AX 678 MULQ 128(DI) 679 MOVQ AX,R8 680 MOVQ DX,R9 681 MOVQ 120(DI),AX 682 SHLQ $1,AX 683 MULQ 136(DI) 684 MOVQ AX,R10 685 MOVQ DX,R11 686 MOVQ 120(DI),AX 687 SHLQ $1,AX 688 MULQ 144(DI) 689 MOVQ AX,R12 690 MOVQ DX,R13 691 MOVQ 120(DI),AX 692 SHLQ $1,AX 693 MULQ 152(DI) 694 MOVQ AX,R14 695 MOVQ DX,R15 696 MOVQ 128(DI),AX 697 MULQ 128(DI) 698 ADDQ AX,R10 699 ADCQ DX,R11 700 MOVQ 128(DI),AX 701 SHLQ $1,AX 702 MULQ 136(DI) 703 ADDQ AX,R12 704 ADCQ DX,R13 705 MOVQ 128(DI),AX 706 SHLQ $1,AX 707 MULQ 144(DI) 708 ADDQ AX,R14 709 ADCQ DX,R15 710 MOVQ 128(DI),DX 711 IMUL3Q $38,DX,AX 712 MULQ 152(DI) 713 ADDQ AX,SI 714 ADCQ DX,CX 715 MOVQ 136(DI),AX 716 MULQ 136(DI) 717 ADDQ AX,R14 718 ADCQ DX,R15 719 MOVQ 136(DI),DX 720 IMUL3Q $38,DX,AX 721 MULQ 144(DI) 722 ADDQ AX,SI 723 ADCQ DX,CX 724 MOVQ 136(DI),DX 725 IMUL3Q $38,DX,AX 726 MULQ 152(DI) 727 ADDQ AX,R8 728 ADCQ DX,R9 729 MOVQ 144(DI),DX 730 IMUL3Q $19,DX,AX 731 MULQ 144(DI) 732 ADDQ AX,R8 733 ADCQ DX,R9 734 MOVQ 144(DI),DX 735 IMUL3Q $38,DX,AX 736 MULQ 152(DI) 737 ADDQ AX,R10 738 ADCQ DX,R11 739 MOVQ 152(DI),DX 740 IMUL3Q $19,DX,AX 741 MULQ 152(DI) 742 ADDQ AX,R12 743 ADCQ DX,R13 744 MOVQ ·REDMASK51(SB),DX 745 SHLQ $13,CX:SI 746 ANDQ DX,SI 747 SHLQ $13,R9:R8 748 ANDQ DX,R8 749 ADDQ CX,R8 750 SHLQ $13,R11:R10 751 ANDQ DX,R10 752 ADDQ R9,R10 753 SHLQ $13,R13:R12 754 ANDQ DX,R12 755 ADDQ R11,R12 756 SHLQ $13,R15:R14 757 ANDQ DX,R14 758 ADDQ R13,R14 759 IMUL3Q $19,R15,CX 760 ADDQ CX,SI 761 MOVQ SI,CX 762 SHRQ $51,CX 763 ADDQ R8,CX 764 ANDQ DX,SI 765 MOVQ CX,R8 766 SHRQ $51,CX 767 ADDQ R10,CX 768 ANDQ DX,R8 769 MOVQ CX,R9 770 SHRQ $51,CX 771 ADDQ R12,CX 772 ANDQ DX,R9 773 MOVQ CX,AX 774 SHRQ $51,CX 775 ADDQ R14,CX 776 ANDQ DX,AX 777 MOVQ CX,R10 778 SHRQ $51,CX 779 IMUL3Q $19,CX,CX 780 ADDQ CX,SI 781 ANDQ DX,R10 782 MOVQ SI,120(DI) 783 MOVQ R8,128(DI) 784 MOVQ R9,136(DI) 785 MOVQ AX,144(DI) 786 MOVQ R10,152(DI) 787 MOVQ 160(DI),AX 788 MULQ 160(DI) 789 MOVQ AX,SI 790 MOVQ DX,CX 791 MOVQ 160(DI),AX 792 SHLQ $1,AX 793 MULQ 168(DI) 794 MOVQ AX,R8 795 MOVQ DX,R9 796 MOVQ 160(DI),AX 797 SHLQ $1,AX 798 MULQ 176(DI) 799 MOVQ AX,R10 800 MOVQ DX,R11 801 MOVQ 160(DI),AX 802 SHLQ $1,AX 803 MULQ 184(DI) 804 MOVQ AX,R12 805 MOVQ DX,R13 806 MOVQ 160(DI),AX 807 SHLQ $1,AX 808 MULQ 192(DI) 809 MOVQ AX,R14 810 MOVQ DX,R15 811 MOVQ 168(DI),AX 812 MULQ 168(DI) 813 ADDQ AX,R10 814 ADCQ DX,R11 815 MOVQ 168(DI),AX 816 SHLQ $1,AX 817 MULQ 176(DI) 818 ADDQ AX,R12 819 ADCQ DX,R13 820 MOVQ 168(DI),AX 821 SHLQ $1,AX 822 MULQ 184(DI) 823 ADDQ AX,R14 824 ADCQ DX,R15 825 MOVQ 168(DI),DX 826 IMUL3Q $38,DX,AX 827 MULQ 192(DI) 828 ADDQ AX,SI 829 ADCQ DX,CX 830 MOVQ 176(DI),AX 831 MULQ 176(DI) 832 ADDQ AX,R14 833 ADCQ DX,R15 834 MOVQ 176(DI),DX 835 IMUL3Q $38,DX,AX 836 MULQ 184(DI) 837 ADDQ AX,SI 838 ADCQ DX,CX 839 MOVQ 176(DI),DX 840 IMUL3Q $38,DX,AX 841 MULQ 192(DI) 842 ADDQ AX,R8 843 ADCQ DX,R9 844 MOVQ 184(DI),DX 845 IMUL3Q $19,DX,AX 846 MULQ 184(DI) 847 ADDQ AX,R8 848 ADCQ DX,R9 849 MOVQ 184(DI),DX 850 IMUL3Q $38,DX,AX 851 MULQ 192(DI) 852 ADDQ AX,R10 853 ADCQ DX,R11 854 MOVQ 192(DI),DX 855 IMUL3Q $19,DX,AX 856 MULQ 192(DI) 857 ADDQ AX,R12 858 ADCQ DX,R13 859 MOVQ ·REDMASK51(SB),DX 860 SHLQ $13,CX:SI 861 ANDQ DX,SI 862 SHLQ $13,R9:R8 863 ANDQ DX,R8 864 ADDQ CX,R8 865 SHLQ $13,R11:R10 866 ANDQ DX,R10 867 ADDQ R9,R10 868 SHLQ $13,R13:R12 869 ANDQ DX,R12 870 ADDQ R11,R12 871 SHLQ $13,R15:R14 872 ANDQ DX,R14 873 ADDQ R13,R14 874 IMUL3Q $19,R15,CX 875 ADDQ CX,SI 876 MOVQ SI,CX 877 SHRQ $51,CX 878 ADDQ R8,CX 879 ANDQ DX,SI 880 MOVQ CX,R8 881 SHRQ $51,CX 882 ADDQ R10,CX 883 ANDQ DX,R8 884 MOVQ CX,R9 885 SHRQ $51,CX 886 ADDQ R12,CX 887 ANDQ DX,R9 888 MOVQ CX,AX 889 SHRQ $51,CX 890 ADDQ R14,CX 891 ANDQ DX,AX 892 MOVQ CX,R10 893 SHRQ $51,CX 894 IMUL3Q $19,CX,CX 895 ADDQ CX,SI 896 ANDQ DX,R10 897 MOVQ SI,160(DI) 898 MOVQ R8,168(DI) 899 MOVQ R9,176(DI) 900 MOVQ AX,184(DI) 901 MOVQ R10,192(DI) 902 MOVQ 184(DI),SI 903 IMUL3Q $19,SI,AX 904 MOVQ AX,56(SP) 905 MULQ 16(DI) 906 MOVQ AX,SI 907 MOVQ DX,CX 908 MOVQ 192(DI),DX 909 IMUL3Q $19,DX,AX 910 MOVQ AX,64(SP) 911 MULQ 8(DI) 912 ADDQ AX,SI 913 ADCQ DX,CX 914 MOVQ 160(DI),AX 915 MULQ 0(DI) 916 ADDQ AX,SI 917 ADCQ DX,CX 918 MOVQ 160(DI),AX 919 MULQ 8(DI) 920 MOVQ AX,R8 921 MOVQ DX,R9 922 MOVQ 160(DI),AX 923 MULQ 16(DI) 924 MOVQ AX,R10 925 MOVQ DX,R11 926 MOVQ 160(DI),AX 927 MULQ 24(DI) 928 MOVQ AX,R12 929 MOVQ DX,R13 930 MOVQ 160(DI),AX 931 MULQ 32(DI) 932 MOVQ AX,R14 933 MOVQ DX,R15 934 MOVQ 168(DI),AX 935 MULQ 0(DI) 936 ADDQ AX,R8 937 ADCQ DX,R9 938 MOVQ 168(DI),AX 939 MULQ 8(DI) 940 ADDQ AX,R10 941 ADCQ DX,R11 942 MOVQ 168(DI),AX 943 MULQ 16(DI) 944 ADDQ AX,R12 945 ADCQ DX,R13 946 MOVQ 168(DI),AX 947 MULQ 24(DI) 948 ADDQ AX,R14 949 ADCQ DX,R15 950 MOVQ 168(DI),DX 951 IMUL3Q $19,DX,AX 952 MULQ 32(DI) 953 ADDQ AX,SI 954 ADCQ DX,CX 955 MOVQ 176(DI),AX 956 MULQ 0(DI) 957 ADDQ AX,R10 958 ADCQ DX,R11 959 MOVQ 176(DI),AX 960 MULQ 8(DI) 961 ADDQ AX,R12 962 ADCQ DX,R13 963 MOVQ 176(DI),AX 964 MULQ 16(DI) 965 ADDQ AX,R14 966 ADCQ DX,R15 967 MOVQ 176(DI),DX 968 IMUL3Q $19,DX,AX 969 MULQ 24(DI) 970 ADDQ AX,SI 971 ADCQ DX,CX 972 MOVQ 176(DI),DX 973 IMUL3Q $19,DX,AX 974 MULQ 32(DI) 975 ADDQ AX,R8 976 ADCQ DX,R9 977 MOVQ 184(DI),AX 978 MULQ 0(DI) 979 ADDQ AX,R12 980 ADCQ DX,R13 981 MOVQ 184(DI),AX 982 MULQ 8(DI) 983 ADDQ AX,R14 984 ADCQ DX,R15 985 MOVQ 56(SP),AX 986 MULQ 24(DI) 987 ADDQ AX,R8 988 ADCQ DX,R9 989 MOVQ 56(SP),AX 990 MULQ 32(DI) 991 ADDQ AX,R10 992 ADCQ DX,R11 993 MOVQ 192(DI),AX 994 MULQ 0(DI) 995 ADDQ AX,R14 996 ADCQ DX,R15 997 MOVQ 64(SP),AX 998 MULQ 16(DI) 999 ADDQ AX,R8 1000 ADCQ DX,R9 1001 MOVQ 64(SP),AX 1002 MULQ 24(DI) 1003 ADDQ AX,R10 1004 ADCQ DX,R11 1005 MOVQ 64(SP),AX 1006 MULQ 32(DI) 1007 ADDQ AX,R12 1008 ADCQ DX,R13 1009 MOVQ ·REDMASK51(SB),DX 1010 SHLQ $13,CX:SI 1011 ANDQ DX,SI 1012 SHLQ $13,R9:R8 1013 ANDQ DX,R8 1014 ADDQ CX,R8 1015 SHLQ $13,R11:R10 1016 ANDQ DX,R10 1017 ADDQ R9,R10 1018 SHLQ $13,R13:R12 1019 ANDQ DX,R12 1020 ADDQ R11,R12 1021 SHLQ $13,R15:R14 1022 ANDQ DX,R14 1023 ADDQ R13,R14 1024 IMUL3Q $19,R15,CX 1025 ADDQ CX,SI 1026 MOVQ SI,CX 1027 SHRQ $51,CX 1028 ADDQ R8,CX 1029 MOVQ CX,R8 1030 SHRQ $51,CX 1031 ANDQ DX,SI 1032 ADDQ R10,CX 1033 MOVQ CX,R9 1034 SHRQ $51,CX 1035 ANDQ DX,R8 1036 ADDQ R12,CX 1037 MOVQ CX,AX 1038 SHRQ $51,CX 1039 ANDQ DX,R9 1040 ADDQ R14,CX 1041 MOVQ CX,R10 1042 SHRQ $51,CX 1043 ANDQ DX,AX 1044 IMUL3Q $19,CX,CX 1045 ADDQ CX,SI 1046 ANDQ DX,R10 1047 MOVQ SI,160(DI) 1048 MOVQ R8,168(DI) 1049 MOVQ R9,176(DI) 1050 MOVQ AX,184(DI) 1051 MOVQ R10,192(DI) 1052 MOVQ 200(SP),SI 1053 IMUL3Q $19,SI,AX 1054 MOVQ AX,56(SP) 1055 MULQ 152(SP) 1056 MOVQ AX,SI 1057 MOVQ DX,CX 1058 MOVQ 208(SP),DX 1059 IMUL3Q $19,DX,AX 1060 MOVQ AX,64(SP) 1061 MULQ 144(SP) 1062 ADDQ AX,SI 1063 ADCQ DX,CX 1064 MOVQ 176(SP),AX 1065 MULQ 136(SP) 1066 ADDQ AX,SI 1067 ADCQ DX,CX 1068 MOVQ 176(SP),AX 1069 MULQ 144(SP) 1070 MOVQ AX,R8 1071 MOVQ DX,R9 1072 MOVQ 176(SP),AX 1073 MULQ 152(SP) 1074 MOVQ AX,R10 1075 MOVQ DX,R11 1076 MOVQ 176(SP),AX 1077 MULQ 160(SP) 1078 MOVQ AX,R12 1079 MOVQ DX,R13 1080 MOVQ 176(SP),AX 1081 MULQ 168(SP) 1082 MOVQ AX,R14 1083 MOVQ DX,R15 1084 MOVQ 184(SP),AX 1085 MULQ 136(SP) 1086 ADDQ AX,R8 1087 ADCQ DX,R9 1088 MOVQ 184(SP),AX 1089 MULQ 144(SP) 1090 ADDQ AX,R10 1091 ADCQ DX,R11 1092 MOVQ 184(SP),AX 1093 MULQ 152(SP) 1094 ADDQ AX,R12 1095 ADCQ DX,R13 1096 MOVQ 184(SP),AX 1097 MULQ 160(SP) 1098 ADDQ AX,R14 1099 ADCQ DX,R15 1100 MOVQ 184(SP),DX 1101 IMUL3Q $19,DX,AX 1102 MULQ 168(SP) 1103 ADDQ AX,SI 1104 ADCQ DX,CX 1105 MOVQ 192(SP),AX 1106 MULQ 136(SP) 1107 ADDQ AX,R10 1108 ADCQ DX,R11 1109 MOVQ 192(SP),AX 1110 MULQ 144(SP) 1111 ADDQ AX,R12 1112 ADCQ DX,R13 1113 MOVQ 192(SP),AX 1114 MULQ 152(SP) 1115 ADDQ AX,R14 1116 ADCQ DX,R15 1117 MOVQ 192(SP),DX 1118 IMUL3Q $19,DX,AX 1119 MULQ 160(SP) 1120 ADDQ AX,SI 1121 ADCQ DX,CX 1122 MOVQ 192(SP),DX 1123 IMUL3Q $19,DX,AX 1124 MULQ 168(SP) 1125 ADDQ AX,R8 1126 ADCQ DX,R9 1127 MOVQ 200(SP),AX 1128 MULQ 136(SP) 1129 ADDQ AX,R12 1130 ADCQ DX,R13 1131 MOVQ 200(SP),AX 1132 MULQ 144(SP) 1133 ADDQ AX,R14 1134 ADCQ DX,R15 1135 MOVQ 56(SP),AX 1136 MULQ 160(SP) 1137 ADDQ AX,R8 1138 ADCQ DX,R9 1139 MOVQ 56(SP),AX 1140 MULQ 168(SP) 1141 ADDQ AX,R10 1142 ADCQ DX,R11 1143 MOVQ 208(SP),AX 1144 MULQ 136(SP) 1145 ADDQ AX,R14 1146 ADCQ DX,R15 1147 MOVQ 64(SP),AX 1148 MULQ 152(SP) 1149 ADDQ AX,R8 1150 ADCQ DX,R9 1151 MOVQ 64(SP),AX 1152 MULQ 160(SP) 1153 ADDQ AX,R10 1154 ADCQ DX,R11 1155 MOVQ 64(SP),AX 1156 MULQ 168(SP) 1157 ADDQ AX,R12 1158 ADCQ DX,R13 1159 MOVQ ·REDMASK51(SB),DX 1160 SHLQ $13,CX:SI 1161 ANDQ DX,SI 1162 SHLQ $13,R9:R8 1163 ANDQ DX,R8 1164 ADDQ CX,R8 1165 SHLQ $13,R11:R10 1166 ANDQ DX,R10 1167 ADDQ R9,R10 1168 SHLQ $13,R13:R12 1169 ANDQ DX,R12 1170 ADDQ R11,R12 1171 SHLQ $13,R15:R14 1172 ANDQ DX,R14 1173 ADDQ R13,R14 1174 IMUL3Q $19,R15,CX 1175 ADDQ CX,SI 1176 MOVQ SI,CX 1177 SHRQ $51,CX 1178 ADDQ R8,CX 1179 MOVQ CX,R8 1180 SHRQ $51,CX 1181 ANDQ DX,SI 1182 ADDQ R10,CX 1183 MOVQ CX,R9 1184 SHRQ $51,CX 1185 ANDQ DX,R8 1186 ADDQ R12,CX 1187 MOVQ CX,AX 1188 SHRQ $51,CX 1189 ANDQ DX,R9 1190 ADDQ R14,CX 1191 MOVQ CX,R10 1192 SHRQ $51,CX 1193 ANDQ DX,AX 1194 IMUL3Q $19,CX,CX 1195 ADDQ CX,SI 1196 ANDQ DX,R10 1197 MOVQ SI,40(DI) 1198 MOVQ R8,48(DI) 1199 MOVQ R9,56(DI) 1200 MOVQ AX,64(DI) 1201 MOVQ R10,72(DI) 1202 MOVQ 216(SP),AX 1203 MULQ ·_121666_213(SB) 1204 SHRQ $13,AX 1205 MOVQ AX,SI 1206 MOVQ DX,CX 1207 MOVQ 224(SP),AX 1208 MULQ ·_121666_213(SB) 1209 SHRQ $13,AX 1210 ADDQ AX,CX 1211 MOVQ DX,R8 1212 MOVQ 232(SP),AX 1213 MULQ ·_121666_213(SB) 1214 SHRQ $13,AX 1215 ADDQ AX,R8 1216 MOVQ DX,R9 1217 MOVQ 240(SP),AX 1218 MULQ ·_121666_213(SB) 1219 SHRQ $13,AX 1220 ADDQ AX,R9 1221 MOVQ DX,R10 1222 MOVQ 248(SP),AX 1223 MULQ ·_121666_213(SB) 1224 SHRQ $13,AX 1225 ADDQ AX,R10 1226 IMUL3Q $19,DX,DX 1227 ADDQ DX,SI 1228 ADDQ 136(SP),SI 1229 ADDQ 144(SP),CX 1230 ADDQ 152(SP),R8 1231 ADDQ 160(SP),R9 1232 ADDQ 168(SP),R10 1233 MOVQ SI,80(DI) 1234 MOVQ CX,88(DI) 1235 MOVQ R8,96(DI) 1236 MOVQ R9,104(DI) 1237 MOVQ R10,112(DI) 1238 MOVQ 104(DI),SI 1239 IMUL3Q $19,SI,AX 1240 MOVQ AX,56(SP) 1241 MULQ 232(SP) 1242 MOVQ AX,SI 1243 MOVQ DX,CX 1244 MOVQ 112(DI),DX 1245 IMUL3Q $19,DX,AX 1246 MOVQ AX,64(SP) 1247 MULQ 224(SP) 1248 ADDQ AX,SI 1249 ADCQ DX,CX 1250 MOVQ 80(DI),AX 1251 MULQ 216(SP) 1252 ADDQ AX,SI 1253 ADCQ DX,CX 1254 MOVQ 80(DI),AX 1255 MULQ 224(SP) 1256 MOVQ AX,R8 1257 MOVQ DX,R9 1258 MOVQ 80(DI),AX 1259 MULQ 232(SP) 1260 MOVQ AX,R10 1261 MOVQ DX,R11 1262 MOVQ 80(DI),AX 1263 MULQ 240(SP) 1264 MOVQ AX,R12 1265 MOVQ DX,R13 1266 MOVQ 80(DI),AX 1267 MULQ 248(SP) 1268 MOVQ AX,R14 1269 MOVQ DX,R15 1270 MOVQ 88(DI),AX 1271 MULQ 216(SP) 1272 ADDQ AX,R8 1273 ADCQ DX,R9 1274 MOVQ 88(DI),AX 1275 MULQ 224(SP) 1276 ADDQ AX,R10 1277 ADCQ DX,R11 1278 MOVQ 88(DI),AX 1279 MULQ 232(SP) 1280 ADDQ AX,R12 1281 ADCQ DX,R13 1282 MOVQ 88(DI),AX 1283 MULQ 240(SP) 1284 ADDQ AX,R14 1285 ADCQ DX,R15 1286 MOVQ 88(DI),DX 1287 IMUL3Q $19,DX,AX 1288 MULQ 248(SP) 1289 ADDQ AX,SI 1290 ADCQ DX,CX 1291 MOVQ 96(DI),AX 1292 MULQ 216(SP) 1293 ADDQ AX,R10 1294 ADCQ DX,R11 1295 MOVQ 96(DI),AX 1296 MULQ 224(SP) 1297 ADDQ AX,R12 1298 ADCQ DX,R13 1299 MOVQ 96(DI),AX 1300 MULQ 232(SP) 1301 ADDQ AX,R14 1302 ADCQ DX,R15 1303 MOVQ 96(DI),DX 1304 IMUL3Q $19,DX,AX 1305 MULQ 240(SP) 1306 ADDQ AX,SI 1307 ADCQ DX,CX 1308 MOVQ 96(DI),DX 1309 IMUL3Q $19,DX,AX 1310 MULQ 248(SP) 1311 ADDQ AX,R8 1312 ADCQ DX,R9 1313 MOVQ 104(DI),AX 1314 MULQ 216(SP) 1315 ADDQ AX,R12 1316 ADCQ DX,R13 1317 MOVQ 104(DI),AX 1318 MULQ 224(SP) 1319 ADDQ AX,R14 1320 ADCQ DX,R15 1321 MOVQ 56(SP),AX 1322 MULQ 240(SP) 1323 ADDQ AX,R8 1324 ADCQ DX,R9 1325 MOVQ 56(SP),AX 1326 MULQ 248(SP) 1327 ADDQ AX,R10 1328 ADCQ DX,R11 1329 MOVQ 112(DI),AX 1330 MULQ 216(SP) 1331 ADDQ AX,R14 1332 ADCQ DX,R15 1333 MOVQ 64(SP),AX 1334 MULQ 232(SP) 1335 ADDQ AX,R8 1336 ADCQ DX,R9 1337 MOVQ 64(SP),AX 1338 MULQ 240(SP) 1339 ADDQ AX,R10 1340 ADCQ DX,R11 1341 MOVQ 64(SP),AX 1342 MULQ 248(SP) 1343 ADDQ AX,R12 1344 ADCQ DX,R13 1345 MOVQ ·REDMASK51(SB),DX 1346 SHLQ $13,CX:SI 1347 ANDQ DX,SI 1348 SHLQ $13,R9:R8 1349 ANDQ DX,R8 1350 ADDQ CX,R8 1351 SHLQ $13,R11:R10 1352 ANDQ DX,R10 1353 ADDQ R9,R10 1354 SHLQ $13,R13:R12 1355 ANDQ DX,R12 1356 ADDQ R11,R12 1357 SHLQ $13,R15:R14 1358 ANDQ DX,R14 1359 ADDQ R13,R14 1360 IMUL3Q $19,R15,CX 1361 ADDQ CX,SI 1362 MOVQ SI,CX 1363 SHRQ $51,CX 1364 ADDQ R8,CX 1365 MOVQ CX,R8 1366 SHRQ $51,CX 1367 ANDQ DX,SI 1368 ADDQ R10,CX 1369 MOVQ CX,R9 1370 SHRQ $51,CX 1371 ANDQ DX,R8 1372 ADDQ R12,CX 1373 MOVQ CX,AX 1374 SHRQ $51,CX 1375 ANDQ DX,R9 1376 ADDQ R14,CX 1377 MOVQ CX,R10 1378 SHRQ $51,CX 1379 ANDQ DX,AX 1380 IMUL3Q $19,CX,CX 1381 ADDQ CX,SI 1382 ANDQ DX,R10 1383 MOVQ SI,80(DI) 1384 MOVQ R8,88(DI) 1385 MOVQ R9,96(DI) 1386 MOVQ AX,104(DI) 1387 MOVQ R10,112(DI) 1388 MOVQ 0(SP),R11 1389 MOVQ 8(SP),R12 1390 MOVQ 16(SP),R13 1391 MOVQ 24(SP),R14 1392 MOVQ 32(SP),R15 1393 MOVQ 40(SP),BX 1394 MOVQ 48(SP),BP 1395 MOVQ R11,SP 1396 MOVQ DI,AX 1397 MOVQ SI,DX 1398 RET 1399