📄 bzlib_huffman.lst
字号:
164:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = 1; i < alphaSize; i++) { 415 .loc 1 164 0 416 .loc 1 162 0 417 03e0 1200E010 beq $7,$0,$L9 418 03e4 01000824 li $8,1 # 0x1 419 420 .loc 1 164 0 421 03e8 2A100F01 slt $2,$8,$15 422 03ec 1AFF4010 beq $2,$0,$L69 423 03f0 0400A527 addiu $5,$sp,4 424 425 $L46: 165:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** j = weight[i] >> 8; 426 .loc 1 165 0 427 03f4 1004A38C lw $3,1040($5) 428 .loc 1 164 0 429 03f8 01000825 addiu $8,$8,1 430 03fc 2A200F01 slt $4,$8,$15 431 .loc 1 165 0 432 0400 03320300 sra $6,$3,8 166:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** j = 1 + (j / 2); 433 .loc 1 166 0 434 0404 C2170300 srl $2,$3,31 435 0408 2110C200 addu $2,$6,$2 436 040c 43100200 sra $2,$2,1 437 0410 01004624 addiu $6,$2,1 167:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** weight[i] = j << 8; 438 .loc 1 167 0 439 0414 001A0600 sll $3,$6,8 440 0418 1004A3AC sw $3,1040($5) 441 .loc 1 164 0 442 041c F5FF8014 bne $4,$0,$L46 443 0420 0400A524 addiu $5,$5,4 444 445 .loc 1 128 0 446 0424 17000008 j $L75 447 0428 FEFF0224 li $2,-2 # 0xfffffffffffffffe 448 449 $L9: 450 .loc 1 164 0 451 042c 3414B18F lw $17,5172($sp) 452 0430 3014B08F lw $16,5168($sp) 453 0434 0800E003 j $31 454 0438 3814BD27 addiu $sp,$sp,5176 455 456 .set macroGAS LISTING /tmp/ccRSZRFA.s page 12 457 .set reorder 458 $LFE2: 459 .end BZ2_hbMakeCodeLengths 460 .align 2 461 .globl BZ2_hbAssignCodes 462 .ent BZ2_hbAssignCodes 463 .type BZ2_hbAssignCodes, @function 464 BZ2_hbAssignCodes: 465 $LFB3: 168:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** } 169:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** } 170:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** } 171:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 172:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 173:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*---------------------------------------------------*/ 174:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** void BZ2_hbAssignCodes ( Int32 *code, 175:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** UChar *length, 176:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 minLen, 177:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 maxLen, 178:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 alphaSize ) 179:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** { 466 .loc 1 179 0 467 .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 468 .mask 0x00000000,0 469 .fmask 0x00000000,0 470 .set noreorder 471 .set nomacro 472 180:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 n, vec, i; 181:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 182:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** vec = 0; 183:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (n = minLen; n <= maxLen; n++) { 473 .loc 1 183 0 474 043c 2A10E600 slt $2,$7,$6 475 .loc 1 179 0 476 0440 1000AB8F lw $11,16($sp) 477 .loc 1 182 0 478 .loc 1 183 0 479 0444 15004014 bne $2,$0,$L93 480 0448 21500000 move $10,$0 481 482 044c 2A600B00 slt $12,$0,$11 483 $L88: 184:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = 0; i < alphaSize; i++) 484 .loc 1 184 0 485 0450 0E008011 beq $12,$0,$L92 486 0454 21480000 move $9,$0 487 488 0458 1A010008 j $L87 489 045c 21408000 move $8,$4 490 491 $L85: 492 0460 0A004010 beq $2,$0,$L92 493 0464 04000825 addiu $8,$8,4 494 495 $L87: 185:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** if (length[i] == n) { code[i] = vec; vec++; };GAS LISTING /tmp/ccRSZRFA.s page 13 496 .loc 1 185 0 497 0468 2110A900 addu $2,$5,$9 498 046c 00004390 lbu $3,0($2) 499 .loc 1 184 0 500 0470 01002925 addiu $9,$9,1 501 .loc 1 185 0 502 0474 FAFF6614 bne $3,$6,$L85 503 0478 2A102B01 slt $2,$9,$11 504 505 047c 00000AAD sw $10,0($8) 506 0480 01004A25 addiu $10,$10,1 507 .loc 1 184 0 508 0484 F8FF4014 bne $2,$0,$L87 509 0488 04000825 addiu $8,$8,4 510 511 $L92: 512 .loc 1 183 0 513 048c 0100C624 addiu $6,$6,1 514 0490 2A10E600 slt $2,$7,$6 186:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** vec <<= 1; 515 .loc 1 186 0 516 .loc 1 183 0 517 0494 EEFF4010 beq $2,$0,$L88 518 0498 40500A00 sll $10,$10,1 519 520 $L93: 521 049c 0800E003 j $31 522 04a0 00000000 nop 523 524 .set macro 525 .set reorder 526 $LFE3: 527 .end BZ2_hbAssignCodes 528 .align 2 529 .globl BZ2_hbCreateDecodeTables 530 .ent BZ2_hbCreateDecodeTables 531 .type BZ2_hbCreateDecodeTables, @function 532 BZ2_hbCreateDecodeTables: 533 $LFB4: 187:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** } 188:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** } 189:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 190:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 191:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** /*---------------------------------------------------*/ 192:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** void BZ2_hbCreateDecodeTables ( Int32 *limit, 193:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 *base, 194:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 *perm, 195:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** UChar *length, 196:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 minLen, 197:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 maxLen, 198:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 alphaSize ) 199:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** { 534 .loc 1 199 0 535 .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 536 .mask 0x00000000,0 537 .fmask 0x00000000,0 538 .set noreorderGAS LISTING /tmp/ccRSZRFA.s page 14 539 .set nomacro 540 541 .loc 1 199 0 542 04a4 1000AF8F lw $15,16($sp) 543 04a8 1400AD8F lw $13,20($sp) 544 04ac 1800AA8F lw $10,24($sp) 200:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** Int32 pp, i, j, vec; 201:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 202:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** pp = 0; 203:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = minLen; i <= maxLen; i++) 545 .loc 1 203 0 546 04b0 2140E001 move $8,$15 547 04b4 2A10AF01 slt $2,$13,$15 548 .loc 1 199 0 549 04b8 21708000 move $14,$4 550 04bc 2160A000 move $12,$5 551 .loc 1 202 0 552 04c0 21480000 move $9,$0 553 .loc 1 203 0 554 04c4 18004014 bne $2,$0,$L129 555 04c8 2A580A00 slt $11,$0,$10 556 557 $L147: 204:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (j = 0; j < alphaSize; j++) 558 .loc 1 204 0 559 04cc 12006011 beq $11,$0,$L131 560 04d0 21200000 move $4,$0 561 562 04d4 80100900 sll $2,$9,2 563 04d8 3C010008 j $L102 564 04dc 21284600 addu $5,$2,$6 565 566 $L100: 567 04e0 01008424 addiu $4,$4,1 568 04e4 2A108A00 slt $2,$4,$10 569 04e8 0B004010 beq $2,$0,$L131 570 04ec 00000000 nop 571 572 $L102: 205:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** if (length[j] == i) { perm[pp] = j; pp++; }; 573 .loc 1 205 0 574 04f0 2110E400 addu $2,$7,$4 575 04f4 00004390 lbu $3,0($2) 576 04f8 F9FF6814 bne $3,$8,$L100 577 04fc 00000000 nop 578 579 0500 0000A4AC sw $4,0($5) 580 .loc 1 204 0 581 0504 01008424 addiu $4,$4,1 582 0508 2A108A00 slt $2,$4,$10 583 .loc 1 205 0 584 050c 01002925 addiu $9,$9,1 585 .loc 1 204 0 586 0510 F7FF4014 bne $2,$0,$L102 587 0514 0400A524 addiu $5,$5,4 588 589 $L131:GAS LISTING /tmp/ccRSZRFA.s page 15 590 .loc 1 203 0 591 0518 01000825 addiu $8,$8,1 592 051c 2A10A801 slt $2,$13,$8 593 0520 EAFF4010 beq $2,$0,$L147 594 0524 00000000 nop 595 596 $L129: 597 0528 21108001 move $2,$12 598 052c 16000824 li $8,22 # 0x16 599 $L107: 206:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 207:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = 0; i < BZ_MAX_CODE_LEN; i++) base[i] = 0; 600 .loc 1 207 0 601 0530 FFFF0825 addiu $8,$8,-1 602 0534 000040AC sw $0,0($2) 603 0538 FDFF0105 bgez $8,$L107 604 053c 04004224 addiu $2,$2,4 605 208:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = 0; i < alphaSize; i++) base[length[i]+1]++; 606 .loc 1 208 0 607 0540 0B006011 beq $11,$0,$L135 608 0544 21400000 move $8,$0 609 610 $L111: 611 0548 2110E800 addu $2,$7,$8 612 054c 00004390 lbu $3,0($2) 613 0550 01000825 addiu $8,$8,1 614 0554 2A200A01 slt $4,$8,$10 615 0558 80180300 sll $3,$3,2 616 055c 21186C00 addu $3,$3,$12 617 0560 0400628C lw $2,4($3) 618 0564 01004224 addiu $2,$2,1 619 0568 F7FF8014 bne $4,$0,$L111 620 056c 040062AC sw $2,4($3) 621 622 $L135: 623 0570 04008425 addiu $4,$12,4 624 0574 15000824 li $8,21 # 0x15 625 $L115: 209:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 210:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = 1; i < BZ_MAX_CODE_LEN; i++) base[i] += base[i-1]; 626 .loc 1 210 0 627 0578 0000828C lw $2,0($4) 628 057c FCFF838C lw $3,-4($4) 629 0580 FFFF0825 addiu $8,$8,-1 630 0584 21104300 addu $2,$2,$3 631 0588 000082AC sw $2,0($4) 632 058c FAFF0105 bgez $8,$L115 633 0590 04008424 addiu $4,$4,4 634 635 0594 2110C001 move $2,$14 636 0598 16000824 li $8,22 # 0x16 637 $L119: 211:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 212:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = 0; i < BZ_MAX_CODE_LEN; i++) limit[i] = 0; 638 .loc 1 212 0 639 059c FFFF0825 addiu $8,$8,-1GAS LISTING /tmp/ccRSZRFA.s page 16 640 05a0 000040AC sw $0,0($2) 641 05a4 FDFF0105 bgez $8,$L119 642 05a8 04004224 addiu $2,$2,4 643 213:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** vec = 0; 214:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** 215:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** for (i = minLen; i <= maxLen; i++) { 644 .loc 1 215 0 645 05ac 2140E001 move $8,$15 646 05b0 2A10AF01 slt $2,$13,$15 647 .loc 1 213 0 648 05b4 7A010008 j $L146 649 05b8 21300000 move $6,$0 650 651 $L148: 216:/mnt/hgfs/boot/booter/source/applications/booter/bzlib_huffman.c **** vec += (base[i+1] - base[i]); 652 .loc 1 216 0 653 05bc 21188C00 addu $3,$4,$12
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -