summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds')
-rw-r--r--c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds4
1 files changed, 3 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds b/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
index 247bee25c0..63d187cacb 100644
--- a/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
+++ b/c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds
@@ -107,9 +107,11 @@ SECTIONS
} >RAM
_TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
+ _TLS_Data_begin = _TLS_Data_size != 0 ? _TLS_Data_begin : _TLS_BSS_begin;
+ _TLS_Data_end = _TLS_Data_size != 0 ? _TLS_Data_end : _TLS_BSS_begin;
_TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
_TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
- _TLS_Alignment = ALIGNOF (.tdata);
+ _TLS_Alignment = MAX (ALIGNOF (.tdata), ALIGNOF (.tbss));
/* Initialised small data addressed as offsets from r2 */
.sdata2 : { PROVIDE (_SDA2_BASE_ = 32768); *(.sdata2 .sdata2.* .gnu.linkonce.s2.*) } > RAM