📄 booter.lst
字号:
GAS LISTING /tmp/ccjGssRD.s page 1 1 .section .mdebug.abi32 2 .previous 3 .section .debug_abbrev,"",@progbits 4 $Ldebug_abbrev0: 5 .section .debug_info,"",@progbits 6 $Ldebug_info0: 7 .section .debug_line,"",@progbits 8 $Ldebug_line0: 9 0000 30020000 .text 9 02009100 9 00000101 9 FB0E0A00 9 01010101 10 $Ltext0: 11 .globl t_envp 12 .section .bss 13 .align 2 14 .type t_envp, @object 15 .size t_envp, 4 16 t_envp: 17 0000 00000000 .space 4 18 .globl t_argv 19 .align 2 20 .type t_argv, @object 21 .size t_argv, 4 22 t_argv: 23 0004 00000000 .space 4 24 0008 00000000 .section .rodata.str1.4,"aMS",@progbits,1 24 00000000 25 .align 2 26 $LC0: 27 0000 0A0A .ascii "\n\n" 28 0002 25732C20 .ascii "%s, Revision %s\n\000" 28 52657669 28 73696F6E 28 2025730A 28 00 29 0013 00 .align 2 30 $LC1: 31 0014 4175746F .ascii "AutoBoot\000" 31 426F6F74 31 00 32 001d 000000 .align 2 33 $LC2: 34 0020 30312E31 .ascii "01.10\000" 34 3000 35 .text 36 .align 2 37 .globl displayWelcomeScreen 38 .ent displayWelcomeScreen 39 .type displayWelcomeScreen, @function 40 displayWelcomeScreen: 41 $LFB2: 42 .file 1 "/mnt/hgfs/boot/booter/source/applications/booter/booter.c" 1:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 2:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "booter.h" 3:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** GAS LISTING /tmp/ccjGssRD.s page 2 4:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "example.h" 5:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "util.h" 6:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 7:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "filesystem.h" 8:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "flash.h" 9:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 10:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "srec.h" 11:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "elf.h" 12:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "bin.h" 13:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "bz2.h" 14:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 15:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "pcmcia.h" 16:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "nor.h" 17:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "gpio.h" 18:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "i2c.h" 19:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 20:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef LCD_STATUS 21:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #include "lcd_control.h" 22:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 23:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 24:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #define APP_NAME "AutoBoot" 25:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #define APP_REVISION "01.10" 26:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 27:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void displayWelcomeScreen() 28:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 43 .loc 1 28 0 44 .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 45 .mask 0x80000000,-8 46 .fmask 0x00000000,0 47 .set noreorder 48 .set nomacro 49 29:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** printf("\n\n%s, Revision %s\n", APP_NAME, APP_REVISION); 50 .loc 1 29 0 51 0000 0000043C lui $4,%hi($LC0) 52 0004 0000053C lui $5,%hi($LC1) 53 0008 0000063C lui $6,%hi($LC2) 54 .loc 1 28 0 55 000c E8FFBD27 addiu $sp,$sp,-24 56 $LCFI0: 57 .loc 1 29 0 58 0010 00008424 addiu $4,$4,%lo($LC0) 59 0014 0000A524 addiu $5,$5,%lo($LC1) 60 .loc 1 28 0 61 0018 1000BFAF sw $31,16($sp) 62 $LCFI1: 63 .loc 1 29 0 64 001c 0000000C jal printf 65 0020 0000C624 addiu $6,$6,%lo($LC2) 66 30:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 31:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef _LCD_OUTPUT_ 32:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** lcdInit(); 67 .loc 1 32 0 68 0024 0000000C jal lcdInit 69 0028 00000000 nop 70 GAS LISTING /tmp/ccjGssRD.s page 3 33:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** lcdDisplayWelcomeScreen(); 71 .loc 1 33 0 72 002c 1000BF8F lw $31,16($sp) 73 0030 00000008 j lcdDisplayWelcomeScreen 74 0034 1800BD27 addiu $sp,$sp,24 75 76 .set macro 77 .set reorder 78 $LFE2: 79 .end displayWelcomeScreen 80 .section .rodata.str1.4 81 0026 0000 .align 2 82 $LC3: 83 0028 556E6162 .ascii "Unable to locate any bootable images\n\000" 83 6C652074 83 6F206C6F 83 63617465 83 20616E79 84 .text 85 .align 2 86 .globl displayNoImage 87 .ent displayNoImage 88 .type displayNoImage, @function 89 displayNoImage: 90 $LFB3: 34:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 35:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 36:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 37:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void displayNoImage() 38:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 91 .loc 1 38 0 92 .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 93 .mask 0x80000000,-8 94 .fmask 0x00000000,0 95 .set noreorder 96 .set nomacro 97 39:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** printf("Unable to locate any bootable images\n"); 98 .loc 1 39 0 99 0038 0000043C lui $4,%hi($LC3) 100 .loc 1 38 0 101 003c E8FFBD27 addiu $sp,$sp,-24 102 $LCFI2: 103 0040 1000BFAF sw $31,16($sp) 104 $LCFI3: 105 .loc 1 39 0 106 0044 0000000C jal printf 107 0048 00008424 addiu $4,$4,%lo($LC3) 108 40:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 41:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef _LCD_OUTPUT_ 42:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** lcdDisplayNoImage(); 109 .loc 1 42 0 110 004c 1000BF8F lw $31,16($sp) 111 0050 00000008 j lcdDisplayNoImage 112 0054 1800BD27 addiu $sp,$sp,24 113 GAS LISTING /tmp/ccjGssRD.s page 4 114 .set macro 115 .set reorder 116 $LFE3: 117 .end displayNoImage 118 .section .rodata.str1.4 119 004e 0000 .align 2 120 $LC4: 121 0050 50726F67 .ascii "Program Entry Point: %X\n\000" 121 72616D20 121 456E7472 121 7920506F 121 696E743A 122 0069 000000 .align 2 123 $LC5: 124 006c 45786563 .ascii "Executing Application\n\000" 124 7574696E 124 67204170 124 706C6963 124 6174696F 125 .text 126 .align 2 127 .globl displayEntryPoint 128 .ent displayEntryPoint 129 .type displayEntryPoint, @function 130 displayEntryPoint: 131 $LFB4: 43:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 44:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 45:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 46:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** void displayEntryPoint(void* entryPoint) 47:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 132 .loc 1 47 0 133 .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 134 .mask 0x80010000,-4 135 .fmask 0x00000000,0 136 .set noreorder 137 .set nomacro 138 139 0058 E8FFBD27 addiu $sp,$sp,-24 140 $LCFI4: 141 005c 1000B0AF sw $16,16($sp) 142 $LCFI5: 143 0060 21808000 move $16,$4 48:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** printf("Program Entry Point: %X\n", entryPoint); 144 .loc 1 48 0 145 0064 0000043C lui $4,%hi($LC4) 146 0068 21280002 move $5,$16 147 .loc 1 47 0 148 006c 1400BFAF sw $31,20($sp) 149 $LCFI6: 150 .loc 1 48 0 151 0070 0000000C jal printf 152 0074 00008424 addiu $4,$4,%lo($LC4) 153 49:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** printf("Executing Application\n"); 154 .loc 1 49 0 155 0078 0000043C lui $4,%hi($LC5)GAS LISTING /tmp/ccjGssRD.s page 5 156 007c 0000000C jal printf 157 0080 00008424 addiu $4,$4,%lo($LC5) 158 50:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 51:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef _LCD_OUTPUT_ 52:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** lcdDisplayEntryPoint(entryPoint); 159 .loc 1 52 0 160 0084 21200002 move $4,$16 161 0088 1400BF8F lw $31,20($sp) 162 008c 1000B08F lw $16,16($sp) 163 0090 00000008 j lcdDisplayEntryPoint 164 0094 1800BD27 addiu $sp,$sp,24 165 166 .set macro 167 .set reorder 168 $LFE4: 169 .end displayEntryPoint 170 .align 2 171 .globl execute 172 .ent execute 173 .type execute, @function 174 execute: 175 $LFB5: 53:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 54:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** } 55:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 56:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** char * t_argv[] = {0}; 57:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #ifdef SECUREBOOT 58:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** char * t_envp[] = { 59:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "MAC=0", 60:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "bootfile=/booter.rec", 61:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "bootprot=tftp", 62:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "bootserport=tty0", 63:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "bootserver=192.168.0.1", 64:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "ethaddr=00.00.1a.19.0b.f7", 65:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "gateway=192.168.0.1", 66:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "ipaddr=192.168.0.2", 67:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "memsize=0x08000000", 68:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "modetty0=115200,n,8,1,none", 69:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "modetty1=115200,n,8,1,none", 70:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "prompt=YAMON", 71:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** "subnetmask=255.255.255.0", 72:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 0, 73:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** }; 74:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 75:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #else 76:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** char * t_envp[] = {0}; 77:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** #endif 78:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** 79:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** int execute(void* address, int argc, char* argv[], char* env[]) 80:/mnt/hgfs/boot/booter/source/applications/booter/booter.c **** { 176 .loc 1 80 0 177 .frame $sp,40,$31 # vars= 0, regs= 5/0, args= 16, gp= 0 178 .mask 0x800f0000,-8 179 .fmask 0x00000000,0 180 .set noreorder 181 .set nomacroGAS LISTING /tmp/ccjGssRD.s page 6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -