mirror of
https://github.com/apache/nuttx.git
synced 2026-06-02 01:21:26 +08:00
Make sure sections are aligned to 32-bits in all LD linker scripts. This fixes and issues noted specifically for the SAMD21 by Bernd Walter, but should be applicable to all other LD scripts as well.
Squashed commit of the following:
configs/: Add . = ALIGN(4); before every .data section
configs/: Add . = ALIGN(4); before every ARM.extab section
configs/: Add . = ALIGN(4); before every definition of __exidx_start
configs/: Add . = ALIGN(4); before every .init_section.
configs/: Convert TABs to spaces in all ld linker scripts. This just makes things easier to modify with scripts because the files are more consistent.
This commit is contained in:
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,71 +37,72 @@ OUTPUT_ARCH(arm)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
/* Interrupt vector trampoline and command line parameters
|
/* Interrupt vector trampoline and command line parameters
|
||||||
* are provided in IRAM by the rrload bootloader. Vectors will be
|
* are provided in IRAM by the rrload bootloader. Vectors will be
|
||||||
* copied into _svectors.
|
* copied into _svectors.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
. = 0xffc00000;
|
. = 0xffc00000;
|
||||||
_svectors = ABSOLUTE(.);
|
_svectors = ABSOLUTE(.);
|
||||||
|
|
||||||
/* These are locations in IRAM where the rrload bootloader passes
|
/* These are locations in IRAM where the rrload bootloader passes
|
||||||
* information to the running program
|
* information to the running program
|
||||||
*/
|
*/
|
||||||
|
|
||||||
. = 0xffc00020;
|
. = 0xffc00020;
|
||||||
__KernCommandLineMagicStr = .; /* magic pattern string == "kcmdline-->" */
|
__KernCommandLineMagicStr = .; /* magic pattern string == "kcmdline-->" */
|
||||||
. = 0xffc0002C; /* advance to .+strlen("kcmdline-->")+1 */
|
. = 0xffc0002C; /* advance to .+strlen("kcmdline-->")+1 */
|
||||||
__KernCommandLineOverride = .; /* location of kernel command line string */
|
__KernCommandLineOverride = .; /* location of kernel command line string */
|
||||||
|
|
||||||
. = 0xffc00100;
|
. = 0xffc00100;
|
||||||
__EtherMACMagicStr = .; /* magic pattern string == "etherMAC-->" */
|
__EtherMACMagicStr = .; /* magic pattern string == "etherMAC-->" */
|
||||||
. = 0xffc0010C; /* advance to .+strlen("etherMAC-->")+1 */
|
. = 0xffc0010C; /* advance to .+strlen("etherMAC-->")+1 */
|
||||||
__EtherMAC = .;
|
__EtherMAC = .;
|
||||||
|
|
||||||
|
|
||||||
/* The OS entry point is here */
|
/* The OS entry point is here */
|
||||||
|
|
||||||
. = 0x10300000;
|
. = 0x10300000;
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.text)
|
*(.text)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata)
|
*(.rodata)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got) /* Global offset table */
|
*(.got) /* Global offset table */
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
}
|
}
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.); /* See below */
|
_eronly = ABSOLUTE(.); /* See below */
|
||||||
. = ALIGN(4096);
|
. = ALIGN(4096);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data)
|
_sdata = ABSOLUTE(.);
|
||||||
CONSTRUCTORS
|
*(.data)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
}
|
_edata = ABSOLUTE(.);
|
||||||
|
}
|
||||||
|
|
||||||
.bss : { /* BSS */
|
.bss : { /* BSS */
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss)
|
*(.bss)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
}
|
}
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,68 +49,72 @@ ENTRY(_stext)
|
|||||||
|
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
|
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,67 +48,71 @@ OUTPUT_ARCH(arm)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > isram
|
} > isram
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > isram
|
_einit = ABSOLUTE(.);
|
||||||
|
} > isram
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > isram
|
*(.ARM.extab*)
|
||||||
|
} > isram
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > isram
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > isram
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > isram
|
_edata = ABSOLUTE(.);
|
||||||
|
} > isram
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > isram
|
} > isram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,69 +51,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The LM3S6918 has 64Kb of SRAM beginning at the following address */
|
/* The LM3S6918 has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,67 +44,71 @@ ENTRY(_stext)
|
|||||||
|
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,69 +52,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103VCT6 has 48Kb of SRAM beginning at the following address */
|
/* The STM32F103VCT6 has 48Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,75 +47,79 @@ ENTRY(_stext)
|
|||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
|
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
KEEP(*(.vectors))
|
KEEP(*(.vectors))
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > progmem
|
} > progmem
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
KEEP(*(.init_array .init_array.*))
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
KEEP(*(.init_array .init_array.*))
|
||||||
} > progmem
|
_einit = ABSOLUTE(.);
|
||||||
|
} > progmem
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > progmem
|
*(.ARM.extab*)
|
||||||
|
} > progmem
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > progmem
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > progmem
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(LOADADDR(.data));
|
_eronly = ABSOLUTE(LOADADDR(.data));
|
||||||
|
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
. = ALIGN(4);
|
CONSTRUCTORS
|
||||||
_edata = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
} > sram AT > progmem
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > progmem
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.ramlog : {
|
.ramlog : {
|
||||||
*(.ramlog)
|
*(.ramlog)
|
||||||
} > ramlog
|
} > ramlog
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ SECTIONS
|
|||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
.init_section :
|
.init_section :
|
||||||
{
|
{
|
||||||
_sinit = ABSOLUTE(.);
|
_sinit = ABSOLUTE(.);
|
||||||
@@ -74,6 +75,7 @@ SECTIONS
|
|||||||
*(.ARM.extab*)
|
*(.ARM.extab*)
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
__exidx_start = ABSOLUTE(.);
|
__exidx_start = ABSOLUTE(.);
|
||||||
.ARM.exidx :
|
.ARM.exidx :
|
||||||
{
|
{
|
||||||
@@ -83,6 +85,7 @@ SECTIONS
|
|||||||
|
|
||||||
_eronly = ABSOLUTE(LOADADDR(.data));
|
_eronly = ABSOLUTE(LOADADDR(.data));
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
.data :
|
.data :
|
||||||
{
|
{
|
||||||
_sdata = ABSOLUTE(.);
|
_sdata = ABSOLUTE(.);
|
||||||
|
|||||||
@@ -69,6 +69,7 @@ SECTIONS
|
|||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > progmem
|
} > progmem
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
.init_section :
|
.init_section :
|
||||||
{
|
{
|
||||||
_sinit = ABSOLUTE(.);
|
_sinit = ABSOLUTE(.);
|
||||||
@@ -81,6 +82,7 @@ SECTIONS
|
|||||||
*(.ARM.extab*)
|
*(.ARM.extab*)
|
||||||
} > progmem
|
} > progmem
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
__exidx_start = ABSOLUTE(.);
|
__exidx_start = ABSOLUTE(.);
|
||||||
.ARM.exidx :
|
.ARM.exidx :
|
||||||
{
|
{
|
||||||
@@ -90,6 +92,7 @@ SECTIONS
|
|||||||
|
|
||||||
_eronly = ABSOLUTE(LOADADDR(.data));
|
_eronly = ABSOLUTE(LOADADDR(.data));
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
.data :
|
.data :
|
||||||
{
|
{
|
||||||
_sdata = ABSOLUTE(.);
|
_sdata = ABSOLUTE(.);
|
||||||
|
|||||||
@@ -51,66 +51,70 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,68 +48,72 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The LM3S6918 has 64Kb of SRAM beginning at the following address */
|
/* The LM3S6918 has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : { /* BSS */
|
.bss : { /* BSS */
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,68 +48,72 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The LM3S6918 has 64Kb of SRAM beginning at the following address */
|
/* The LM3S6918 has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : { /* BSS */
|
.bss : { /* BSS */
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,68 +51,72 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections */
|
/* Stabs debugging sections */
|
||||||
|
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,69 +52,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103VCT6 has 48Kb of SRAM beginning at the following address */
|
/* The STM32F103VCT6 has 48Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,69 +52,73 @@ ENTRY(_stext)
|
|||||||
|
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103VCT6 has 48Kb of SRAM beginning at the following address */
|
/* The STM32F103VCT6 has 48Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,66 +51,70 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : { /* BSS */
|
.bss : { /* BSS */
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,66 +51,70 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : { /* BSS */
|
.bss : { /* BSS */
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,75 +46,79 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x00000000, LENGTH = 500K
|
flash (rx) : ORIGIN = 0x00000000, LENGTH = 500K
|
||||||
sram (rw) : ORIGIN = 0x40000000, LENGTH = 32K - 32
|
sram (rw) : ORIGIN = 0x40000000, LENGTH = 32K - 32
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,67 +57,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -225,10 +225,12 @@ SECTIONS
|
|||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
|
|
||||||
/* Start of initialized data segment */
|
/* Start of initialized data segment */
|
||||||
|
|
||||||
. = ALIGN(16);
|
. = ALIGN(16);
|
||||||
_fdata = .;
|
_fdata = .;
|
||||||
|
|
||||||
/* data: Writable data */
|
/* data: Writable data */
|
||||||
|
|
||||||
_sdata = .;
|
_sdata = .;
|
||||||
.data :
|
.data :
|
||||||
{
|
{
|
||||||
@@ -242,16 +244,18 @@ SECTIONS
|
|||||||
_edata = .;
|
_edata = .;
|
||||||
|
|
||||||
/* Have _gp point to middle of sdata/sbss to maximize displacement range */
|
/* Have _gp point to middle of sdata/sbss to maximize displacement range */
|
||||||
|
|
||||||
. = ALIGN(16);
|
. = ALIGN(16);
|
||||||
_gp = . + 0x7FF0;
|
_gp = . + 0x7FF0;
|
||||||
|
|
||||||
/* Writable small data segment */
|
/* Writable small data segment */
|
||||||
|
|
||||||
.sdata :
|
.sdata :
|
||||||
{
|
{
|
||||||
*(.sdata)
|
*(.sdata)
|
||||||
*(.sdata.*)
|
*(.sdata.*)
|
||||||
*(.srodata.*)
|
*(.srodata.*)
|
||||||
. = ALIGN(16);
|
. = ALIGN(16);
|
||||||
*(.gnu.linkonce.s.*)
|
*(.gnu.linkonce.s.*)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -260,10 +264,12 @@ SECTIONS
|
|||||||
/*--------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------*/
|
||||||
|
|
||||||
/* Start of uninitialized data segment */
|
/* Start of uninitialized data segment */
|
||||||
|
|
||||||
. = ALIGN(8);
|
. = ALIGN(8);
|
||||||
_fbss = .;
|
_fbss = .;
|
||||||
|
|
||||||
/* Writable uninitialized small data segment */
|
/* Writable uninitialized small data segment */
|
||||||
|
|
||||||
.sbss :
|
.sbss :
|
||||||
{
|
{
|
||||||
*(.sbss)
|
*(.sbss)
|
||||||
@@ -272,6 +278,7 @@ SECTIONS
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* bss: Uninitialized writeable data section */
|
/* bss: Uninitialized writeable data section */
|
||||||
|
|
||||||
. = .;
|
. = .;
|
||||||
_bss_start = .;
|
_bss_start = .;
|
||||||
.bss :
|
.bss :
|
||||||
@@ -285,21 +292,22 @@ SECTIONS
|
|||||||
_ebss = .;
|
_ebss = .;
|
||||||
|
|
||||||
/* End of uninitialized data segment (used by syscalls.c for heap) */
|
/* End of uninitialized data segment (used by syscalls.c for heap) */
|
||||||
|
|
||||||
. = ALIGN(16);
|
. = ALIGN(16);
|
||||||
PROVIDE( end = . );
|
PROVIDE( end = . );
|
||||||
_end = ALIGN(16);
|
_end = ALIGN(16);
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -55,67 +55,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,67 +54,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,67 +52,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,73 +52,77 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
/* The RAM vector table (if present) should lie at the beginning of SRAM */
|
||||||
|
|
||||||
.ram_vectors : {
|
.ram_vectors : {
|
||||||
*(.ram_vectors)
|
*(.ram_vectors)
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,67 +44,71 @@ ENTRY(_stext)
|
|||||||
|
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,67 +48,71 @@ OUTPUT_ARCH(arm)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > isram
|
} > isram
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > isram
|
_einit = ABSOLUTE(.);
|
||||||
|
} > isram
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > isram
|
*(.ARM.extab*)
|
||||||
|
} > isram
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > isram
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > isram
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > isram
|
_edata = ABSOLUTE(.);
|
||||||
|
} > isram
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > isram
|
} > isram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,68 +51,72 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
|
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,127 +39,131 @@
|
|||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
ROM (rx) : ORIGIN = 0x00000000, LENGTH = (512k-8k) /* Flash: 512k - boot code */
|
ROM (rx) : ORIGIN = 0x00000000, LENGTH = (512k-8k) /* Flash: 512k - boot code */
|
||||||
RAM (rw) : ORIGIN = 0x40000000, LENGTH = (32k-32) /* SRAM: 32k - IAP work */
|
RAM (rw) : ORIGIN = 0x40000000, LENGTH = (32k-32) /* SRAM: 32k - IAP work */
|
||||||
URAM (rw) : ORIGIN = 0x7FD00000, LENGTH = (8k) /* USB RAM: 8k */
|
URAM (rw) : ORIGIN = 0x7FD00000, LENGTH = (8k) /* USB RAM: 8k */
|
||||||
ERAM (rw) : ORIGIN = 0x7FE00000, LENGTH = (16k) /* Ethernet RAM: 16k */
|
ERAM (rw) : ORIGIN = 0x7FE00000, LENGTH = (16k) /* Ethernet RAM: 16k */
|
||||||
BRAM (rw) : ORIGIN = 0xE0084000, LENGTH = (2k) /* Battery RAM: 2k */
|
BRAM (rw) : ORIGIN = 0xE0084000, LENGTH = (2k) /* Battery RAM: 2k */
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > ROM
|
} > ROM
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > ROM
|
_einit = ABSOLUTE(.);
|
||||||
|
} > ROM
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > ROM
|
*(.ARM.extab*)
|
||||||
|
} > ROM
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > ROM
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > ROM
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data :
|
. = ALIGN(4);
|
||||||
{
|
.data :
|
||||||
_sdata = ABSOLUTE(.);
|
{
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > RAM AT > ROM
|
_edata = ABSOLUTE(.);
|
||||||
|
} > RAM AT > ROM
|
||||||
|
|
||||||
/* .bss section which is initialized by 0 */
|
/* .bss section which is initialized by 0 */
|
||||||
/* This section will be filled with zero by startup code */
|
/* This section will be filled with zero by startup code */
|
||||||
.bss (NOLOAD) :
|
.bss (NOLOAD) :
|
||||||
{
|
{
|
||||||
_sbss = ABSOLUTE(.) ;
|
_sbss = ABSOLUTE(.) ;
|
||||||
*(.bss)
|
*(.bss)
|
||||||
*(.bss.*)
|
*(.bss.*)
|
||||||
*(.gnu.linkonce.b*)
|
*(.gnu.linkonce.b*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > RAM
|
} > RAM
|
||||||
|
|
||||||
.usbram (NOLOAD) :
|
.usbram (NOLOAD) :
|
||||||
{
|
{
|
||||||
__usbram_start = . ;
|
__usbram_start = . ;
|
||||||
__usbram_start__ = . ;
|
__usbram_start__ = . ;
|
||||||
*(.usbram)
|
*(.usbram)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
} > URAM
|
} > URAM
|
||||||
|
|
||||||
.etherram (NOLOAD) :
|
.etherram (NOLOAD) :
|
||||||
{
|
{
|
||||||
__etherram_start = . ;
|
__etherram_start = . ;
|
||||||
__etherram_start__ = . ;
|
__etherram_start__ = . ;
|
||||||
*(.etherram)
|
*(.etherram)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
} > ERAM
|
} > ERAM
|
||||||
|
|
||||||
.batteryram (NOLOAD) :
|
.batteryram (NOLOAD) :
|
||||||
{
|
{
|
||||||
__batteryram_start = . ;
|
__batteryram_start = . ;
|
||||||
__batteryram_start__ = . ;
|
__batteryram_start__ = . ;
|
||||||
*(.batteryram)
|
*(.batteryram)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
} > BRAM
|
} > BRAM
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
/* DWARF debug sections.
|
/* DWARF debug sections.
|
||||||
Symbols in the DWARF debugging sections are relative to the beginning
|
Symbols in the DWARF debugging sections are relative to the beginning
|
||||||
of the section so we begin them at 0. */
|
of the section so we begin them at 0. */
|
||||||
/* DWARF 1 */
|
/* DWARF 1 */
|
||||||
.debug 0 : { *(.debug) }
|
.debug 0 : { *(.debug) }
|
||||||
.line 0 : { *(.line) }
|
.line 0 : { *(.line) }
|
||||||
/* GNU DWARF 1 extensions */
|
/* GNU DWARF 1 extensions */
|
||||||
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
.debug_srcinfo 0 : { *(.debug_srcinfo) }
|
||||||
.debug_sfnames 0 : { *(.debug_sfnames) }
|
.debug_sfnames 0 : { *(.debug_sfnames) }
|
||||||
/* DWARF 1.1 and DWARF 2 */
|
/* DWARF 1.1 and DWARF 2 */
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
/* DWARF 2 */
|
/* DWARF 2 */
|
||||||
.debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) }
|
.debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_frame 0 : { *(.debug_frame) }
|
.debug_frame 0 : { *(.debug_frame) }
|
||||||
.debug_str 0 : { *(.debug_str) }
|
.debug_str 0 : { *(.debug_str) }
|
||||||
.debug_loc 0 : { *(.debug_loc) }
|
.debug_loc 0 : { *(.debug_loc) }
|
||||||
.debug_macinfo 0 : { *(.debug_macinfo) }
|
.debug_macinfo 0 : { *(.debug_macinfo) }
|
||||||
/* SGI/MIPS DWARF 2 extensions */
|
/* SGI/MIPS DWARF 2 extensions */
|
||||||
.debug_weaknames 0 : { *(.debug_weaknames) }
|
.debug_weaknames 0 : { *(.debug_weaknames) }
|
||||||
.debug_funcnames 0 : { *(.debug_funcnames) }
|
.debug_funcnames 0 : { *(.debug_funcnames) }
|
||||||
.debug_typenames 0 : { *(.debug_typenames) }
|
.debug_typenames 0 : { *(.debug_typenames) }
|
||||||
.debug_varnames 0 : { *(.debug_varnames) }
|
.debug_varnames 0 : { *(.debug_varnames) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,8 +48,8 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x08000000, LENGTH = 1024K
|
flash (rx) : ORIGIN = 0x08000000, LENGTH = 1024K
|
||||||
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 112K
|
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 112K
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
@@ -57,67 +57,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,67 +57,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,75 +48,79 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x08000000, LENGTH = 1024K
|
flash (rx) : ORIGIN = 0x08000000, LENGTH = 1024K
|
||||||
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 112K
|
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 112K
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,8 +35,8 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x08000000, LENGTH = 256K
|
flash (rx) : ORIGIN = 0x08000000, LENGTH = 256K
|
||||||
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -45,69 +45,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F107VC has 64Kb of SRAM beginning at the following address */
|
/* The STM32F107VC has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,69 +45,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,67 +56,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,67 +57,71 @@ OUTPUT_ARCH(arm)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,67 +51,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,69 +45,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,67 +57,71 @@ ENTRY(_stext)
|
|||||||
EXTERN(_vectors)
|
EXTERN(_vectors)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -74,6 +74,7 @@ SECTIONS
|
|||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > FLASH
|
} > FLASH
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
.init_section : {
|
.init_section : {
|
||||||
_sinit = ABSOLUTE(.);
|
_sinit = ABSOLUTE(.);
|
||||||
*(.init_array .init_array.*)
|
*(.init_array .init_array.*)
|
||||||
@@ -84,6 +85,7 @@ SECTIONS
|
|||||||
*(.ARM.extab*)
|
*(.ARM.extab*)
|
||||||
} > FLASH
|
} > FLASH
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
__exidx_start = ABSOLUTE(.);
|
__exidx_start = ABSOLUTE(.);
|
||||||
.ARM.exidx : {
|
.ARM.exidx : {
|
||||||
*(.ARM.exidx*)
|
*(.ARM.exidx*)
|
||||||
@@ -93,6 +95,7 @@ SECTIONS
|
|||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
|
. = ALIGN(4);
|
||||||
.data : {
|
.data : {
|
||||||
_sdata = ABSOLUTE(.);
|
_sdata = ABSOLUTE(.);
|
||||||
*(.data .data.*)
|
*(.data .data.*)
|
||||||
|
|||||||
@@ -53,67 +53,71 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram1 AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram1 AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram1
|
} > sram1
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,8 +39,8 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x08000000, LENGTH = 256K
|
flash (rx) : ORIGIN = 0x08000000, LENGTH = 256K
|
||||||
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
@@ -48,69 +48,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F107VC has 64Kb of SRAM beginning at the following address */
|
/* The STM32F107VC has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,8 +41,8 @@
|
|||||||
|
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
flash (rx) : ORIGIN = 0x08003000, LENGTH = 208K
|
flash (rx) : ORIGIN = 0x08003000, LENGTH = 208K
|
||||||
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
sram (rwx) : ORIGIN = 0x20000000, LENGTH = 64K
|
||||||
}
|
}
|
||||||
|
|
||||||
OUTPUT_ARCH(arm)
|
OUTPUT_ARCH(arm)
|
||||||
@@ -50,69 +50,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F107VC has 64Kb of SRAM beginning at the following address */
|
/* The STM32F107VC has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,69 +51,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -50,69 +50,73 @@ EXTERN(_vectors)
|
|||||||
ENTRY(_stext)
|
ENTRY(_stext)
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
.text : {
|
.text : {
|
||||||
_stext = ABSOLUTE(.);
|
_stext = ABSOLUTE(.);
|
||||||
*(.vectors)
|
*(.vectors)
|
||||||
*(.text .text.*)
|
*(.text .text.*)
|
||||||
*(.fixup)
|
*(.fixup)
|
||||||
*(.gnu.warning)
|
*(.gnu.warning)
|
||||||
*(.rodata .rodata.*)
|
*(.rodata .rodata.*)
|
||||||
*(.gnu.linkonce.t.*)
|
*(.gnu.linkonce.t.*)
|
||||||
*(.glue_7)
|
*(.glue_7)
|
||||||
*(.glue_7t)
|
*(.glue_7t)
|
||||||
*(.got)
|
*(.got)
|
||||||
*(.gcc_except_table)
|
*(.gcc_except_table)
|
||||||
*(.gnu.linkonce.r.*)
|
*(.gnu.linkonce.r.*)
|
||||||
_etext = ABSOLUTE(.);
|
_etext = ABSOLUTE(.);
|
||||||
} > flash
|
} > flash
|
||||||
|
|
||||||
.init_section : {
|
. = ALIGN(4);
|
||||||
_sinit = ABSOLUTE(.);
|
.init_section : {
|
||||||
*(.init_array .init_array.*)
|
_sinit = ABSOLUTE(.);
|
||||||
_einit = ABSOLUTE(.);
|
*(.init_array .init_array.*)
|
||||||
} > flash
|
_einit = ABSOLUTE(.);
|
||||||
|
} > flash
|
||||||
|
|
||||||
.ARM.extab : {
|
. = ALIGN(4);
|
||||||
*(.ARM.extab*)
|
.ARM.extab : {
|
||||||
} > flash
|
*(.ARM.extab*)
|
||||||
|
} > flash
|
||||||
|
|
||||||
__exidx_start = ABSOLUTE(.);
|
. = ALIGN(4);
|
||||||
.ARM.exidx : {
|
__exidx_start = ABSOLUTE(.);
|
||||||
*(.ARM.exidx*)
|
.ARM.exidx : {
|
||||||
} > flash
|
*(.ARM.exidx*)
|
||||||
__exidx_end = ABSOLUTE(.);
|
} > flash
|
||||||
|
__exidx_end = ABSOLUTE(.);
|
||||||
|
|
||||||
_eronly = ABSOLUTE(.);
|
_eronly = ABSOLUTE(.);
|
||||||
|
|
||||||
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
/* The STM32F103Z has 64Kb of SRAM beginning at the following address */
|
||||||
|
|
||||||
.data : {
|
. = ALIGN(4);
|
||||||
_sdata = ABSOLUTE(.);
|
.data : {
|
||||||
*(.data .data.*)
|
_sdata = ABSOLUTE(.);
|
||||||
*(.gnu.linkonce.d.*)
|
*(.data .data.*)
|
||||||
CONSTRUCTORS
|
*(.gnu.linkonce.d.*)
|
||||||
_edata = ABSOLUTE(.);
|
CONSTRUCTORS
|
||||||
} > sram AT > flash
|
_edata = ABSOLUTE(.);
|
||||||
|
} > sram AT > flash
|
||||||
|
|
||||||
.bss : {
|
.bss : {
|
||||||
_sbss = ABSOLUTE(.);
|
_sbss = ABSOLUTE(.);
|
||||||
*(.bss .bss.*)
|
*(.bss .bss.*)
|
||||||
*(.gnu.linkonce.b.*)
|
*(.gnu.linkonce.b.*)
|
||||||
*(COMMON)
|
*(COMMON)
|
||||||
_ebss = ABSOLUTE(.);
|
_ebss = ABSOLUTE(.);
|
||||||
} > sram
|
} > sram
|
||||||
|
|
||||||
/* Stabs debugging sections. */
|
/* Stabs debugging sections. */
|
||||||
.stab 0 : { *(.stab) }
|
.stab 0 : { *(.stab) }
|
||||||
.stabstr 0 : { *(.stabstr) }
|
.stabstr 0 : { *(.stabstr) }
|
||||||
.stab.excl 0 : { *(.stab.excl) }
|
.stab.excl 0 : { *(.stab.excl) }
|
||||||
.stab.exclstr 0 : { *(.stab.exclstr) }
|
.stab.exclstr 0 : { *(.stab.exclstr) }
|
||||||
.stab.index 0 : { *(.stab.index) }
|
.stab.index 0 : { *(.stab.index) }
|
||||||
.stab.indexstr 0 : { *(.stab.indexstr) }
|
.stab.indexstr 0 : { *(.stab.indexstr) }
|
||||||
.comment 0 : { *(.comment) }
|
.comment 0 : { *(.comment) }
|
||||||
.debug_abbrev 0 : { *(.debug_abbrev) }
|
.debug_abbrev 0 : { *(.debug_abbrev) }
|
||||||
.debug_info 0 : { *(.debug_info) }
|
.debug_info 0 : { *(.debug_info) }
|
||||||
.debug_line 0 : { *(.debug_line) }
|
.debug_line 0 : { *(.debug_line) }
|
||||||
.debug_pubnames 0 : { *(.debug_pubnames) }
|
.debug_pubnames 0 : { *(.debug_pubnames) }
|
||||||
.debug_aranges 0 : { *(.debug_aranges) }
|
.debug_aranges 0 : { *(.debug_aranges) }
|
||||||
}
|
}
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user