1#include "asm-mips.h" 2 .file 1 "avcall-mips64.c" 3 .text 4 .align 2 5 .align 3 6 .globl avcall_call 7 .set nomips16 8 .set nomicromips 9 .ent avcall_call 10 DECLARE_FUNCTION(avcall_call) 11avcall_call: 12 .frame $fp,32,$31 13 .mask 0xd0010000,-8 14 .fmask 0x00000000,0 15 ld $2,40($4) 16 ld $12,48($4) 17 lw $3,68($4) 18 daddiu $sp,$sp,-32 19 dsubu $6,$2,$12 20 dsra $6,$6,3 21 sd $fp,16($sp) 22 sd $16,0($sp) 23 sd $31,24($sp) 24 move $fp,$sp 25 daddiu $sp,$sp,-2064 26 move $16,$4 27 sll $6,$6,0 28 .set noreorder 29 .set nomacro 30 beq $3,$0,.L2 31 move $2,$sp 32 .set macro 33 .set reorder 34 35 andi $4,$3,0x1 36 .set noreorder 37 .set nomacro 38 beq $4,$0,.L123 39 andi $4,$3,0x2 40 .set macro 41 .set reorder 42 43 44 45 lwc1 $f12,76($16) 46 47 48 andi $4,$3,0x2 49.L123: 50 .set noreorder 51 .set nomacro 52 beq $4,$0,.L124 53 andi $4,$3,0x4 54 .set macro 55 .set reorder 56 57 58 59 lwc1 $f13,80($16) 60 61 62 andi $4,$3,0x4 63.L124: 64 .set noreorder 65 .set nomacro 66 beq $4,$0,.L125 67 andi $4,$3,0x8 68 .set macro 69 .set reorder 70 71 72 73 lwc1 $f14,84($16) 74 75 76 andi $4,$3,0x8 77.L125: 78 .set noreorder 79 .set nomacro 80 beq $4,$0,.L126 81 andi $4,$3,0x10 82 .set macro 83 .set reorder 84 85 86 87 lwc1 $f15,88($16) 88 89 90 andi $4,$3,0x10 91.L126: 92 .set noreorder 93 .set nomacro 94 beq $4,$0,.L127 95 andi $4,$3,0x20 96 .set macro 97 .set reorder 98 99 100 101 lwc1 $f16,92($16) 102 103 104 andi $4,$3,0x20 105.L127: 106 .set noreorder 107 .set nomacro 108 beq $4,$0,.L128 109 andi $4,$3,0x40 110 .set macro 111 .set reorder 112 113 114 115 lwc1 $f17,96($16) 116 117 118 andi $4,$3,0x40 119.L128: 120 .set noreorder 121 .set nomacro 122 beql $4,$0,.L129 123 andi $3,$3,0x80 124 .set macro 125 .set reorder 126 127 128 129 lwc1 $f18,100($16) 130 131 132 andi $3,$3,0x80 133.L129: 134 bne $3,$0,.L116 135.L2: 136 lw $3,72($16) 137.L122: 138 .set noreorder 139 .set nomacro 140 beql $3,$0,.L121 141 slt $3,$6,9 142 .set macro 143 .set reorder 144 145 andi $4,$3,0x1 146 .set noreorder 147 .set nomacro 148 beq $4,$0,.L130 149 andi $4,$3,0x2 150 .set macro 151 .set reorder 152 153 154 155 ldc1 $f12,0($12) 156 157 158 andi $4,$3,0x2 159.L130: 160 .set noreorder 161 .set nomacro 162 beq $4,$0,.L131 163 andi $4,$3,0x4 164 .set macro 165 .set reorder 166 167 168 169 ldc1 $f13,8($12) 170 171 172 andi $4,$3,0x4 173.L131: 174 .set noreorder 175 .set nomacro 176 beq $4,$0,.L132 177 andi $4,$3,0x8 178 .set macro 179 .set reorder 180 181 182 183 ldc1 $f14,16($12) 184 185 186 andi $4,$3,0x8 187.L132: 188 .set noreorder 189 .set nomacro 190 beq $4,$0,.L133 191 andi $4,$3,0x10 192 .set macro 193 .set reorder 194 195 196 197 ldc1 $f15,24($12) 198 199 200 andi $4,$3,0x10 201.L133: 202 .set noreorder 203 .set nomacro 204 beq $4,$0,.L134 205 andi $4,$3,0x20 206 .set macro 207 .set reorder 208 209 210 211 ldc1 $f16,32($12) 212 213 214 andi $4,$3,0x20 215.L134: 216 .set noreorder 217 .set nomacro 218 beq $4,$0,.L135 219 andi $4,$3,0x40 220 .set macro 221 .set reorder 222 223 224 225 ldc1 $f17,40($12) 226 227 228 andi $4,$3,0x40 229.L135: 230 .set noreorder 231 .set nomacro 232 beql $4,$0,.L136 233 andi $3,$3,0x80 234 .set macro 235 .set reorder 236 237 238 239 ldc1 $f18,48($12) 240 241 242 andi $3,$3,0x80 243.L136: 244 bne $3,$0,.L117 245 slt $3,$6,9 246.L121: 247 .set noreorder 248 .set nomacro 249 bne $3,$0,.L22 250 daddiu $4,$12,64 251 .set macro 252 .set reorder 253 254 li $3,8 255 .align 3 256.L21: 257 ld $5,0($4) 258 addiu $3,$3,1 259 daddiu $4,$4,8 260 sd $5,0($2) 261 .set noreorder 262 .set nomacro 263 bne $6,$3,.L21 264 daddiu $2,$2,8 265 .set macro 266 .set reorder 267 268.L22: 269 270 271 ld $4,0($12) 272 273 274 ld $5,8($12) 275 276 277 ld $6,16($12) 278 279 280 ld $7,24($12) 281 282 283 ld $8,32($12) 284 285 286 ld $9,40($12) 287 288 289 ld $10,48($12) 290 291 292 ld $11,56($12) 293 294 295 ld $25,8($16) 296 jalr $25 297 lw $4,24($16) 298 li $5,1 299 .set noreorder 300 .set nomacro 301 beq $4,$5,.L19 302 li $5,2 303 .set macro 304 .set reorder 305 306 .set noreorder 307 .set nomacro 308 beq $4,$5,.L106 309 li $5,3 310 .set macro 311 .set reorder 312 313 .set noreorder 314 .set nomacro 315 beq $4,$5,.L106 316 li $5,4 317 .set macro 318 .set reorder 319 320 .set noreorder 321 .set nomacro 322 beq $4,$5,.L106 323 li $5,5 324 .set macro 325 .set reorder 326 327 .set noreorder 328 .set nomacro 329 beq $4,$5,.L108 330 li $5,6 331 .set macro 332 .set reorder 333 334 .set noreorder 335 .set nomacro 336 beq $4,$5,.L108 337 li $5,7 338 .set macro 339 .set reorder 340 341 .set noreorder 342 .set nomacro 343 beq $4,$5,.L111 344 li $5,8 345 .set macro 346 .set reorder 347 348 .set noreorder 349 .set nomacro 350 beq $4,$5,.L111 351 li $5,9 352 .set macro 353 .set reorder 354 355 .set noreorder 356 .set nomacro 357 beq $4,$5,.L109 358 li $5,10 359 .set macro 360 .set reorder 361 362 .set noreorder 363 .set nomacro 364 beq $4,$5,.L109 365 li $5,11 366 .set macro 367 .set reorder 368 369 .set noreorder 370 .set nomacro 371 beq $4,$5,.L109 372 li $5,12 373 .set macro 374 .set reorder 375 376 .set noreorder 377 .set nomacro 378 beq $4,$5,.L109 379 li $5,13 380 .set macro 381 .set reorder 382 383 .set noreorder 384 .set nomacro 385 beq $4,$5,.L118 386 li $5,14 387 .set macro 388 .set reorder 389 390 .set noreorder 391 .set nomacro 392 beq $4,$5,.L119 393 li $5,15 394 .set macro 395 .set reorder 396 397 .set noreorder 398 .set nomacro 399 beq $4,$5,.L109 400 li $5,16 401 .set macro 402 .set reorder 403 404 .set noreorder 405 .set nomacro 406 bnel $4,$5,.L137 407 move $sp,$fp 408 .set macro 409 .set reorder 410 411 lw $4,0($16) 412 andi $5,$4,0x200 413 .set noreorder 414 .set nomacro 415 beq $5,$0,.L19 416 andi $4,$4,0x4 417 .set macro 418 .set reorder 419 420 .set noreorder 421 .set nomacro 422 beql $4,$0,.L37 423 ld $4,32($16) 424 .set macro 425 .set reorder 426 427 ld $3,32($16) 428 li $4,1 429 .set noreorder 430 .set nomacro 431 beq $3,$4,.L106 432 li $4,2 433 .set macro 434 .set reorder 435 436 .set noreorder 437 .set nomacro 438 beq $3,$4,.L108 439 li $4,4 440 .set macro 441 .set reorder 442 443 .set noreorder 444 .set nomacro 445 beq $3,$4,.L111 446 li $4,8 447 .set macro 448 .set reorder 449 450 .set noreorder 451 .set nomacro 452 beql $3,$4,.L138 453 ld $3,16($16) 454 .set macro 455 .set reorder 456 457.L19: 458 move $sp,$fp 459.L137: 460 ld $31,24($sp) 461 ld $fp,16($sp) 462 ld $16,0($sp) 463 move $2,$0 464 .set noreorder 465 .set nomacro 466 j $31 467 daddiu $sp,$sp,32 468 .set macro 469 .set reorder 470 471 .align 3 472.L117: 473 474 475 ldc1 $f19,56($12) 476 477 478 .set noreorder 479 .set nomacro 480 b .L121 481 slt $3,$6,9 482 .set macro 483 .set reorder 484 485 .align 3 486.L116: 487 488 489 lwc1 $f19,104($16) 490 491 492 .set noreorder 493 .set nomacro 494 b .L122 495 lw $3,72($16) 496 .set macro 497 .set reorder 498 499 .align 3 500.L106: 501 ld $3,16($16) 502 sb $2,0($3) 503 move $sp,$fp 504 ld $31,24($sp) 505 ld $fp,16($sp) 506 ld $16,0($sp) 507 move $2,$0 508 .set noreorder 509 .set nomacro 510 j $31 511 daddiu $sp,$sp,32 512 .set macro 513 .set reorder 514 515.L111: 516 ld $3,16($16) 517 .set noreorder 518 .set nomacro 519 b .L19 520 sw $2,0($3) 521 .set macro 522 .set reorder 523 524 .align 3 525.L108: 526 ld $3,16($16) 527 sh $2,0($3) 528 move $sp,$fp 529 ld $31,24($sp) 530 ld $fp,16($sp) 531 ld $16,0($sp) 532 move $2,$0 533 .set noreorder 534 .set nomacro 535 j $31 536 daddiu $sp,$sp,32 537 .set macro 538 .set reorder 539 540 .align 3 541.L109: 542 ld $3,16($16) 543 .align 3 544.L138: 545 sd $2,0($3) 546 move $sp,$fp 547 ld $31,24($sp) 548 ld $fp,16($sp) 549 ld $16,0($sp) 550 move $2,$0 551 .set noreorder 552 .set nomacro 553 j $31 554 daddiu $sp,$sp,32 555 .set macro 556 .set reorder 557 558.L119: 559 ld $2,16($16) 560 .set noreorder 561 .set nomacro 562 b .L19 563 sdc1 $f0,0($2) 564 .set macro 565 .set reorder 566 567.L118: 568 ld $2,16($16) 569 .set noreorder 570 .set nomacro 571 b .L19 572 swc1 $f0,0($2) 573 .set macro 574 .set reorder 575 576.L37: 577 daddiu $5,$4,-1 578 sltu $5,$5,16 579 .set noreorder 580 .set nomacro 581 beq $5,$0,.L19 582 sltu $7,$4,9 583 .set macro 584 .set reorder 585 586 ld $6,16($16) 587 li $8,-8 588 andi $5,$6,0x7 589 daddu $4,$4,$5 590 .set noreorder 591 .set nomacro 592 beq $7,$0,.L41 593 and $6,$6,$8 594 .set macro 595 .set reorder 596 597 sltu $3,$4,9 598 .set noreorder 599 .set nomacro 600 beq $3,$0,.L42 601 subu $8,$0,$5 602 .set macro 603 .set reorder 604 605 subu $3,$0,$5 606 sll $7,$4,0 607 sll $3,$3,3 608 ld $8,0($6) 609 addiu $3,$3,63 610 subu $7,$0,$7 611 li $4,2 612 dsll $4,$4,$3 613 sll $7,$7,3 614 sll $5,$5,3 615 li $3,1 616 dsll $3,$3,$7 617 dsra $2,$2,$5 618 dsubu $3,$4,$3 619 xor $2,$2,$8 620 and $2,$3,$2 621 xor $2,$2,$8 622 .set noreorder 623 .set nomacro 624 b .L19 625 sd $2,0($6) 626 .set macro 627 .set reorder 628 629.L41: 630 subu $9,$0,$5 631 ld $11,0($6) 632 sll $10,$9,3 633 addiu $7,$10,63 634 sll $5,$5,3 635 li $8,2 636 dsll $8,$8,$7 637 dsra $7,$2,$5 638 daddiu $8,$8,-1 639 xor $7,$7,$11 640 and $7,$8,$7 641 xor $7,$7,$11 642 sltu $8,$4,17 643 .set noreorder 644 .set nomacro 645 bne $8,$0,.L120 646 sd $7,0($6) 647 .set macro 648 .set reorder 649 650 ld $9,16($6) 651 sll $4,$4,0 652 addiu $10,$10,64 653 subu $4,$0,$4 654 move $8,$3 655 sll $4,$4,3 656 dsll $3,$3,$10 657 li $7,-1 658 dsll $4,$7,$4 659 xor $3,$3,$9 660 dsll $2,$2,$10 661 dsra $5,$8,$5 662 and $3,$4,$3 663 or $2,$2,$5 664 xor $3,$3,$9 665 sd $2,8($6) 666 .set noreorder 667 .set nomacro 668 b .L19 669 sd $3,16($6) 670 .set macro 671 .set reorder 672 673.L42: 674 ld $11,0($6) 675 ld $10,8($6) 676 sll $7,$4,0 677 sll $8,$8,3 678 sll $5,$5,3 679 subu $9,$0,$7 680 addiu $4,$8,63 681 li $7,2 682 dsra $3,$2,$5 683 dsll $4,$7,$4 684 dsll $2,$2,$8 685 sll $7,$9,3 686 li $5,-1 687 daddiu $4,$4,-1 688 xor $3,$3,$11 689 dsll $5,$5,$7 690 xor $2,$2,$10 691 and $3,$4,$3 692 and $2,$5,$2 693 xor $3,$3,$11 694 xor $2,$2,$10 695 sd $3,0($6) 696 .set noreorder 697 .set nomacro 698 b .L19 699 sd $2,8($6) 700 .set macro 701 .set reorder 702 703.L120: 704 sll $7,$9,2 705 addiu $7,$7,32 706 ld $8,8($6) 707 dsll $2,$2,$7 708 sll $4,$4,0 709 dsll $7,$2,$7 710 dsra $3,$3,$5 711 subu $4,$0,$4 712 or $3,$7,$3 713 sll $4,$4,3 714 li $2,-1 715 xor $3,$3,$8 716 dsll $2,$2,$4 717 and $2,$3,$2 718 xor $2,$2,$8 719 .set noreorder 720 .set nomacro 721 b .L19 722 sd $2,8($6) 723 .set macro 724 .set reorder 725 726 .end avcall_call 727 .size avcall_call, .-avcall_call 728