GCC编译过程是
1.预编译
2.编译(含优化选项)
3.汇编
4.链接
在整个过程中,为了产生最终文件,会有一些过程文件生成,通过opotion可以使这些过程文件保留下来。
这些过程文件,例如:(汇编)列表文件,(链接)交叉引用文件,(链接)MAP映像文件 。。。。等等。
例如
想留存 MAP映像文件 或 交叉引用文件,就要在gcc命令中,加入对ld链接器给出option(ld手册)
想生成含源代码的汇编文件,就要在gcc命令中,加入as汇编器的option(as手册)
注:关于 交叉引用文件 crt文件,要参考cxref(1) - Linux man page
cxref - generate a C-language program cross-reference table (DEVELOPMENT)
MAP映像文件 或 交叉引用文件
$ gcc -o hello hello.c displaylib.c -Wl,-Map,test.map
AND
$ gcc -o hello hello.c displaylib.c -Wl,-Map,testcref.map,-cref
-Wl 参见gcc手册,-Wl后的参数是给ld链接器的。
-Map 参见ld手册,详见-M选项
-cref 参见ld手册,向标准输入输出终端,输出交叉引用文件表,如果生成MAP文件的话,就输出到MAP文件中。
test.map 和 testcref.map文件是自定义的map文件名。
$ gcc -S hello.c displaylib.c
生成汇编文件 hello.s 和 displaylib.s
只这样是不够的,汇编文件读起来稍微麻烦点,要是简单的话,更高级的语言就不必出现了。
-S 选项,参见gcc的man手册,编译后,不进行汇编,输出汇编文件。
$gcc -c -g -Wa,-adhln hello.c displaylib.c > hello.c.s
由于,汇编+C源码的文件,是在汇编器运行时,输出的。
所以,要使用-c选项。
-c 选项,参见gcc手册,汇编后,不链接,输出二进制代码的*.o文件。
-g 选项,参见gcc手册,包含调试信息。(用GDB来调试的话,必含选项)
-Wa 选项,参见gcc手册,之后的option是给汇编器的。
-a 选项,参见as手册,可有多种组合。
-a[cdhlmns]
Turn on listings, in any of a variety of ways:
-ac
omit false conditionals
-ad
omit debugging directives
-ah
include high-level source
-al
include assembly
-am
include macro expansions
-an
omit forms processing
-as
include symbols
=file
set the name of the listing file
You may combine these options; for example, use -aln for assembly listing without forms processing. The =file option, if used, must be the last one. By itself, -a defaults to -ahls.
这样输出的 hello.c.s 文件就包含了C源码。
1 .file "hello.c" 2 .section .debug_abbrev,"dr" 3 Ldebug_abbrev0: 4 .section .debug_info,"dr" 5 Ldebug_info0: 6 .section .debug_line,"dr" 7 Ldebug_line0: 8 0000 39000000 .text 8 02001E00 8 00000101 8 FB0E0D00 8 01010101 9 Ltext0: 11 .section .rdata,"dr" 12 LC0: 13 0000 68656C6C .ascii "helloworld\0" 13 6F776F72 13 6C6400 14 000b 00 .text 15 .globl _main 17 _main: 18 LFB6: 19 .file 1 "hello.c" 1:hello.c **** #include <stdio.h> 2:hello.c **** #include "hello.h" 3:hello.c **** 4:hello.c **** int 5:hello.c **** main(int argc, char ** argv){ 20 .loc 1 5 0 21 0000 8D4C2404 leal 4(%esp), %ecx 22 LCFI0: 23 0004 83E4F0 andl $-16, %esp 24 0007 FF71FC pushl -4(%ecx) 25 LCFI1: 26 000a 55 pushl %ebp 27 LCFI2: 28 000b 89E5 movl %esp, %ebp 29 LCFI3: 30 000d 51 pushl %ecx 31 LCFI4: 32 000e 83EC14 subl $20, %esp 33 LCFI5: 34 .loc 1 5 0 35 0011 E8000000 call ___main 35 00 6:hello.c **** int i; 7:hello.c **** 8:hello.c **** for(i=0;i<2;i++){ 36 .loc 1 8 0 37 0016 C745F800 movl $0, -8(%ebp) 37 000000 38 001d EB10 jmp L2 39 L3: 9:hello.c **** printf("helloworld\n"); 40 .loc 1 9 0 41 001f C7042400 movl $LC0, (%esp) 41 000000 42 0026 E8000000 call _puts 42 00 43 .loc 1 8 0 44 002b 8345F801 addl $1, -8(%ebp) 45 L2: 46 002f 837DF801 cmpl $1, -8(%ebp) 47 0033 7EEA jle L3 10:hello.c **** } 11:hello.c **** 12:hello.c **** displaylib(); 48 .loc 1 12 0 49 0035 E8000000 call _displaylib 49 00 13:hello.c **** 14:hello.c **** return 0; 50 .loc 1 14 0 51 003a B8000000 movl $0, %eax 51 00 15:hello.c **** }/* hello.c */ 52 .loc 1 15 0 53 003f 83C414 addl $20, %esp 54 0042 59 popl %ecx 55 0043 5D popl %ebp 56 0044 8D61FC leal -4(%ecx), %esp 57 0047 C3 ret 58 LFE6: 59 .section .debug_frame,"dr" 60 Lframe0: 61 0000 10000000 .long LECIE0-LSCIE0 62 LSCIE0: 63 0004 FFFFFFFF .long 0xffffffff 64 0008 01 .byte 0x1 65 0009 00 .ascii "\0" 66 000a 01 .uleb128 0x1 67 000b 7C .sleb128 -4 68 000c 08 .byte 0x8 69 000d 0C .byte 0xc 70 000e 04 .uleb128 0x4 71 000f 04 .uleb128 0x4 72 0010 88 .byte 0x88 73 0011 01 .uleb128 0x1 74 0012 0000 .align 4 75 LECIE0: 76 LSFDE0: 77 0014 24000000 .long LEFDE0-LASFDE0 78 LASFDE0: 79 0018 00000000 .secrel32 Lframe0 80 001c 00000000 .long LFB6 81 0020 48000000 .long LFE6-LFB6 82 0024 44 .byte 0x4 83 .long LCFI0-LFB6 84 0025 0C .byte 0xc 85 0026 01 .uleb128 0x1 86 0027 00 .uleb128 0x0 87 0028 09 .byte 0x9 88 0029 04 .uleb128 0x4 89 002a 01 .uleb128 0x1 90 002b 46 .byte 0x4 91 .long LCFI1-LCFI0 92 002c 0C .byte 0xc 93 002d 04 .uleb128 0x4 94 002e 04 .uleb128 0x4 95 002f 41 .byte 0x4 96 .long LCFI2-LCFI1 97 0030 0E .byte 0xe 98 0031 08 .uleb128 0x8 99 0032 85 .byte 0x85 100 0033 02 .uleb128 0x2 101 0034 42 .byte 0x4 102 .long LCFI3-LCFI2 103 0035 0D .byte 0xd 104 0036 05 .uleb128 0x5 105 0037 41 .byte 0x4 106 .long LCFI4-LCFI3 107 0038 84 .byte 0x84 108 0039 03 .uleb128 0x3 109 003a 0000 .align 4 110 LEFDE0: 111 .text 112 Letext0: 113 .section .debug_loc,"dr" 114 Ldebug_loc0: 115 LLST0: 116 0000 00000000 .long LFB6-Ltext0 117 0004 04000000 .long LCFI0-Ltext0 118 0008 0200 .word 0x2 119 000a 74 .byte 0x74 120 000b 04 .sleb128 4 121 000c 04000000 .long LCFI0-Ltext0 122 0010 0A000000 .long LCFI1-Ltext0 123 0014 0100 .word 0x1 124 0016 51 .byte 0x51 125 0017 0A000000 .long LCFI1-Ltext0 126 001b 0B000000 .long LCFI2-Ltext0 127 001f 0200 .word 0x2 128 0021 74 .byte 0x74 129 0022 04 .sleb128 4 130 0023 0B000000 .long LCFI2-Ltext0 131 0027 0D000000 .long LCFI3-Ltext0 132 002b 0200 .word 0x2 133 002d 74 .byte 0x74 134 002e 08 .sleb128 8 135 002f 0D000000 .long LCFI3-Ltext0 136 0033 48000000 .long LFE6-Ltext0 137 0037 0200 .word 0x2 138 0039 75 .byte 0x75 139 003a 08 .sleb128 8 140 003b 00000000 .long 0x0 141 003f 00000000 .long 0x0 142 .section .debug_info,"dr" 143 0000 59010000 .long 0x159 144 0004 0200 .word 0x2 145 0006 00000000 .secrel32 Ldebug_abbrev0 146 000a 04 .byte 0x4 147 000b 01 .uleb128 0x1 148 000c 474E5520 .ascii "GNU C 4.3.4 20090804 (release) 1\0" 148 4320342E 148 332E3420 148 32303039 148 30383034 149 002d 01 .byte 0x1 150 002e 68656C6C .ascii "hello.c\0" 150 6F2E6300 151 0036 2F686F6D .ascii "/home/Administrator/hello\0" 151 652F4164 151 6D696E69 151 73747261 151 746F722F 152 0050 00000000 .long Ltext0 153 0054 48000000 .long Letext0 154 0058 00000000 .secrel32 Ldebug_line0 155 005c 02 .uleb128 0x2 156 005d 04 .byte 0x4 157 005e 07 .byte 0x7 158 005f 756E7369 .ascii "unsigned int\0" 158 676E6564 158 20696E74 158 00 159 006c 02 .uleb128 0x2 160 006d 01 .byte 0x1 161 006e 06 .byte 0x6 162 006f 63686172 .ascii "char\0" 162 00 163 0074 02 .uleb128 0x2 164 0075 01 .byte 0x1 165 0076 06 .byte 0x6 166 0077 7369676E .ascii "signed char\0" 166 65642063 166 68617200 167 0083 02 .uleb128 0x2 168 0084 01 .byte 0x1 169 0085 08 .byte 0x8 170 0086 756E7369 .ascii "unsigned char\0" 170 676E6564 170 20636861 170 7200 171 0094 02 .uleb128 0x2 172 0095 02 .byte 0x2 173 0096 05 .byte 0x5 174 0097 73686F72 .ascii "short int\0" 174 7420696E 174 7400 175 00a1 02 .uleb128 0x2 176 00a2 02 .byte 0x2 177 00a3 07 .byte 0x7 178 00a4 73686F72 .ascii "short unsigned int\0" 178 7420756E 178 7369676E 178 65642069 178 6E7400 179 00b7 02 .uleb128 0x2 180 00b8 04 .byte 0x4 181 00b9 05 .byte 0x5 182 00ba 696E7400 .ascii "int\0" 183 00be 02 .uleb128 0x2 184 00bf 08 .byte 0x8 185 00c0 05 .byte 0x5 186 00c1 6C6F6E67 .ascii "long long int\0" 186 206C6F6E 186 6720696E 186 7400 187 00cf 02 .uleb128 0x2 188 00d0 08 .byte 0x8 189 00d1 07 .byte 0x7 190 00d2 6C6F6E67 .ascii "long long unsigned int\0" 190 206C6F6E 190 6720756E 190 7369676E 190 65642069 191 00e9 02 .uleb128 0x2 192 00ea 04 .byte 0x4 193 00eb 05 .byte 0x5 194 00ec 6C6F6E67 .ascii "long int\0" 194 20696E74 194 00 195 00f5 03 .uleb128 0x3 196 00f6 04 .byte 0x4 197 00f7 07 .byte 0x7 198 00f8 02 .uleb128 0x2 199 00f9 04 .byte 0x4 200 00fa 07 .byte 0x7 201 00fb 6C6F6E67 .ascii "long unsigned int\0" 201 20756E73 201 69676E65 201 6420696E 201 7400 202 010d 04 .uleb128 0x4 203 010e 04 .byte 0x4 204 010f 6C000000 .long 0x6c 205 0113 05 .uleb128 0x5 206 0114 01 .byte 0x1 207 0115 6D61696E .ascii "main\0" 207 00 208 011a 01 .byte 0x1 209 011b 05 .byte 0x5 210 011c 01 .byte 0x1 211 011d B7000000 .long 0xb7 212 0121 00000000 .long LFB6 213 0125 48000000 .long LFE6 214 0129 00000000 .secrel32 LLST0 215 012d 56010000 .long 0x156 216 0131 06 .uleb128 0x6 217 0132 61726763 .ascii "argc\0" 217 00 218 0137 01 .byte 0x1 219 0138 05 .byte 0x5 220 0139 B7000000 .long 0xb7 221 013d 06 .uleb128 0x6 222 013e 61726776 .ascii "argv\0" 222 00 223 0143 01 .byte 0x1 224 0144 05 .byte 0x5 225 0145 56010000 .long 0x156 226 0149 07 .uleb128 0x7 227 014a 6900 .ascii "i\0" 228 014c 01 .byte 0x1 229 014d 06 .byte 0x6 230 014e B7000000 .long 0xb7 231 0152 02 .byte 0x2 232 0153 91 .byte 0x91 233 0154 70 .sleb128 -16 234 0155 00 .byte 0x0 235 0156 04 .uleb128 0x4 236 0157 04 .byte 0x4 237 0158 0D010000 .long 0x10d 238 015c 00 .byte 0x0 239 .section .debug_abbrev,"dr" 240 0000 01 .uleb128 0x1 241 0001 11 .uleb128 0x11 242 0002 01 .byte 0x1 243 0003 25 .uleb128 0x25 244 0004 08 .uleb128 0x8 245 0005 13 .uleb128 0x13 246 0006 0B .uleb128 0xb 247 0007 03 .uleb128 0x3 248 0008 08 .uleb128 0x8 249 0009 1B .uleb128 0x1b 250 000a 08 .uleb128 0x8 251 000b 11 .uleb128 0x11 252 000c 01 .uleb128 0x1 253 000d 12 .uleb128 0x12 254 000e 01 .uleb128 0x1 255 000f 10 .uleb128 0x10 256 0010 06 .uleb128 0x6 257 0011 00 .byte 0x0 258 0012 00 .byte 0x0 259 0013 02 .uleb128 0x2 260 0014 24 .uleb128 0x24 261 0015 00 .byte 0x0 262 0016 0B .uleb128 0xb 263 0017 0B .uleb128 0xb 264 0018 3E .uleb128 0x3e 265 0019 0B .uleb128 0xb 266 001a 03 .uleb128 0x3 267 001b 08 .uleb128 0x8 268 001c 00 .byte 0x0 269 001d 00 .byte 0x0 270 001e 03 .uleb128 0x3 271 001f 24 .uleb128 0x24 272 0020 00 .byte 0x0 273 0021 0B .uleb128 0xb 274 0022 0B .uleb128 0xb 275 0023 3E .uleb128 0x3e 276 0024 0B .uleb128 0xb 277 0025 00 .byte 0x0 278 0026 00 .byte 0x0 279 0027 04 .uleb128 0x4 280 0028 0F .uleb128 0xf 281 0029 00 .byte 0x0 282 002a 0B .uleb128 0xb 283 002b 0B .uleb128 0xb 284 002c 49 .uleb128 0x49 285 002d 13 .uleb128 0x13 286 002e 00 .byte 0x0 287 002f 00 .byte 0x0 288 0030 05 .uleb128 0x5 289 0031 2E .uleb128 0x2e 290 0032 01 .byte 0x1 291 0033 3F .uleb128 0x3f 292 0034 0C .uleb128 0xc 293 0035 03 .uleb128 0x3 294 0036 08 .uleb128 0x8 295 0037 3A .uleb128 0x3a 296 0038 0B .uleb128 0xb 297 0039 3B .uleb128 0x3b 298 003a 0B .uleb128 0xb 299 003b 27 .uleb128 0x27 300 003c 0C .uleb128 0xc 301 003d 49 .uleb128 0x49 302 003e 13 .uleb128 0x13 303 003f 11 .uleb128 0x11 304 0040 01 .uleb128 0x1 305 0041 12 .uleb128 0x12 306 0042 01 .uleb128 0x1 307 0043 40 .uleb128 0x40 308 0044 06 .uleb128 0x6 309 0045 01 .uleb128 0x1 310 0046 13 .uleb128 0x13 311 0047 00 .byte 0x0 312 0048 00 .byte 0x0 313 0049 06 .uleb128 0x6 314 004a 05 .uleb128 0x5 315 004b 00 .byte 0x0 316 004c 03 .uleb128 0x3 317 004d 08 .uleb128 0x8 318 004e 3A .uleb128 0x3a 319 004f 0B .uleb128 0xb 320 0050 3B .uleb128 0x3b 321 0051 0B .uleb128 0xb 322 0052 49 .uleb128 0x49 323 0053 13 .uleb128 0x13 324 0054 00 .byte 0x0 325 0055 00 .byte 0x0 326 0056 07 .uleb128 0x7 327 0057 34 .uleb128 0x34 328 0058 00 .byte 0x0 329 0059 03 .uleb128 0x3 330 005a 08 .uleb128 0x8 331 005b 3A .uleb128 0x3a 332 005c 0B .uleb128 0xb 333 005d 3B .uleb128 0x3b 334 005e 0B .uleb128 0xb 335 005f 49 .uleb128 0x49 336 0060 13 .uleb128 0x13 337 0061 02 .uleb128 0x2 338 0062 0A .uleb128 0xa 339 0063 00 .byte 0x0 340 0064 00 .byte 0x0 341 0065 00 .byte 0x0 342 .section .debug_pubnames,"dr" 343 0000 17000000 .long 0x17 344 0004 0200 .word 0x2 345 0006 00000000 .secrel32 Ldebug_info0 346 000a 5D010000 .long 0x15d 347 000e 13010000 .long 0x113 348 0012 6D61696E .ascii "main\0" 348 00 349 0017 00000000 .long 0x0 350 .section .debug_aranges,"dr" 351 0000 1C000000 .long 0x1c 352 0004 0200 .word 0x2 353 0006 00000000 .secrel32 Ldebug_info0 354 000a 04 .byte 0x4 355 000b 00 .byte 0x0 356 000c 0000 .word 0x0 357 000e 0000 .word 0x0 358 0010 00000000 .long Ltext0 359 0014 48000000 .long Letext0-Ltext0 360 0018 00000000 .long 0x0 361 001c 00000000 .long 0x0 1 .file "displaylib.c" 2 .section .debug_abbrev,"dr" 3 Ldebug_abbrev0: 4 .section .debug_info,"dr" 5 Ldebug_info0: 6 .section .debug_line,"dr" 7 Ldebug_line0: 8 0000 38000000 .text 8 02002300 8 00000101 8 FB0E0D00 8 01010101 9 Ltext0: 10 .section .rdata,"dr" 11 LC0: 12 0000 6C69626C .ascii "liblib\0" 12 696200 13 0007 00 .text 14 .globl _displaylib 16 _displaylib: 17 LFB6: 18 .file 1 "displaylib.c" 1:displaylib.c **** #include <stdio.h> 2:displaylib.c **** 3:displaylib.c **** void 4:displaylib.c **** displaylib(){ 19 .loc 1 4 0 20 0000 55 pushl %ebp 21 LCFI0: 22 0001 89E5 movl %esp, %ebp 23 LCFI1: 24 0003 83EC08 subl $8, %esp 25 LCFI2: 5:displaylib.c **** printf("liblib\n"); 26 .loc 1 5 0 27 0006 C7042400 movl $LC0, (%esp) 27 000000 28 000d E8000000 call _puts 28 00 6:displaylib.c **** } 29 .loc 1 6 0 30 0012 C9 leave 31 0013 C3 ret 32 LFE6: 33 .section .debug_frame,"dr" 34 Lframe0: 35 0000 10000000 .long LECIE0-LSCIE0 36 LSCIE0: 37 0004 FFFFFFFF .long 0xffffffff 38 0008 01 .byte 0x1 39 0009 00 .ascii "\0" 40 000a 01 .uleb128 0x1 41 000b 7C .sleb128 -4 42 000c 08 .byte 0x8 43 000d 0C .byte 0xc 44 000e 04 .uleb128 0x4 45 000f 04 .uleb128 0x4 46 0010 88 .byte 0x88 47 0011 01 .uleb128 0x1 48 0012 0000 .align 4 49 LECIE0: 50 LSFDE0: 51 0014 14000000 .long LEFDE0-LASFDE0 52 LASFDE0: 53 0018 00000000 .secrel32 Lframe0 54 001c 00000000 .long LFB6 55 0020 14000000 .long LFE6-LFB6 56 0024 41 .byte 0x4 57 .long LCFI0-LFB6 58 0025 0E .byte 0xe 59 0026 08 .uleb128 0x8 60 0027 85 .byte 0x85 61 0028 02 .uleb128 0x2 62 0029 42 .byte 0x4 63 .long LCFI1-LCFI0 64 002a 0D .byte 0xd 65 002b 05 .uleb128 0x5 66 .align 4 67 LEFDE0: 68 .text 69 Letext0: 70 .section .debug_loc,"dr" 71 Ldebug_loc0: 72 LLST0: 73 0000 00000000 .long LFB6-Ltext0 74 0004 01000000 .long LCFI0-Ltext0 75 0008 0200 .word 0x2 76 000a 74 .byte 0x74 77 000b 04 .sleb128 4 78 000c 01000000 .long LCFI0-Ltext0 79 0010 03000000 .long LCFI1-Ltext0 80 0014 0200 .word 0x2 81 0016 74 .byte 0x74 82 0017 08 .sleb128 8 83 0018 03000000 .long LCFI1-Ltext0 84 001c 14000000 .long LFE6-Ltext0 85 0020 0200 .word 0x2 86 0022 75 .byte 0x75 87 0023 08 .sleb128 8 88 0024 00000000 .long 0x0 89 0028 00000000 .long 0x0 90 .section .debug_info,"dr" 91 0000 2A010000 .long 0x12a 92 0004 0200 .word 0x2 93 0006 00000000 .secrel32 Ldebug_abbrev0 94 000a 04 .byte 0x4 95 000b 01 .uleb128 0x1 96 000c 474E5520 .ascii "GNU C 4.3.4 20090804 (release) 1\0" 96 4320342E 96 332E3420 96 32303039 96 30383034 97 002d 01 .byte 0x1 98 002e 64697370 .ascii "displaylib.c\0" 98 6C61796C 98 69622E63 98 00 99 003b 2F686F6D .ascii "/home/Administrator/hello\0" 99 652F4164 99 6D696E69 99 73747261 99 746F722F 100 0055 00000000 .long Ltext0 101 0059 14000000 .long Letext0 102 005d 00000000 .secrel32 Ldebug_line0 103 0061 02 .uleb128 0x2 104 0062 04 .byte 0x4 105 0063 07 .byte 0x7 106 0064 756E7369 .ascii "unsigned int\0" 106 676E6564 106 20696E74 106 00 107 0071 02 .uleb128 0x2 108 0072 01 .byte 0x1 109 0073 06 .byte 0x6 110 0074 63686172 .ascii "char\0" 110 00 111 0079 02 .uleb128 0x2 112 007a 01 .byte 0x1 113 007b 06 .byte 0x6 114 007c 7369676E .ascii "signed char\0" 114 65642063 114 68617200 115 0088 02 .uleb128 0x2 116 0089 01 .byte 0x1 117 008a 08 .byte 0x8 118 008b 756E7369 .ascii "unsigned char\0" 118 676E6564 118 20636861 118 7200 119 0099 02 .uleb128 0x2 120 009a 02 .byte 0x2 121 009b 05 .byte 0x5 122 009c 73686F72 .ascii "short int\0" 122 7420696E 122 7400 123 00a6 02 .uleb128 0x2 124 00a7 02 .byte 0x2 125 00a8 07 .byte 0x7 126 00a9 73686F72 .ascii "short unsigned int\0" 126 7420756E 126 7369676E 126 65642069 126 6E7400 127 00bc 02 .uleb128 0x2 128 00bd 04 .byte 0x4 129 00be 05 .byte 0x5 130 00bf 696E7400 .ascii "int\0" 131 00c3 02 .uleb128 0x2 132 00c4 08 .byte 0x8 133 00c5 05 .byte 0x5 134 00c6 6C6F6E67 .ascii "long long int\0" 134 206C6F6E 134 6720696E 134 7400 135 00d4 02 .uleb128 0x2 136 00d5 08 .byte 0x8 137 00d6 07 .byte 0x7 138 00d7 6C6F6E67 .ascii "long long unsigned int\0" 138 206C6F6E 138 6720756E 138 7369676E 138 65642069 139 00ee 02 .uleb128 0x2 140 00ef 04 .byte 0x4 141 00f0 05 .byte 0x5 142 00f1 6C6F6E67 .ascii "long int\0" 142 20696E74 142 00 143 00fa 03 .uleb128 0x3 144 00fb 04 .byte 0x4 145 00fc 07 .byte 0x7 146 00fd 02 .uleb128 0x2 147 00fe 04 .byte 0x4 148 00ff 07 .byte 0x7 149 0100 6C6F6E67 .ascii "long unsigned int\0" 149 20756E73 149 69676E65 149 6420696E 149 7400 150 0112 04 .uleb128 0x4 151 0113 01 .byte 0x1 152 0114 64697370 .ascii "displaylib\0" 152 6C61796C 152 696200 153 011f 01 .byte 0x1 154 0120 04 .byte 0x4 155 0121 00000000 .long LFB6 156 0125 14000000 .long LFE6 157 0129 00000000 .secrel32 LLST0 158 012d 00 .byte 0x0 159 .section .debug_abbrev,"dr" 160 0000 01 .uleb128 0x1 161 0001 11 .uleb128 0x11 162 0002 01 .byte 0x1 163 0003 25 .uleb128 0x25 164 0004 08 .uleb128 0x8 165 0005 13 .uleb128 0x13 166 0006 0B .uleb128 0xb 167 0007 03 .uleb128 0x3 168 0008 08 .uleb128 0x8 169 0009 1B .uleb128 0x1b 170 000a 08 .uleb128 0x8 171 000b 11 .uleb128 0x11 172 000c 01 .uleb128 0x1 173 000d 12 .uleb128 0x12 174 000e 01 .uleb128 0x1 175 000f 10 .uleb128 0x10 176 0010 06 .uleb128 0x6 177 0011 00 .byte 0x0 178 0012 00 .byte 0x0 179 0013 02 .uleb128 0x2 180 0014 24 .uleb128 0x24 181 0015 00 .byte 0x0 182 0016 0B .uleb128 0xb 183 0017 0B .uleb128 0xb 184 0018 3E .uleb128 0x3e 185 0019 0B .uleb128 0xb 186 001a 03 .uleb128 0x3 187 001b 08 .uleb128 0x8 188 001c 00 .byte 0x0 189 001d 00 .byte 0x0 190 001e 03 .uleb128 0x3 191 001f 24 .uleb128 0x24 192 0020 00 .byte 0x0 193 0021 0B .uleb128 0xb 194 0022 0B .uleb128 0xb 195 0023 3E .uleb128 0x3e 196 0024 0B .uleb128 0xb 197 0025 00 .byte 0x0 198 0026 00 .byte 0x0 199 0027 04 .uleb128 0x4 200 0028 2E .uleb128 0x2e 201 0029 00 .byte 0x0 202 002a 3F .uleb128 0x3f 203 002b 0C .uleb128 0xc 204 002c 03 .uleb128 0x3 205 002d 08 .uleb128 0x8 206 002e 3A .uleb128 0x3a 207 002f 0B .uleb128 0xb 208 0030 3B .uleb128 0x3b 209 0031 0B .uleb128 0xb 210 0032 11 .uleb128 0x11 211 0033 01 .uleb128 0x1 212 0034 12 .uleb128 0x12 213 0035 01 .uleb128 0x1 214 0036 40 .uleb128 0x40 215 0037 06 .uleb128 0x6 216 0038 00 .byte 0x0 217 0039 00 .byte 0x0 218 003a 00 .byte 0x0 219 .section .debug_pubnames,"dr" 220 0000 1D000000 .long 0x1d 221 0004 0200 .word 0x2 222 0006 00000000 .secrel32 Ldebug_info0 223 000a 2E010000 .long 0x12e 224 000e 12010000 .long 0x112 225 0012 64697370 .ascii "displaylib\0" 225 6C61796C 225 696200 226 001d 00000000 .long 0x0 227 .section .debug_aranges,"dr" 228 0000 1C000000 .long 0x1c 229 0004 0200 .word 0x2 230 0006 00000000 .secrel32 Ldebug_info0 231 000a 04 .byte 0x4 232 000b 00 .byte 0x0 233 000c 0000 .word 0x0 234 000e 0000 .word 0x0 235 0010 00000000 .long Ltext0 236 0014 14000000 .long Letext0-Ltext0 237 0018 00000000 .long 0x0 238 001c 00000000 .long 0x0
|