Chinaunix首页 | 论坛 | 博客
  • 博客访问: 70311
  • 博文数量: 25
  • 博客积分: 1250
  • 博客等级: 中尉
  • 技术积分: 210
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-24 10:42
文章分类

全部博文(25)

文章存档

2011年(2)

2010年(23)

我的朋友

分类:

2010-11-03 12:12:01

gcc 编译的过程文件
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


阅读(1059) | 评论(0) | 转发(0) |
0

上一篇:Shell语法概述

下一篇:gcc编译步骤图例

给主人留下些什么吧!~~