From b618d8cfc54f84d4ed03dc7b7fa510c872e6128a Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Wed, 16 Sep 2015 07:13:58 +0200 Subject: Add RTEMS linker sets Update #2408. --- c/src/lib/libbsp/arm/gba/startup/linkcmds | 2 ++ c/src/lib/libbsp/avr/avrtest/startup/linkcmds | 2 ++ c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds | 2 ++ c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds | 2 ++ c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds | 2 ++ c/src/lib/libbsp/h8300/h8sim/startup/linkcmds | 2 ++ c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds | 3 ++- c/src/lib/libbsp/lm32/milkymist/startup/linkcmds | 3 ++- c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds | 3 ++- c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds | 3 ++- c/src/lib/libbsp/m68k/av5282/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash | 2 ++ c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram | 2 ++ c/src/lib/libbsp/m68k/csb360/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/gen68302/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/gen68340/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/gen68360/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp | 2 ++ c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom | 2 ++ c/src/lib/libbsp/m68k/idp/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash | 2 ++ c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash | 2 ++ c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram | 2 ++ c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash | 2 ++ c/src/lib/libbsp/m68k/mrm332/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mvme136/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mvme147/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mvme162/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/mvme167/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/ods68302/startup/debugger | 2 ++ c/src/lib/libbsp/m68k/ods68302/startup/linkcmds | 2 ++ c/src/lib/libbsp/m68k/ods68302/startup/rom | 2 ++ c/src/lib/libbsp/m68k/uC5282/startup/linkcmds | 2 ++ c/src/lib/libbsp/mips/csb350/startup/linkcmds | 2 ++ c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds | 2 ++ c/src/lib/libbsp/mips/hurricane/startup/linkcmds | 2 ++ c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds | 2 ++ c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds | 2 ++ c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds | 3 ++- c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base | 2 ++ c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds | 2 ++ c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds | 2 ++ c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds | 2 ++ c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/score603e/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/shared/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/ss555/startup/linkcmds | 2 ++ c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base | 3 ++- c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds | 3 ++- c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds | 3 ++- c/src/lib/libbsp/sh/gensh1/startup/linkcmds | 3 ++- c/src/lib/libbsp/sh/gensh2/startup/linkcmds | 3 ++- c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram | 3 ++- c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom | 3 ++- c/src/lib/libbsp/sh/gensh4/startup/linkcmds | 2 ++ c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom | 2 ++ c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram | 2 ++ c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim | 3 ++- c/src/lib/libbsp/sparc64/shared/startup/linkcmds | 2 ++ c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds | 3 ++- 69 files changed, 138 insertions(+), 20 deletions(-) (limited to 'c/src/lib') diff --git a/c/src/lib/libbsp/arm/gba/startup/linkcmds b/c/src/lib/libbsp/arm/gba/startup/linkcmds index 174964a9d6..4c9fee2270 100644 --- a/c/src/lib/libbsp/arm/gba/startup/linkcmds +++ b/c/src/lib/libbsp/arm/gba/startup/linkcmds @@ -135,6 +135,7 @@ SECTIONS *(.rodata1) *(EXCLUDE_FILE(*.rodata.* *.ewram.o *.iwram.o) .rodata) *(.rodata.* .gnu.linkonce.r*) + KEEP (*(SORT(.rtemsroset.*))) *(.roda) /* deprecated: for compatibility with objcopyroda */ SORT(CONSTRUCTORS) . = ALIGN(4); @@ -302,6 +303,7 @@ SECTIONS *(EXCLUDE_FILE(*.rodata.* *.ewram.o *.iwram.o) .data) *(.data.* .gnu.linkonce.d.*) *(.data1) + KEEP (*(SORT(.rtemsrwset.*))) *(.sdata .sdata.* .gnu.linkonce.s.*) . = ALIGN(4); } =0xFF diff --git a/c/src/lib/libbsp/avr/avrtest/startup/linkcmds b/c/src/lib/libbsp/avr/avrtest/startup/linkcmds index 7ba15875b5..46548bffd3 100644 --- a/c/src/lib/libbsp/avr/avrtest/startup/linkcmds +++ b/c/src/lib/libbsp/avr/avrtest/startup/linkcmds @@ -172,8 +172,10 @@ SECTIONS { *(.data) *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.rodata) /* We need to include .rodata here if gcc is used */ *(.rodata*) /* with -fdata-sections. */ + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.d*) . = ALIGN(2); _edata = . ; diff --git a/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds b/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds index 7e37798d87..982757c6df 100644 --- a/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds +++ b/c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds @@ -93,6 +93,7 @@ SECTIONS .data : { *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.jcr) *(.gnu.linkonce.d*) CONSTRUCTORS @@ -108,6 +109,7 @@ SECTIONS { *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram diff --git a/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds b/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds index 7c1e5e4d06..795e4de611 100644 --- a/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds +++ b/c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds @@ -101,6 +101,7 @@ SECTIONS .data : { *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.jcr) *(.gnu.linkonce.d*) CONSTRUCTORS @@ -116,6 +117,7 @@ SECTIONS { *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram diff --git a/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds b/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds index a8f39fb8d5..3315f37e61 100644 --- a/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds +++ b/c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds @@ -90,6 +90,7 @@ SECTIONS .data : { *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.jcr) *(.gnu.linkonce.d*) CONSTRUCTORS @@ -105,6 +106,7 @@ SECTIONS { *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram diff --git a/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds b/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds index 53ed639550..0534e05977 100644 --- a/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds +++ b/c/src/lib/libbsp/h8300/h8sim/startup/linkcmds @@ -56,6 +56,7 @@ SECTIONS . = ALIGN (16); PROVIDE(_rodata_start = . ); *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) PROVIDE(_erodata = . ); @@ -88,6 +89,7 @@ SECTIONS .data SIZEOF(.tors) + ADDR(.tors): { *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gcc_exc*) CONSTRUCTORS _edata = .; diff --git a/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds b/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds index e9c0009e1e..aea7cbf329 100644 --- a/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds +++ b/c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds @@ -77,7 +77,7 @@ SECTIONS .fini : { _fini = .; KEEP(*(.fini)) } > sdram - .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > sdram + .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram .rodata1 : { *(.rodata1) } > sdram .tdata : { _TLS_Data_begin = .; @@ -154,6 +154,7 @@ SECTIONS */ PROVIDE(__DATA_START__ = ABSOLUTE(.) ); *(.data .data.* .gnu.linkonce.d*) + KEEP (*(SORT(.rtemsrwset.*))) SORT(CONSTRUCTORS) } > sdram .data1 : { *(.data1) } > sdram diff --git a/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds b/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds index d774e6662f..72466b9633 100644 --- a/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds +++ b/c/src/lib/libbsp/lm32/milkymist/startup/linkcmds @@ -76,7 +76,7 @@ SECTIONS .fini : { _fini = .; KEEP(*(.fini)) } > sdram - .rodata : { *(.rodata*) *(.gnu.linkonce.r*) } > sdram + .rodata : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > sdram .rodata1 : { *(.rodata1) } > sdram .tdata : { _TLS_Data_begin = .; @@ -153,6 +153,7 @@ SECTIONS */ PROVIDE(__DATA_START__ = ABSOLUTE(.) ); *(.data .data.* .gnu.linkonce.d*) + KEEP (*(SORT(.rtemsrwset.*))) SORT(CONSTRUCTORS) } > sdram .data1 : { *(.data1) } > sdram diff --git a/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds b/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds index f3721ad617..5f838bc31b 100644 --- a/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds +++ b/c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds @@ -52,7 +52,7 @@ SECTIONS *(.plt) KEEP (*(.init)) KEEP (*(.fini)) - *(.rodata .rodata.* .gnu.linkonce.r.*) + *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*) *(.rodata1) *(.eh_frame_hdr) KEEP (*(.eh_frame)) @@ -119,6 +119,7 @@ SECTIONS *(.dynamic) *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(SORT(.rtemsrwset.*))) KEEP (*(.gnu.linkonce.d.*personality*)) SORT(CONSTRUCTORS) *(.data1) diff --git a/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds b/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds index bca3946b95..018d405a3c 100644 --- a/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds +++ b/c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds @@ -78,7 +78,7 @@ SECTIONS PROVIDE (__etext = .); PROVIDE (_etext = .); PROVIDE (etext = .); - .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) } + .rodata : { *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .tdata : { _TLS_Data_begin = .; @@ -168,6 +168,7 @@ SECTIONS .data : { *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(SORT(.rtemsrwset.*))) SORT(CONSTRUCTORS) } .data1 : { *(.data1) } diff --git a/c/src/lib/libbsp/m68k/av5282/startup/linkcmds b/c/src/lib/libbsp/m68k/av5282/startup/linkcmds index c72601d63f..01ba1c5098 100644 --- a/c/src/lib/libbsp/m68k/av5282/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/av5282/startup/linkcmds @@ -123,6 +123,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -157,6 +158,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash index 3d361df509..45841ff909 100644 --- a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash +++ b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash @@ -122,6 +122,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -157,6 +158,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram index 4c11cc7110..c93ba85ea8 100644 --- a/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram +++ b/c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram @@ -122,6 +122,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -156,6 +157,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/csb360/startup/linkcmds b/c/src/lib/libbsp/m68k/csb360/startup/linkcmds index 9b1c2d5e77..e06ccc3068 100644 --- a/c/src/lib/libbsp/m68k/csb360/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/csb360/startup/linkcmds @@ -95,6 +95,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -128,6 +129,7 @@ SECTIONS *(.shdata) . = ALIGN (0x10); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) . = ALIGN (0x10); *(.gcc_exc) *(.gcc_except_table*) diff --git a/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds b/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds index d831f7a7fa..34f42b9dbf 100644 --- a/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/gen68302/startup/linkcmds @@ -109,6 +109,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -137,6 +138,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds b/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds index bde2809811..5f95ed32c1 100644 --- a/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/gen68340/startup/linkcmds @@ -137,6 +137,7 @@ SECTIONS { . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -165,6 +166,7 @@ SECTIONS { .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds index 7957b043be..fbdf14be6a 100644 --- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds @@ -101,6 +101,7 @@ SECTIONS { . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -129,6 +130,7 @@ SECTIONS { .data : { _copy_start = .; *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp index d14ed8faac..ccd08a14a2 100644 --- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp +++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp @@ -106,6 +106,7 @@ SECTIONS { . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -134,6 +135,7 @@ SECTIONS { .data : AT(SIZEOF(.text)) { _copy_start = .; *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.jcr) *(.gcc_except_table*) diff --git a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom index 22637bf1d9..777700e6a1 100644 --- a/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom +++ b/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom @@ -105,6 +105,7 @@ SECTIONS { . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -133,6 +134,7 @@ SECTIONS { .data : AT(SIZEOF(.text)) { _copy_start = .; *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.jcr) *(.gcc_except_table*) diff --git a/c/src/lib/libbsp/m68k/idp/startup/linkcmds b/c/src/lib/libbsp/m68k/idp/startup/linkcmds index a8efe63648..8f4b037a78 100644 --- a/c/src/lib/libbsp/m68k/idp/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/idp/startup/linkcmds @@ -106,6 +106,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -134,6 +135,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds index d7ceb201b1..22b526885a 100644 --- a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds @@ -130,6 +130,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -161,6 +162,7 @@ SECTIONS *(.shdata) . = ALIGN (0x10); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) . = ALIGN (0x10); *(.gcc_exc) *(.gcc_except_table*) diff --git a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash index 12db0e2902..57c1dafa3f 100644 --- a/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash +++ b/c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash @@ -130,6 +130,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -162,6 +163,7 @@ SECTIONS *(.shdata) . = ALIGN (0x10); *(.data) + KEEP (*(SORT(.rtemsrwset.*))) . = ALIGN (0x10); *(.gcc_exc) *(.gcc_except_table*) diff --git a/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds index e10a57fad2..8b0981ba73 100644 --- a/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds @@ -110,6 +110,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -146,6 +147,7 @@ SECTIONS PROVIDE( _copy_start = .); *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds index b0a48b70a3..42f085706d 100644 --- a/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds @@ -110,6 +110,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -145,6 +146,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds index 1fa3bef1c7..0aa079a938 100644 --- a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds @@ -130,6 +130,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -164,6 +165,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash index 8082860fd6..6a724a9067 100644 --- a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash +++ b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash @@ -134,6 +134,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -169,6 +170,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram index d96036494b..06a62e1765 100644 --- a/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram +++ b/c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram @@ -130,6 +130,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -164,6 +165,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds index b5a228e161..3426f213ef 100644 --- a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds @@ -121,6 +121,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -156,6 +157,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash index 30f46877f3..c1e081dbab 100644 --- a/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash +++ b/c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash @@ -117,6 +117,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -152,6 +153,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds b/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds index aeed9a3844..3640c514a4 100644 --- a/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mrm332/startup/linkcmds @@ -137,6 +137,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -169,6 +170,7 @@ SECTIONS { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds index ad4cba6cb5..85d614d943 100644 --- a/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mvme136/startup/linkcmds @@ -106,6 +106,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -134,6 +135,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds index bc75072daf..fcbd073a71 100644 --- a/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mvme147/startup/linkcmds @@ -110,6 +110,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -138,6 +139,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds index e8ac4c5c70..fbc85271a2 100644 --- a/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds @@ -110,6 +110,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -138,6 +139,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds index 10a5c1deb4..1368d05831 100644 --- a/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mvme162/startup/linkcmds @@ -113,6 +113,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -141,6 +142,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds b/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds index d585bf9e36..b10b29d13b 100644 --- a/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/mvme167/startup/linkcmds @@ -119,6 +119,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) PROVIDE(_erodata = . ); @@ -148,6 +149,7 @@ SECTIONS .data : { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/debugger b/c/src/lib/libbsp/m68k/ods68302/startup/debugger index 8d156bd3c8..62fd5bc07d 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/debugger +++ b/c/src/lib/libbsp/m68k/ods68302/startup/debugger @@ -50,6 +50,8 @@ SECTIONS { data_start = .; *(.data) + KEEP (*(SORT(.rtemsroset.*))) + KEEP (*(SORT(.rtemsrwset.*))) edata = .; } .bss (ADDR(.data) + SIZEOF(.data)) : diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds b/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds index c153825d39..39bdee0cbc 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/ods68302/startup/linkcmds @@ -122,6 +122,7 @@ SECTIONS . = ALIGN (16); _rodata_start = .; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -152,6 +153,7 @@ SECTIONS AT (ADDR(.tdata) + SIZEOF(.tdata)) { PROVIDE (_copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/m68k/ods68302/startup/rom b/c/src/lib/libbsp/m68k/ods68302/startup/rom index 352ae6a89a..4b0e81050f 100644 --- a/c/src/lib/libbsp/m68k/ods68302/startup/rom +++ b/c/src/lib/libbsp/m68k/ods68302/startup/rom @@ -52,6 +52,8 @@ SECTIONS { data_start = .; *(.data) + KEEP (*(SORT(.rtemsroset.*))) + KEEP (*(SORT(.rtemsrwset.*))) edata = .; } .bss (ADDR(.data) + SIZEOF(.data)) : diff --git a/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds b/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds index dbf90815ea..56905fc0ec 100644 --- a/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/uC5282/startup/linkcmds @@ -138,6 +138,7 @@ SECTIONS . = ALIGN (16); _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN (16); @@ -172,6 +173,7 @@ SECTIONS PROVIDE( _data_dest_start = . ); PROVIDE( _copy_start = .); *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) *(.gcc_except_table*) *(.jcr) diff --git a/c/src/lib/libbsp/mips/csb350/startup/linkcmds b/c/src/lib/libbsp/mips/csb350/startup/linkcmds index 47234fe8c9..384cd5b49d 100644 --- a/c/src/lib/libbsp/mips/csb350/startup/linkcmds +++ b/c/src/lib/libbsp/mips/csb350/startup/linkcmds @@ -111,6 +111,7 @@ SECTIONS *(.rdata) *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } >ram @@ -139,6 +140,7 @@ SECTIONS *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) } >ram diff --git a/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds b/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds index c0da8b774f..e396379a1f 100644 --- a/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds +++ b/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds @@ -108,6 +108,7 @@ SECTIONS *(.rdata) *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } >ram @@ -136,6 +137,7 @@ SECTIONS *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) } >ram diff --git a/c/src/lib/libbsp/mips/hurricane/startup/linkcmds b/c/src/lib/libbsp/mips/hurricane/startup/linkcmds index f2612488cc..2706d8103f 100644 --- a/c/src/lib/libbsp/mips/hurricane/startup/linkcmds +++ b/c/src/lib/libbsp/mips/hurricane/startup/linkcmds @@ -97,6 +97,7 @@ SECTIONS *(.rdata) *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } @@ -124,6 +125,7 @@ SECTIONS .data : { *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) SORT(CONSTRUCTORS) } diff --git a/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds b/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds index 3c08ce4075..d7039ab354 100644 --- a/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds +++ b/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds @@ -97,6 +97,7 @@ SECTIONS *(.rdata) *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } @@ -124,6 +125,7 @@ SECTIONS .data : { *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) SORT(CONSTRUCTORS) } diff --git a/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds b/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds index af99da5220..a0f4c412ae 100644 --- a/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds +++ b/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds @@ -97,6 +97,7 @@ SECTIONS *(.rdata) *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } @@ -124,6 +125,7 @@ SECTIONS .data : { *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) SORT(CONSTRUCTORS) } diff --git a/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds b/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds index 15be77d76a..e1e489c1fc 100644 --- a/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds +++ b/c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds @@ -130,7 +130,7 @@ SECTIONS { KEEP (*(.fini)) } =0 - .rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) } + .rodata : { *(.rodata) *(.rodata.*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } .rodata1 : { *(.rodata1) } .tdata : { _TLS_Data_begin = .; @@ -156,6 +156,7 @@ SECTIONS { *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) SORT(CONSTRUCTORS) } diff --git a/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds b/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds index 74e5485395..662d097619 100644 --- a/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds +++ b/c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds @@ -193,7 +193,7 @@ SECTIONS { PROVIDE (__ram_rodata_start = ABSOLUTE(.)); . = ALIGN(32 / 8); - *(.rodata .rodata.* .gnu.linkonce.r.*) + *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*) *(.rodata1) } > onchip_memory_0 @@ -227,6 +227,7 @@ SECTIONS *(.got.plt) *(.got) *(.data1) *(.data .data.* .gnu.linkonce.d.*) + KEEP (*(SORT(.rtemsrwset.*))) _gp = ABSOLUTE(. + 0x8000); PROVIDE(gp = _gp); 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 diff --git a/c/src/lib/libbsp/sh/gensh1/startup/linkcmds b/c/src/lib/libbsp/sh/gensh1/startup/linkcmds index 80a241c896..d5945b37de 100644 --- a/c/src/lib/libbsp/sh/gensh1/startup/linkcmds +++ b/c/src/lib/libbsp/sh/gensh1/startup/linkcmds @@ -131,7 +131,7 @@ SECTIONS .fini . : { KEEP(*(.fini)) } > ram =0 .ctors . : { KEEP(*(.ctors)) } > ram =0 .dtors . : { KEEP(*(.dtors)) } > ram =0 - .rodata . : { *(.rodata*) *(.gnu.linkonce.r*) } > ram + .rodata . : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram .rodata1 . : { *(.rodata1) } > ram .tdata : { __TLS_Data_begin = .; @@ -155,6 +155,7 @@ SECTIONS .data . : { *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gcc_exc*) ___EH_FRAME_BEGIN__ = .; *(.eh_fram*) diff --git a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds index e9f73f9397..d58f25e48f 100644 --- a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds +++ b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds @@ -142,7 +142,7 @@ SECTIONS .fini . : { KEEP(*(.fini)) } > ram =0 .ctors . : { KEEP(*(.ctors)) } > ram =0 .dtors . : { KEEP(*(.dtors)) } > ram =0 - .rodata . : { *(.rodata*) *(.gnu.linkonce.r*) } > ram + .rodata . : { *(.rodata*) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram .rodata1 . : { *(.rodata1) } > ram .tdata : { __TLS_Data_begin = .; @@ -166,6 +166,7 @@ SECTIONS .data . : { *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gcc_exc*) ___EH_FRAME_BEGIN__ = .; *(.eh_fram*) diff --git a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram index c962e8f9a0..d7449077da 100644 --- a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram +++ b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram @@ -139,7 +139,7 @@ SECTIONS _etext = .; PROVIDE (etext = .); .fini . : { *(.fini) } > ram =0 - .rodata . : { *(.rodata) *(.gnu.linkonce.r*) } > ram + .rodata . : { *(.rodata) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram .rodata1 . : { *(.rodata1) } > ram .tdata : { __TLS_Data_begin = .; @@ -163,6 +163,7 @@ SECTIONS .data . : { *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) CONSTRUCTORS } > ram diff --git a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom index 321760aa6f..c59613b3f2 100644 --- a/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom +++ b/c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom @@ -140,7 +140,7 @@ SECTIONS _etext = .; PROVIDE (etext = .); .fini . : { *(.fini) } > ram =0 - .rodata . : { *(.rodata) *(.gnu.linkonce.r*) } > ram + .rodata . : { *(.rodata) KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram .rodata1 . : { *(.rodata1) } > ram .tdata : { __TLS_Data_begin = .; @@ -164,6 +164,7 @@ SECTIONS .data . : { *(.data) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) CONSTRUCTORS } > ram diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds index 7ddb95d9db..40b764e9ff 100644 --- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds +++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds @@ -87,6 +87,7 @@ SECTIONS { *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram .tdata : { @@ -113,6 +114,7 @@ SECTIONS { copy_start = .; *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gcc_exc*) ___EH_FRAME_BEGIN__ = .; *(.eh_fram*) diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom index a84b502717..ee61498ad3 100644 --- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom +++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom @@ -102,6 +102,7 @@ SECTIONS { *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN(32); } > rom @@ -162,6 +163,7 @@ SECTIONS copy_start = .; *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) SORT(CONSTRUCTORS) copy_end = .; diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram index 30c315e0d4..65656247be 100644 --- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram +++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram @@ -89,6 +89,7 @@ SECTIONS { *(.rodata) *(.rodata.*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) . = ALIGN(32); } > ram @@ -147,6 +148,7 @@ SECTIONS { *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) SORT(CONSTRUCTORS) copy_end = .; diff --git a/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim b/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim index 5b0d4d7ff7..c9f9ad567a 100644 --- a/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim +++ b/c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim @@ -121,7 +121,7 @@ SECTIONS } =0 _etext = .; PROVIDE (etext = .); - .rodata . : { *(.rodata*) .rodata.* *(.gnu.linkonce.r*) } > ram + .rodata . : { *(.rodata*) .rodata.* KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) } > ram .rodata1 . : { *(.rodata1) } > ram .tdata : { __TLS_Data_begin = .; @@ -145,6 +145,7 @@ SECTIONS .data . : { *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gcc_exc*) ___EH_FRAME_BEGIN__ = .; *(.eh_fram*) diff --git a/c/src/lib/libbsp/sparc64/shared/startup/linkcmds b/c/src/lib/libbsp/sparc64/shared/startup/linkcmds index 95c8913f3b..24e0a0147d 100644 --- a/c/src/lib/libbsp/sparc64/shared/startup/linkcmds +++ b/c/src/lib/libbsp/sparc64/shared/startup/linkcmds @@ -138,6 +138,7 @@ SECTIONS _rodata_start = . ; *(.rodata*) + KEEP (*(SORT(.rtemsroset.*))) *(.gnu.linkonce.r*) _erodata = ALIGN( 0x10 ) ; @@ -173,6 +174,7 @@ SECTIONS _data_start = . ; *(.data) *(.data*) + KEEP (*(SORT(.rtemsrwset.*))) *(.rodata) /* We need to include .rodata here if gcc is used */ *(.rodata*) /* with -fdata-sections. */ *(.gnu.linkonce.d*) diff --git a/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds b/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds index fe0f22b942..ff7bb85211 100644 --- a/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds +++ b/c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds @@ -89,7 +89,7 @@ SECTIONS *(.call_table_text) } .fini : { KEEP (*(.fini)) } =0 - .rodata : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) } + .rodata : { *(.rodata .rodata.* KEEP (*(SORT(.rtemsroset.*))) .gnu.linkonce.r.*) } .rodata1 : { *(.rodata1) } .tdata : { __TLS_Data_begin = .; @@ -111,6 +111,7 @@ SECTIONS { *(.data) *(.data.*) + KEEP (*(SORT(.rtemsrwset.*))) *(.gnu.linkonce.d*) CONSTRUCTORS } -- cgit v1.2.3