📄 rectangles.lst
字号:
GAS LISTING /tmp/ccTe2VEv.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 E3000000 .text 9 02009D00 9 00000101 9 FB0E0A00 9 01010101 10 $Ltext0: 11 .align 2 12 .globl rectangles 13 .ent rectangles 14 .type rectangles, @function 15 rectangles: 16 $LFB3: 17 .file 1 "/mnt/hgfs/boot/booter/source/rectangles.c" 1:/mnt/hgfs/boot/booter/source/rectangles.c **** /* 2:/mnt/hgfs/boot/booter/source/rectangles.c **** * Matt's infamous "rectangles" graphics program 3:/mnt/hgfs/boot/booter/source/rectangles.c **** */ 4:/mnt/hgfs/boot/booter/source/rectangles.c **** 5:/mnt/hgfs/boot/booter/source/rectangles.c **** #include "example.h" 6:/mnt/hgfs/boot/booter/source/rectangles.c **** 7:/mnt/hgfs/boot/booter/source/rectangles.c **** /********************************************************************/ 8:/mnt/hgfs/boot/booter/source/rectangles.c **** static void 9:/mnt/hgfs/boot/booter/source/rectangles.c **** g_fillrect (uint16 *fb, 10:/mnt/hgfs/boot/booter/source/rectangles.c **** int color, 11:/mnt/hgfs/boot/booter/source/rectangles.c **** int top, 12:/mnt/hgfs/boot/booter/source/rectangles.c **** int left, 13:/mnt/hgfs/boot/booter/source/rectangles.c **** int bottom, 14:/mnt/hgfs/boot/booter/source/rectangles.c **** int right, 15:/mnt/hgfs/boot/booter/source/rectangles.c **** int xres, 16:/mnt/hgfs/boot/booter/source/rectangles.c **** int yres) 17:/mnt/hgfs/boot/booter/source/rectangles.c **** { 18:/mnt/hgfs/boot/booter/source/rectangles.c **** int offset = top * xres + left; 19:/mnt/hgfs/boot/booter/source/rectangles.c **** int perline = right - left; 20:/mnt/hgfs/boot/booter/source/rectangles.c **** int eoloff = xres - perline; 21:/mnt/hgfs/boot/booter/source/rectangles.c **** int lines = bottom - top; 22:/mnt/hgfs/boot/booter/source/rectangles.c **** int clp; 23:/mnt/hgfs/boot/booter/source/rectangles.c **** 24:/mnt/hgfs/boot/booter/source/rectangles.c **** while( lines-- > 0 ) 25:/mnt/hgfs/boot/booter/source/rectangles.c **** { 26:/mnt/hgfs/boot/booter/source/rectangles.c **** for( clp = perline; clp > 0; --clp ) 27:/mnt/hgfs/boot/booter/source/rectangles.c **** fb[offset++] = color; 28:/mnt/hgfs/boot/booter/source/rectangles.c **** offset += eoloff; 29:/mnt/hgfs/boot/booter/source/rectangles.c **** } 30:/mnt/hgfs/boot/booter/source/rectangles.c **** } 31:/mnt/hgfs/boot/booter/source/rectangles.c **** 32:/mnt/hgfs/boot/booter/source/rectangles.c **** /********************************************************************/ 33:/mnt/hgfs/boot/booter/source/rectangles.c **** 34:/mnt/hgfs/boot/booter/source/rectangles.c **** 35:/mnt/hgfs/boot/booter/source/rectangles.c **** /********************************************************************/ 36:/mnt/hgfs/boot/booter/source/rectangles.c **** charGAS LISTING /tmp/ccTe2VEv.s page 2 37:/mnt/hgfs/boot/booter/source/rectangles.c **** rectangles (uint16 *fb, int xres, int yres, unsigned iterations) 38:/mnt/hgfs/boot/booter/source/rectangles.c **** { 18 .loc 1 38 0 19 .frame $sp,56,$31 # vars= 0, regs= 10/0, args= 16, gp= 0 20 .mask 0xc0ff0000,-4 21 .fmask 0x00000000,0 22 .set noreorder 23 .set nomacro 24 25 0000 C8FFBD27 addiu $sp,$sp,-56 26 $LCFI0: 27 0004 3000BEAF sw $fp,48($sp) 28 $LCFI1: 29 0008 2C00B7AF sw $23,44($sp) 30 $LCFI2: 31 000c 2800B6AF sw $22,40($sp) 32 $LCFI3: 33 0010 2400B5AF sw $21,36($sp) 34 $LCFI4: 35 0014 2000B4AF sw $20,32($sp) 36 $LCFI5: 37 0018 3400BFAF sw $31,52($sp) 38 $LCFI6: 39 001c 1C00B3AF sw $19,28($sp) 40 $LCFI7: 41 0020 1800B2AF sw $18,24($sp) 42 $LCFI8: 43 0024 1400B1AF sw $17,20($sp) 44 $LCFI9: 45 0028 1000B0AF sw $16,16($sp) 46 $LCFI10: 47 .loc 1 38 0 48 002c 21A88000 move $21,$4 49 0030 21A0A000 move $20,$5 50 0034 21B8C000 move $23,$6 51 0038 21F0E000 move $fp,$7 39:/mnt/hgfs/boot/booter/source/rectangles.c **** int c, t, l, b, r; 40:/mnt/hgfs/boot/booter/source/rectangles.c **** unsigned i = 0; 52 .loc 1 40 0 53 003c 21B00000 move $22,$0 54 $L25: 41:/mnt/hgfs/boot/booter/source/rectangles.c **** 42:/mnt/hgfs/boot/booter/source/rectangles.c **** while (!kbhit()) 43:/mnt/hgfs/boot/booter/source/rectangles.c **** { 44:/mnt/hgfs/boot/booter/source/rectangles.c **** t = srand(yres - 30); 45:/mnt/hgfs/boot/booter/source/rectangles.c **** b = t + srand(yres - t); 46:/mnt/hgfs/boot/booter/source/rectangles.c **** l = srand(xres - 10); 47:/mnt/hgfs/boot/booter/source/rectangles.c **** r = l + srand(xres - l); 48:/mnt/hgfs/boot/booter/source/rectangles.c **** c = srand(0); 49:/mnt/hgfs/boot/booter/source/rectangles.c **** g_fillrect(fb, c, t, l, b, r, xres, yres); 50:/mnt/hgfs/boot/booter/source/rectangles.c **** 51:/mnt/hgfs/boot/booter/source/rectangles.c **** if (iterations) 52:/mnt/hgfs/boot/booter/source/rectangles.c **** if (++i == iterations) 53:/mnt/hgfs/boot/booter/source/rectangles.c **** break; 55 .loc 1 53 0 56 0040 0000000C jal kbhit 57 0044 00000000 nopGAS LISTING /tmp/ccTe2VEv.s page 3 58 59 0048 2A004014 bne $2,$0,$L3 60 004c 00000000 nop 61 62 .loc 1 44 0 63 0050 0000000C jal srand 64 0054 E2FFE426 addiu $4,$23,-30 65 66 .loc 1 45 0 67 0058 2320E202 subu $4,$23,$2 68 .loc 1 44 0 69 .loc 1 45 0 70 005c 0000000C jal srand 71 0060 21884000 move $17,$2 72 73 .loc 1 46 0 74 0064 F6FF8426 addiu $4,$20,-10 75 .loc 1 45 0 76 .loc 1 46 0 77 0068 0000000C jal srand 78 006c 21985100 addu $19,$2,$17 79 80 .loc 1 47 0 81 0070 23208202 subu $4,$20,$2 82 .loc 1 46 0 83 .loc 1 47 0 84 0074 0000000C jal srand 85 0078 21804000 move $16,$2 86 87 .loc 1 48 0 88 007c 21200000 move $4,$0 89 .loc 1 47 0 90 .loc 1 48 0 91 0080 0000000C jal srand 92 0084 21905000 addu $18,$2,$16 93 94 $LBB2: 95 $LBB3: 96 .loc 1 18 0 97 0088 02183472 mul $3,$17,$20 98 .loc 1 21 0 99 008c 23987102 subu $19,$19,$17 100 $LBE3: 101 $LBE2: 102 .loc 1 48 0 103 0090 21284000 move $5,$2 104 $LBB4: 105 $LBB5: 106 .loc 1 19 0 107 0094 23905002 subu $18,$18,$16 108 .loc 1 28 0 109 0098 21106002 move $2,$19 110 .loc 1 20 0 111 009c 23309202 subu $6,$20,$18 112 .loc 1 28 0 113 00a0 FFFF7326 addiu $19,$19,-1 114 .loc 1 18 0GAS LISTING /tmp/ccTe2VEv.s page 4 115 .loc 1 28 0 116 00a4 0E004018 blez $2,$L18 117 00a8 21207000 addu $4,$3,$16 118 119 $L27: 120 .loc 1 26 0 121 00ac 0800401A blez $18,$L20 122 00b0 21184002 move $3,$18 123 124 00b4 40100400 sll $2,$4,1 125 00b8 21105500 addu $2,$2,$21 126 $L9: 127 00bc FFFF6324 addiu $3,$3,-1 128 .loc 1 27 0 129 00c0 000045A4 sh $5,0($2) 130 00c4 01008424 addiu $4,$4,1 131 .loc 1 26 0 132 00c8 FCFF601C bgtz $3,$L9 133 00cc 02004224 addiu $2,$2,2 134 135 $L20: 136 .loc 1 28 0 137 00d0 21106002 move $2,$19 138 00d4 21208600 addu $4,$4,$6 139 00d8 F4FF401C bgtz $2,$L27 140 00dc FFFF7326 addiu $19,$19,-1 141 142 $L18: 143 $LBE5: 144 $LBE4: 145 .loc 1 51 0 146 00e0 D7FFC013 beq $fp,$0,$L25 147 00e4 00000000 nop 148 149 .loc 1 52 0 150 00e8 0100D626 addiu $22,$22,1 151 00ec D4FFDE16 bne $22,$fp,$L25 152 00f0 00000000 nop 153 154 $L3: 54:/mnt/hgfs/boot/booter/source/rectangles.c **** } 55:/mnt/hgfs/boot/booter/source/rectangles.c **** 56:/mnt/hgfs/boot/booter/source/rectangles.c **** if(kbhit()) //Return key pressed 155 .loc 1 56 0 156 00f4 0000000C jal kbhit 157 00f8 00000000 nop 158 57:/mnt/hgfs/boot/booter/source/rectangles.c **** return getc(); 58:/mnt/hgfs/boot/booter/source/rectangles.c **** else 59:/mnt/hgfs/boot/booter/source/rectangles.c **** return 0; 159 .loc 1 59 0 160 .loc 1 56 0 161 00fc 05004010 beq $2,$0,$L1 162 0100 21180000 move $3,$0 163 164 .loc 1 57 0 165 0104 0000000C jal getcGAS LISTING /tmp/ccTe2VEv.s page 5 166 0108 00000000 nop 167 168 010c 001E0200 sll $3,$2,24 169 0110 031E0300 sra $3,$3,24 170 $L1: 60:/mnt/hgfs/boot/booter/source/rectangles.c **** } 171 .loc 1 60 0 172 0114 3400BF8F lw $31,52($sp) 173 0118 3000BE8F lw $fp,48($sp) 174 011c 2C00B78F lw $23,44($sp) 175 0120 2800B68F lw $22,40($sp) 176 0124 2400B58F lw $21,36($sp) 177 0128 2000B48F lw $20,32($sp) 178 012c 1C00B38F lw $19,28($sp) 179 0130 1800B28F lw $18,24($sp) 180 0134 1400B18F lw $17,20($sp) 181 0138 1000B08F lw $16,16($sp) 182 013c 21106000 move $2,$3 183 0140 0800E003 j $31 184 0144 3800BD27 addiu $sp,$sp,56 185 186 .set macro 187 .set reorder 188 $LFE3: 189 .end rectangles 190 .section .debug_frame,"",@progbits 191 $Lframe0: 192 0000 0C000000 .4byte $LECIE0-$LSCIE0 193 $LSCIE0: 194 0004 FFFFFFFF .4byte 0xffffffff 195 0008 01 .byte 0x1 196 0009 00 .ascii "\000" 197 000a 01 .uleb128 0x1 198 000b 04 .sleb128 4 199 000c 1F .byte 0x1f 200 000d 0C .byte 0xc 201 000e 1D .uleb128 0x1d 202 000f 00 .uleb128 0x0 203 .align 2 204 $LECIE0: 205 $LSFDE0: 206 0010 30000000 .4byte $LEFDE0-$LASFDE0 207 $LASFDE0: 208 0014 00000000 .4byte $Lframe0 209 0018 00000000 .4byte $LFB3 210 001c 48010000 .4byte $LFE3-$LFB3 211 0020 44 .byte 0x4 212 .4byte $LCFI0-$LFB3 213 0021 0E .byte 0xe 214 0022 38 .uleb128 0x38 215 0023 68 .byte 0x4 216 .4byte $LCFI10-$LCFI0 217 0024 11 .byte 0x11 218 0025 10 .uleb128 0x10 219 0026 76 .sleb128 -10 220 0027 11 .byte 0x11 221 0028 11 .uleb128 0x11GAS LISTING /tmp/ccTe2VEv.s page 6 222 0029 77 .sleb128 -9 223 002a 11 .byte 0x11 224 002b 12 .uleb128 0x12 225 002c 78 .sleb128 -8 226 002d 11 .byte 0x11 227 002e 13 .uleb128 0x13 228 002f 79 .sleb128 -7 229 0030 11 .byte 0x11 230 0031 1F .uleb128 0x1f 231 0032 7F .sleb128 -1 232 0033 11 .byte 0x11 233 0034 14 .uleb128 0x14 234 0035 7A .sleb128 -6 235 0036 11 .byte 0x11 236 0037 15 .uleb128 0x15 237 0038 7B .sleb128 -5 238 0039 11 .byte 0x11 239 003a 16 .uleb128 0x16 240 003b 7C .sleb128 -4 241 003c 11 .byte 0x11 242 003d 17 .uleb128 0x17 243 003e 7D .sleb128 -3 244 003f 11 .byte 0x11 245 0040 1E .uleb128 0x1e 246 0041 7E .sleb128 -2 247 0042 0000 .align 2 248 $LEFDE0: 249 .align 0 250 .file 2 "/mnt/hgfs/boot/booter/include/example.h" 251 .file 3 "/mnt/hgfs/boot/booter/platforms/DB1200/platform.h" 252 .text 253 $Letext0: 254 0148 00000000 .section .debug_info 254 00000000 255 0000 20020000 .4byte 0x220 256 0004 0200 .2byte 0x2 257 0006 00000000 .4byte $Ldebug_abbrev0 258 000a 04 .byte 0x4 259 000b 01 .uleb128 0x1 260 000c 00000000 .4byte $Ldebug_line0 261 0010 48010000 .4byte $Letext0 262 0014 00000000 .4byte $Ltext0 263 0018 8C000000 .4byte $LASF20 264 001c 01 .byte 0x1 265 001d A5000000 .4byte $LASF21 266 0021 02 .uleb128 0x2 267 0022 F7000000 .4byte $LASF0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -