Changeset 960fd85 in rtems


Ignore:
Timestamp:
Jan 28, 2014, 10:52:17 AM (6 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.11, master
Children:
022851a
Parents:
16a41cc
git-author:
Sebastian Huber <sebastian.huber@…> (01/28/14 10:52:17)
git-committer:
Sebastian Huber <sebastian.huber@…> (02/04/14 09:06:34)
Message:

bsps: Thread-local storage (TLS) for linkcmds

Location:
c/src/lib/libbsp
Files:
79 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/arm/gba/startup/linkcmds

    r16a41cc r960fd85  
    140140    . = ALIGN(4);
    141141  } =0xFF
     142  .tdata : {
     143    _TLS_Data_begin = .;
     144    *(.tdata .tdata.* .gnu.linkonce.td.*)
     145    _TLS_Data_end = .;
     146  } =0xFF
     147  .tbss : {
     148    _TLS_BSS_begin = .;
     149    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     150    _TLS_BSS_end = .;
     151  }
     152  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     153  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     154  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     155  _TLS_Alignment = ALIGNOF (.tdata);
    142156  __rodata_end = . ;
    143157
     
    220234  calculate __ro_end
    221235 *************************************************************************/
    222   __ro_end =
    223         ADDR(.text) +
    224         SIZEOF(.text) +
    225         SIZEOF(.init) +
    226         SIZEOF(.fini) +
    227         SIZEOF(.rodata) +
    228         SIZEOF(.eh_frame) +
    229         SIZEOF(.gcc_except_table) +
    230         SIZEOF(.ctors) +
    231         SIZEOF(.dtors) +
    232         SIZEOF(.jcr) +
    233         SIZEOF(.ARM.extab) +
    234         SIZEOF(.ARM.exidx) +
    235         SIZEOF(.preinit_array) +
    236         SIZEOF(.init_array) +
    237         SIZEOF(.fini_array);
     236  __ro_end = .;
    238237  PROVIDE(__text_end__ = __ro_end );
    239238
     
    302301    *(.data.* .gnu.linkonce.d.*)
    303302    *(.data1)
    304     *(.tdata .tdata.* .gnu.linkonce.td.*)
    305303    *(.sdata .sdata.* .gnu.linkonce.s.*)
    306304    . = ALIGN(4);
     
    323321  {
    324322    *(.sbss2 .sbss2.* .gnu.linkonce.sb2.*)
    325     *(.tbss .tbss.* .gnu.linkonce.tb.*)
    326323    *(.tcommon)
    327324    *(.sbss .sbss.* .gnu.linkonce.sb.*)
  • c/src/lib/libbsp/arm/shared/startup/linkcmds.base

    r16a41cc r960fd85  
    123123        } > REGION_RODATA AT > REGION_RODATA_LOAD
    124124        .tdata : ALIGN_WITH_INPUT {
     125                _TLS_Data_begin = .;
    125126                *(.tdata .tdata.* .gnu.linkonce.td.*)
     127                _TLS_Data_end = .;
    126128        } > REGION_RODATA AT > REGION_RODATA_LOAD
    127129        .tbss : ALIGN_WITH_INPUT {
     130                _TLS_BSS_begin = .;
    128131                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
    129         } > REGION_RODATA AT > REGION_RODATA_LOAD
     132                _TLS_BSS_end = .;
     133        } > REGION_RODATA AT > REGION_RODATA_LOAD
     134        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     135        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     136        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     137        _TLS_Alignment = ALIGNOF (.tdata);
    130138        .preinit_array : ALIGN_WITH_INPUT {
    131139                PROVIDE_HIDDEN (__preinit_array_start = .);
  • c/src/lib/libbsp/avr/avrtest/startup/linkcmds

    r16a41cc r960fd85  
    152152     _etext = . ;
    153153  }  > text
    154   .data   : AT (ADDR (.text) + SIZEOF (.text))
    155   {
     154  .tdata : AT (ADDR (.text) + SIZEOF (.text)) {
    156155     PROVIDE (__data_start = .) ;
     156    _TLS_Data_begin = .;
     157    *(.tdata .tdata.* .gnu.linkonce.td.*)
     158    _TLS_Data_end = .;
     159  }  > data
     160  .tbss : {
     161    _TLS_BSS_begin = .;
     162    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     163    _TLS_BSS_end = .;
     164  }  > data
     165  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     166  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     167  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     168  _TLS_Alignment = ALIGNOF (.tdata);
     169  .data   :
     170  {
    157171    *(.data)
    158172    *(.data*)
  • c/src/lib/libbsp/bfin/TLL6527M/startup/linkcmds

    r16a41cc r960fd85  
    6666        ___DTOR_END__ = .;         
    6767    } > sdram
     68
     69    .tdata : {
     70        __TLS_Data_begin = .;
     71        *(.tdata .tdata.* .gnu.linkonce.td.*)
     72        __TLS_Data_end = .;
     73    } > sdram
     74
     75    .tbss : {
     76        __TLS_BSS_begin = .;
     77        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     78        __TLS_BSS_end = .;
     79    } > sdram
     80
     81    __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     82    __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     83    __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     84    __TLS_Alignment = ALIGNOF (.tdata);
    6885   
    6986    .fini :
  • c/src/lib/libbsp/bfin/bf537Stamp/startup/linkcmds

    r16a41cc r960fd85  
    7474        ___DTOR_END__ = .;         
    7575    } > sdram
     76
     77    .tdata : {
     78        __TLS_Data_begin = .;
     79        *(.tdata .tdata.* .gnu.linkonce.td.*)
     80        __TLS_Data_end = .;
     81    } > sdram
     82
     83    .tbss : {
     84        __TLS_BSS_begin = .;
     85        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     86        __TLS_BSS_end = .;
     87    } > sdram
     88
     89    __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     90    __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     91    __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     92    __TLS_Alignment = ALIGNOF (.tdata);
    7693   
    7794    .fini :
  • c/src/lib/libbsp/bfin/eZKit533/startup/linkcmds

    r16a41cc r960fd85  
    6363        ___DTOR_END__ = .;         
    6464    } > sdram
     65
     66    .tdata : {
     67        __TLS_Data_begin = .;
     68        *(.tdata .tdata.* .gnu.linkonce.td.*)
     69        __TLS_Data_end = .;
     70    } > sdram
     71
     72    .tbss : {
     73        __TLS_BSS_begin = .;
     74        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     75        __TLS_BSS_end = .;
     76    } > sdram
     77
     78    __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     79    __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     80    __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     81    __TLS_Alignment = ALIGNOF (.tdata);
    6582   
    6683    .fini :
  • c/src/lib/libbsp/h8300/h8sim/startup/linkcmds

    r16a41cc r960fd85  
    6060         _etext = .;
    6161    }  >ram
    62    .tors SIZEOF(.text) + ADDR(.text): {
     62    .tdata SIZEOF(.text) + ADDR(.text): {
     63        __TLS_Data_begin = .;
     64        *(.tdata .tdata.* .gnu.linkonce.td.*)
     65        __TLS_Data_end = .;
     66    }  >ram
     67    .tbss SIZEOF(.tdata) + ADDR(.tdata): {
     68        __TLS_BSS_begin = .;
     69        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     70        __TLS_BSS_end = .;
     71    }  >ram
     72    __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     73    __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     74    __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     75    __TLS_Alignment = ALIGNOF (.tdata);
     76   .tors SIZEOF(.tbss) + ADDR(.tbss): {
    6377        ___ctors = . ;
    6478        *(.ctors)
  • c/src/lib/libbsp/i386/pc386/startup/linkcmds

    r16a41cc r960fd85  
    9898  .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
    9999  .rodata1        : { *(.rodata1) }
     100  .tdata : {
     101    _TLS_Data_begin = .;
     102    *(.tdata .tdata.* .gnu.linkonce.td.*)
     103    _TLS_Data_end = .;
     104  }
     105  .tbss : {
     106    _TLS_BSS_begin = .;
     107    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     108    _TLS_BSS_end = .;
     109  }
     110  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     111  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     112  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     113  _TLS_Alignment = ALIGNOF (.tdata);
    100114  .eh_frame_hdr : { *(.eh_frame_hdr) }
    101115  .eh_frame       : ONLY_IF_RO { KEEP (*(.eh_frame)) }
  • c/src/lib/libbsp/lm32/lm32_evr/startup/linkcmds

    r16a41cc r960fd85  
    8080  .rodata         : { *(.rodata*) *(.gnu.linkonce.r*) } > sdram
    8181  .rodata1        : { *(.rodata1) }     > sdram
     82  .tdata : {
     83    _TLS_Data_begin = .;
     84    *(.tdata .tdata.* .gnu.linkonce.td.*)
     85    _TLS_Data_end = .;
     86  } > sdram
     87  .tbss : {
     88    _TLS_BSS_begin = .;
     89    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     90    _TLS_BSS_end = .;
     91  } > sdram
     92  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     93  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     94  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     95  _TLS_Alignment = ALIGNOF (.tdata);
    8296
    8397  /* Adjust the address for the data segment.  We want to adjust up to
  • c/src/lib/libbsp/lm32/milkymist/startup/linkcmds

    r16a41cc r960fd85  
    7979  .rodata         : { *(.rodata*) *(.gnu.linkonce.r*) } > sdram
    8080  .rodata1        : { *(.rodata1) }     > sdram
     81  .tdata : {
     82    _TLS_Data_begin = .;
     83    *(.tdata .tdata.* .gnu.linkonce.td.*)
     84    _TLS_Data_end = .;
     85  } > sdram
     86  .tbss : {
     87    _TLS_BSS_begin = .;
     88    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     89    _TLS_BSS_end = .;
     90  } > sdram
     91  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     92  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     93  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     94  _TLS_Alignment = ALIGNOF (.tdata);
    8195
    8296  /* Adjust the address for the data segment.  We want to adjust up to
  • c/src/lib/libbsp/m32c/m32cbsp/startup/linkcmds

    r16a41cc r960fd85  
    6161    PROVIDE(__romdatastart = .); /* IF_ROROM */
    6262  } > RAM
     63
     64  .tdata : {
     65    __TLS_Data_begin = .;
     66    *(.tdata .tdata.* .gnu.linkonce.td.*)
     67    __TLS_Data_end = .;
     68  } > RAM
     69  .tbss : {
     70    __TLS_BSS_begin = .;
     71    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     72    __TLS_BSS_end = .;
     73  } > RAM
     74  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     75  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     76  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     77  __TLS_Alignment = ALIGNOF (.tdata);
    6378
    6479  .data : {
  • c/src/lib/libbsp/m32r/m32rsim/startup/linkcmds

    r16a41cc r960fd85  
    8181  .rodata         : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
    8282  .rodata1        : { *(.rodata1) }
     83  .tdata : {
     84    _TLS_Data_begin = .;
     85    *(.tdata .tdata.* .gnu.linkonce.td.*)
     86    _TLS_Data_end = .;
     87  }
     88  .tbss : {
     89    _TLS_BSS_begin = .;
     90    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     91    _TLS_BSS_end = .;
     92  }
     93  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     94  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     95  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     96  _TLS_Alignment = ALIGNOF (.tdata);
    8397  .sdata2         :
    8498  {
  • c/src/lib/libbsp/m68k/av5282/startup/linkcmds

    r16a41cc r960fd85  
    134134    PROVIDE (_etext = .);
    135135    } >ram
     136
     137    .tdata : {
     138        _TLS_Data_begin = .;
     139        *(.tdata .tdata.* .gnu.linkonce.td.*)
     140        _TLS_Data_end = .;
     141    } >ram
     142
     143    .tbss : {
     144        _TLS_BSS_begin = .;
     145        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     146        _TLS_BSS_end = .;
     147    } >ram
     148
     149    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     150    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     151    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     152    _TLS_Alignment = ALIGNOF (.tdata);
    136153       
    137154        .data : {
  • c/src/lib/libbsp/m68k/av5282/startup/linkcmdsflash

    r16a41cc r960fd85  
    133133    PROVIDE (_etext = .);
    134134    } >flash
     135
     136    .tdata : {
     137        _TLS_Data_begin = .;
     138        *(.tdata .tdata.* .gnu.linkonce.td.*)
     139        _TLS_Data_end = .;
     140    } >flash
     141
     142    .tbss : {
     143        _TLS_BSS_begin = .;
     144        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     145        _TLS_BSS_end = .;
     146    } >flash
     147
     148    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     149    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     150    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     151    _TLS_Alignment = ALIGNOF (.tdata);
    135152       
    136         .data 0x1000 : AT ( ADDR(.text) + SIZEOF ( .text ) )
     153        .data 0x1000 : AT ( ADDR(.tdata) + SIZEOF ( .tdata ) )
    137154        {
    138155            PROVIDE( _data_dest_start = . );
  • c/src/lib/libbsp/m68k/av5282/startup/linkcmdsram

    r16a41cc r960fd85  
    133133    PROVIDE (_etext = .);
    134134    } >ram
     135
     136    .tdata : {
     137        _TLS_Data_begin = .;
     138        *(.tdata .tdata.* .gnu.linkonce.td.*)
     139        _TLS_Data_end = .;
     140    } >ram
     141
     142    .tbss : {
     143        _TLS_BSS_begin = .;
     144        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     145        _TLS_BSS_end = .;
     146    } >ram
     147
     148    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     149    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     150    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     151    _TLS_Alignment = ALIGNOF (.tdata);
    135152       
    136153        .data : {
  • c/src/lib/libbsp/m68k/csb360/startup/linkcmds

    r16a41cc r960fd85  
    103103   } > ram
    104104
     105   .tdata : {
     106        _TLS_Data_begin = .;
     107        *(.tdata .tdata.* .gnu.linkonce.td.*)
     108        _TLS_Data_end = .;
     109   } >ram
     110
     111   .tbss : {
     112        _TLS_BSS_begin = .;
     113        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     114        _TLS_BSS_end = .;
     115   } >ram
     116
     117   _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     118   _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     119   _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     120   _TLS_Alignment = ALIGNOF (.tdata);
     121
     122
    105123   .data :
    106124   {
  • c/src/lib/libbsp/m68k/gen68302/startup/linkcmds

    r16a41cc r960fd85  
    115115                PROVIDE (_etext = .);
    116116        } >ram
     117
     118        .tdata : {
     119                _TLS_Data_begin = .;
     120                *(.tdata .tdata.* .gnu.linkonce.td.*)
     121                _TLS_Data_end = .;
     122        } >ram
     123
     124        .tbss : {
     125                _TLS_BSS_begin = .;
     126                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     127                _TLS_BSS_end = .;
     128        } >ram
     129
     130        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     131        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     132        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     133        _TLS_Alignment = ALIGNOF (.tdata);
     134
    117135        .data : {
    118136                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/gen68340/startup/linkcmds

    r16a41cc r960fd85  
    143143                PROVIDE (_etext = .);
    144144        } >ram
     145
     146        .tdata : {
     147                _TLS_Data_begin = .;
     148                *(.tdata .tdata.* .gnu.linkonce.td.*)
     149                _TLS_Data_end = .;
     150        } >ram
     151
     152        .tbss : {
     153                _TLS_BSS_begin = .;
     154                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     155                _TLS_BSS_end = .;
     156        } >ram
     157
     158        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     159        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     160        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     161        _TLS_Alignment = ALIGNOF (.tdata);
     162
    145163        .data : {
    146164                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/gen68360/startup/linkcmds

    r16a41cc r960fd85  
    107107                PROVIDE (etext = .);
    108108        } >ram
     109
     110        .tdata : {
     111                _TLS_Data_begin = .;
     112                *(.tdata .tdata.* .gnu.linkonce.td.*)
     113                _TLS_Data_end = .;
     114        } >ram
     115
     116        .tbss : {
     117                _TLS_BSS_begin = .;
     118                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     119                _TLS_BSS_end = .;
     120        } >ram
     121
     122        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     123        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     124        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     125        _TLS_Alignment = ALIGNOF (.tdata);
     126
    109127        .data : {
    110128                _copy_start = .;
  • c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.bootp

    r16a41cc r960fd85  
    112112                PROVIDE (etext = .);
    113113        } >rom
     114
     115        .tdata : {
     116                _TLS_Data_begin = .;
     117                *(.tdata .tdata.* .gnu.linkonce.td.*)
     118                _TLS_Data_end = .;
     119        } >rom
     120
     121        .tbss : {
     122                _TLS_BSS_begin = .;
     123                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     124                _TLS_BSS_end = .;
     125        } >rom
     126
     127        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     128        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     129        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     130        _TLS_Alignment = ALIGNOF (.tdata);
     131
    114132        .data : AT(SIZEOF(.text)) {
    115133                _copy_start = .;
  • c/src/lib/libbsp/m68k/gen68360/startup/linkcmds.prom

    r16a41cc r960fd85  
    111111                PROVIDE (etext = .);
    112112        } >rom
     113
     114        .tdata : {
     115                _TLS_Data_begin = .;
     116                *(.tdata .tdata.* .gnu.linkonce.td.*)
     117                _TLS_Data_end = .;
     118        } >rom
     119
     120        .tbss : {
     121                _TLS_BSS_begin = .;
     122                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     123                _TLS_BSS_end = .;
     124        } >rom
     125
     126        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     127        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     128        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     129        _TLS_Alignment = ALIGNOF (.tdata);
     130
    113131        .data : AT(SIZEOF(.text)) {
    114132                _copy_start = .;
  • c/src/lib/libbsp/m68k/idp/startup/linkcmds

    r16a41cc r960fd85  
    112112                PROVIDE (_etext = .);
    113113        } >ram
     114
     115        .tdata : {
     116                _TLS_Data_begin = .;
     117                *(.tdata .tdata.* .gnu.linkonce.td.*)
     118                _TLS_Data_end = .;
     119        } >ram
     120
     121        .tbss : {
     122                _TLS_BSS_begin = .;
     123                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     124                _TLS_BSS_end = .;
     125        } >ram
     126
     127        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     128        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     129        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     130        _TLS_Alignment = ALIGNOF (.tdata);
     131
    114132        .data : {
    115133                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds

    r16a41cc r960fd85  
    138138   } > ram
    139139
     140  .tdata : {
     141    _TLS_Data_begin = .;
     142    *(.tdata .tdata.* .gnu.linkonce.td.*)
     143    _TLS_Data_end = .;
     144  } >ram
     145
     146  .tbss : {
     147    _TLS_BSS_begin = .;
     148    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     149    _TLS_BSS_end = .;
     150  } >ram
     151
     152  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     153  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     154  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     155  _TLS_Alignment = ALIGNOF (.tdata);
     156
    140157   .data BLOCK (0x4) : {
    141158           copy_start = .;
  • c/src/lib/libbsp/m68k/mcf5206elite/startup/linkcmds.flash

    r16a41cc r960fd85  
    137137
    138138   } >rom
     139
     140  .tdata : {
     141    _TLS_Data_begin = .;
     142    *(.tdata .tdata.* .gnu.linkonce.td.*)
     143    _TLS_Data_end = .;
     144  } >rom
     145
     146  .tbss : {
     147    _TLS_BSS_begin = .;
     148    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     149    _TLS_BSS_end = .;
     150  } >rom
     151
     152  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     153  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     154  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     155  _TLS_Alignment = ALIGNOF (.tdata);
    139156
    140157   .data 0x30000400 : AT(LOADADDR(.text) + SIZEOF(.text)) {
  • c/src/lib/libbsp/m68k/mcf52235/startup/linkcmds

    r16a41cc r960fd85  
    117117        *(.console_gdb_xfer)
    118118        *(.bootstrap_data)
     119    } >flash
     120
     121    .tdata : {
     122        _TLS_Data_begin = .;
     123        *(.tdata .tdata.* .gnu.linkonce.td.*)
     124        _TLS_Data_end = .;
    119125        . = ALIGN(16);
    120126        _estuff = .;
    121127        PROVIDE (_etext = .);
    122128    } >flash
     129
     130    .tbss : {
     131        _TLS_BSS_begin = .;
     132        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     133        _TLS_BSS_end = .;
     134    } >flash
     135
     136    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     137    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     138    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     139    _TLS_Alignment = ALIGNOF (.tdata);
    123140
    124141    .data 0x20000400 : AT (_estuff)
  • c/src/lib/libbsp/m68k/mcf5225x/startup/linkcmds

    r16a41cc r960fd85  
    117117        *(.console_gdb_xfer)
    118118        *(.bootstrap_data)
     119    } >flash
     120
     121    .tdata : {
     122        _TLS_Data_begin = .;
     123        *(.tdata .tdata.* .gnu.linkonce.td.*)
     124        _TLS_Data_end = .;
    119125        . = ALIGN(16);
    120126        _estuff = .;
    121127        PROVIDE (_etext = .);
    122128    } >flash
     129
     130    .tbss : {
     131        _TLS_BSS_begin = .;
     132        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     133        _TLS_BSS_end = .;
     134    } >flash
     135
     136    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     137    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     138    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     139    _TLS_Alignment = ALIGNOF (.tdata);
    123140
    124141    .data 0x20000400 : AT (_estuff)
  • c/src/lib/libbsp/m68k/mcf5235/startup/linkcmds

    r16a41cc r960fd85  
    141141    PROVIDE (_etext = .);
    142142    } >ram
     143
     144    .tdata : {
     145        _TLS_Data_begin = .;
     146        *(.tdata .tdata.* .gnu.linkonce.td.*)
     147        _TLS_Data_end = .;
     148    } > dram
     149
     150    .tbss : {
     151        _TLS_BSS_begin = .;
     152        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     153        _TLS_BSS_end = .;
     154    } > dram
     155
     156    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     157    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     158    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     159    _TLS_Alignment = ALIGNOF (.tdata);
    143160       
    144161        .data : {
  • c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsflash

    r16a41cc r960fd85  
    145145    PROVIDE (_etext = .);
    146146    } >flash
     147
     148    .tdata : {
     149        _TLS_Data_begin = .;
     150        *(.tdata .tdata.* .gnu.linkonce.td.*)
     151        _TLS_Data_end = .;
     152    } >flash
     153
     154    .tbss : {
     155        _TLS_BSS_begin = .;
     156        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     157        _TLS_BSS_end = .;
     158    } >flash
     159
     160    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     161    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     162    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     163    _TLS_Alignment = ALIGNOF (.tdata);
    147164       
    148         .data 0x4000 : AT ( ADDR(.text) + SIZEOF ( .text ) )
     165        .data 0x4000 : AT ( ADDR(.tdata) + SIZEOF ( .tdata ) )
    149166        {
    150167            PROVIDE( _data_dest_start = . );
  • c/src/lib/libbsp/m68k/mcf5235/startup/linkcmdsram

    r16a41cc r960fd85  
    141141    PROVIDE (_etext = .);
    142142    } >ram
     143
     144    .tdata : {
     145        _TLS_Data_begin = .;
     146        *(.tdata .tdata.* .gnu.linkonce.td.*)
     147        _TLS_Data_end = .;
     148    } >ram
     149
     150    .tbss : {
     151        _TLS_BSS_begin = .;
     152        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     153        _TLS_BSS_end = .;
     154    } >ram
     155
     156    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     157    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     158    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     159    _TLS_Alignment = ALIGNOF (.tdata);
    143160       
    144161        .data : {
  • c/src/lib/libbsp/m68k/mcf5329/startup/linkcmds

    r16a41cc r960fd85  
    133133    } > dram
    134134
     135    .tdata : {
     136        _TLS_Data_begin = .;
     137        *(.tdata .tdata.* .gnu.linkonce.td.*)
     138        _TLS_Data_end = .;
     139    } > dram
     140
     141    .tbss : {
     142        _TLS_BSS_begin = .;
     143        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     144        _TLS_BSS_end = .;
     145    } > dram
     146
     147    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     148    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     149    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     150    _TLS_Alignment = ALIGNOF (.tdata);
     151
    135152    .data :
    136153    {
  • c/src/lib/libbsp/m68k/mcf5329/startup/linkcmdsflash

    r16a41cc r960fd85  
    124124        *(.console_gdb_xfer)
    125125        *(.bootstrap_data)
     126    } > boot_flash
     127
     128    .tdata : {
     129        _TLS_Data_begin = .;
     130        *(.tdata .tdata.* .gnu.linkonce.td.*)
     131        _TLS_Data_end = .;
    126132        . = ALIGN(16);
    127133        _estuff = .;
    128134        PROVIDE (_etext = .);
    129135    } > boot_flash
     136
     137    .tbss : {
     138        _TLS_BSS_begin = .;
     139        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     140        _TLS_BSS_end = .;
     141    } > boot_flash
     142
     143    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     144    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     145    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     146    _TLS_Alignment = ALIGNOF (.tdata);
    130147
    131148    .data 0x40000500 : AT (_estuff)
  • c/src/lib/libbsp/m68k/mrm332/startup/linkcmds

    r16a41cc r960fd85  
    136136                PROVIDE (_etext = .);
    137137        } >ram
     138
     139        .tdata : {
     140                _TLS_Data_begin = .;
     141                *(.tdata .tdata.* .gnu.linkonce.td.*)
     142                _TLS_Data_end = .;
     143        } >ram
     144
     145        .tbss : {
     146                _TLS_BSS_begin = .;
     147                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     148                _TLS_BSS_end = .;
     149        } >ram
     150
     151        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     152        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     153        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     154        _TLS_Alignment = ALIGNOF (.tdata);
     155
    138156        .data : {
    139157                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/mrm332/startup/linkcmds_ROM

    r16a41cc r960fd85  
    147147    _endtext = .;
    148148  } > rom
     149  .tdata : {
     150    _TLS_Data_begin = .;
     151    *(.tdata .tdata.* .gnu.linkonce.td.*)
     152    _TLS_Data_end = .;
     153  } > rom
     154  .tbss : {
     155    _TLS_BSS_begin = .;
     156    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     157    _TLS_BSS_end = .;
     158  } > rom
     159  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     160  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     161  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     162  _TLS_Alignment = ALIGNOF (.tdata);
    149163  .gcc_exc :
    150   AT ( ADDR(.text) + SIZEOF( .text ) )
     164  AT ( ADDR(.tdata) + SIZEOF( .tdata ) )
    151165  {
    152166    *(.gcc_exc)
  • c/src/lib/libbsp/m68k/mvme136/startup/linkcmds

    r16a41cc r960fd85  
    112112                PROVIDE (_etext = .);
    113113        } >ram
     114
     115        .tdata : {
     116                _TLS_Data_begin = .;
     117                *(.tdata .tdata.* .gnu.linkonce.td.*)
     118                _TLS_Data_end = .;
     119        } >ram
     120
     121        .tbss : {
     122                _TLS_BSS_begin = .;
     123                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     124                _TLS_BSS_end = .;
     125        } >ram
     126
     127        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     128        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     129        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     130        _TLS_Alignment = ALIGNOF (.tdata);
     131
    114132        .data : {
    115133                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/mvme147/startup/linkcmds

    r16a41cc r960fd85  
    116116                PROVIDE (_etext = .);
    117117        } >ram
     118
     119        .tdata : {
     120                _TLS_Data_begin = .;
     121                *(.tdata .tdata.* .gnu.linkonce.td.*)
     122                _TLS_Data_end = .;
     123        } >ram
     124
     125        .tbss : {
     126                _TLS_BSS_begin = .;
     127                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     128                _TLS_BSS_end = .;
     129        } >ram
     130
     131        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     132        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     133        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     134        _TLS_Alignment = ALIGNOF (.tdata);
     135
    118136        .data : {
    119137                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/mvme147s/startup/linkcmds

    r16a41cc r960fd85  
    116116                PROVIDE (_etext = .);
    117117        } >ram
     118
     119        .tdata : {
     120                _TLS_Data_begin = .;
     121                *(.tdata .tdata.* .gnu.linkonce.td.*)
     122                _TLS_Data_end = .;
     123        } >ram
     124
     125        .tbss : {
     126                _TLS_BSS_begin = .;
     127                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     128                _TLS_BSS_end = .;
     129        } >ram
     130
     131        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     132        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     133        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     134        _TLS_Alignment = ALIGNOF (.tdata);
     135
    118136        .data : {
    119137                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/mvme162/startup/linkcmds

    r16a41cc r960fd85  
    119119                PROVIDE (_etext = .);
    120120        } >ram
     121
     122        .tdata : {
     123                _TLS_Data_begin = .;
     124                *(.tdata .tdata.* .gnu.linkonce.td.*)
     125                _TLS_Data_end = .;
     126        } >ram
     127
     128        .tbss : {
     129                _TLS_BSS_begin = .;
     130                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     131                _TLS_BSS_end = .;
     132        } >ram
     133
     134        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     135        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     136        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     137        _TLS_Alignment = ALIGNOF (.tdata);
     138
    121139        .data : {
    122140                PROVIDE (_copy_start = .);
  • c/src/lib/libbsp/m68k/mvme167/startup/linkcmds

    r16a41cc r960fd85  
    126126    PROVIDE (_etext = .);
    127127  } >ram
     128
     129  .tdata : {
     130    _TLS_Data_begin = .;
     131    *(.tdata .tdata.* .gnu.linkonce.td.*)
     132    _TLS_Data_end = .;
     133  } >ram
     134
     135  .tbss : {
     136    _TLS_BSS_begin = .;
     137    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     138    _TLS_BSS_end = .;
     139  } >ram
     140
     141  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     142  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     143  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     144  _TLS_Alignment = ALIGNOF (.tdata);
    128145 
    129146  .data : {
  • c/src/lib/libbsp/m68k/ods68302/startup/debugger

    r16a41cc r960fd85  
    2323    __DTOR_END__ = .;
    2424  }
     25
     26  .tdata : {
     27    _TLS_Data_begin = .;
     28    *(.tdata .tdata.* .gnu.linkonce.td.*)
     29    _TLS_Data_end = .;
     30  }
     31  .tbss : {
     32    _TLS_BSS_begin = .;
     33    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     34    _TLS_BSS_end = .;
     35  }
     36  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     37  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     38  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     39  _TLS_Alignment = ALIGNOF (.tdata);
    2540
    2641  .vtable (ADDR(.text) + SIZEOF(.text))  :
  • c/src/lib/libbsp/m68k/ods68302/startup/linkcmds

    r16a41cc r960fd85  
    129129        } >rom
    130130
     131        .tdata : {
     132                _TLS_Data_begin = .;
     133                *(.tdata .tdata.* .gnu.linkonce.td.*)
     134                _TLS_Data_end = .;
     135        } >rom
     136
     137        .tbss : {
     138                _TLS_BSS_begin = .;
     139                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     140                _TLS_BSS_end = .;
     141        } >rom
     142
     143        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     144        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     145        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     146        _TLS_Alignment = ALIGNOF (.tdata);
     147
     148
    131149        .data (ADDR(.vtable) + SIZEOF(.vtable)) :
    132           AT (ADDR(.text) + SIZEOF(.text)) {
     150          AT (ADDR(.tdata) + SIZEOF(.tdata)) {
    133151                PROVIDE (_copy_start = .);
    134152                *(.data*)
  • c/src/lib/libbsp/m68k/ods68302/startup/rom

    r16a41cc r960fd85  
    2323    __DTOR_END__ = .;
    2424  }
     25
     26  .tdata : {
     27    _TLS_Data_begin = .;
     28    *(.tdata .tdata.* .gnu.linkonce.td.*)
     29    _TLS_Data_end = .;
     30  }
     31  .tbss : {
     32    _TLS_BSS_begin = .;
     33    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     34    _TLS_BSS_end = .;
     35  }
     36  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     37  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     38  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     39  _TLS_Alignment = ALIGNOF (.tdata);
    2540 
    2641  .vtable 0 :
  • c/src/lib/libbsp/m68k/shared/startup/linkcmds.base

    r16a41cc r960fd85  
    5858        } > REGION_TEXT AT > REGION_TEXT_LOAD
    5959        .tdata : ALIGN_WITH_INPUT {
     60                _TLS_Data_begin = .;
    6061                *(.tdata .tdata.* .gnu.linkonce.td.*)
     62                _TLS_Data_end = .;
    6163        } > REGION_TEXT AT > REGION_TEXT_LOAD
    6264        .tbss : ALIGN_WITH_INPUT {
     65                _TLS_BSS_begin = .;
    6366                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
    64         } > REGION_TEXT AT > REGION_TEXT_LOAD
     67                _TLS_BSS_end = .;
     68        } > REGION_TEXT AT > REGION_TEXT_LOAD
     69        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     70        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     71        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     72        _TLS_Alignment = ALIGNOF (.tdata);
    6573        .preinit_array : ALIGN_WITH_INPUT {
    6674                PROVIDE_HIDDEN (__preinit_array_start = .);
  • c/src/lib/libbsp/m68k/sim68000/startup/linkcmds

    r16a41cc r960fd85  
    109109                PROVIDE (_etext = .);
    110110        }
    111         .data 0x80000 : AT (ADDR(.text) + SIZEOF (.text)) {
     111
     112        .tdata ADDR(.text) + SIZEOF (.text) : {
     113                _TLS_Data_begin = .;
     114                *(.tdata .tdata.* .gnu.linkonce.td.*)
     115                _TLS_Data_end = .;
     116        }
     117
     118        .tbss ADDR(.tdata) + SIZEOF (.tdata) : {
     119                _TLS_BSS_begin = .;
     120                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     121                _TLS_BSS_end = .;
     122        }
     123
     124        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     125        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     126        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     127        _TLS_Alignment = ALIGNOF (.tdata);
     128
     129        .data 0x80000 : AT (ADDR(.tdata) + SIZEOF (.tdata)) {
    112130                PROVIDE (_copy_start = .);
    113131                *(.data*)
  • c/src/lib/libbsp/m68k/uC5282/startup/linkcmds

    r16a41cc r960fd85  
    150150    } >ram
    151151
     152    .tdata : {
     153        _TLS_Data_begin = .;
     154        *(.tdata .tdata.* .gnu.linkonce.td.*)
     155        _TLS_Data_end = .;
     156    } > ram
     157
     158    .tbss : {
     159        _TLS_BSS_begin = .;
     160        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     161        _TLS_BSS_end = .;
     162    } > ram
     163
     164    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     165    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     166    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     167    _TLS_Alignment = ALIGNOF (.tdata);
     168
    152169    .data : {
    153170        PROVIDE( _data_dest_start = . );
  • c/src/lib/libbsp/mips/csb350/startup/linkcmds

    r16a41cc r960fd85  
    114114    *(.gnu.linkonce.r*)
    115115  } >ram 
     116
     117  .tdata : {
     118    _TLS_Data_begin = .;
     119    *(.tdata .tdata.* .gnu.linkonce.td.*)
     120    _TLS_Data_end = .;
     121  } >ram
     122
     123  .tbss : {
     124    _TLS_BSS_begin = .;
     125    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     126    _TLS_BSS_end = .;
     127  } >ram
     128
     129  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     130  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     131  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     132  _TLS_Alignment = ALIGNOF (.tdata);
    116133
    117134  .data :
  • c/src/lib/libbsp/mips/genmongoosev/startup/linkcmds

    r16a41cc r960fd85  
    111111    *(.gnu.linkonce.r*)
    112112  } >ram 
     113
     114  .tdata : {
     115    _TLS_Data_begin = .;
     116    *(.tdata .tdata.* .gnu.linkonce.td.*)
     117    _TLS_Data_end = .;
     118  } >ram
     119
     120  .tbss : {
     121    _TLS_BSS_begin = .;
     122    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     123    _TLS_BSS_end = .;
     124  } >ram
     125
     126  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     127  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     128  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     129  _TLS_Alignment = ALIGNOF (.tdata);
    113130
    114131  .data :
  • c/src/lib/libbsp/mips/hurricane/startup/linkcmds

    r16a41cc r960fd85  
    100100    *(.gnu.linkonce.r*)
    101101  }
     102
     103  .tdata : {
     104    _TLS_Data_begin = .;
     105    *(.tdata .tdata.* .gnu.linkonce.td.*)
     106    _TLS_Data_end = .;
     107  }
     108
     109  .tbss : {
     110    _TLS_BSS_begin = .;
     111    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     112    _TLS_BSS_end = .;
     113  }
     114
     115  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     116  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     117  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     118  _TLS_Alignment = ALIGNOF (.tdata);
     119
    102120   _fdata = ALIGN(16);
    103121
  • c/src/lib/libbsp/mips/jmr3904/startup/linkcmds

    r16a41cc r960fd85  
    9696    *(.gnu.linkonce.r*)
    9797  }
     98
     99  .tdata : {
     100    _TLS_Data_begin = .;
     101    *(.tdata .tdata.* .gnu.linkonce.td.*)
     102    _TLS_Data_end = .;
     103  }
     104
     105  .tbss : {
     106    _TLS_BSS_begin = .;
     107    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     108    _TLS_BSS_end = .;
     109  }
     110
     111  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     112  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     113  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     114  _TLS_Alignment = ALIGNOF (.tdata);
     115
    98116   _fdata = ALIGN(16);
    99117
  • c/src/lib/libbsp/mips/malta/startup/linkcmds

    r16a41cc r960fd85  
    9696    *(.gnu.linkonce.r*)
    9797  }
     98
     99  .tdata : {
     100    _TLS_Data_begin = .;
     101    *(.tdata .tdata.* .gnu.linkonce.td.*)
     102    _TLS_Data_end = .;
     103  }
     104
     105  .tbss : {
     106    _TLS_BSS_begin = .;
     107    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     108    _TLS_BSS_end = .;
     109  }
     110
     111  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     112  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     113  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     114  _TLS_Alignment = ALIGNOF (.tdata);
     115
    98116   _fdata = ALIGN(16);
    99117
  • c/src/lib/libbsp/mips/rbtx4925/startup/linkcmds

    r16a41cc r960fd85  
    100100    *(.gnu.linkonce.r*)
    101101  }
     102
     103  .tdata : {
     104    _TLS_Data_begin = .;
     105    *(.tdata .tdata.* .gnu.linkonce.td.*)
     106    _TLS_Data_end = .;
     107  }
     108
     109  .tbss : {
     110    _TLS_BSS_begin = .;
     111    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     112    _TLS_BSS_end = .;
     113  }
     114
     115  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     116  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     117  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     118  _TLS_Alignment = ALIGNOF (.tdata);
     119
    102120   _fdata = ALIGN(16);
    103121
  • c/src/lib/libbsp/mips/rbtx4938/startup/linkcmds

    r16a41cc r960fd85  
    100100    *(.gnu.linkonce.r*)
    101101  }
     102
     103  .tdata : {
     104    _TLS_Data_begin = .;
     105    *(.tdata .tdata.* .gnu.linkonce.td.*)
     106    _TLS_Data_end = .;
     107  }
     108
     109  .tbss : {
     110    _TLS_BSS_begin = .;
     111    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     112    _TLS_BSS_end = .;
     113  }
     114
     115  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     116  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     117  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     118  _TLS_Alignment = ALIGNOF (.tdata);
     119
    102120   _fdata = ALIGN(16);
    103121
  • c/src/lib/libbsp/moxie/moxiesim/startup/linkcmds

    r16a41cc r960fd85  
    133133  .rodata   : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) }
    134134  .rodata1   : { *(.rodata1) }
     135  .tdata : {
     136    _TLS_Data_begin = .;
     137    *(.tdata .tdata.* .gnu.linkonce.td.*)
     138    _TLS_Data_end = .;
     139  }
     140  .tbss : {
     141    _TLS_BSS_begin = .;
     142    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     143    _TLS_BSS_end = .;
     144  }
     145  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     146  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     147  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     148  _TLS_Alignment = ALIGNOF (.tdata);
    135149  .eh_frame_hdr : { *(.eh_frame_hdr) }
    136150  /* Adjust the address for the data segment.  We want to adjust up to
  • c/src/lib/libbsp/nios2/nios2_iss/startup/linkcmds

    r16a41cc r960fd85  
    196196        *(.rodata .rodata.* .gnu.linkonce.r.*)
    197197        *(.rodata1)
     198    } > onchip_memory_0
     199
     200    .tdata : {
     201        _TLS_Data_begin = .;
     202        *(.tdata .tdata.* .gnu.linkonce.td.*)
     203        _TLS_Data_end = .;
     204    } > onchip_memory_0
     205
     206    .tbss : {
     207        _TLS_BSS_begin = .;
     208        *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     209        _TLS_BSS_end = .;
    198210        . = ALIGN(32 / 8);
    199211        PROVIDE (__ram_rodata_end = ABSOLUTE(.));
    200212    } > onchip_memory_0
     213
     214    _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     215    _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     216    _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     217    _TLS_Alignment = ALIGNOF (.tdata);
    201218
    202219    PROVIDE (__flash_rodata_start = LOADADDR(.rodata));
  • c/src/lib/libbsp/powerpc/beatnik/startup/linkcmds

    r16a41cc r960fd85  
    9696  .rodata         : { *(.rodata*) *(.gnu.linkonce.r*) } > CODE
    9797  .rodata1        : { *(.rodata1) }     > CODE
     98  .tdata : {
     99    _TLS_Data_begin = .;
     100    *(.tdata .tdata.* .gnu.linkonce.td.*)
     101    _TLS_Data_end = .;
     102  } >CODE
     103  .tbss : {
     104    _TLS_BSS_begin = .;
     105    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     106    _TLS_BSS_end = .;
     107  } >CODE
     108  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     109  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     110  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     111  _TLS_Alignment = ALIGNOF (.tdata);
    98112_SDA2_BASE_ = __SDATA2_START__ + 0x8000;
    99113  .sdata2         : { *(.sdata2) *(.gnu.linkonce.s2.*)  }       > CODE
  • c/src/lib/libbsp/powerpc/ep1a/startup/linkcmds

    r16a41cc r960fd85  
    6565  .rodata         : { *(.rodata*) *(.gnu.linkonce.r*) }
    6666  .rodata1        : { *(.rodata1) }
     67  .tdata : {
     68    _TLS_Data_begin = .;
     69    *(.tdata .tdata.* .gnu.linkonce.td.*)
     70    _TLS_Data_end = .;
     71  }
     72  .tbss : {
     73    _TLS_BSS_begin = .;
     74    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     75    _TLS_BSS_end = .;
     76  }
     77  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     78  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     79  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     80  _TLS_Alignment = ALIGNOF (.tdata);
    6781  .eh_frame       : { *(.eh_frame) }
    6882  _etext = .;
  • c/src/lib/libbsp/powerpc/gen5200/startup/linkcmds.base

    r16a41cc r960fd85  
    121121                PROVIDE (etext = .);
    122122        } > RAM
     123
     124        .tdata : {
     125                _TLS_Data_begin = .;
     126                *(.tdata .tdata.* .gnu.linkonce.td.*)
     127                _TLS_Data_end = .;
     128        } > RAM
     129        .tbss : {
     130                _TLS_BSS_begin = .;
     131                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     132                _TLS_BSS_end = .;
     133        } > RAM
     134        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     135        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     136        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     137        _TLS_Alignment = ALIGNOF (.tdata);
    123138
    124139        .sdata2 : {
  • c/src/lib/libbsp/powerpc/haleakala/startup/linkcmds

    r16a41cc r960fd85  
    141141
    142142  text.size = text.end - text.start;
     143
     144  .tdata : {
     145    _TLS_Data_begin = .;
     146    *(.tdata .tdata.* .gnu.linkonce.td.*)
     147    _TLS_Data_end = .;
     148  } >RAM
     149
     150  .tbss : {
     151    _TLS_BSS_begin = .;
     152    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     153    _TLS_BSS_end = .;
     154  } >RAM
     155
     156  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     157  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     158  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     159  _TLS_Alignment = ALIGNOF (.tdata);
    143160
    144161  .jcr : { KEEP (*(.jcr)) } >RAM
  • c/src/lib/libbsp/powerpc/mbx8xx/startup/linkcmds

    r16a41cc r960fd85  
    139139    PROVIDE (__etext = .);
    140140 } > ram
     141
     142  .tdata : {
     143    _TLS_Data_begin = .;
     144    *(.tdata .tdata.* .gnu.linkonce.td.*)
     145    _TLS_Data_end = .;
     146  } >ram
     147
     148  .tbss : {
     149    _TLS_BSS_begin = .;
     150    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     151    _TLS_BSS_end = .;
     152  } >ram
     153
     154  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     155  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     156  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     157  _TLS_Alignment = ALIGNOF (.tdata);
    141158 
    142159  .rel.dyn        :
  • c/src/lib/libbsp/powerpc/mpc8260ads/startup/linkcmds

    r16a41cc r960fd85  
    140140
    141141    } > ram
     142
     143  .tdata : {
     144    _TLS_Data_begin = .;
     145    *(.tdata .tdata.* .gnu.linkonce.td.*)
     146    _TLS_Data_end = .;
     147  } >ram
     148
     149  .tbss : {
     150    _TLS_BSS_begin = .;
     151    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     152    _TLS_BSS_end = .;
     153  } >ram
     154
     155  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     156  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     157  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     158  _TLS_Alignment = ALIGNOF (.tdata);
    142159
    143160
  • c/src/lib/libbsp/powerpc/qemuppc/startup/linkcmds

    r16a41cc r960fd85  
    7676  PROVIDE (__DTOR_END__ = .);
    7777  .jcr            : { KEEP (*(.jcr))    } > ROM =0
     78
     79  .tdata : {
     80    _TLS_Data_begin = .;
     81    *(.tdata .tdata.* .gnu.linkonce.td.*)
     82    _TLS_Data_end = .;
     83  } >ROM =0
     84  .tbss : {
     85    _TLS_BSS_begin = .;
     86    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     87    _TLS_BSS_end = .;
     88  } >ROM =0
     89  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     90  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     91  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     92  _TLS_Alignment = ALIGNOF (.tdata);
    7893
    7994  .rodata :
  • c/src/lib/libbsp/powerpc/score603e/startup/linkcmds

    r16a41cc r960fd85  
    104104  .rodata         : { *(.rodata*) *(.gnu.linkonce.r*) } >RAM
    105105  .rodata1        : { *(.rodata1)               } >RAM
     106  .tdata : {
     107    _TLS_Data_begin = .;
     108    *(.tdata .tdata.* .gnu.linkonce.td.*)
     109    _TLS_Data_end = .;
     110  } >RAM
     111  .tbss : {
     112    _TLS_BSS_begin = .;
     113    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     114    _TLS_BSS_end = .;
     115  } >RAM
     116  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     117  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     118  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     119  _TLS_Alignment = ALIGNOF (.tdata);
    106120  .eh_frame       : { *(.eh_frame)              } >RAM
    107121  _etext = .;
  • c/src/lib/libbsp/powerpc/shared/startup/linkcmds

    r16a41cc r960fd85  
    8181  .rodata1        : { *(.rodata1) }     > CODE
    8282
     83  .tdata : {
     84    _TLS_Data_begin = .;
     85    *(.tdata .tdata.* .gnu.linkonce.td.*)
     86    _TLS_Data_end = .;
     87  } >CODE
     88
     89  .tbss : {
     90    _TLS_BSS_begin = .;
     91    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     92    _TLS_BSS_end = .;
     93  } >CODE
     94
     95  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     96  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     97  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     98  _TLS_Alignment = ALIGNOF (.tdata);
     99
    83100  /* Adjust the address for the data segment.  We want to adjust up to
    84101     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/powerpc/shared/startup/linkcmds.base

    r16a41cc r960fd85  
    110110        } > REGION_RODATA AT > REGION_RODATA_LOAD
    111111        .tdata : ALIGN_WITH_INPUT {
     112                _TLS_Data_begin = .;
    112113                *(.tdata .tdata.* .gnu.linkonce.td.*)
     114                _TLS_Data_end = .;
    113115        } > REGION_RODATA AT > REGION_RODATA_LOAD
    114116        .tbss : ALIGN_WITH_INPUT {
     117                _TLS_BSS_begin = .;
    115118                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
    116         } > REGION_RODATA AT > REGION_RODATA_LOAD
     119                _TLS_BSS_end = .;
     120        } > REGION_RODATA AT > REGION_RODATA_LOAD
     121        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     122        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     123        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     124        _TLS_Alignment = ALIGNOF (.tdata);
    117125        .preinit_array : ALIGN_WITH_INPUT {
    118126                PROVIDE_HIDDEN (__preinit_array_start = .);
  • c/src/lib/libbsp/powerpc/ss555/startup/linkcmds

    r16a41cc r960fd85  
    133133    PROVIDE (etext = .);
    134134    PROVIDE (__etext = .);
     135  }
     136  text.size = text.end - text.start;
     137
     138  .tdata : {
     139    _TLS_Data_begin = .;
     140    *(.tdata .tdata.* .gnu.linkonce.td.*)
     141    _TLS_Data_end = .;
    135142
    136143    /*
     
    140147    data.contents.start = .;
    141148  }
    142   text.size = text.end - text.start;
     149  .tbss : {
     150    _TLS_BSS_begin = .;
     151    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     152    _TLS_BSS_end = .;
     153  }
     154  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     155  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     156  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     157  _TLS_Alignment = ALIGNOF (.tdata);
    143158
    144159  /*
  • c/src/lib/libbsp/powerpc/tqm8xx/startup/linkcmds.base

    r16a41cc r960fd85  
    113113                PROVIDE (etext = .);
    114114        } > RAM
     115
     116        .tdata : {
     117                _TLS_Data_begin = .;
     118                *(.tdata .tdata.* .gnu.linkonce.td.*)
     119                _TLS_Data_end = .;
     120        } > RAM
     121
     122        .tbss : {
     123                _TLS_BSS_begin = .;
     124                *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     125                _TLS_BSS_end = .;
     126        } > RAM
     127
     128        _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     129        _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     130        _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     131        _TLS_Alignment = ALIGNOF (.tdata);
    115132
    116133        .sdata2 : {
  • c/src/lib/libbsp/powerpc/virtex4/startup/linkcmds

    r16a41cc r960fd85  
    9595  .rodata1        : { *(.rodata1)                                      } > RAM
    9696
     97  .tdata : {
     98    _TLS_Data_begin = .;
     99    *(.tdata .tdata.* .gnu.linkonce.td.*)
     100    _TLS_Data_end = .;
     101  } >RAM
     102
     103  .tbss : {
     104    _TLS_BSS_begin = .;
     105    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     106    _TLS_BSS_end = .;
     107  } >RAM
     108
     109  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     110  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     111  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     112  _TLS_Alignment = ALIGNOF (.tdata);
     113
    97114  /* Initialised small data addressed as offsets from r2 */
    98115_SDA2_BASE_ = __SDATA2_START__ + 0x8000;
  • c/src/lib/libbsp/powerpc/virtex5/startup/linkcmds

    r16a41cc r960fd85  
    9595  .rodata1        : { *(.rodata1)                                      } > RAM
    9696
     97  .tdata : {
     98    _TLS_Data_begin = .;
     99    *(.tdata .tdata.* .gnu.linkonce.td.*)
     100    _TLS_Data_end = .;
     101  } >RAM
     102
     103  .tbss : {
     104    _TLS_BSS_begin = .;
     105    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     106    _TLS_BSS_end = .;
     107  } >RAM
     108
     109  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     110  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     111  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     112  _TLS_Alignment = ALIGNOF (.tdata);
     113
    97114  /* Initialised small data addressed as offsets from r2 */
    98115_SDA2_BASE_ = __SDATA2_START__ + 0x8000;
  • c/src/lib/libbsp/sh/gensh1/startup/linkcmds

    r16a41cc r960fd85  
    129129  _etext = .;
    130130  PROVIDE (etext = .);
    131   .fini    .  : { *(.fini)    } =0
    132   .rodata  .  : { *(.rodata*) *(.gnu.linkonce.r*) }
    133   .rodata1 .  : { *(.rodata1) }
     131  .fini    .  : { *(.fini)    } > ram =0
     132  .rodata  .  : { *(.rodata*) *(.gnu.linkonce.r*) } > ram
     133  .rodata1 .  : { *(.rodata1) } > ram
     134  .tdata : {
     135    __TLS_Data_begin = .;
     136    *(.tdata .tdata.* .gnu.linkonce.td.*)
     137    __TLS_Data_end = .;
     138  } > ram
     139  .tbss : {
     140    __TLS_BSS_begin = .;
     141    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     142    __TLS_BSS_end = .;
     143  } > ram
     144  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     145  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     146  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     147  __TLS_Alignment = ALIGNOF (.tdata);
    134148  /* Adjust the address for the data segment.  We want to adjust up to
    135149     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/sh/gensh2/startup/linkcmds

    r16a41cc r960fd85  
    140140  _etext = .;
    141141  PROVIDE (etext = .);
    142   .fini    .  : { *(.fini)    } =0
    143   .rodata  .  : { *(.rodata*) *(.gnu.linkonce.r*) }
    144   .rodata1 .  : { *(.rodata1) }
     142  .fini    .  : { *(.fini)    } > ram =0
     143  .rodata  .  : { *(.rodata*) *(.gnu.linkonce.r*) } > ram
     144  .rodata1 .  : { *(.rodata1) } > ram
     145  .tdata : {
     146    __TLS_Data_begin = .;
     147    *(.tdata .tdata.* .gnu.linkonce.td.*)
     148    __TLS_Data_end = .;
     149  } > ram
     150  .tbss : {
     151    __TLS_BSS_begin = .;
     152    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     153    __TLS_BSS_end = .;
     154  } > ram
     155  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     156  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     157  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     158  __TLS_Alignment = ALIGNOF (.tdata);
    145159  /* Adjust the address for the data segment.  We want to adjust up to
    146160     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/sh/gensh2/startup/linkcmds.ram

    r16a41cc r960fd85  
    139139  _etext = .;
    140140  PROVIDE (etext = .);
    141   .fini    .  : { *(.fini)    } =0
    142   .rodata  .  : { *(.rodata) *(.gnu.linkonce.r*) }
    143   .rodata1 .  : { *(.rodata1) }
     141  .fini    .  : { *(.fini)    } > ram =0
     142  .rodata  .  : { *(.rodata) *(.gnu.linkonce.r*) } > ram
     143  .rodata1 .  : { *(.rodata1) } > ram
     144  .tdata : {
     145    __TLS_Data_begin = .;
     146    *(.tdata .tdata.* .gnu.linkonce.td.*)
     147    __TLS_Data_end = .;
     148  } > ram
     149  .tbss : {
     150    __TLS_BSS_begin = .;
     151    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     152    __TLS_BSS_end = .;
     153  } > ram
     154  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     155  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     156  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     157  __TLS_Alignment = ALIGNOF (.tdata);
    144158  /* Adjust the address for the data segment.  We want to adjust up to
    145159     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/sh/gensh2/startup/linkcmds.rom

    r16a41cc r960fd85  
    140140  _etext = .;
    141141  PROVIDE (etext = .);
    142   .fini    .  : { *(.fini)    } =0
    143   .rodata  .  : { *(.rodata) *(.gnu.linkonce.r*) }
    144   .rodata1 .  : { *(.rodata1) }
     142  .fini    .  : { *(.fini)    } > ram =0
     143  .rodata  .  : { *(.rodata) *(.gnu.linkonce.r*) } > ram
     144  .rodata1 .  : { *(.rodata1) } > ram
     145  .tdata : {
     146    __TLS_Data_begin = .;
     147    *(.tdata .tdata.* .gnu.linkonce.td.*)
     148    __TLS_Data_end = .;
     149  } > ram
     150  .tbss : {
     151    __TLS_BSS_begin = .;
     152    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     153    __TLS_BSS_end = .;
     154  } > ram
     155  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     156  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     157  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     158  __TLS_Alignment = ALIGNOF (.tdata);
    145159  /* Adjust the address for the data segment.  We want to adjust up to
    146160     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/sh/gensh4/startup/linkcmds

    r16a41cc r960fd85  
    9494    *(.gnu.linkonce.r*)
    9595  } > ram
     96  .tdata : {
     97    __TLS_Data_begin = .;
     98    *(.tdata .tdata.* .gnu.linkonce.td.*)
     99    __TLS_Data_end = .;
     100  } > ram
     101  .tbss : {
     102    __TLS_BSS_begin = .;
     103    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     104    __TLS_BSS_end = .;
     105  } > ram
     106  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     107  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     108  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     109  __TLS_Alignment = ALIGNOF (.tdata);
    96110  .ctors   :
    97111  {
  • c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom

    r16a41cc r960fd85  
    106106    . = ALIGN(32);
    107107  } > rom
     108  .tdata : {
     109    __TLS_Data_begin = .;
     110    *(.tdata .tdata.* .gnu.linkonce.td.*)
     111    __TLS_Data_end = .;
     112  } > rom
     113  .tbss : {
     114    __TLS_BSS_begin = .;
     115    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     116    __TLS_BSS_end = .;
     117  } > rom
     118  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     119  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     120  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     121  __TLS_Alignment = ALIGNOF (.tdata);
    108122  .ctors   :
    109123  {
  • c/src/lib/libbsp/sh/gensh4/startup/linkcmds.rom2ram

    r16a41cc r960fd85  
    9393    . = ALIGN(32);
    9494  } > ram
     95  .tdata : {
     96    __TLS_Data_begin = .;
     97    *(.tdata .tdata.* .gnu.linkonce.td.*)
     98    __TLS_Data_end = .;
     99  } > ram
     100  .tbss : {
     101    __TLS_BSS_begin = .;
     102    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     103    __TLS_BSS_end = .;
     104  } > ram
     105  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     106  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     107  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     108  __TLS_Alignment = ALIGNOF (.tdata);
    95109  .ctors   :  AT(LOADADDR(.rodata) + SIZEOF(.rodata))
    96110  {
  • c/src/lib/libbsp/sh/shsim/startup/linkcmds

    r16a41cc r960fd85  
    128128  _etext = .;
    129129  PROVIDE (etext = .);
    130   .rodata  .  : { *(.rodata*) .rodata.* *(.gnu.linkonce.r*) }
    131   .rodata1 .  : { *(.rodata1) }
     130  .rodata  .  : { *(.rodata*) .rodata.* *(.gnu.linkonce.r*) } > ram
     131  .rodata1 .  : { *(.rodata1) } > ram
     132  .tdata : {
     133    __TLS_Data_begin = .;
     134    *(.tdata .tdata.* .gnu.linkonce.td.*)
     135    __TLS_Data_end = .;
     136  } > ram
     137  .tbss : {
     138    __TLS_BSS_begin = .;
     139    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     140    __TLS_BSS_end = .;
     141  } > ram
     142  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     143  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     144  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     145  __TLS_Alignment = ALIGNOF (.tdata);
    132146  /* Adjust the address for the data segment.  We want to adjust up to
    133147     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/sh/shsim/startup/linkcmds.sim

    r16a41cc r960fd85  
    122122  _etext = .;
    123123  PROVIDE (etext = .);
    124   .rodata  .  : { *(.rodata*) .rodata.* *(.gnu.linkonce.r*) }
    125   .rodata1 .  : { *(.rodata1) }
     124  .rodata  .  : { *(.rodata*) .rodata.* *(.gnu.linkonce.r*) } > ram
     125  .rodata1 .  : { *(.rodata1) } > ram
     126  .tdata : {
     127    __TLS_Data_begin = .;
     128    *(.tdata .tdata.* .gnu.linkonce.td.*)
     129    __TLS_Data_end = .;
     130  } > ram
     131  .tbss : {
     132    __TLS_BSS_begin = .;
     133    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     134    __TLS_BSS_end = .;
     135  } > ram
     136  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     137  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     138  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     139  __TLS_Alignment = ALIGNOF (.tdata);
    126140  /* Adjust the address for the data segment.  We want to adjust up to
    127141     the same address within the page on the next page up.  */
  • c/src/lib/libbsp/sparc/shared/startup/linkcmds.base

    r16a41cc r960fd85  
    109109    . = ALIGN (16);
    110110  } > ram
     111  .tdata : {
     112    _TLS_Data_begin = .;
     113    *(.tdata .tdata.* .gnu.linkonce.td.*)
     114    _TLS_Data_end = .;
     115  } > ram
     116  .tbss : {
     117    _TLS_BSS_begin = .;
     118    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     119    _TLS_BSS_end = .;
     120  } > ram
     121  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     122  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     123  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     124  _TLS_Alignment = ALIGNOF (.tdata);
    111125  .rtemsroset : {
    112126    /* for pre rtems-libbsd FreeBSD code */
  • c/src/lib/libbsp/sparc64/shared/startup/linkcmds

    r16a41cc r960fd85  
    149149    _etext = . ;
    150150  } > ram
     151
     152  .tdata : AT (ADDR (.text) + SIZEOF (.text)) {
     153    _TLS_Data_begin = .;
     154    *(.tdata .tdata.* .gnu.linkonce.td.*)
     155    _TLS_Data_end = .;
     156  } > ram
     157  .tbss : AT (ADDR (.tdata) + SIZEOF (.tdata)) {
     158    _TLS_BSS_begin = .;
     159    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     160    _TLS_BSS_end = .;
     161  } > ram
     162  _TLS_Data_size = _TLS_Data_end - _TLS_Data_begin;
     163  _TLS_BSS_size = _TLS_BSS_end - _TLS_BSS_begin;
     164  _TLS_Size = _TLS_BSS_end - _TLS_Data_begin;
     165  _TLS_Alignment = ALIGNOF (.tdata);
    151166 
    152   .data   : AT (ADDR (.text) + SIZEOF (.text))
     167  .data   : AT (ADDR (.tbss) + SIZEOF (.tbss))
    153168  {
    154169     PROVIDE (__data_start = .) ;
  • c/src/lib/libbsp/v850/gdbv850sim/startup/linkcmds

    r16a41cc r960fd85  
    9292  .rodata       : { *(.rodata) *(.rodata.*) *(.gnu.linkonce.r*) }
    9393  .rodata1      : { *(.rodata1) }
     94  .tdata : {
     95    __TLS_Data_begin = .;
     96    *(.tdata .tdata.* .gnu.linkonce.td.*)
     97    __TLS_Data_end = .;
     98  }
     99  .tbss : {
     100    __TLS_BSS_begin = .;
     101    *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
     102    __TLS_BSS_end = .;
     103  }
     104  __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
     105  __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
     106  __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
     107  __TLS_Alignment = ALIGNOF (.tdata);
    94108  .data         :
    95109  {
Note: See TracChangeset for help on using the changeset viewer.