summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/sim68000
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-01-28 11:52:17 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-02-04 10:06:34 +0100
commit960fd8546fb0130058e6a588fbc62d696d01df0e (patch)
treede9bc7a1e9f1e2369e941d888ff476917c02b044 /c/src/lib/libbsp/m68k/sim68000
parentscore: Add _Thread_Get_maximum_internal_threads() (diff)
downloadrtems-960fd8546fb0130058e6a588fbc62d696d01df0e.tar.bz2
bsps: Thread-local storage (TLS) for linkcmds
Diffstat (limited to 'c/src/lib/libbsp/m68k/sim68000')
-rw-r--r--c/src/lib/libbsp/m68k/sim68000/startup/linkcmds20
1 files changed, 19 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/m68k/sim68000/startup/linkcmds b/c/src/lib/libbsp/m68k/sim68000/startup/linkcmds
index eeae18b9e3..9744f50beb 100644
--- a/c/src/lib/libbsp/m68k/sim68000/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/sim68000/startup/linkcmds
@@ -108,7 +108,25 @@ SECTIONS
. = ALIGN (16);
PROVIDE (_etext = .);
}
- .data 0x80000 : AT (ADDR(.text) + SIZEOF (.text)) {
+
+ .tdata ADDR(.text) + SIZEOF (.text) : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ }
+
+ .tbss ADDR(.tdata) + SIZEOF (.tdata) : {
+ _TLS_BSS_begin = .;
+ *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
+ _TLS_BSS_end = .;
+ }
+
+ _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
+ _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
+ _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
+ _TLS_Alignment = ALIGNOF (.tdata);
+
+ .data 0x80000 : AT (ADDR(.tdata) + SIZEOF (.tdata)) {
PROVIDE (_copy_start = .);
*(.data*)
*(.gnu.linkonce.d*)