📄 ram.readelf
字号:
ELF Header:
Magic: 7f 45 4c 46 01 02 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, big endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI Version: 0
Type: EXEC (Executable file)
Machine: PowerPC
Version: 0x1
Entry point address: 0x40007678
Start of program headers: 52 (bytes into file)
Start of section headers: 121640 (bytes into file)
Flags: 0x0
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 2
Size of section headers: 40 (bytes)
Number of section headers: 41
Section header string table index: 38
Section Headers:
[Nr] Name Type Addr Off Size ES Flg Lk Inf Al
[ 0] NULL 00000000 000000 000000 00 0 0 0
[ 1] .pecrt0 PROGBITS 40000000 018e24 000000 00 W 0 0 1
[ 2] .text PROGBITS 40000000 010000 007678 00 AX 0 0 4
[ 3] .rcw PROGBITS 00000000 010000 000000 00 AX 0 0 1
[ 4] .init PROGBITS 40007678 017678 000524 00 AX 0 0 1
[ 5] .flash_data PROGBITS 40007b9c 017b9c 00000c 00 AX 0 0 1
[ 6] .rodata PROGBITS 40007ba8 017ba8 000a2c 00 A 0 0 4
[ 7] .PPC.EMB.apuinfo NOTE 400085d4 018e24 00001c 00 0 0 1
[ 8] .isrvectbl PROGBITS 40008800 018800 0004d8 00 A 0 0 4
[ 9] .xcptn PROGBITS 40008ce0 018ce0 000100 00 AX 0 0 16
[10] .PPC.EMB.sdata2 PROGBITS 40008de0 018e40 000000 00 W 0 0 1
[11] .sdata2 PROGBITS 40008de0 018de0 000000 00 A 0 0 4
[12] .PPC.EMB.sbss2 PROGBITS 40008de0 018e40 000000 00 W 0 0 1
[13] .sbss2 PROGBITS 40008de0 018e40 000000 00 W 0 0 1
[14] .data PROGBITS 40008de0 018de0 000024 00 WA 0 0 4
[15] .data1 PROGBITS 40008e04 018e40 000000 00 W 0 0 1
[16] .got PROGBITS 40008e04 018e40 000000 00 W 0 0 1
[17] .got.plt PROGBITS 40008e04 018e40 000000 00 W 0 0 1
[18] .got1 PROGBITS 40008e04 018e40 000000 00 W 0 0 1
[19] .got2 PROGBITS 40008e04 018e04 00001c 00 WA 0 0 4
[20] .ctors PROGBITS 40008e20 018e40 000000 00 W 0 0 1
[21] .dtors PROGBITS 40008e20 018e40 000000 00 W 0 0 1
[22] .fixup PROGBITS 40008e20 018e40 000000 00 W 0 0 1
[23] .dynamic DYNAMIC 40008e20 018e40 000000 08 W 0 0 1
[24] .plt NOBITS 40008e20 018e40 000000 00 W 0 0 1
[25] .sdata PROGBITS 40008e20 018e20 000004 00 WA 0 0 4
[26] .PPC.EMB.sdata0 PROGBITS 40008e24 018e40 000000 00 W 0 0 1
[27] .sbss NOBITS 40008e24 018e40 000000 00 W 0 0 1
[28] .PPC.EMB.sbss0 PROGBITS 40008e24 018e40 000000 00 W 0 0 1
[29] .bss NOBITS 40008e24 018e24 0016c8 00 WA 0 0 4
[30] .debug_aranges PROGBITS 00000000 018e40 000100 00 0 0 8
[31] .debug_pubnames PROGBITS 00000000 018f40 00080a 00 0 0 1
[32] .debug_info PROGBITS 00000000 01974a 002401 00 0 0 1
[33] .debug_abbrev PROGBITS 00000000 01bb4b 000409 00 0 0 1
[34] .debug_line PROGBITS 00000000 01bf54 000b04 00 0 0 1
[35] .debug_frame PROGBITS 00000000 01ca58 000e64 00 0 0 4
[36] .debug_str PROGBITS 00000000 01d8bc 000059 00 0 0 1
[37] .comment PROGBITS 00000000 01d915 0000aa 00 0 0 1
[38] .shstrtab STRTAB 00000000 01d9bf 000166 00 0 0 1
[39] .symtab SYMTAB 00000000 01e190 0059e0 10 40 1282 4
[40] .strtab STRTAB 00000000 023b70 001733 00 0 0 1
Key to Flags:
W (write), A (alloc), X (execute), M (merge), S (strings)
I (info), L (link order), G (group), x (unknown)
O (extra OS processing required) o (OS specific), p (processor specific)
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
LOAD 0x010000 0x00000000 0x00000000 0x00000 0x00000 R E 0x10000
LOAD 0x010000 0x40000000 0x40000000 0x08e24 0x0a4ec RWE 0x10000
Section to Segment mapping:
Segment Sections...
00
01 .text .init .flash_data .rodata .isrvectbl .xcptn .data .got2 .sdata .bss
The section .debug_info contains:
Compilation Unit @ 0:
Length: 6880
Version: 2
Abbrev Offset: 0
Pointer Size: 4
<0><b>: Abbrev Number: 1 (DW_TAG_compile_unit)
DW_AT_stmt_list : 0
DW_AT_high_pc : 0x40006bb4
DW_AT_low_pc : 0x40000000
DW_AT_producer : GNU C 3.4.4 (mingw special)
DW_AT_language : 1 (ANSI C)
DW_AT_name : ..\src\FESC_src\FESC_main.c
DW_AT_comp_dir : D:\CRSCD_MPC_SSP\SSP_PACK_cur\5554\PEGnu
<1><7a>: Abbrev Number: 2 (DW_TAG_base_type)
DW_AT_name : (indirect string, offset: 0x20): unsigned int
DW_AT_byte_size : 4
DW_AT_encoding : 7 (unsigned)
<1><81>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : long int
DW_AT_byte_size : 4
DW_AT_encoding : 5 (signed)
<1><8d>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : int
DW_AT_byte_size : 4
DW_AT_encoding : 5 (signed)
<1><94>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : long long int
DW_AT_byte_size : 8
DW_AT_encoding : 5 (signed)
<1><a5>: Abbrev Number: 2 (DW_TAG_base_type)
DW_AT_name : (indirect string, offset: 0x20): unsigned int
DW_AT_byte_size : 4
DW_AT_encoding : 7 (unsigned)
<1><ac>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : unsigned char
DW_AT_byte_size : 1
DW_AT_encoding : 8 (unsigned char)
<1><bd>: Abbrev Number: 4 (DW_TAG_pointer_type)
DW_AT_byte_size : 4
<1><bf>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : long unsigned int
DW_AT_byte_size : 4
DW_AT_encoding : 7 (unsigned)
<1><d4>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : short int
DW_AT_byte_size : 2
DW_AT_encoding : 5 (signed)
<1><e1>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : char
DW_AT_byte_size : 1
DW_AT_encoding : 8 (unsigned char)
<1><e9>: Abbrev Number: 5 (DW_TAG_const_type)
DW_AT_type : <e1>
<1><ee>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : short unsigned int
DW_AT_byte_size : 2
DW_AT_encoding : 7 (unsigned)
<1><104>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : long long unsigned int
DW_AT_byte_size : 8
DW_AT_encoding : 7 (unsigned)
<1><11e>: Abbrev Number: 6 (DW_TAG_typedef)
DW_AT_name : __gnuc_va_list
DW_AT_decl_file : 14
DW_AT_decl_line : 44
DW_AT_type : <134>
<1><134>: Abbrev Number: 7 (DW_TAG_array_type)
DW_AT_sibling : <144>
DW_AT_type : <144>
<2><13d>: Abbrev Number: 8 (DW_TAG_subrange_type)
DW_AT_type : <a5>
DW_AT_upper_bound : 0
<1><144>: Abbrev Number: 9 (DW_TAG_structure_type)
DW_AT_sibling : <1be>
DW_AT_name : __va_list_tag
DW_AT_byte_size : 12
DW_AT_decl_file : 15
DW_AT_decl_line : 0
<2><15a>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : gpr
DW_AT_decl_file : 15
DW_AT_decl_line : 0
DW_AT_type : <ac>
DW_AT_data_member_location: 2 byte block: 23 0 (DW_OP_plus_uconst: 0)
<2><168>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : fpr
DW_AT_decl_file : 15
DW_AT_decl_line : 0
DW_AT_type : <ac>
DW_AT_data_member_location: 2 byte block: 23 1 (DW_OP_plus_uconst: 1)
<2><176>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : reserved
DW_AT_decl_file : 15
DW_AT_decl_line : 0
DW_AT_type : <ee>
DW_AT_data_member_location: 2 byte block: 23 2 (DW_OP_plus_uconst: 2)
<2><189>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : overflow_arg_area
DW_AT_decl_file : 15
DW_AT_decl_line : 0
DW_AT_type : <bd>
DW_AT_data_member_location: 2 byte block: 23 4 (DW_OP_plus_uconst: 4)
<2><1a5>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : reg_save_area
DW_AT_decl_file : 15
DW_AT_decl_line : 0
DW_AT_type : <bd>
DW_AT_data_member_location: 2 byte block: 23 8 (DW_OP_plus_uconst: 8)
<1><1be>: Abbrev Number: 6 (DW_TAG_typedef)
DW_AT_name : va_list
DW_AT_decl_file : 14
DW_AT_decl_line : 106
DW_AT_type : <11e>
<1><1cd>: Abbrev Number: 3 (DW_TAG_base_type)
DW_AT_name : signed char
DW_AT_byte_size : 1
DW_AT_encoding : 6 (signed char)
<1><1dc>: Abbrev Number: 6 (DW_TAG_typedef)
DW_AT_name : uint8_t
DW_AT_decl_file : 12
DW_AT_decl_line : 63
DW_AT_type : <ac>
<1><1eb>: Abbrev Number: 6 (DW_TAG_typedef)
DW_AT_name : uint16_t
DW_AT_decl_file : 12
DW_AT_decl_line : 68
DW_AT_type : <ee>
<1><1fb>: Abbrev Number: 6 (DW_TAG_typedef)
DW_AT_name : uint32_t
DW_AT_decl_file : 12
DW_AT_decl_line : 73
DW_AT_type : <7a>
<1><20b>: Abbrev Number: 11 (DW_TAG_volatile_type)
DW_AT_type : <7a>
<1><210>: Abbrev Number: 7 (DW_TAG_array_type)
DW_AT_sibling : <220>
DW_AT_type : <1dc>
<2><219>: Abbrev Number: 8 (DW_TAG_subrange_type)
DW_AT_type : <a5>
DW_AT_upper_bound : 1
<1><220>: Abbrev Number: 12 (DW_TAG_enumeration_type)
DW_AT_sibling : <2ee>
DW_AT_name : __spimstst
DW_AT_byte_size : 4
DW_AT_decl_file : 16
DW_AT_decl_line : 36
<2><233>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistIdle
DW_AT_const_value : 0
<2><23f>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistInsTx
DW_AT_const_value : 1
<2><24c>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistWtBusy
DW_AT_const_value : 2
<2><25a>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistDataTX
DW_AT_const_value : 3
<2><268>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistDataTXTailESC
DW_AT_const_value : 4
<2><27d>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistDataTXTailIDLE
DW_AT_const_value : 5
<2><293>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistDataTXTailESC2
DW_AT_const_value : 6
<2><2a9>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistDataRX
DW_AT_const_value : 7
<2><2b7>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistDone
DW_AT_const_value : 8
<2><2c3>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistBusy
DW_AT_const_value : 9
<2><2cf>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistRxReady
DW_AT_const_value : 10
<2><2de>: Abbrev Number: 13 (DW_TAG_enumerator)
DW_AT_name : spistTxReady
DW_AT_const_value : 11
<1><2ee>: Abbrev Number: 6 (DW_TAG_typedef)
DW_AT_name : SBPSMStatus
DW_AT_decl_file : 16
DW_AT_decl_line : 49
DW_AT_type : <220>
<1><301>: Abbrev Number: 14 (DW_TAG_structure_type)
DW_AT_sibling : <4a0>
DW_AT_name : __SBP_Buffer
DW_AT_byte_size : 548
DW_AT_decl_file : 16
DW_AT_decl_line : 52
<2><317>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : TxBuffer
DW_AT_decl_file : 16
DW_AT_decl_line : 54
DW_AT_type : <4a0>
DW_AT_data_member_location: 2 byte block: 23 0 (DW_OP_plus_uconst: 0)
<2><32a>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : RxBuffer
DW_AT_decl_file : 16
DW_AT_decl_line : 55
DW_AT_type : <4a0>
DW_AT_data_member_location: 3 byte block: 23 80 2 (DW_OP_plus_uconst: 256)
<2><33e>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : iTxBufferLen
DW_AT_decl_file : 16
DW_AT_decl_line : 56
DW_AT_type : <1eb>
DW_AT_data_member_location: 3 byte block: 23 80 4 (DW_OP_plus_uconst: 512)
<2><356>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : iRxBufferLen
DW_AT_decl_file : 16
DW_AT_decl_line : 57
DW_AT_type : <1eb>
DW_AT_data_member_location: 3 byte block: 23 82 4 (DW_OP_plus_uconst: 514)
<2><36e>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : iTxBufPos
DW_AT_decl_file : 16
DW_AT_decl_line : 58
DW_AT_type : <1eb>
DW_AT_data_member_location: 3 byte block: 23 84 4 (DW_OP_plus_uconst: 516)
<2><383>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : SBP_RTSTUS_OverTimeCnt
DW_AT_decl_file : 16
DW_AT_decl_line : 59
DW_AT_type : <1eb>
DW_AT_data_member_location: 3 byte block: 23 86 4 (DW_OP_plus_uconst: 518)
<2><3a5>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : InstrBuffer
DW_AT_decl_file : 16
DW_AT_decl_line : 62
DW_AT_type : <4b0>
DW_AT_data_member_location: 3 byte block: 23 88 4 (DW_OP_plus_uconst: 520)
<2><3bc>: Abbrev Number: 10 (DW_TAG_member)
DW_AT_name : iInstrBufPos
DW_AT_decl_file : 16
DW_AT_decl_line : 63
DW_AT_type : <1dc>
DW_AT_data_member_location: 3 byte block: 23 90 4 (DW_OP_plus_uconst: 528)
<2><3d4>: Abbrev Number: 10 (DW_TAG_member)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -