esp-idf/components/esp32s2/ld/esp32s2_fragments.lf
Alexey Lapshin 0f98788d59 esp_system: Fix esp32c2/esp32c3/esp32h2 TLS size
The change fixes thread-local-storage size by removing .srodata section
from it. It initially was included in TLS section by mistake.
The issue was found when stack size increased after building applications
with GCC-11.1 compiler. Stack size became bigger because some new data
appeared in .srodata. See more details here:
adce62f53d
2022-07-01 16:08:04 +04:00

202 lines
3.9 KiB
Plaintext

[sections:text]
entries:
.text+
.literal+
[sections:data]
entries:
.data+
[sections:bss]
entries:
.bss+
[sections:common]
entries:
COMMON
[sections:rodata]
entries:
.rodata+
.sdata2+
[sections:rtc_text]
entries:
.rtc.text+
.rtc.literal
[sections:rtc_data]
entries:
.rtc.data+
[sections:rtc_rodata]
entries:
.rtc.rodata+
[sections:rtc_bss]
entries:
.rtc.bss
[sections:rtc_fast_coredump]
entries:
.rtc.fast.coredump+
[sections:rtc_coredump]
entries:
.rtc.coredump+
[sections:dram_coredump]
entries:
.dram1.coredump+
[sections:iram]
entries:
.iram1+
[sections:dram]
entries:
.dram1+
[sections:wifi_iram]
entries:
.wifi0iram+
[sections:wifi_rx_iram]
entries:
.wifirxiram+
[sections:wifi_slp_iram]
entries:
.wifislpiram+
[sections:wifi_or_slp_iram]
entries:
.wifiorslpiram+
[sections:wifi_slp_rx_iram]
entries:
.wifislprxiram+
[sections:wifi_log_error]
entries:
.rodata_wlog_error+
[sections:wifi_log_warning]
entries:
.rodata_wlog_warning+
[sections:wifi_log_info]
entries:
.rodata_wlog_info+
[sections:wifi_log_debug]
entries:
.rodata_wlog_debug+
[sections:wifi_log_verbose]
entries:
.rodata_wlog_verbose+
[scheme:default]
entries:
if APP_BUILD_USE_FLASH_SECTIONS = y:
text -> flash_text
rodata -> flash_rodata
else:
text -> iram0_text
rodata -> dram0_data
data -> dram0_data
bss -> dram0_bss
common -> dram0_bss
iram -> iram0_text
dram -> dram0_data
rtc_text -> rtc_text
rtc_data -> rtc_data
rtc_rodata -> rtc_data
rtc_bss -> rtc_bss
wifi_iram -> flash_text
wifi_rx_iram -> flash_text
dram_coredump -> dram_coredump
rtc_coredump -> rtc_coredump
rtc_fast_coredump -> rtc_fast_coredump
wifi_slp_iram -> flash_text
wifi_or_slp_iram -> flash_text
wifi_slp_rx_iram -> flash_text
if WIFI_LOG_DEFAULT_LEVEL_NONE = y:
wifi_log_error -> rodata_noload
wifi_log_warning -> rodata_noload
wifi_log_info -> rodata_noload
wifi_log_debug -> rodata_noload
wifi_log_verbose -> rodata_noload
if WIFI_LOG_DEFAULT_LEVEL_ERROR = y:
wifi_log_error -> flash_rodata
wifi_log_warning -> rodata_noload
wifi_log_info -> rodata_noload
wifi_log_debug -> rodata_noload
wifi_log_verbose -> rodata_noload
if WIFI_LOG_DEFAULT_LEVEL_WARN = y:
wifi_log_error -> flash_rodata
wifi_log_warning -> flash_rodata
wifi_log_info -> rodata_noload
wifi_log_debug -> rodata_noload
wifi_log_verbose -> rodata_noload
if WIFI_LOG_DEFAULT_LEVEL_INFO = y:
wifi_log_error -> flash_rodata
wifi_log_warning -> flash_rodata
wifi_log_info -> flash_rodata
wifi_log_debug -> rodata_noload
wifi_log_verbose -> rodata_noload
if WIFI_LOG_DEFAULT_LEVEL_DEBUG = y:
wifi_log_error -> flash_rodata
wifi_log_warning -> flash_rodata
wifi_log_info -> flash_rodata
wifi_log_debug -> flash_rodata
wifi_log_verbose -> rodata_noload
if WIFI_LOG_DEFAULT_LEVEL_VERBOSE = y:
wifi_log_error -> flash_rodata
wifi_log_warning -> flash_rodata
wifi_log_info -> flash_rodata
wifi_log_debug -> flash_rodata
wifi_log_verbose -> flash_rodata
[scheme:rtc]
entries:
text -> rtc_text
data -> rtc_data
rodata -> rtc_data
bss -> rtc_bss
common -> rtc_bss
[scheme:noflash]
entries:
text -> iram0_text
rodata -> dram0_data
[scheme:noflash_data]
entries:
rodata -> dram0_data
[scheme:noflash_text]
entries:
text -> iram0_text
[scheme:wifi_iram]
entries:
wifi_iram -> iram0_text
[scheme:wifi_rx_iram]
entries:
wifi_rx_iram -> iram0_text
[scheme:wifi_slp_iram]
entries:
wifi_slp_iram -> iram0_text
[scheme:wifi_or_slp_iram]
entries:
wifi_or_slp_iram -> iram0_text
[scheme:wifi_slp_rx_iram]
entries:
wifi_slp_rx_iram -> iram0_text