diff options
author | Gedare Bloom <gedare@rtems.org> | 2020-04-06 11:15:59 -0600 |
---|---|---|
committer | Gedare Bloom <gedare@rtems.org> | 2020-04-06 11:15:59 -0600 |
commit | 2db1fd857932518b8bc1269d0fec7b4780d2ec32 (patch) | |
tree | a09b7c59075805e5594ed68a10b0e579587f54c0 | |
parent | Revert "score: Fix _ISR_Stack_area_end" (diff) | |
download | rtems-2db1fd857932518b8bc1269d0fec7b4780d2ec32.tar.bz2 |
sparc64: update linkcmds with missing sections for TLS
Closes #3936.
-rw-r--r-- | bsps/sparc64/shared/start/linkcmds | 74 |
1 files changed, 22 insertions, 52 deletions
diff --git a/bsps/sparc64/shared/start/linkcmds b/bsps/sparc64/shared/start/linkcmds index 86a3bdcde1..aaf48b5d83 100644 --- a/bsps/sparc64/shared/start/linkcmds +++ b/bsps/sparc64/shared/start/linkcmds @@ -36,56 +36,6 @@ SECTIONS .gnu.version : { *(.gnu.version) } .gnu.version_d : { *(.gnu.version_d) } .gnu.version_r : { *(.gnu.version_r) } - .rel.init : { *(.rel.init) } - .rela.init : { *(.rela.init) } - .rel.text : - { - *(.rel.text) - *(.rel.text.*) - *(.rel.gnu.linkonce.t*) - } - .rela.text : - { - *(.rela.text) - *(.rela.text.*) - *(.rela.gnu.linkonce.t*) - } - .rel.fini : { *(.rel.fini) } - .rela.fini : { *(.rela.fini) } - .rel.rodata : - { - *(.rel.rodata) - *(.rel.rodata.*) - *(.rel.gnu.linkonce.r*) - } - .rela.rodata : - { - *(.rela.rodata) - *(.rela.rodata.*) - *(.rela.gnu.linkonce.r*) - } - .rel.data : - { - *(.rel.data) - *(.rel.data.*) - *(.rel.gnu.linkonce.d*) - } - .rela.data : - { - *(.rela.data) - *(.rela.data.*) - *(.rela.gnu.linkonce.d*) - } - .rel.ctors : { *(.rel.ctors) } - .rela.ctors : { *(.rela.ctors) } - .rel.dtors : { *(.rel.dtors) } - .rela.dtors : { *(.rela.dtors) } - .rel.got : { *(.rel.got) } - .rela.got : { *(.rela.got) } - .rel.bss : { *(.rel.bss) } - .rela.bss : { *(.rela.bss) } - .rel.plt : { *(.rel.plt) } - .rela.plt : { *(.rela.plt) } /* Internal text space or external memory */ .text 0x4000 : AT (0x4000) { @@ -168,8 +118,25 @@ SECTIONS _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin; _TLS_Size = _TLS_BSS_end - _TLS_Data_begin; _TLS_Alignment = MAX (ALIGNOF (.tdata), ALIGNOF (.tbss)); - - .data : AT (ADDR (.tbss) + SIZEOF (.tbss)) + + .rela.dyn : AT (ADDR (.tbss) + SIZEOF (.tbss)) + { + *(.rela.init) + *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) + *(.rela.fini) + *(.rela.rodata .rela.rodata.* .rela.gnu.linkonce.r.*) + *(.rela.data .rela.data.* .rela.gnu.linkonce.d.*) + *(.rela.tdata .rela.tdata.* .rela.gnu.linkonce.td.*) + *(.rela.tbss .rela.tbss.* .rela.gnu.linkonce.tb.*) + *(.rela.ctors) + *(.rela.dtors) + *(.rela.got) + *(.rela.bss .rela.bss.* .rela.gnu.linkonce.b.*) + *(.rela.rtemsroset*) + *(.rela.rtemsrwset*) + } > ram + + .data : AT (ADDR (.rela.dyn) + SIZEOF (.rela.dyn)) { PROVIDE (__data_start = .) ; data_start = . ; @@ -193,6 +160,9 @@ SECTIONS . = ALIGN (16); .dynamic : { *(.dynamic) } >ram .jcr : { *(.jcr) } > ram + .got : { *(.got) } >ram + .plt : { *(.plt) } >ram + .dynrel : { *(.dynrel) } >ram .shbss : { *(.shbss) } > ram .bss : { |