source: EcnlProtoTool/trunk/prototool/src/linker_scriptDebug.ld

Last change on this file was 443, checked in by coas-nagasima, 4 years ago

prototoolにelfファイルヘッダーを付けてntshellで必要な情報を読み取れるよう変更

  • Property svn:eol-style set to native
File size: 2.6 KB
Line 
1/*
2 * $Id$
3 */
4
5OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm","elf32-littlearm")
6OUTPUT_ARCH(arm)
7ENTRY(start);
8
9MEMORY {
10 BOOT_LOADER (rx) : ORIGIN = 0x18000000, LENGTH = 0x00200000
11 ROM (rx) : ORIGIN = 0x18200000, LENGTH = 0x00600000
12 RAM (xrw) : ORIGIN = 0x20100000, LENGTH = 8M
13}
14
15PROVIDE(hardware_init_hook = 0);
16PROVIDE(software_init_hook = 0);
17PROVIDE(software_term_hook = 0);
18
19SECTIONS {
20 .boot : {
21 KEEP(*(.boot))
22 } > BOOT_LOADER
23
24 .proginf : {
25 KEEP(*(.proginf))
26 } > ROM
27
28 .text : {
29 __start_text = .;
30 *(.text*)
31 *(.glue_7t)
32 *(.glue_7)
33 KEEP(*(.init))
34 KEEP(*(.fini))
35 __end_text = .;
36 } > ROM
37 _etext = .;
38 PROVIDE(etext = .);
39
40 .rodata ALIGN(4) : {
41 __start_rodata = .;
42 *(.rodata*)
43 __end_rodata = .;
44 } > ROM
45
46 .preinit_array ALIGN(4) : {
47 PROVIDE_HIDDEN (__preinit_array_start = .);
48 KEEP (*(.preinit_array))
49 PROVIDE_HIDDEN (__preinit_array_end = .);
50 } > ROM
51 .init_array ALIGN(4) : {
52 PROVIDE_HIDDEN (__init_array_start = .);
53 KEEP (*(SORT(.init_array.*)))
54 KEEP (*(.init_array))
55 PROVIDE_HIDDEN (__init_array_end = .);
56 } > ROM
57 .fini_array ALIGN(4) : {
58 PROVIDE_HIDDEN (__fini_array_start = .);
59 KEEP (*(SORT(.fini_array.*)))
60 KEEP (*(.fini_array))
61 PROVIDE_HIDDEN (__fini_array_end = .);
62 } > ROM
63 .ARM.exidx ALIGN(4) : {
64 __exidx_start = .;
65 *(.ARM.exidx* .gnu.linkonce.armexidx.*)
66 __exidx_end = .;
67 } > ROM
68
69 .data : ALIGN(4) {
70 __start_data = .;
71 *(.data*)
72 *(.got*)
73 __end_data = .;
74 } > RAM AT > ROM
75 __start_idata = LOADADDR(.data);
76 . = ALIGN(4);
77 _edata = .;
78 PROVIDE(edata = .);
79
80 .bss ALIGN(4) : {
81 __start_bss = .;
82 *(.bss*)
83 *(COMMON)
84 __end_bss = .;
85 } > RAM
86 . = ALIGN(4);
87 _end = .;
88 PROVIDE(end = .);
89 .comment 0 : { *(.comment) }
90
91 /*
92 * DWARF debug sections.
93 * Symbols in the DWARF debugging sections are relative to
94 * the beginning of the section so we begin them at 0.
95 */
96
97 /* DWARF 1 */
98 .debug 0 : { *(.debug) }
99 .line 0 : { *(.line) }
100
101 /* GNU DWARF 1 extensions */
102 .debug_srcinfo 0 : { *(.debug_srcinfo) }
103 .debug_sfnames 0 : { *(.debug_sfnames) }
104
105 /* DWARF 1.1 and DWARF 2 */
106 .debug_aranges 0 : { *(.debug_aranges) }
107 .debug_pubnames 0 : { *(.debug_pubnames) }
108
109 /* DWARF 2 */
110 .debug_info 0 : { *(.debug_info) }
111 .debug_abbrev 0 : { *(.debug_abbrev) }
112 .debug_line 0 : { *(.debug_line) }
113 .debug_frame 0 : { *(.debug_frame) }
114 .debug_str 0 : { *(.debug_str) }
115 .debug_loc 0 : { *(.debug_loc) }
116 .debug_macinfo 0 : { *(.debug_macinfo) }
117
118 /* SGI/MIPS DWARF 2 extensions */
119 .debug_weaknames 0 : { *(.debug_weaknames) }
120 .debug_funcnames 0 : { *(.debug_funcnames) }
121 .debug_typenames 0 : { *(.debug_typenames) }
122 .debug_varnames 0 : { *(.debug_varnames) }
123}
Note: See TracBrowser for help on using the repository browser.