⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 image.lst

📁 au1200下的boot代码
💻 LST
📖 第 1 页 / 共 4 页
字号:
GAS LISTING /tmp/ccV0E4Hl.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 DF000000 		.text   9      0200AE00    9      00000101    9      FB0E0A00    9      01010101   10              	$Ltext0:  11              		.align	2  12              		.globl	image_is_valid  13              		.ent	image_is_valid  14              		.type	image_is_valid, @function  15              	image_is_valid:  16              	$LFB3:  17              		.file 1 "/mnt/hgfs/boot/booter/source/image.c"   1:/mnt/hgfs/boot/booter/source/image.c ****    2:/mnt/hgfs/boot/booter/source/image.c **** #include "example.h"   3:/mnt/hgfs/boot/booter/source/image.c **** #include "image.h"   4:/mnt/hgfs/boot/booter/source/image.c ****    5:/mnt/hgfs/boot/booter/source/image.c **** int image_is_valid(IMAGE* image)   6:/mnt/hgfs/boot/booter/source/image.c **** {  18              		.loc 1 6 0  19              		.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0  20              		.mask	0x00000000,0  21              		.fmask	0x00000000,0  22              		.set	noreorder  23              		.set	nomacro  24              		   7:/mnt/hgfs/boot/booter/source/image.c **** 	return image->info.signature == IMAGE_SIGNATURE;  25              		.loc 1 7 0  26 0000 0000828C 		lw	$2,0($4)  27 0004 0800033C 		li	$3,524288			# 0x80000  28 0008 44156334 		ori	$3,$3,0x1544  29 000c 26104300 		xor	$2,$2,$3   8:/mnt/hgfs/boot/booter/source/image.c **** }  30              		.loc 1 8 0  31 0010 0800E003 		j	$31  32 0014 0100422C 		sltu	$2,$2,1  33              	  34              		.set	macro  35              		.set	reorder  36              	$LFE3:  37              		.end	image_is_valid  38              		.align	2  39              		.globl	image_get_next  40              		.ent	image_get_next  41              		.type	image_get_next, @function  42              	image_get_next:  43              	$LFB4:   9:/mnt/hgfs/boot/booter/source/image.c ****   10:/mnt/hgfs/boot/booter/source/image.c **** IMAGE* image_get_next(IMAGE* image)GAS LISTING /tmp/ccV0E4Hl.s 			page 2  11:/mnt/hgfs/boot/booter/source/image.c **** {  44              		.loc 1 11 0  45              		.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0  46              		.mask	0x00000000,0  47              		.fmask	0x00000000,0  48              		.set	noreorder  49              		.set	nomacro  50              		  12:/mnt/hgfs/boot/booter/source/image.c **** 	uint32 bytes = (image->info.width * image->info.height * image->info.pixel_info.memory_width) / 8;  51              		.loc 1 12 0  52 0018 6C00838C 		lw	$3,108($4)  53 001c 6800828C 		lw	$2,104($4)  54 0020 7C00868C 		lw	$6,124($4)  13:/mnt/hgfs/boot/booter/source/image.c **** 	uint32 address = (uint32) &image->pixel_data;  55              		.loc 1 13 0  56 0024 00018424 		addiu	$4,$4,256  57              		.loc 1 12 0  58 0028 02104370 		mul	$2,$2,$3  59 002c 02104670 		mul	$2,$2,$6  60 0030 07004524 		addiu	$5,$2,7  61 0034 00004328 		slt	$3,$2,0  62 0038 0B10A300 		movn	$2,$5,$3  63 003c C3100200 		sra	$2,$2,3  14:/mnt/hgfs/boot/booter/source/image.c ****   15:/mnt/hgfs/boot/booter/source/image.c **** 	address += bytes;  16:/mnt/hgfs/boot/booter/source/image.c ****   17:/mnt/hgfs/boot/booter/source/image.c **** 	return (IMAGE*) address;  18:/mnt/hgfs/boot/booter/source/image.c **** }  64              		.loc 1 18 0  65 0040 0800E003 		j	$31  66 0044 21108200 		addu	$2,$4,$2  67              	  68              		.set	macro  69              		.set	reorder  70              	$LFE4:  71              		.end	image_get_next  72              		.align	2  73              		.globl	image_compare_name  74              		.ent	image_compare_name  75              		.type	image_compare_name, @function  76              	image_compare_name:  77              	$LFB5:  19:/mnt/hgfs/boot/booter/source/image.c ****   20:/mnt/hgfs/boot/booter/source/image.c **** BOOL image_compare_name(char* name1, char* name2)  21:/mnt/hgfs/boot/booter/source/image.c **** {  78              		.loc 1 21 0  79              		.frame	$sp,0,$31		# vars= 0, regs= 0/0, args= 0, gp= 0  80              		.mask	0x00000000,0  81              		.fmask	0x00000000,0  82              		.set	noreorder  83              		.set	nomacro  84              		  22:/mnt/hgfs/boot/booter/source/image.c **** 	for(; *name1 != 0 && *name2 != 0; ++name1, ++name2)  85              		.loc 1 22 0  86 0048 00008290 		lbu	$2,0($4)  87 004c 001E0200 		sll	$3,$2,24  88 0050 031E0300 		sra	$3,$3,24GAS LISTING /tmp/ccV0E4Hl.s 			page 3  89 0054 10006010 		beq	$3,$0,$L6  90 0058 00000000 		nop  91              	  92 005c 0000A780 		lb	$7,0($5)  23:/mnt/hgfs/boot/booter/source/image.c **** 	{  24:/mnt/hgfs/boot/booter/source/image.c **** 		if(*name1 != *name2)  25:/mnt/hgfs/boot/booter/source/image.c **** 			return FALSE;  26:/mnt/hgfs/boot/booter/source/image.c **** 	}  27:/mnt/hgfs/boot/booter/source/image.c ****   28:/mnt/hgfs/boot/booter/source/image.c **** 	return (*name1 == 0 && *name2 == 0);  93              		.loc 1 28 0  94              		.loc 1 22 0  95 0060 0E00E010 		beq	$7,$0,$L14  96 0064 00160200 		sll	$2,$2,24  97              	  98 0068 21306000 		move	$6,$3  99 006c 2118E000 		move	$3,$7 100              	$L9: 101              		.loc 1 24 0 102 0070 1100C314 		bne	$6,$3,$L13 103 0074 01008424 		addiu	$4,$4,1 104              	 105              		.loc 1 22 0 106 0078 00008290 		lbu	$2,0($4) 107 007c 00360200 		sll	$6,$2,24 108 0080 03360600 		sra	$6,$6,24 109 0084 0400C010 		beq	$6,$0,$L6 110 0088 0100A524 		addiu	$5,$5,1 111              	 112 008c 0000A380 		lb	$3,0($5) 113 0090 F7FF6014 		bne	$3,$0,$L9 114 0094 00000000 		nop 115              	 116              	$L6: 117              		.loc 1 28 0 118 0098 00160200 		sll	$2,$2,24 119              	$L14: 120 009c 03160200 		sra	$2,$2,24 121 00a0 03004014 		bne	$2,$0,$L10 122 00a4 21180000 		move	$3,$0 123              	 124 00a8 0000A280 		lb	$2,0($5) 125 00ac 0100432C 		sltu	$3,$2,1 126              	$L10:  29:/mnt/hgfs/boot/booter/source/image.c **** } 127              		.loc 1 29 0 128 00b0 0800E003 		j	$31 129 00b4 21106000 		move	$2,$3 130              	 131              	$L13: 132              		.loc 1 25 0 133 00b8 0800E003 		j	$31 134 00bc 21100000 		move	$2,$0 135              	 136              		.set	macro 137              		.set	reorder 138              	$LFE5:GAS LISTING /tmp/ccV0E4Hl.s 			page 4 139              		.end	image_compare_name 140              		.align	2 141              		.globl	image_find 142              		.ent	image_find 143              		.type	image_find, @function 144              	image_find: 145              	$LFB6:  30:/mnt/hgfs/boot/booter/source/image.c ****   31:/mnt/hgfs/boot/booter/source/image.c **** IMAGE* image_find(IMAGE* start_image, char* image_name)  32:/mnt/hgfs/boot/booter/source/image.c **** { 146              		.loc 1 32 0 147              		.frame	$sp,32,$31		# vars= 0, regs= 3/0, args= 16, gp= 0 148              		.mask	0x80030000,-8 149              		.fmask	0x00000000,0 150              		.set	noreorder 151              		.set	nomacro 152              		 153 00c0 E0FFBD27 		addiu	$sp,$sp,-32 154              	$LCFI0: 155 00c4 1400B1AF 		sw	$17,20($sp) 156              	$LCFI1: 157 00c8 1000B0AF 		sw	$16,16($sp) 158              	$LCFI2: 159 00cc 1800BFAF 		sw	$31,24($sp) 160              	$LCFI3: 161              		.loc 1 32 0 162 00d0 21808000 		move	$16,$4 163 00d4 3E000008 		j	$L16 164 00d8 2188A000 		move	$17,$5 165              	 166              	$L20:  33:/mnt/hgfs/boot/booter/source/image.c **** 	DPRINTF("Resource Start: %X, Image Name: %s\n", start_image, image_name);  34:/mnt/hgfs/boot/booter/source/image.c **** 	for(; image_is_valid(start_image); start_image = image_get_next(start_image))  35:/mnt/hgfs/boot/booter/source/image.c **** 	{  36:/mnt/hgfs/boot/booter/source/image.c **** 		if(image_compare_name(image_name, start_image->info.description)) 167              		.loc 1 36 0 168 00dc 0000000C 		jal	image_compare_name 169 00e0 00000000 		nop 170              	 171              		.loc 1 34 0 172              		.loc 1 36 0 173 00e4 0E004014 		bne	$2,$0,$L21 174 00e8 21200002 		move	$4,$16 175              	 176              		.loc 1 34 0 177 00ec 0000000C 		jal	image_get_next 178 00f0 00000000 		nop 179              	 180 00f4 21804000 		move	$16,$2 181              	$L16: 182 00f8 0000000C 		jal	image_is_valid 183 00fc 21200002 		move	$4,$16 184              	 185              		.loc 1 36 0 186 0100 04000526 		addiu	$5,$16,4 187              		.loc 1 34 0 188 0104 F5FF4014 		bne	$2,$0,$L20GAS LISTING /tmp/ccV0E4Hl.s 			page 5 189 0108 21202002 		move	$4,$17 190              	  37:/mnt/hgfs/boot/booter/source/image.c **** 		{  38:/mnt/hgfs/boot/booter/source/image.c **** 			DPRINTF("Image %s: %X\n", image_name, start_image);  39:/mnt/hgfs/boot/booter/source/image.c **** 			return start_image;  40:/mnt/hgfs/boot/booter/source/image.c **** 		}  41:/mnt/hgfs/boot/booter/source/image.c **** 	}  42:/mnt/hgfs/boot/booter/source/image.c ****   43:/mnt/hgfs/boot/booter/source/image.c **** 	return NULL;  44:/mnt/hgfs/boot/booter/source/image.c **** } 191              		.loc 1 44 0 192 010c 1800BF8F 		lw	$31,24($sp) 193 0110 1400B18F 		lw	$17,20($sp) 194 0114 1000B08F 		lw	$16,16($sp) 195 0118 0800E003 		j	$31 196 011c 2000BD27 		addiu	$sp,$sp,32 197              	 198              	$L21: 199              		.loc 1 39 0 200 0120 21100002 		move	$2,$16 201              		.loc 1 44 0 202 0124 1800BF8F 		lw	$31,24($sp) 203 0128 1400B18F 		lw	$17,20($sp) 204 012c 1000B08F 		lw	$16,16($sp) 205 0130 0800E003 		j	$31 206 0134 2000BD27 		addiu	$sp,$sp,32 207              	 208              		.set	macro 209              		.set	reorder 210              	$LFE6: 211              		.end	image_find 212              		.section	.debug_frame,"",@progbits 213              	$Lframe0: 214 0000 0C000000 		.4byte	$LECIE0-$LSCIE0 215              	$LSCIE0: 216 0004 FFFFFFFF 		.4byte	0xffffffff 217 0008 01       		.byte	0x1 218 0009 00       		.ascii	"\000" 219 000a 01       		.uleb128 0x1 220 000b 04       		.sleb128 4 221 000c 1F       		.byte	0x1f 222 000d 0C       		.byte	0xc 223 000e 1D       		.uleb128 0x1d 224 000f 00       		.uleb128 0x0 225              		.align	2 226              	$LECIE0: 227              	$LSFDE0: 228 0010 0C000000 		.4byte	$LEFDE0-$LASFDE0 229              	$LASFDE0: 230 0014 00000000 		.4byte	$Lframe0 231 0018 00000000 		.4byte	$LFB3 232 001c 18000000 		.4byte	$LFE3-$LFB3 233              		.align	2 234              	$LEFDE0: 235              	$LSFDE2: 236 0020 0C000000 		.4byte	$LEFDE2-$LASFDE2 237              	$LASFDE2:GAS LISTING /tmp/ccV0E4Hl.s 			page 6 238 0024 00000000 		.4byte	$Lframe0 239 0028 18000000 		.4byte	$LFB4 240 002c 30000000 		.4byte	$LFE4-$LFB4 241              		.align	2 242              	$LEFDE2: 243              	$LSFDE4: 244 0030 0C000000 		.4byte	$LEFDE4-$LASFDE4 245              	$LASFDE4: 246 0034 00000000 		.4byte	$Lframe0 247 0038 48000000 		.4byte	$LFB5 248 003c 78000000 		.4byte	$LFE5-$LFB5 249              		.align	2 250              	$LEFDE4: 251              	$LSFDE6: 252 0040 1C000000 		.4byte	$LEFDE6-$LASFDE6 253              	$LASFDE6: 254 0044 00000000 		.4byte	$Lframe0 255 0048 C0000000 		.4byte	$LFB6 256 004c 78000000 		.4byte	$LFE6-$LFB6 257 0050 44       		.byte	0x4 258              		.4byte	$LCFI0-$LFB6 259 0051 0E       		.byte	0xe 260 0052 20       		.uleb128 0x20 261 0053 4C       		.byte	0x4 262              		.4byte	$LCFI3-$LCFI0 263 0054 11       		.byte	0x11 264 0055 1F       		.uleb128 0x1f 265 0056 7E       		.sleb128 -2 266 0057 11       		.byte	0x11 267 0058 10       		.uleb128 0x10 268 0059 7C       		.sleb128 -4 269 005a 11       		.byte	0x11 270 005b 11       		.uleb128 0x11 271 005c 7D       		.sleb128 -3 272 005d 000000   		.align	2 273              	$LEFDE6: 274              		.align	0 275              		.file 2 "/mnt/hgfs/boot/booter/include/image.h" 276              		.file 3 "/mnt/hgfs/boot/booter/include/pixel.h" 277              		.file 4 "/mnt/hgfs/boot/booter/include/example.h" 278              		.file 5 "/mnt/hgfs/boot/booter/platforms/DB1200/platform.h" 279              		.text 280              	$Letext0: 281 0138 00000000 		.section	.debug_info 281      00000000  282 0000 E9030000 		.4byte	0x3e9 283 0004 0200     		.2byte	0x2 284 0006 00000000 		.4byte	$Ldebug_abbrev0 285 000a 04       		.byte	0x4 286 000b 01       		.uleb128 0x1 287 000c 00000000 		.4byte	$Ldebug_line0 288 0010 38010000 		.4byte	$Letext0 289 0014 00000000 		.4byte	$Ltext0 290 0018 12020000 		.4byte	$LASF68 291 001c 01       		.byte	0x1 292 001d AF010000 		.4byte	$LASF69 293 0021 02       		.uleb128 0x2GAS LISTING /tmp/ccV0E4Hl.s 			page 7 294 0022 E4020000 		.4byte	$LASF0 295 0026 01       		.byte	0x1 296 0027 06       		.byte	0x6 297 0028 02       		.uleb128 0x2 298 0029 30020000 		.4byte	$LASF1 299 002d 02       		.byte	0x2 300 002e 05       		.byte	0x5 301 002f 03       		.uleb128 0x3 302 0030 696E7400 		.ascii	"int\000" 303 0034 04       		.byte	0x4 304 0035 05       		.byte	0x5 305 0036 02       		.uleb128 0x2 306 0037 C5020000 		.4byte	$LASF2 307 003b 01       		.byte	0x1 308 003c 08       		.byte	0x8 309 003d 02       		.uleb128 0x2 310 003e F0020000 		.4byte	$LASF3 311 0042 02       		.byte	0x2 312 0043 07       		.byte	0x7

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -