Merge pull request #8024 from deepikabhavnani/fix_align

Fix alignment of execute region to 8byte boundary
pull/8364/merge
Cruz Monrreal 2018-10-10 08:41:40 -05:00 committed by GitHub
commit ab064df2fa
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
79 changed files with 498 additions and 498 deletions

View File

@ -77,12 +77,12 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -121,30 +121,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -152,14 +152,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -177,13 +177,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -77,12 +77,12 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -121,30 +121,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -152,14 +152,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -177,13 +177,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -77,12 +77,12 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -121,30 +121,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -152,14 +152,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -177,13 +177,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -77,12 +77,12 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -121,30 +121,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -152,14 +152,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -177,13 +177,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -77,12 +77,12 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -121,30 +121,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -152,14 +152,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -177,13 +177,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -75,7 +75,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
@ -124,30 +124,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -155,14 +155,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -182,13 +182,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -72,12 +72,12 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -116,30 +116,30 @@ SECTIONS
.interrupts_ram : .interrupts_ram :
{ {
. = ALIGN(4); . = ALIGN(8);
__VECTOR_RAM__ = .; __VECTOR_RAM__ = .;
__interrupts_ram_start__ = .; /* Create a global symbol at data start */ __interrupts_ram_start__ = .; /* Create a global symbol at data start */
. += M_VECTOR_RAM_SIZE; . += M_VECTOR_RAM_SIZE;
. = ALIGN(4); . = ALIGN(8);
__interrupts_ram_end__ = .; /* Define a global symbol at data end */ __interrupts_ram_end__ = .; /* Define a global symbol at data end */
} > RAM } > RAM
.data : .data :
{ {
PROVIDE(__etext = LOADADDR(.data)); PROVIDE(__etext = LOADADDR(.data));
. = ALIGN(4); . = ALIGN(8);
__data_start__ = .; __data_start__ = .;
*(vtable) *(vtable)
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -147,14 +147,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -172,13 +172,13 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__START_BSS = .; __START_BSS = .;
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
__END_BSS = .; __END_BSS = .;

View File

@ -128,7 +128,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -146,7 +146,7 @@ SECTIONS
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -164,13 +164,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -178,7 +178,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -186,7 +186,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -194,7 +194,7 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
KEEP(*(.bss.gChannelControlDataArray)) KEEP(*(.bss.gChannelControlDataArray))
KEEP(*(.bss.thread_stack_main)) KEEP(*(.bss.thread_stack_main))
@ -202,16 +202,16 @@ SECTIONS
KEEP(*(.bss.os_thread_def_stack_event_loop_thread)) KEEP(*(.bss.os_thread_def_stack_event_loop_thread))
*(COMMON) *(COMMON)
*(.bss) *(.bss)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > DSRAM_C } > DSRAM_C
.bss2 : .bss2 :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss2_start__ = .; __bss2_start__ = .;
*(.bss*) *(.bss*)
. = ALIGN(4); . = ALIGN(8);
__bss2_end__ = .; __bss2_end__ = .;
} > DSRAM_B } > DSRAM_B

View File

@ -130,7 +130,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -148,7 +148,7 @@ SECTIONS
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -166,13 +166,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -180,7 +180,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -188,7 +188,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -11,8 +11,8 @@ LR_IROM1 0x00000000 0x40000 { ; load region size_region
.ANY (+RO) .ANY (+RO)
} }
; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4) - alignment ; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4+0x4) 8-byte alignment
RW_IRAM1 (0x20000000+0xB4) (0x8000-0xB4) { ; RW data RW_IRAM1 (0x20000000+0xB8) (0x8000-0xB8) { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }

View File

@ -11,8 +11,8 @@ LR_IROM1 0x00000000 0x40000 { ; load region size_region
.ANY (+RO) .ANY (+RO)
} }
; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4) - alignment ; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4+0x4) 8-byte alignment
RW_IRAM1 (0x20000000+0xB4) (0x8000-0xB4) { ; RW data RW_IRAM1 (0x20000000+0xB8) (0x8000-0xB8) { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }

View File

@ -5,7 +5,7 @@ SEARCH_DIR(.)
/* Memory Spaces Definitions */ /* Memory Spaces Definitions */
MEMORY { MEMORY {
rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000 rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000
ram (rwx) : ORIGIN = 0x20000000 + 0xB4, LENGTH = 0x00008000 - 0xB4 ram (rwx) : ORIGIN = 0x20000000 + 0xB8, LENGTH = 0x00008000 - 0xB8
} }
/* The stack size used by the application. NOTE: you need to adjust according to your application. */ /* The stack size used by the application. NOTE: you need to adjust according to your application. */
@ -15,7 +15,7 @@ MEMORY {
SECTIONS { SECTIONS {
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
_sfixed = .; _sfixed = .;
KEEP(*(.vectors .vectors.*)) KEEP(*(.vectors .vectors.*))
*(.text .text.* .gnu.linkonce.t.*) *(.text .text.* .gnu.linkonce.t.*)
@ -25,29 +25,29 @@ MEMORY {
/* Support C constructors, and C destructors in both user code /* Support C constructors, and C destructors in both user code
and the C library. This also provides support for C++ code. */ and the C library. This also provides support for C++ code. */
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.init)) KEEP(*(.init))
. = ALIGN(4); . = ALIGN(8);
__preinit_array_start = .; __preinit_array_start = .;
KEEP (*(.preinit_array)) KEEP (*(.preinit_array))
__preinit_array_end = .; __preinit_array_end = .;
. = ALIGN(4); . = ALIGN(8);
__init_array_start = .; __init_array_start = .;
KEEP (*(SORT(.init_array.*))) KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array)) KEEP (*(.init_array))
__init_array_end = .; __init_array_end = .;
. = ALIGN(4); . = ALIGN(8);
KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*))) KEEP (*(SORT(.ctors.*)))
KEEP (*crtend.o(.ctors)) KEEP (*crtend.o(.ctors))
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.fini)) KEEP(*(.fini))
. = ALIGN(4); . = ALIGN(8);
__fini_array_start = .; __fini_array_start = .;
KEEP (*(.fini_array)) KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*))) KEEP (*(SORT(.fini_array.*)))
@ -58,7 +58,7 @@ MEMORY {
KEEP (*(SORT(.dtors.*))) KEEP (*(SORT(.dtors.*)))
KEEP (*crtend.o(.dtors)) KEEP (*crtend.o(.dtors))
. = ALIGN(4); . = ALIGN(8);
_efixed = .; /* End of text section */ _efixed = .; /* End of text section */
} > rom } > rom
@ -70,36 +70,36 @@ MEMORY {
} > rom } > rom
PROVIDE_HIDDEN (__exidx_end = .); PROVIDE_HIDDEN (__exidx_end = .);
. = ALIGN(4); . = ALIGN(8);
_etext = .; _etext = .;
.relocate : .relocate :
AT (_etext) AT (_etext)
{ {
. = ALIGN(4); . = ALIGN(8);
_srelocate = .; _srelocate = .;
*(.ramfunc .ramfunc.*); *(.ramfunc .ramfunc.*);
*(.data .data.*); *(.data .data.*);
. = ALIGN(4); . = ALIGN(8);
_erelocate = .; _erelocate = .;
} > ram } > ram
/* .bss section which is used for uninitialized data */ /* .bss section which is used for uninitialized data */
.bss (NOLOAD) : .bss (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
_sbss = . ; _sbss = . ;
_szero = .; _szero = .;
*(.bss .bss.*) *(.bss .bss.*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
_ebss = . ; _ebss = . ;
_ezero = .; _ezero = .;
} > ram } > ram
.heap (NOLOAD) : .heap (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
__end__ = . ; __end__ = . ;
. = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE; . = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE;
} > ram } > ram
@ -114,5 +114,5 @@ MEMORY {
_estack = .; _estack = .;
} > ram } > ram
. = ALIGN(4); . = ALIGN(8);
} }

View File

@ -11,8 +11,8 @@ LR_IROM1 0x00000000 0x40000 { ; load region size_region
.ANY (+RO) .ANY (+RO)
} }
; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4) - alignment ; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4 +0x4) 8-byte alignment
RW_IRAM1 (0x20000000+0xB4) (0x8000-0xB4) { ; RW data RW_IRAM1 (0x20000000+0xB8) (0x8000-0xB8) { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }

View File

@ -11,8 +11,8 @@ LR_IROM1 0x00000000 0x40000 { ; load region size_region
.ANY (+RO) .ANY (+RO)
} }
; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4) - alignment ; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4+0x4) 8-byte alignment
RW_IRAM1 (0x20000000+0xB4) (0x8000-0xB4) { ; RW data RW_IRAM1 (0x20000000+0xB8) (0x8000-0xB8) { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }

View File

@ -5,7 +5,7 @@ SEARCH_DIR(.)
/* Memory Spaces Definitions */ /* Memory Spaces Definitions */
MEMORY { MEMORY {
rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000 rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000
ram (rwx) : ORIGIN = 0x20000000 + 0xB4, LENGTH = 0x00008000 - 0xB4 ram (rwx) : ORIGIN = 0x20000000 + 0xB8, LENGTH = 0x00008000 - 0xB8
} }
/* The stack size used by the application. NOTE: you need to adjust according to your application. */ /* The stack size used by the application. NOTE: you need to adjust according to your application. */
@ -15,7 +15,7 @@ MEMORY {
SECTIONS { SECTIONS {
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
_sfixed = .; _sfixed = .;
KEEP(*(.vectors .vectors.*)) KEEP(*(.vectors .vectors.*))
*(.text .text.* .gnu.linkonce.t.*) *(.text .text.* .gnu.linkonce.t.*)
@ -25,29 +25,29 @@ MEMORY {
/* Support C constructors, and C destructors in both user code /* Support C constructors, and C destructors in both user code
and the C library. This also provides support for C++ code. */ and the C library. This also provides support for C++ code. */
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.init)) KEEP(*(.init))
. = ALIGN(4); . = ALIGN(8);
__preinit_array_start = .; __preinit_array_start = .;
KEEP (*(.preinit_array)) KEEP (*(.preinit_array))
__preinit_array_end = .; __preinit_array_end = .;
. = ALIGN(4); . = ALIGN(8);
__init_array_start = .; __init_array_start = .;
KEEP (*(SORT(.init_array.*))) KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array)) KEEP (*(.init_array))
__init_array_end = .; __init_array_end = .;
. = ALIGN(4); . = ALIGN(8);
KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*))) KEEP (*(SORT(.ctors.*)))
KEEP (*crtend.o(.ctors)) KEEP (*crtend.o(.ctors))
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.fini)) KEEP(*(.fini))
. = ALIGN(4); . = ALIGN(8);
__fini_array_start = .; __fini_array_start = .;
KEEP (*(.fini_array)) KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*))) KEEP (*(SORT(.fini_array.*)))
@ -58,7 +58,7 @@ MEMORY {
KEEP (*(SORT(.dtors.*))) KEEP (*(SORT(.dtors.*)))
KEEP (*crtend.o(.dtors)) KEEP (*crtend.o(.dtors))
. = ALIGN(4); . = ALIGN(8);
_efixed = .; /* End of text section */ _efixed = .; /* End of text section */
} > rom } > rom
@ -70,36 +70,36 @@ MEMORY {
} > rom } > rom
PROVIDE_HIDDEN (__exidx_end = .); PROVIDE_HIDDEN (__exidx_end = .);
. = ALIGN(4); . = ALIGN(8);
_etext = .; _etext = .;
.relocate : .relocate :
AT (_etext) AT (_etext)
{ {
. = ALIGN(4); . = ALIGN(8);
_srelocate = .; _srelocate = .;
*(.ramfunc .ramfunc.*); *(.ramfunc .ramfunc.*);
*(.data .data.*); *(.data .data.*);
. = ALIGN(4); . = ALIGN(8);
_erelocate = .; _erelocate = .;
} > ram } > ram
/* .bss section which is used for uninitialized data */ /* .bss section which is used for uninitialized data */
.bss (NOLOAD) : .bss (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
_sbss = . ; _sbss = . ;
_szero = .; _szero = .;
*(.bss .bss.*) *(.bss .bss.*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
_ebss = . ; _ebss = . ;
_ezero = .; _ezero = .;
} > ram } > ram
.heap (NOLOAD) : .heap (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
__end__ = . ; __end__ = . ;
. = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE; . = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE;
} > ram } > ram
@ -114,5 +114,5 @@ MEMORY {
_estack = .; _estack = .;
} > ram } > ram
. = ALIGN(4); . = ALIGN(8);
} }

View File

@ -18,8 +18,8 @@ LR_IROM1 0x00000000 0x40000 { ;
} }
; ;
[RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4) - alignment [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4+0x4) 8-byte alignment
RW_IRAM1 (0x20000000+0xB4) (0x8000-0xB4) RW_IRAM1 (0x20000000+0xB8) (0x8000-0xB8)
{ {
; ;
RW data RW data

View File

@ -10,8 +10,8 @@ LR_IROM1 0x00000000 0x40000 { ; load region size_region
.ANY (+RO) .ANY (+RO)
} }
; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4) - alignment ; [RAM] Vector table dynamic copy: 45 vectors * 4 bytes = (0xB4+0x4) 8-byte alignment
RW_IRAM1 (0x20000000+0xB4) (0x8000-0xB4) { ; RW data RW_IRAM1 (0x20000000+0xB8) (0x8000-0xB8) { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -5,7 +5,7 @@ SEARCH_DIR(.)
/* Memory Spaces Definitions */ /* Memory Spaces Definitions */
MEMORY { MEMORY {
rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000 rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000
ram (rwx) : ORIGIN = 0x20000000 + 0xB4, LENGTH = 0x00008000 - 0xB4 ram (rwx) : ORIGIN = 0x20000000 + 0xB8, LENGTH = 0x00008000 - 0xB8
} }
/* The stack size used by the application. NOTE: you need to adjust according to your application. */ /* The stack size used by the application. NOTE: you need to adjust according to your application. */
@ -15,7 +15,7 @@ MEMORY {
SECTIONS { SECTIONS {
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
_sfixed = .; _sfixed = .;
KEEP(*(.vectors .vectors.*)) KEEP(*(.vectors .vectors.*))
*(.text .text.* .gnu.linkonce.t.*) *(.text .text.* .gnu.linkonce.t.*)
@ -25,29 +25,29 @@ MEMORY {
/* Support C constructors, and C destructors in both user code /* Support C constructors, and C destructors in both user code
and the C library. This also provides support for C++ code. */ and the C library. This also provides support for C++ code. */
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.init)) KEEP(*(.init))
. = ALIGN(4); . = ALIGN(8);
__preinit_array_start = .; __preinit_array_start = .;
KEEP (*(.preinit_array)) KEEP (*(.preinit_array))
__preinit_array_end = .; __preinit_array_end = .;
. = ALIGN(4); . = ALIGN(8);
__init_array_start = .; __init_array_start = .;
KEEP (*(SORT(.init_array.*))) KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array)) KEEP (*(.init_array))
__init_array_end = .; __init_array_end = .;
. = ALIGN(4); . = ALIGN(8);
KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*))) KEEP (*(SORT(.ctors.*)))
KEEP (*crtend.o(.ctors)) KEEP (*crtend.o(.ctors))
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.fini)) KEEP(*(.fini))
. = ALIGN(4); . = ALIGN(8);
__fini_array_start = .; __fini_array_start = .;
KEEP (*(.fini_array)) KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*))) KEEP (*(SORT(.fini_array.*)))
@ -58,7 +58,7 @@ MEMORY {
KEEP (*(SORT(.dtors.*))) KEEP (*(SORT(.dtors.*)))
KEEP (*crtend.o(.dtors)) KEEP (*crtend.o(.dtors))
. = ALIGN(4); . = ALIGN(8);
_efixed = .; /* End of text section */ _efixed = .; /* End of text section */
} > rom } > rom
@ -70,36 +70,36 @@ MEMORY {
} > rom } > rom
PROVIDE_HIDDEN (__exidx_end = .); PROVIDE_HIDDEN (__exidx_end = .);
. = ALIGN(4); . = ALIGN(8);
_etext = .; _etext = .;
.relocate : .relocate :
AT (_etext) AT (_etext)
{ {
. = ALIGN(4); . = ALIGN(8);
_srelocate = .; _srelocate = .;
*(.ramfunc .ramfunc.*); *(.ramfunc .ramfunc.*);
*(.data .data.*); *(.data .data.*);
. = ALIGN(4); . = ALIGN(8);
_erelocate = .; _erelocate = .;
} > ram } > ram
/* .bss section which is used for uninitialized data */ /* .bss section which is used for uninitialized data */
.bss (NOLOAD) : .bss (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
_sbss = . ; _sbss = . ;
_szero = .; _szero = .;
*(.bss .bss.*) *(.bss .bss.*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
_ebss = . ; _ebss = . ;
_ezero = .; _ezero = .;
} > ram } > ram
.heap (NOLOAD) : .heap (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
__end__ = . ; __end__ = . ;
. = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE; . = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE;
} > ram } > ram
@ -114,5 +114,5 @@ MEMORY {
_estack = .; _estack = .;
} > ram } > ram
. = ALIGN(4); . = ALIGN(8);
} }

View File

@ -15,7 +15,7 @@ MEMORY {
SECTIONS { SECTIONS {
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
_sfixed = .; _sfixed = .;
KEEP(*(.vectors .vectors.*)) KEEP(*(.vectors .vectors.*))
*(.text .text.* .gnu.linkonce.t.*) *(.text .text.* .gnu.linkonce.t.*)
@ -25,29 +25,29 @@ MEMORY {
/* Support C constructors, and C destructors in both user code /* Support C constructors, and C destructors in both user code
and the C library. This also provides support for C++ code. */ and the C library. This also provides support for C++ code. */
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.init)) KEEP(*(.init))
. = ALIGN(4); . = ALIGN(8);
__preinit_array_start = .; __preinit_array_start = .;
KEEP (*(.preinit_array)) KEEP (*(.preinit_array))
__preinit_array_end = .; __preinit_array_end = .;
. = ALIGN(4); . = ALIGN(8);
__init_array_start = .; __init_array_start = .;
KEEP (*(SORT(.init_array.*))) KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array)) KEEP (*(.init_array))
__init_array_end = .; __init_array_end = .;
. = ALIGN(4); . = ALIGN(8);
KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*))) KEEP (*(SORT(.ctors.*)))
KEEP (*crtend.o(.ctors)) KEEP (*crtend.o(.ctors))
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.fini)) KEEP(*(.fini))
. = ALIGN(4); . = ALIGN(8);
__fini_array_start = .; __fini_array_start = .;
KEEP (*(.fini_array)) KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*))) KEEP (*(SORT(.fini_array.*)))
@ -58,7 +58,7 @@ MEMORY {
KEEP (*(SORT(.dtors.*))) KEEP (*(SORT(.dtors.*)))
KEEP (*crtend.o(.dtors)) KEEP (*crtend.o(.dtors))
. = ALIGN(4); . = ALIGN(8);
_efixed = .; /* End of text section */ _efixed = .; /* End of text section */
} > rom } > rom
@ -70,36 +70,36 @@ MEMORY {
} > rom } > rom
PROVIDE_HIDDEN (__exidx_end = .); PROVIDE_HIDDEN (__exidx_end = .);
. = ALIGN(4); . = ALIGN(8);
_etext = .; _etext = .;
.relocate : .relocate :
AT (_etext) AT (_etext)
{ {
. = ALIGN(4); . = ALIGN(8);
_srelocate = .; _srelocate = .;
*(.ramfunc .ramfunc.*); *(.ramfunc .ramfunc.*);
*(.data .data.*); *(.data .data.*);
. = ALIGN(4); . = ALIGN(8);
_erelocate = .; _erelocate = .;
} > ram } > ram
/* .bss section which is used for uninitialized data */ /* .bss section which is used for uninitialized data */
.bss (NOLOAD) : .bss (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
_sbss = . ; _sbss = . ;
_szero = .; _szero = .;
*(.bss .bss.*) *(.bss .bss.*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
_ebss = . ; _ebss = . ;
_ezero = .; _ezero = .;
} > ram } > ram
.heap (NOLOAD) : .heap (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
__end__ = . ; __end__ = . ;
. = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE; . = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE;
} > ram } > ram
@ -114,5 +114,5 @@ MEMORY {
_estack = .; _estack = .;
} > ram } > ram
. = ALIGN(4); . = ALIGN(8);
} }

View File

@ -15,7 +15,7 @@ MEMORY {
SECTIONS { SECTIONS {
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
_sfixed = .; _sfixed = .;
KEEP(*(.vectors .vectors.*)) KEEP(*(.vectors .vectors.*))
*(.text .text.* .gnu.linkonce.t.*) *(.text .text.* .gnu.linkonce.t.*)
@ -25,29 +25,29 @@ MEMORY {
/* Support C constructors, and C destructors in both user code /* Support C constructors, and C destructors in both user code
and the C library. This also provides support for C++ code. */ and the C library. This also provides support for C++ code. */
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.init)) KEEP(*(.init))
. = ALIGN(4); . = ALIGN(8);
__preinit_array_start = .; __preinit_array_start = .;
KEEP (*(.preinit_array)) KEEP (*(.preinit_array))
__preinit_array_end = .; __preinit_array_end = .;
. = ALIGN(4); . = ALIGN(8);
__init_array_start = .; __init_array_start = .;
KEEP (*(SORT(.init_array.*))) KEEP (*(SORT(.init_array.*)))
KEEP (*(.init_array)) KEEP (*(.init_array))
__init_array_end = .; __init_array_end = .;
. = ALIGN(4); . = ALIGN(8);
KEEP (*crtbegin.o(.ctors)) KEEP (*crtbegin.o(.ctors))
KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors))
KEEP (*(SORT(.ctors.*))) KEEP (*(SORT(.ctors.*)))
KEEP (*crtend.o(.ctors)) KEEP (*crtend.o(.ctors))
. = ALIGN(4); . = ALIGN(8);
KEEP(*(.fini)) KEEP(*(.fini))
. = ALIGN(4); . = ALIGN(8);
__fini_array_start = .; __fini_array_start = .;
KEEP (*(.fini_array)) KEEP (*(.fini_array))
KEEP (*(SORT(.fini_array.*))) KEEP (*(SORT(.fini_array.*)))
@ -58,7 +58,7 @@ MEMORY {
KEEP (*(SORT(.dtors.*))) KEEP (*(SORT(.dtors.*)))
KEEP (*crtend.o(.dtors)) KEEP (*crtend.o(.dtors))
. = ALIGN(4); . = ALIGN(8);
_efixed = .; /* End of text section */ _efixed = .; /* End of text section */
} > rom } > rom
@ -70,36 +70,36 @@ MEMORY {
} > rom } > rom
PROVIDE_HIDDEN (__exidx_end = .); PROVIDE_HIDDEN (__exidx_end = .);
. = ALIGN(4); . = ALIGN(8);
_etext = .; _etext = .;
.relocate : .relocate :
AT (_etext) AT (_etext)
{ {
. = ALIGN(4); . = ALIGN(8);
_srelocate = .; _srelocate = .;
*(.ramfunc .ramfunc.*); *(.ramfunc .ramfunc.*);
*(.data .data.*); *(.data .data.*);
. = ALIGN(4); . = ALIGN(8);
_erelocate = .; _erelocate = .;
} > ram } > ram
/* .bss section which is used for uninitialized data */ /* .bss section which is used for uninitialized data */
.bss (NOLOAD) : .bss (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
_sbss = . ; _sbss = . ;
_szero = .; _szero = .;
*(.bss .bss.*) *(.bss .bss.*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
_ebss = . ; _ebss = . ;
_ezero = .; _ezero = .;
} > ram } > ram
.heap (NOLOAD) : .heap (NOLOAD) :
{ {
. = ALIGN(4); . = ALIGN(8);
__end__ = . ; __end__ = . ;
. = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE; . = ORIGIN(ram) + LENGTH(ram) - STACK_SIZE;
} > ram } > ram
@ -114,5 +114,5 @@ MEMORY {
_estack = .; _estack = .;
} > ram } > ram
. = ALIGN(4); . = ALIGN(8);
} }

View File

@ -120,13 +120,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -134,14 +134,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -120,13 +120,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -134,14 +134,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -114,13 +114,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -128,14 +128,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -114,13 +114,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -128,14 +128,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -114,13 +114,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -128,14 +128,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -122,13 +122,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -136,14 +136,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -114,13 +114,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -128,14 +128,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -114,13 +114,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -128,14 +128,14 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -86,13 +86,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -100,7 +100,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -108,7 +108,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -116,11 +116,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -86,13 +86,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -100,7 +100,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -108,7 +108,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -116,11 +116,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -86,13 +86,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -100,7 +100,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -108,7 +108,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -116,11 +116,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -86,13 +86,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -100,20 +100,20 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
PROVIDE(__start_fs_data = .); PROVIDE(__start_fs_data = .);
KEEP(*(.fs_data)) KEEP(*(.fs_data))
PROVIDE(__stop_fs_data = .); PROVIDE(__stop_fs_data = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -130,11 +130,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -86,13 +86,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -100,7 +100,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -108,7 +108,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -116,11 +116,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -86,13 +86,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -100,20 +100,20 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
PROVIDE(__start_fs_data = .); PROVIDE(__start_fs_data = .);
KEEP(*(.fs_data)) KEEP(*(.fs_data))
PROVIDE(__stop_fs_data = .); PROVIDE(__stop_fs_data = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -128,11 +128,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -21,7 +21,7 @@
#endif #endif
#define MBED_RAM0_START MBED_RAM_START #define MBED_RAM0_START MBED_RAM_START
#define MBED_RAM0_SIZE 0xDC #define MBED_RAM0_SIZE 0xE0
#define MBED_RAM1_START (MBED_RAM_START + MBED_RAM0_SIZE) #define MBED_RAM1_START (MBED_RAM_START + MBED_RAM0_SIZE)
#define MBED_RAM1_SIZE (MBED_RAM_SIZE - MBED_RAM0_SIZE) #define MBED_RAM1_SIZE (MBED_RAM_SIZE - MBED_RAM0_SIZE)

View File

@ -37,7 +37,7 @@
#endif #endif
#define MBED_RAM0_START MBED_RAM_START #define MBED_RAM0_START MBED_RAM_START
#define MBED_RAM0_SIZE 0xDC #define MBED_RAM0_SIZE 0xE0
#define MBED_RAM1_START (MBED_RAM_START + MBED_RAM0_SIZE) #define MBED_RAM1_START (MBED_RAM_START + MBED_RAM0_SIZE)
#define MBED_RAM1_SIZE (MBED_RAM_SIZE - MBED_RAM0_SIZE) #define MBED_RAM1_SIZE (MBED_RAM_SIZE - MBED_RAM0_SIZE)
@ -147,14 +147,14 @@ SECTIONS
.ARM.extab : .ARM.extab :
{ {
*(.ARM.extab* .gnu.linkonce.armextab.*) *(.ARM.extab* .gnu.linkonce.armextab.*)
. = ALIGN(4); . = ALIGN(8);
} > FLASH } > FLASH
__exidx_start = .; __exidx_start = .;
.ARM.exidx : .ARM.exidx :
{ {
*(.ARM.exidx* .gnu.linkonce.armexidx.*) *(.ARM.exidx* .gnu.linkonce.armexidx.*)
. = ALIGN(4); . = ALIGN(8);
} > FLASH } > FLASH
__exidx_end = .; __exidx_end = .;
@ -166,13 +166,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -180,20 +180,20 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
PROVIDE(__start_fs_data = .); PROVIDE(__start_fs_data = .);
KEEP(*(.fs_data)) KEEP(*(.fs_data))
PROVIDE(__stop_fs_data = .); PROVIDE(__stop_fs_data = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -217,11 +217,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -23,7 +23,7 @@ if (!isdefinedsymbol(MBED_RAM_START)) {
} }
define symbol MBED_RAM0_START = MBED_RAM_START; define symbol MBED_RAM0_START = MBED_RAM_START;
define symbol MBED_RAM0_SIZE = 0xDC; define symbol MBED_RAM0_SIZE = 0xE0; /* 8-byte aligned(0xDC) = 0xE0 */
define symbol MBED_RAM1_START = (MBED_RAM_START + MBED_RAM0_SIZE); define symbol MBED_RAM1_START = (MBED_RAM_START + MBED_RAM0_SIZE);
define symbol MBED_RAM1_SIZE = (MBED_RAM_SIZE - MBED_RAM0_SIZE); define symbol MBED_RAM1_SIZE = (MBED_RAM_SIZE - MBED_RAM0_SIZE);

View File

@ -146,14 +146,14 @@ SECTIONS
.ARM.extab : .ARM.extab :
{ {
*(.ARM.extab* .gnu.linkonce.armextab.*) *(.ARM.extab* .gnu.linkonce.armextab.*)
. = ALIGN(4); . = ALIGN(8);
} > FLASH } > FLASH
__exidx_start = .; __exidx_start = .;
.ARM.exidx : .ARM.exidx :
{ {
*(.ARM.exidx* .gnu.linkonce.armexidx.*) *(.ARM.exidx* .gnu.linkonce.armexidx.*)
. = ALIGN(4); . = ALIGN(8);
} > FLASH } > FLASH
__exidx_end = .; __exidx_end = .;
@ -165,13 +165,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -179,20 +179,20 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
PROVIDE(__start_fs_data = .); PROVIDE(__start_fs_data = .);
KEEP(*(.fs_data)) KEEP(*(.fs_data))
PROVIDE(__stop_fs_data = .); PROVIDE(__stop_fs_data = .);
*(.jcr) *(.jcr)
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -216,11 +216,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -132,7 +132,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
/* ensure that uvisor bss is at the beginning of memory */ /* ensure that uvisor bss is at the beginning of memory */
@ -164,7 +164,7 @@ SECTIONS
.text : .text :
{ {
/* uVisor code and data */ /* uVisor code and data */
. = ALIGN(4); . = ALIGN(8);
__uvisor_main_start = .; __uvisor_main_start = .;
*(.uvisor.main) *(.uvisor.main)
__uvisor_main_end = .; __uvisor_main_end = .;
@ -253,20 +253,20 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -59,7 +59,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
@ -135,20 +135,20 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -61,7 +61,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
@ -138,20 +138,20 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -51,7 +51,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
@ -119,20 +119,20 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -60,7 +60,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
@ -137,20 +137,20 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -59,7 +59,7 @@ SECTIONS
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
@ -137,20 +137,20 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -53,7 +53,7 @@ MEMORY {
{ {
__vector_table = .; __vector_table = .;
KEEP(*(.vector_table)) KEEP(*(.vector_table))
. = ALIGN(4); . = ALIGN(8);
} > VECTORS } > VECTORS
@ -104,20 +104,20 @@ MEMORY {
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))

View File

@ -52,7 +52,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE ; load region size_region
RAM_CODE 0x20020000 RAM_CODE 0x20020000
{ * (RAM_CODE) } ; Application RAM_CODE { * (RAM_CODE) } ; Application RAM_CODE
RW_DATA +0 ALIGN 0x4 RW_DATA +0 ALIGN 0x8
{ * (+RW) } ; Application RW data (.data) { * (+RW) } ; Application RW data (.data)
RW_IRAM1 +0 ALIGN 0x10 RW_IRAM1 +0 ALIGN 0x10

View File

@ -117,7 +117,7 @@ SECTIONS
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -133,7 +133,7 @@ SECTIONS
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -142,7 +142,7 @@ SECTIONS
__zero_table_end__ = .; __zero_table_end__ = .;
} > SFLASH } > SFLASH
.ram_code : ALIGN( 0x4 ) { .ram_code : ALIGN( 0x8 ) {
__ram_code_load = .; __ram_code_load = .;
__ram_code_start = LOADADDR(.ram_code) + ( __ram_code_load - ADDR(.ram_code) ); __ram_code_start = LOADADDR(.ram_code) + ( __ram_code_load - ADDR(.ram_code) );
@ -150,7 +150,7 @@ SECTIONS
*(RAM_CONST) *(RAM_CONST)
. = ALIGN( 0x4 ); . = ALIGN( 0x8 );
__ram_code_end = LOADADDR(.ram_code) + ( . - ADDR(.ram_code) ); __ram_code_end = LOADADDR(.ram_code) + ( . - ADDR(.ram_code) );
} > RAM AT > SFLASH } > RAM AT > SFLASH
@ -175,13 +175,13 @@ SECTIONS
*(.data*) *(.data*)
Image$$RW_DATA$$Limit = .; Image$$RW_DATA$$Limit = .;
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -189,14 +189,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -245,7 +245,7 @@ SECTIONS
__nc_data_start = .; __nc_data_start = .;
*(NC_DATA) *(NC_DATA)
. = ALIGN(4); . = ALIGN(8);
__nc_data_end = .; __nc_data_end = .;
Image$$RW_DATA_NC$$Limit = .; Image$$RW_DATA_NC$$Limit = .;
} > RAM_NC } > RAM_NC
@ -256,7 +256,7 @@ SECTIONS
__nc_bss_start = .; __nc_bss_start = .;
*(NC_BSS) *(NC_BSS)
. = ALIGN(4); . = ALIGN(8);
__nc_bss_end = .; __nc_bss_end = .;
Image$$ZI_DATA_NC$$Limit = .; Image$$ZI_DATA_NC$$Limit = .;
} > RAM_NC } > RAM_NC

View File

@ -52,7 +52,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE ; load region size_region
RAM_CODE 0x20020000 RAM_CODE 0x20020000
{ * (RAM_CODE) } ; Application RAM_CODE { * (RAM_CODE) } ; Application RAM_CODE
RW_DATA +0 ALIGN 0x4 RW_DATA +0 ALIGN 0x8
{ * (+RW) } ; Application RW data (.data) { * (+RW) } ; Application RW data (.data)
RW_IRAM1 +0 ALIGN 0x10 RW_IRAM1 +0 ALIGN 0x10

View File

@ -117,7 +117,7 @@ SECTIONS
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -133,7 +133,7 @@ SECTIONS
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -142,7 +142,7 @@ SECTIONS
__zero_table_end__ = .; __zero_table_end__ = .;
} > SFLASH } > SFLASH
.ram_code : ALIGN( 0x4 ) { .ram_code : ALIGN( 0x8 ) {
__ram_code_load = .; __ram_code_load = .;
__ram_code_start = LOADADDR(.ram_code) + ( __ram_code_load - ADDR(.ram_code) ); __ram_code_start = LOADADDR(.ram_code) + ( __ram_code_load - ADDR(.ram_code) );
@ -150,7 +150,7 @@ SECTIONS
*(RAM_CONST) *(RAM_CONST)
. = ALIGN( 0x4 ); . = ALIGN( 0x8 );
__ram_code_end = LOADADDR(.ram_code) + ( . - ADDR(.ram_code) ); __ram_code_end = LOADADDR(.ram_code) + ( . - ADDR(.ram_code) );
} > RAM AT > SFLASH } > RAM AT > SFLASH
@ -175,13 +175,13 @@ SECTIONS
*(.data*) *(.data*)
Image$$RW_DATA$$Limit = .; Image$$RW_DATA$$Limit = .;
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -189,14 +189,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -245,7 +245,7 @@ SECTIONS
__nc_data_start = .; __nc_data_start = .;
*(NC_DATA) *(NC_DATA)
. = ALIGN(4); . = ALIGN(8);
__nc_data_end = .; __nc_data_end = .;
Image$$RW_DATA_NC$$Limit = .; Image$$RW_DATA_NC$$Limit = .;
} > RAM_NC } > RAM_NC
@ -256,7 +256,7 @@ SECTIONS
__nc_bss_start = .; __nc_bss_start = .;
*(NC_BSS) *(NC_BSS)
. = ALIGN(4); . = ALIGN(8);
__nc_bss_end = .; __nc_bss_end = .;
Image$$ZI_DATA_NC$$Limit = .; Image$$ZI_DATA_NC$$Limit = .;
} > RAM_NC } > RAM_NC

View File

@ -114,7 +114,7 @@ SECTIONS
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -127,7 +127,7 @@ SECTIONS
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -153,13 +153,13 @@ SECTIONS
*(.data*) *(.data*)
Image$$RW_DATA$$Limit = .; Image$$RW_DATA$$Limit = .;
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -167,14 +167,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -223,7 +223,7 @@ SECTIONS
__nc_data_start = .; __nc_data_start = .;
*(NC_DATA) *(NC_DATA)
. = ALIGN(4); . = ALIGN(8);
__nc_data_end = .; __nc_data_end = .;
Image$$RW_DATA_NC$$Limit = .; Image$$RW_DATA_NC$$Limit = .;
} > RAM_NC } > RAM_NC
@ -234,7 +234,7 @@ SECTIONS
__nc_bss_start = .; __nc_bss_start = .;
*(NC_BSS) *(NC_BSS)
. = ALIGN(4); . = ALIGN(8);
__nc_bss_end = .; __nc_bss_end = .;
Image$$ZI_DATA_NC$$Limit = .; Image$$ZI_DATA_NC$$Limit = .;
} > RAM_NC } > RAM_NC

View File

@ -66,7 +66,7 @@ SECTIONS
.text.sram1 : .text.sram1 :
{ {
. = ALIGN(4); . = ALIGN(8);
*rtl8195a_crypto*.o (.text* .rodata*) *rtl8195a_crypto*.o (.text* .rodata*)
*mbedtls*.o (.text* .rodata*) *mbedtls*.o (.text* .rodata*)
*libc.a: (.text* .rodata*) *libc.a: (.text* .rodata*)
@ -77,7 +77,7 @@ SECTIONS
.text.sram2 : .text.sram2 :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text*) *(.text*)
KEEP(*(.init)) KEEP(*(.init))
@ -107,7 +107,7 @@ SECTIONS
.data.sram1 : .data.sram1 :
{ {
. = ALIGN(4); . = ALIGN(8);
__sram_data_start__ = .; __sram_data_start__ = .;
*rtl8195a_crypto*.o (.data*) *rtl8195a_crypto*.o (.data*)
*mbedtls*.o (.data*) *mbedtls*.o (.data*)
@ -121,27 +121,27 @@ SECTIONS
*(.data*) *(.data*)
*(.sdram.data*) *(.sdram.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
__sdram_data_end__ = .; __sdram_data_end__ = .;
/* All data end */ /* All data end */

View File

@ -17,7 +17,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
*(InRoot$$Sections) *(InRoot$$Sections)
.ANY (+RO) .ANY (+RO)
} }
RW_IRAM1 0x200000DC 0x0001FF24 { ; RW data RW_IRAM1 0x200000E0 0x0001FF20 { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -17,7 +17,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
*(InRoot$$Sections) *(InRoot$$Sections)
.ANY (+RO) .ANY (+RO)
} }
RW_IRAM1 0x200000DC 0x0001FF24 { ; RW data RW_IRAM1 0x200000E0 0x0001FF20 { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -30,8 +30,8 @@ MEMORY
} }
/* MBED: mbed needs to be able to dynamically set the interrupt vector table. /* MBED: mbed needs to be able to dynamically set the interrupt vector table.
* We make room for the table at the very beginning of RAM, i.e. at * We make room for the table at the very beginning of RAM, i.e. at
* 0x20000000. We need (16+39) * sizeof(uint32_t) = 220 bytes for EFM32GG */ * 0x20000000. We need (16+39) * sizeof(uint32_t) = 220 4(8-byte aligned) bytes for EFM32GG */
__vector_size = 0xDC; __vector_size = 0xE0;
/* Linker script to place sections and symbol values. Should be used together /* Linker script to place sections and symbol values. Should be used together
* with other linker script that defines memory regions FLASH and RAM. * with other linker script that defines memory regions FLASH and RAM.
@ -119,7 +119,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -137,7 +137,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -160,23 +160,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -184,7 +184,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -206,11 +206,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -11,8 +11,8 @@ define symbol __ICFEDIT_intvec_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START; define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1; define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1;
define symbol __NVIC_start__ = 0x20000000; define symbol __NVIC_start__ = 0x20000000;
define symbol __NVIC_end__ = 0x200000DB; define symbol __NVIC_end__ = 0x200000DF;
define symbol __ICFEDIT_region_RAM_start__ = 0x200000DC; define symbol __ICFEDIT_region_RAM_start__ = 0x200000E0;
define symbol __ICFEDIT_region_RAM_end__ = 0x2001FFFF; define symbol __ICFEDIT_region_RAM_end__ = 0x2001FFFF;
/*-Sizes-*/ /*-Sizes-*/
/*Heap 1/4 of ram and stack 1/8*/ /*Heap 1/4 of ram and stack 1/8*/

View File

@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -151,23 +151,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -175,7 +175,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -183,11 +183,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -17,7 +17,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
*(InRoot$$Sections) *(InRoot$$Sections)
.ANY (+RO) .ANY (+RO)
} }
RW_IRAM1 0x20000094 0x00001F6C { ; RW data RW_IRAM1 0x20000098 0x00001F68 { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -25,8 +25,8 @@ MEMORY
/* MBED: mbed needs to be able to dynamically set the interrupt vector table. /* MBED: mbed needs to be able to dynamically set the interrupt vector table.
* We make room for the table at the very beginning of RAM, i.e. at * We make room for the table at the very beginning of RAM, i.e. at
* 0x20000000. We need (16+21) * sizeof(uint32_t) = 148 bytes for EFM32HG */ * 0x20000000. We need (16+21) * sizeof(uint32_t) = 148+4(8-byte aligned) bytes for EFM32HG */
__vector_size = 0x94; __vector_size = 0x98;
/* Linker script to place sections and symbol values. Should be used together /* Linker script to place sections and symbol values. Should be used together
* with other linker script that defines memory regions FLASH and RAM. * with other linker script that defines memory regions FLASH and RAM.
@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -152,23 +152,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -176,7 +176,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -184,11 +184,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -11,8 +11,8 @@ define symbol __ICFEDIT_intvec_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START; define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1; define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1;
define symbol __NVIC_start__ = 0x20000000; define symbol __NVIC_start__ = 0x20000000;
define symbol __NVIC_end__ = 0x20000093; define symbol __NVIC_end__ = 0x20000097;
define symbol __ICFEDIT_region_RAM_start__ = 0x20000094; define symbol __ICFEDIT_region_RAM_start__ = 0x20000098;
define symbol __ICFEDIT_region_RAM_end__ = 0x20001FFF; define symbol __ICFEDIT_region_RAM_end__ = 0x20001FFF;
/*-Sizes-*/ /*-Sizes-*/
/*Heap 1/4 of ram and stack 1/8*/ /*Heap 1/4 of ram and stack 1/8*/

View File

@ -112,7 +112,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -130,7 +130,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -151,23 +151,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -175,7 +175,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -183,11 +183,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -151,23 +151,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -175,7 +175,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -183,11 +183,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -17,7 +17,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
*(InRoot$$Sections) *(InRoot$$Sections)
.ANY (+RO) .ANY (+RO)
} }
RW_IRAM1 0x2000010C 0x0003FEF4 { ; RW data RW_IRAM1 0x20000110 0x0003FEF0 { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -25,8 +25,8 @@ MEMORY
/* MBED: mbed needs to be able to dynamically set the interrupt vector table. /* MBED: mbed needs to be able to dynamically set the interrupt vector table.
* We make room for the table at the very beginning of RAM, i.e. at * We make room for the table at the very beginning of RAM, i.e. at
* 0x20000000. We need (16+51 * sizeof(uint32_t) = 268 bytes for EFM32PG */ * 0x20000000. We need (16+51 * sizeof(uint32_t) = 268 + 4 (8-byte aligned) bytes for EFM32PG */
__vector_size = 0x10C; __vector_size = 0x110;
/* Linker script to place sections and symbol values. Should be used together /* Linker script to place sections and symbol values. Should be used together
* with other linker script that defines memory regions FLASH and RAM. * with other linker script that defines memory regions FLASH and RAM.
@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -154,20 +154,20 @@ SECTIONS
. = ALIGN (4); . = ALIGN (4);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -175,7 +175,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -183,11 +183,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -12,8 +12,8 @@ define symbol __ICFEDIT_intvec_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START; define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1; define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1;
define symbol __NVIC_start__ = 0x20000000; define symbol __NVIC_start__ = 0x20000000;
define symbol __NVIC_end__ = 0x2000010B; define symbol __NVIC_end__ = 0x2000010F;
define symbol __ICFEDIT_region_RAM_start__ = 0x2000010C; define symbol __ICFEDIT_region_RAM_start__ = 0x20000110;
define symbol __ICFEDIT_region_RAM_end__ = (0x20000000+0x00040000-1); define symbol __ICFEDIT_region_RAM_end__ = (0x20000000+0x00040000-1);
/*-Sizes-*/ /*-Sizes-*/

View File

@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -152,23 +152,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -176,7 +176,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -184,11 +184,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -17,7 +17,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
*(InRoot$$Sections) *(InRoot$$Sections)
.ANY (+RO) .ANY (+RO)
} }
RW_IRAM1 0x2000008C 0x00000F74 { ; RW data RW_IRAM1 0x20000090 0x00000F70 { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -25,8 +25,8 @@ MEMORY
/* MBED: mbed needs to be able to dynamically set the interrupt vector table. /* MBED: mbed needs to be able to dynamically set the interrupt vector table.
* We make room for the table at the very beginning of RAM, i.e. at * We make room for the table at the very beginning of RAM, i.e. at
* 0x20000000. We need (16+19) * sizeof(uint32_t) = 140 bytes for EFM32ZG */ * 0x20000000. We need (16+19) * sizeof(uint32_t) = 140 + 4(8-byte aligned) bytes for EFM32ZG */
__vector_size = 0x8C; __vector_size = 0x90;
/* Linker script to place sections and symbol values. Should be used together /* Linker script to place sections and symbol values. Should be used together
* with other linker script that defines memory regions FLASH and RAM. * with other linker script that defines memory regions FLASH and RAM.
@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -152,23 +152,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -176,7 +176,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -184,11 +184,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -11,8 +11,8 @@ define symbol __ICFEDIT_intvec_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START; define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1; define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1;
define symbol __NVIC_start__ = 0x20000000; define symbol __NVIC_start__ = 0x20000000;
define symbol __NVIC_end__ = 0x2000008B; define symbol __NVIC_end__ = 0x2000008F;
define symbol __ICFEDIT_region_RAM_start__ = 0x2000008C; define symbol __ICFEDIT_region_RAM_start__ = 0x20000090;
define symbol __ICFEDIT_region_RAM_end__ = 0x20000FFF; define symbol __ICFEDIT_region_RAM_end__ = 0x20000FFF;
/*-Sizes-*/ /*-Sizes-*/
/*Heap 1/4 of ram and stack 1/8*/ /*Heap 1/4 of ram and stack 1/8*/

View File

@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -151,23 +151,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -175,7 +175,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -183,11 +183,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -17,7 +17,7 @@ LR_IROM1 MBED_APP_START MBED_APP_SIZE { ; load region size_region
*(InRoot$$Sections) *(InRoot$$Sections)
.ANY (+RO) .ANY (+RO)
} }
RW_IRAM1 0x2000010C 0x0003FEF4 { ; RW data RW_IRAM1 0x20000110 0x0003FEF0 { ; RW data
.ANY (+RW +ZI) .ANY (+RW +ZI)
} }
} }

View File

@ -25,8 +25,8 @@ MEMORY
/* MBED: mbed needs to be able to dynamically set the interrupt vector table. /* MBED: mbed needs to be able to dynamically set the interrupt vector table.
* We make room for the table at the very beginning of RAM, i.e. at * We make room for the table at the very beginning of RAM, i.e. at
* 0x20000000. We need (16+51 * sizeof(uint32_t) = 268 bytes for EFM32PG */ * 0x20000000. We need (16+51 * sizeof(uint32_t) = 268 + 4(8-byte aligned) bytes for EFM32PG */
__vector_size = 0x10C; __vector_size = 0x110;
/* Linker script to place sections and symbol values. Should be used together /* Linker script to place sections and symbol values. Should be used together
* with other linker script that defines memory regions FLASH and RAM. * with other linker script that defines memory regions FLASH and RAM.
@ -113,7 +113,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -131,7 +131,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -151,23 +151,23 @@ SECTIONS
PROVIDE( __end_vector_table__ = .); PROVIDE( __end_vector_table__ = .);
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN (4); . = ALIGN (8);
*(.ram) *(.ram)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -175,7 +175,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -183,11 +183,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -11,8 +11,8 @@ define symbol __ICFEDIT_intvec_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START; define symbol __ICFEDIT_region_ROM_start__ = MBED_APP_START;
define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1; define symbol __ICFEDIT_region_ROM_end__ = MBED_APP_START + MBED_APP_SIZE - 1;
define symbol __NVIC_start__ = 0x20000000; define symbol __NVIC_start__ = 0x20000000;
define symbol __NVIC_end__ = 0x2000010B; define symbol __NVIC_end__ = 0x2000010F;
define symbol __ICFEDIT_region_RAM_start__ = 0x2000010C; define symbol __ICFEDIT_region_RAM_start__ = 0x20000110;
define symbol __ICFEDIT_region_RAM_end__ = 0x2003FFFF; define symbol __ICFEDIT_region_RAM_end__ = 0x2003FFFF;
/*-Sizes-*/ /*-Sizes-*/
/*Heap 1/4 of ram and stack 1/8*/ /*Heap 1/4 of ram and stack 1/8*/

View File

@ -85,13 +85,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE (__preinit_array_start = .); PROVIDE (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE (__preinit_array_end = .); PROVIDE (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE (__init_array_start = .); PROVIDE (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -99,14 +99,14 @@ SECTIONS
PROVIDE (__init_array_end = .); PROVIDE (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE (__fini_array_start = .); PROVIDE (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array)) KEEP(*(.fini_array))
PROVIDE (__fini_array_end = .); PROVIDE (__fini_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;

View File

@ -96,13 +96,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -110,7 +110,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -118,7 +118,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -126,11 +126,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -105,7 +105,7 @@ SECTIONS
/* /*
.copy.table : .copy.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__copy_table_start__ = .; __copy_table_start__ = .;
LONG (__etext) LONG (__etext)
LONG (__data_start__) LONG (__data_start__)
@ -123,7 +123,7 @@ SECTIONS
/* /*
.zero.table : .zero.table :
{ {
. = ALIGN(4); . = ALIGN(8);
__zero_table_start__ = .; __zero_table_start__ = .;
LONG (__bss_start__) LONG (__bss_start__)
LONG (__bss_end__ - __bss_start__) LONG (__bss_end__ - __bss_start__)
@ -141,13 +141,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
*(.ram_func*) *(.ram_func*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -155,7 +155,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -163,7 +163,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -171,11 +171,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -85,13 +85,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -99,7 +99,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -107,7 +107,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -115,11 +115,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -85,13 +85,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -99,7 +99,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -107,7 +107,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -115,11 +115,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -85,13 +85,13 @@ SECTIONS
*(vtable) *(vtable)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
@ -99,7 +99,7 @@ SECTIONS
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -107,7 +107,7 @@ SECTIONS
PROVIDE_HIDDEN (__fini_array_end = .); PROVIDE_HIDDEN (__fini_array_end = .);
KEEP(*(.jcr*)) KEEP(*(.jcr*))
. = ALIGN(4); . = ALIGN(8);
/* All data end */ /* All data end */
__data_end__ = .; __data_end__ = .;
@ -115,11 +115,11 @@ SECTIONS
.bss : .bss :
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM

View File

@ -24,7 +24,7 @@ SECTIONS
/* Code and const data */ /* Code and const data */
.text : .text :
{ {
. = ALIGN(4); . = ALIGN(8);
*(.text) *(.text)
*(.text*) *(.text*)
@ -77,20 +77,20 @@ SECTIONS
*(.data) *(.data)
*(.data*) *(.data*)
. = ALIGN(4); . = ALIGN(8);
/* preinit data */ /* preinit data */
PROVIDE_HIDDEN (__preinit_array_start = .); PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array)) KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .); PROVIDE_HIDDEN (__preinit_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* init data */ /* init data */
PROVIDE_HIDDEN (__init_array_start = .); PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*))) KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array)) KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .); PROVIDE_HIDDEN (__init_array_end = .);
. = ALIGN(4); . = ALIGN(8);
/* finit data */ /* finit data */
PROVIDE_HIDDEN (__fini_array_start = .); PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*))) KEEP(*(SORT(.fini_array.*)))
@ -105,12 +105,12 @@ SECTIONS
/* Uninitialised data */ /* Uninitialised data */
.bss (NOLOAD): .bss (NOLOAD):
{ {
. = ALIGN(4); . = ALIGN(8);
__bss_start__ = .; __bss_start__ = .;
*(.bss) *(.bss)
*(.bss*) *(.bss*)
*(COMMON) *(COMMON)
. = ALIGN(4); . = ALIGN(8);
__bss_end__ = .; __bss_end__ = .;
} > RAM } > RAM
@ -118,7 +118,7 @@ SECTIONS
.resume (NOLOAD): .resume (NOLOAD):
{ {
. = ALIGN(4); . = ALIGN(8);
*(preserve) *(preserve)
} > RAM } > RAM
@ -161,7 +161,7 @@ SECTIONS
/* The size of this section (256 bytes) is already taken off the size of RAM so there is no danger of the heap overflowing into it */ /* The size of this section (256 bytes) is already taken off the size of RAM so there is no danger of the heap overflowing into it */
.ipc_mailbox (NOLOAD): .ipc_mailbox (NOLOAD):
{ {
. = ALIGN(4); . = ALIGN(8);
__ipc_mailbox_start__ = .; __ipc_mailbox_start__ = .;
*(.ipc_mailbox) *(.ipc_mailbox)
*(.ipc_mailbox*) *(.ipc_mailbox*)