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