summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/shared/startup/linkcmds.base
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/arm/shared/startup/linkcmds.base')
-rw-r--r--c/src/lib/libbsp/arm/shared/startup/linkcmds.base15
1 files changed, 13 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/arm/shared/startup/linkcmds.base b/c/src/lib/libbsp/arm/shared/startup/linkcmds.base
index 5174d480ad..d6561dde77 100644
--- a/c/src/lib/libbsp/arm/shared/startup/linkcmds.base
+++ b/c/src/lib/libbsp/arm/shared/startup/linkcmds.base
@@ -56,6 +56,10 @@ bsp_stack_und_size = ALIGN (bsp_stack_und_size, bsp_stack_align);
bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 0;
bsp_stack_main_size = ALIGN (bsp_stack_main_size, bsp_stack_align);
+MEMORY {
+ UNEXPECTED_SECTIONS : ORIGIN = 0xffffffff, LENGTH = 0
+}
+
SECTIONS {
.start : {
bsp_section_start_begin = .;
@@ -424,6 +428,13 @@ SECTIONS {
.note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }
/DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto_*) }
- /* Catch all unknown sections */
- .nirvana : { *(*) } > NIRVANA
+ /*
+ * This is a RTEMS specific section to catch all unexpected input
+ * sections. In case you get an error like
+ * "section `.unexpected_sections' will not fit in region
+ * `UNEXPECTED_SECTIONS'"
+ * you have to figure out the offending input section and add it to the
+ * appropriate output section definition above.
+ */
+ .unexpected_sections : { *(*) } > UNEXPECTED_SECTIONS
}