summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-09-16 07:13:58 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-12-08 09:25:22 +0100
commitb618d8cfc54f84d4ed03dc7b7fa510c872e6128a (patch)
tree324b769a7866c0ac2ce8f5208861e5207834d9a4 /c/src/lib/libbsp/powerpc
parentscore: Statically initialize system state (diff)
downloadrtems-b618d8cfc54f84d4ed03dc7b7fa510c872e6128a.tar.bz2
Add RTEMS linker sets
Update #2408.
Diffstat (limited to '')
-rw-r--r--c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base2
-rw-r--r--c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/score603e/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/shared/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/ss555/startup/linkcmds2
-rw-r--r--c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base3
-rw-r--r--c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds3
-rw-r--r--c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds3
13 files changed, 26 insertions, 8 deletions
diff --git a/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds b/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds
index ae3fe06700..84cbc97fdf 100644
--- a/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds
@@ -93,7 +93,7 @@ SECTIONS
} > CODE
.fini : { _fini = .; *(.fini) } >CODE
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > CODE
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > CODE
.rodata1 : { *(.rodata1) } > CODE
.tdata : {
_TLS_Data_begin = .;
@@ -142,6 +142,7 @@ SECTIONS
{
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
CONSTRUCTORS
} > CODE
diff --git a/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds b/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds
index 775374cf72..69644e37d8 100644
--- a/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds
@@ -62,7 +62,7 @@ SECTIONS
} =0
.init : { _init = .; *(.init) }
.fini : { _fini = .; *(.fini) }
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) }
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) }
.rodata1 : { *(.rodata1) }
.tdata : {
_TLS_Data_begin = .;
@@ -109,6 +109,7 @@ SECTIONS
{
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d.*)
CONSTRUCTORS
}
diff --git a/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base b/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base
index 4c186efae6..4ded9082d4 100644
--- a/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base
+++ b/c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base
@@ -87,6 +87,7 @@ SECTIONS {
* BSP: Moved into .text from .*
*/
*(.rodata .rodata.* .gnu.linkonce.r.*)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.rodata1)
*(.interp)
*(.note.gnu.build-id)
@@ -223,6 +224,7 @@ SECTIONS {
PROVIDE_HIDDEN (__fini_array_end = .);
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
diff --git a/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds b/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds
index fc8f68e8ed..bed8580827 100644
--- a/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds
@@ -37,6 +37,7 @@ SECTIONS
*(.text*)
*(.rodata*)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
/*
* Special FreeBSD sysctl sections.
@@ -208,6 +209,7 @@ SECTIONS
data.start = .;
*(.data)
*(.data1)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.data.* .gnu.linkonce.d.*)
data.end = .;
} > RAM
diff --git a/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds b/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds
index 45332bceaa..537e4db664 100644
--- a/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds
@@ -125,6 +125,7 @@ SECTIONS
*(.shdata)
*(.rodata*)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.descriptors)
*(rom_ver)
_erodata = .;
@@ -207,6 +208,7 @@ SECTIONS
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.data1)
PROVIDE (__EXCEPT_START__ = .);
diff --git a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds
index fc14155805..de52e4664a 100644
--- a/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds
@@ -125,6 +125,7 @@ SECTIONS
*(.shdata)
*(.rodata)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.descriptors)
*(rom_ver)
_erodata = .;
@@ -269,6 +270,7 @@ SECTIONS
*(.data)
*(.data1)
*(.data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
PROVIDE (__SDATA_START__ = .);
*(.sdata .sdata.* .gnu.linkonce.s.*)
data.end = .;
diff --git a/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds b/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds
index 4af6976cb1..6e1e877f09 100644
--- a/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds
@@ -95,7 +95,7 @@ SECTIONS
.rodata :
{
- *(.rodata .rodata.* .gnu.linkonce.r.*)
+ *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*)
*(.rodata1)
. = ALIGN (bsp_section_align);
__rodata_end = .;
@@ -127,6 +127,7 @@ SECTIONS
{
__data_start = .;
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
*(.data1)
diff --git a/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds b/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds
index 46b5e381de..70065572fc 100644
--- a/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/score603e/startup/linkcmds
@@ -101,7 +101,7 @@ SECTIONS
} >RAM
.init : { _init = .; __init = .; *(.init) } >RAM
.fini : { _fini = .; __fini = .; *(.fini) } >RAM
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } >RAM
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } >RAM
.rodata1 : { *(.rodata1) } >RAM
.tdata : {
_TLS_Data_begin = .;
@@ -146,6 +146,7 @@ SECTIONS
{
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d.*)
CONSTRUCTORS
} >RAM
diff --git a/c/src/lib/libbsp/powerpc/shared/startup/linkcmds b/c/src/lib/libbsp/powerpc/shared/startup/linkcmds
index 34969e1cf6..d0d22a774e 100644
--- a/c/src/lib/libbsp/powerpc/shared/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/shared/startup/linkcmds
@@ -77,7 +77,7 @@ SECTIONS
.fini : { _fini = .; KEEP(*(.fini)) } > CODE
- .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > CODE
+ .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > CODE
.rodata1 : { *(.rodata1) } > CODE
.tdata : {
@@ -157,6 +157,7 @@ SECTIONS
*/
PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data .data.* .gnu.linkonce.d*)
+ KEEP (*(SORT(.rtemsrwset.*)))
SORT(CONSTRUCTORS)
} > CODE
.data1 : { *(.data1) } > CODE
diff --git a/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds b/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds
index 809b9a33bb..ebc9e816a4 100644
--- a/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/ss555/startup/linkcmds
@@ -121,6 +121,7 @@ SECTIONS
*(.shdata)
*(.rodata*)
*(.rodata1)
+ KEEP (*(SORT(.rtemsroset.*)))
*(.descriptors)
*(rom_ver)
_erodata = .;
@@ -171,6 +172,7 @@ SECTIONS
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.data1)
PROVIDE (__SDATA_START__ = .);
diff --git a/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base b/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base
index 979989fe07..fd1ba71d52 100644
--- a/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base
+++ b/c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base
@@ -78,7 +78,7 @@ SECTIONS {
/*
* BSP: Moved into .text from .*
*/
- *(.rodata .rodata.* .gnu.linkonce.r.*)
+ *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*)
*(.rodata1)
*(.interp)
*(.note.gnu.build-id)
@@ -218,6 +218,7 @@ SECTIONS {
PROVIDE_HIDDEN (__fini_array_end = .);
*(.data .data.* .gnu.linkonce.d.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
KEEP (*(.gnu.linkonce.d.*personality*))
SORT(CONSTRUCTORS)
diff --git a/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds b/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds
index 55b8f887cd..a22ee3f7c9 100644
--- a/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds
@@ -91,7 +91,7 @@ SECTIONS
} > RAM
/* Miscellaneous read-only data */
- .rodata : { *(.rodata.* .gnu.linkonce.r*) } > RAM
+ .rodata : { *(.rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r*) } > RAM
.rodata1 : { *(.rodata1) } > RAM
.tdata : {
@@ -139,6 +139,7 @@ SECTIONS
.data : { PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
} > RAM
diff --git a/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds b/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
index 63d187cacb..ce88a43035 100644
--- a/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
@@ -91,7 +91,7 @@ SECTIONS
} > RAM
/* Miscellaneous read-only data */
- .rodata : { *(.rodata.* .gnu.linkonce.r*) } > RAM
+ .rodata : { *(.rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r*) } > RAM
.rodata1 : { *(.rodata1) } > RAM
.tdata : {
@@ -139,6 +139,7 @@ SECTIONS
.data : { PROVIDE(__DATA_START__ = ABSOLUTE(.) );
*(.data)
*(.data.*)
+ KEEP (*(SORT(.rtemsrwset.*)))
*(.gnu.linkonce.d*)
} > RAM