summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/mips
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/mips
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/mips')
-rw-r--r--c/src/lib/libbsp/mips/csb350/startup/linkcmds17
-rw-r--r--c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds17
-rw-r--r--c/src/lib/libbsp/mips/hurricane/startup/linkcmds18
-rw-r--r--c/src/lib/libbsp/mips/jmr3904/startup/linkcmds18
-rw-r--r--c/src/lib/libbsp/mips/malta/startup/linkcmds18
-rw-r--r--c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds18
-rw-r--r--c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds18
7 files changed, 124 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/mips/csb350/startup/linkcmds b/c/src/lib/libbsp/mips/csb350/startup/linkcmds
index bfa8e2f615..ceda3e2e18 100644
--- a/c/src/lib/libbsp/mips/csb350/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/csb350/startup/linkcmds
@@ -114,6 +114,23 @@ SECTIONS
*(.gnu.linkonce.r*)
} >ram
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ } >ram
+
+ .tbss : {
+ _TLS_BSS_begin = .;
+ *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
+ _TLS_BSS_end = .;
+ } >ram
+
+ _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 :
{
_fdata = ALIGN(16);
diff --git a/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds b/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds
index a851b06e22..f095069516 100644
--- a/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds
@@ -111,6 +111,23 @@ SECTIONS
*(.gnu.linkonce.r*)
} >ram
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ } >ram
+
+ .tbss : {
+ _TLS_BSS_begin = .;
+ *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
+ _TLS_BSS_end = .;
+ } >ram
+
+ _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 :
{
_fdata = ALIGN(16);
diff --git a/c/src/lib/libbsp/mips/hurricane/startup/linkcmds b/c/src/lib/libbsp/mips/hurricane/startup/linkcmds
index 7891462c16..0962039809 100644
--- a/c/src/lib/libbsp/mips/hurricane/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/hurricane/startup/linkcmds
@@ -99,6 +99,24 @@ SECTIONS
*(.rodata.*)
*(.gnu.linkonce.r*)
}
+
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ }
+
+ .tbss : {
+ _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);
+
_fdata = ALIGN(16);
.data : {
diff --git a/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds b/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds
index 1360bf4651..9d980186d6 100644
--- a/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/jmr3904/startup/linkcmds
@@ -95,6 +95,24 @@ SECTIONS
*(.rodata.*)
*(.gnu.linkonce.r*)
}
+
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ }
+
+ .tbss : {
+ _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);
+
_fdata = ALIGN(16);
.data : {
diff --git a/c/src/lib/libbsp/mips/malta/startup/linkcmds b/c/src/lib/libbsp/mips/malta/startup/linkcmds
index 0b11b9cd0a..8be52effdb 100644
--- a/c/src/lib/libbsp/mips/malta/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/malta/startup/linkcmds
@@ -95,6 +95,24 @@ SECTIONS
*(.rodata.*)
*(.gnu.linkonce.r*)
}
+
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ }
+
+ .tbss : {
+ _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);
+
_fdata = ALIGN(16);
.data : {
diff --git a/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds b/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds
index 1f8a4c21db..6c15b7e6ee 100644
--- a/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds
@@ -99,6 +99,24 @@ SECTIONS
*(.rodata.*)
*(.gnu.linkonce.r*)
}
+
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ }
+
+ .tbss : {
+ _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);
+
_fdata = ALIGN(16);
.data : {
diff --git a/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds b/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds
index 4e5d6c8a95..488f9f76e6 100644
--- a/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds
+++ b/c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds
@@ -99,6 +99,24 @@ SECTIONS
*(.rodata.*)
*(.gnu.linkonce.r*)
}
+
+ .tdata : {
+ _TLS_Data_begin = .;
+ *(.tdata .tdata.* .gnu.linkonce.td.*)
+ _TLS_Data_end = .;
+ }
+
+ .tbss : {
+ _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);
+
_fdata = ALIGN(16);
.data : {