diff options
Diffstat (limited to 'c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom')
-rw-r--r-- | c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom index ab156f0164..a84b502717 100644 --- a/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom +++ b/c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom @@ -116,9 +116,11 @@ SECTIONS __TLS_BSS_end = .; } > rom __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)); .ctors : { ___ctors = .; |