📄 elf.lst
字号:
632 350:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_offset: %08X\n",header->p_offset);
633 .loc 1 350 0 634 0414 0400058E lw $5,4($16) 635 0418 0000043C lui $4,%hi($LC14) 636 041c 0000000C jal printf 637 0420 00008424 addiu $4,$4,%lo($LC14) 638 351:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_vaddr: %08X\n",header->p_vaddr);
639 .loc 1 351 0 640 0424 0800058E lw $5,8($16) 641 0428 0000043C lui $4,%hi($LC15) 642 042c 0000000C jal printf 643 0430 00008424 addiu $4,$4,%lo($LC15) 644 352:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_paddr: %08X\n",header->p_paddr);
GAS LISTING /tmp/ccSF7Vky.s page 20 645 .loc 1 352 0 646 0434 0C00058E lw $5,12($16) 647 0438 0000043C lui $4,%hi($LC16) 648 043c 0000000C jal printf 649 0440 00008424 addiu $4,$4,%lo($LC16) 650 353:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_filesz: %08X\n",header->p_filesz);
651 .loc 1 353 0 652 0444 1000058E lw $5,16($16) 653 0448 0000043C lui $4,%hi($LC17) 654 044c 0000000C jal printf 655 0450 00008424 addiu $4,$4,%lo($LC17) 656 354:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_memsz: %08X\n",header->p_memsz);
657 .loc 1 354 0 658 0454 1400058E lw $5,20($16) 659 0458 0000043C lui $4,%hi($LC18) 660 045c 0000000C jal printf 661 0460 00008424 addiu $4,$4,%lo($LC18) 662 355:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_flags: %08X\n",header->p_flags);
663 .loc 1 355 0 664 0464 1800058E lw $5,24($16) 665 0468 0000043C lui $4,%hi($LC19) 666 046c 0000000C jal printf 667 0470 00008424 addiu $4,$4,%lo($LC19) 668 356:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** printf(" p_align: %08X\n",header->p_align);
669 .loc 1 356 0 670 0474 1C00058E lw $5,28($16) 671 0478 0000043C lui $4,%hi($LC20) 672 047c 1400BF8F lw $31,20($sp) 673 0480 1000B08F lw $16,16($sp) 674 0484 00008424 addiu $4,$4,%lo($LC20) 675 0488 00000008 j printf 676 048c 1800BD27 addiu $sp,$sp,24 677 678 .set macro 679 .set reorder 680 $LFE9: 681 .end displayProgramHeader 682 .align 2 683 .ent elfReadProgramHeader 684 .type elfReadProgramHeader, @function 685 elfReadProgramHeader: 686 $LFB10: 357:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** }
358:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** /********************************************************************/
359:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** static void
360:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** elfReadProgramHeader()
361:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** {
687 .loc 1 361 0 688 .frame $sp,80,$31 # vars= 40, regs= 5/0, args= 16, gp= 0 689 .mask 0x800f0000,-8 690 .fmask 0x00000000,0 691 .set noreorder 692 .set nomacroGAS LISTING /tmp/ccSF7Vky.s page 21 693 694 0490 B0FFBD27 addiu $sp,$sp,-80 695 $LCFI22: 696 0494 4400B3AF sw $19,68($sp) 697 $LCFI23: 362:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** Elf32_Phdr pgmhdr;
363:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** int i;
364:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** char c;
365:/mnt/hgfs/boot/booter/source/applications/booter/elf.c ****
366:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** if (elfhdr.e_phnum)
698 .loc 1 366 0 699 0498 0000133C lui $19,%hi(elfhdr) 700 .loc 1 361 0 701 049c 4800BFAF sw $31,72($sp) 702 $LCFI24: 703 04a0 4000B2AF sw $18,64($sp) 704 $LCFI25: 705 04a4 3C00B1AF sw $17,60($sp) 706 $LCFI26: 707 04a8 3800B0AF sw $16,56($sp) 708 $LCFI27: 709 .loc 1 366 0 710 04ac 0C006426 addiu $4,$19,%lo(elfhdr) 711 04b0 2C008294 lhu $2,44($4) 367:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** {
368:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** /*
369:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** * Seek to Program Headers.
370:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** */
371:/mnt/hgfs/boot/booter/source/applications/booter/elf.c ****
372:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** for (i = elfBytesRead; i < elfhdr.e_phoff; i++)
373:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** elfRead(&c, 1);
374:/mnt/hgfs/boot/booter/source/applications/booter/elf.c ****
375:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** for (i = 0; i < elfhdr.e_phnum; ++i)
376:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** {
377:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** elfRead((char *)&pgmhdr, sizeof(Elf32_Phdr));
378:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** // displayProgramHeader(&pgmhdr);
379:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** }
380:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** }
381:/mnt/hgfs/boot/booter/source/applications/booter/elf.c **** }
712 .loc 1 381 0 713 .loc 1 366 0 714 04b4 1E004010 beq $2,$0,$L64 715 04b8 4800BF8F lw $31,72($sp) 716 717 .loc 1 372 0 718 04bc 0000033C lui $3,%hi(elfBytesRead) 719 04c0 0000708C lw $16,%lo(elfBytesRead)($3) 720 04c4 1C00828C lw $2,28($4) 721 04c8 2B100202 sltu $2,$16,$2 722 04cc 0A004010 beq $2,$0,$L62 723 04d0 3000B127 addiu $17,$sp,48 724 725 04d4 21908000 move $18,$4 726 .loc 1 373 0 727 04d8 21202002 move $4,$17 728 $L65: 729 04dc 0000000C jal elfReadGAS LISTING /tmp/ccSF7Vky.s page 22 730 04e0 01000524 li $5,1 # 0x1 731 732 .loc 1 372 0 733 04e4 1C00438E lw $3,28($18) 734 04e8 01001026 addiu $16,$16,1 735 04ec 2B180302 sltu $3,$16,$3 736 .loc 1 373 0 737 .loc 1 372 0 738 04f0 FAFF6014 bne $3,$0,$L65 739 04f4 21202002 move $4,$17 740 741 $L62: 742 .loc 1 375 0 743 04f8 0C006326 addiu $3,$19,%lo(elfhdr) 744 04fc 2C006294 lhu $2,44($3) 745 0500 0A004010 beq $2,$0,$L51 746 0504 21800000 move $16,$0 747 748 0508 21886000 move $17,$3 749 .loc 1 377 0 750 050c 1000A427 addiu $4,$sp,16 751 $L66: 752 0510 0000000C jal elfRead 753 0514 20000524 li $5,32 # 0x20 754 755 .loc 1 375 0 756 0518 2C002396 lhu $3,44($17) 757 051c 01001026 addiu $16,$16,1 758 0520 2A180302 slt $3,$16,$3 759 .loc 1 377 0 760 .loc 1 375 0 761 0524 FAFF6014 bne $3,$0,$L66 762 0528 1000A427 addiu $4,$sp,16 763 764 $L51: 765 .loc 1 381 0 766 052c 4800BF8F lw $31,72($sp) 767 $L64: 768 0530 4400B38F lw $19,68($sp) 769 0534 4000B28F lw $18,64($sp) 770 0538 3C00B18F lw $17,60($sp) 771 053c 3800B08F lw $16,56($sp) 772 0540 0800E003 j $31 773 0544 5000BD27 addiu $sp,$sp,80 774 775 .set macro 776 .set reorder 777 $LFE10: 778 .end elfReadProgramHeader 779 .section .rodata.str1.4 780 01aa 0000 .align 2 781 $LC21: 782 01ac 0A .ascii "\n" 783 01ad 655F7479 .ascii "e_type: %08X\n\000" 783 70653A20 783 20202025 783 3038580A GAS LISTING /tmp/ccSF7Vky.s page 23 783 00 784 01be 0000 .align 2 785 $LC22: 786 01c0 655F6D61 .ascii "e_machine: %08X\n\000" 786 6368696E 786 653A2025 786 3038580A 786 00 787 01d1 000000 .align 2 788 $LC23: 789 01d4 655F7665 .ascii "e_version: %08X\n\000" 789 7273696F 789 6E3A2025 789 3038580A 789 00 790 01e5 000000 .align 2 791 $LC24: 792 01e8 655F656E .ascii "e_entry: %08X\n\000" 792 7472793A 792 20202025 792 3038580A 792 00 793 01f9 000000 .align 2 794 $LC25: 795 01fc 655F7068 .ascii "e_phoff: %08X\n\000" 795 6F66663A 795 20202025 795 3038580A 795 00 796 020d 000000 .align 2 797 $LC26: 798 0210 655F7368 .ascii "e_shoff: %08X\n\000" 798 6F66663A 798 20202025 798 3038580A 798 00 799 0221 000000 .align 2 800 $LC27: 801 0224 655F666C .ascii "e_flags: %08X\n\000" 801 6167733A 801 20202025 801 3038580A 801 00 802 0235 000000 .align 2 803 $LC28: 804 0238 655F6568 .ascii "e_ehsize: %04X\n\000" 804 73697A65 804 3A202025 804 3034580A 804 00 805 0249 000000 .align 2 806 $LC29: 807 024c 655F7068 .ascii "e_phentsize: %04X\n\000" 807 656E7473 807 697A653A 807 20202530 807 34580A00 GAS LISTING /tmp/ccSF7Vky.s page 24 808 .align 2 809 $LC30: 810 0260 655F7068 .ascii "e_phnum: %04X\n\000" 810 6E756D3A 810 20202530 810 34580A00 811 .align 2 812 $LC31: 813 0270 655F7368 .ascii "e_shentsize: %04X\n\000" 813 656E7473 813 697A653A 813 20202530 813 34580A00 814 .align 2 815 $LC32: 816 0284 655F7368 .ascii "e_shnum: %04X\n\000" 816 6E756D3A 816 20202530 816 34580A00 817
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -