mirror of
https://github.com/apache/nuttx.git
synced 2026-05-31 14:27:37 +08:00
arch/xtensa: Support __thread and thread_local keywords
Enable architecture-specific support for those keywords. This is a "gcc-based" thread local storage implementation.
This commit is contained in:
committed by
Xiang Xiao
parent
02828921db
commit
7548db1980
@@ -403,6 +403,7 @@ SECTIONS
|
||||
|
||||
.flash.rodata :
|
||||
{
|
||||
_rodata_reserved_start = ABSOLUTE(.);
|
||||
. = ALIGN(4);
|
||||
_srodata = ABSOLUTE(.);
|
||||
*(EXCLUDE_FILE (*libarch.a:esp32_spiflash.* *libarch.a:esp32_spicache.*
|
||||
@@ -469,8 +470,24 @@ SECTIONS
|
||||
*(.lit4.*)
|
||||
*(.gnu.linkonce.lit4.*)
|
||||
_lit4_end = ABSOLUTE(.);
|
||||
|
||||
/* TLS data. */
|
||||
|
||||
. = ALIGN(4);
|
||||
_thread_local_start = ABSOLUTE(.);
|
||||
|
||||
_stdata = ABSOLUTE(.);
|
||||
*(.tdata .tdata.* .gnu.linkonce.td.*);
|
||||
_etdata = ABSOLUTE(.);
|
||||
_stbss = ABSOLUTE(.);
|
||||
*(.tbss .tbss.* .gnu.linkonce.tb.* .tcommon);
|
||||
_etbss = ABSOLUTE(.);
|
||||
|
||||
_thread_local_end = ABSOLUTE(.);
|
||||
|
||||
_rodata_reserved_end = ABSOLUTE(.);
|
||||
} >default_rodata_seg AT>ROM
|
||||
_rodata_reserved_align = ALIGNOF(.flash.rodata);
|
||||
|
||||
_image_irom_vma = ADDR(.flash.text);
|
||||
_image_irom_lma = LOADADDR(.flash.text);
|
||||
|
||||
@@ -38,6 +38,7 @@ CONFIG_PREALLOC_TIMERS=4
|
||||
CONFIG_RAM_SIZE=114688
|
||||
CONFIG_RAM_START=0x20000000
|
||||
CONFIG_RR_INTERVAL=200
|
||||
CONFIG_SCHED_THREAD_LOCAL=y
|
||||
CONFIG_SCHED_WAITPID=y
|
||||
CONFIG_SPI=y
|
||||
CONFIG_START_DAY=6
|
||||
|
||||
Reference in New Issue
Block a user