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