From 66eeea48485aed90af0cdfd23bad4303b99ff546 Mon Sep 17 00:00:00 2001 From: TAiGA <> Date: Fri, 2 Dec 2022 11:36:21 +0800 Subject: [PATCH 1/9] Move C++ constructor and destructor tables and .bss to .irom0 (flash) --- tools/sdk/ld/eagle.app.v6.common.ld.h | 48 +++++++++++++++++++ tools/sdk/ld/eagle.app.v6.common.ld.vtables.h | 18 +------ 2 files changed, 49 insertions(+), 17 deletions(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index 7427929848..64e963ceb4 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -162,6 +162,24 @@ SECTIONS *(.rodata._ZTV*) /* C++ vtables */ #endif + . = ALIGN(4); /* this table MUST be 4-byte aligned */ + /* C++ constructor and destructor tables, properly ordered: */ + __init_array_start = ABSOLUTE(.); + KEEP (*crtbegin.o(.ctors)) + KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) + KEEP (*(SORT(.ctors.*))) + KEEP (*(.ctors)) + __init_array_end = ABSOLUTE(.); + KEEP (*crtbegin.o(.dtors)) + KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) + KEEP (*(SORT(.dtors.*))) + KEEP (*(.dtors)) + . = ALIGN(4); /* this table MUST be 4-byte aligned */ + _bss_table_start = ABSOLUTE(.); + LONG(_bss_start) + LONG(_bss_end) + _bss_table_end = ABSOLUTE(.); + *libgcc.a:unwind-dw2.o(.literal .text .rodata .literal.* .text.* .rodata.*) *libgcc.a:unwind-dw2-fde.o(.literal .text .rodata .literal.* .text.* .rodata.*) @@ -229,6 +247,36 @@ SECTIONS /* Fundamental type info */ *(.rodata._ZTIPKc .rodata._ZTIc .rodata._ZTIv .rodata._ZTSv .rodata._ZTSc .rodata._ZTSPKc .rodata._ZTSi .rodata._ZTIi) + /* std::make_shared */ + *(.rodata._ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag) + +#ifdef FREE_MORE_DRAM + *(.sdk.version) + *libc.a:lib_a-dtoa.o (.rodata .rodata.*) + *libc.a:lib_a-gdtoa-gethex.o (.rodata .rodata.*) + *libc.a:lib_a-impure.o (.rodata .rodata.*) + *libc.a:lib_a-lcltime.o (.rodata .rodata.*) + *libc.a:lib_a-lnumeric.o (.rodata .rodata.*) + *libc.a:lib_a-locale.o (.rodata .rodata.* .data) + *libc.a:lib_a-mprec.o (.rodata .rodata.*) + *libc.a:lib_a-nano-svfprintf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-svfscanf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfprintf_float.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfprintf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfscanf_float.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfscanf_i.o (.rodata .rodata.*) + *libc.a:lib_a-rand.o (.rodata .rodata.*) + *libc.a:lib_a-strtod.o (.rodata .rodata.*) + *libc.a:lib_a-tzset_r.o (.rodata .rodata.*) + *libc.a:lib_a-tzvars.o (.rodata .rodata.*) + *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) + *libnet80211.a:ieee80211_scan.o (.rodata .rodata.* .data) + *libphy.a:phy_chip_v6.o (.rodata .rodata.*) + *libpp.a:esf_buf.o (.rodata .rodata.*) +#endif + . = ALIGN(4); *(.gcc_except_table .gcc_except_table.*) . = ALIGN(4); diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.vtables.h b/tools/sdk/ld/eagle.app.v6.common.ld.vtables.h index 6649e08a25..f837e12d41 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.vtables.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.vtables.h @@ -12,18 +12,7 @@ *(.gnu.linkonce.e.*) *(.gnu.version_r) *(.eh_frame) - . = (. + 3) & ~ 3; - /* C++ constructor and destructor tables, properly ordered: */ - __init_array_start = ABSOLUTE(.); - KEEP (*crtbegin.o(.ctors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - __init_array_end = ABSOLUTE(.); - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) + . = ALIGN(4); /* C++ exception handlers table: */ __XT_EXCEPTION_DESCS__ = ABSOLUTE(.); *(.xt_except_desc) @@ -32,11 +21,6 @@ *(.xt_except_desc_end) *(.dynamic) *(.gnu.version_d) - . = ALIGN(4); /* this table MUST be 4-byte aligned */ - _bss_table_start = ABSOLUTE(.); - LONG(_bss_start) - LONG(_bss_end) - _bss_table_end = ABSOLUTE(.); _rodata_end = ABSOLUTE(.); } >dram0_0_seg :dram0_0_phdr From e8df5a09b821193f1ecb99179c69f3b480107218 Mon Sep 17 00:00:00 2001 From: TAiGA <> Date: Fri, 2 Dec 2022 12:35:57 +0800 Subject: [PATCH 2/9] Fixed --- tools/sdk/ld/eagle.app.v6.common.ld.h | 1 - 1 file changed, 1 deletion(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index 64e963ceb4..3a6b62d39c 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -272,7 +272,6 @@ SECTIONS *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) - *libnet80211.a:ieee80211_scan.o (.rodata .rodata.* .data) *libphy.a:phy_chip_v6.o (.rodata .rodata.*) *libpp.a:esf_buf.o (.rodata .rodata.*) #endif From 4a3856f8d09edf44be33705cbb562b0d6404a548 Mon Sep 17 00:00:00 2001 From: TAiGA <> Date: Fri, 2 Dec 2022 15:50:10 +0800 Subject: [PATCH 3/9] Move FREE_MORE_DRAM --- tools/sdk/ld/eagle.app.v6.common.ld.h | 55 ++++++++++++++------------- 1 file changed, 29 insertions(+), 26 deletions(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index 3a6b62d39c..d525793241 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -74,6 +74,35 @@ SECTIONS _dport0_data_end = ABSOLUTE(.); } >dport0_0_seg :dport0_0_phdr +#ifdef FREE_MORE_DRAM + .irom0.text1 : ALIGN(4) + { + *(.sdk.version) + *libc.a:lib_a-dtoa.o (.rodata .rodata.*) + *libc.a:lib_a-gdtoa-gethex.o (.rodata .rodata.*) + *libc.a:lib_a-impure.o (.rodata .rodata.*) + *libc.a:lib_a-lcltime.o (.rodata .rodata.*) + *libc.a:lib_a-lnumeric.o (.rodata .rodata.*) + *libc.a:lib_a-locale.o (.rodata .rodata.* .data) + *libc.a:lib_a-mprec.o (.rodata .rodata.*) + *libc.a:lib_a-nano-svfprintf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-svfscanf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfprintf_float.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfprintf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfscanf_float.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfscanf_i.o (.rodata .rodata.*) + *libc.a:lib_a-rand.o (.rodata .rodata.*) + *libc.a:lib_a-strtod.o (.rodata .rodata.*) + *libc.a:lib_a-tzset_r.o (.rodata .rodata.*) + *libc.a:lib_a-tzvars.o (.rodata .rodata.*) + *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) + *libphy.a:phy_chip_v6.o (.rodata .rodata.*) + *libpp.a:esf_buf.o (.rodata .rodata.*) + } >irom0_0_seg :irom0_0_phdr +#endif + .data : ALIGN(4) { _data_start = ABSOLUTE(.); @@ -250,32 +279,6 @@ SECTIONS /* std::make_shared */ *(.rodata._ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag) -#ifdef FREE_MORE_DRAM - *(.sdk.version) - *libc.a:lib_a-dtoa.o (.rodata .rodata.*) - *libc.a:lib_a-gdtoa-gethex.o (.rodata .rodata.*) - *libc.a:lib_a-impure.o (.rodata .rodata.*) - *libc.a:lib_a-lcltime.o (.rodata .rodata.*) - *libc.a:lib_a-lnumeric.o (.rodata .rodata.*) - *libc.a:lib_a-locale.o (.rodata .rodata.* .data) - *libc.a:lib_a-mprec.o (.rodata .rodata.*) - *libc.a:lib_a-nano-svfprintf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-svfscanf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfprintf_float.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfprintf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfscanf_float.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfscanf_i.o (.rodata .rodata.*) - *libc.a:lib_a-rand.o (.rodata .rodata.*) - *libc.a:lib_a-strtod.o (.rodata .rodata.*) - *libc.a:lib_a-tzset_r.o (.rodata .rodata.*) - *libc.a:lib_a-tzvars.o (.rodata .rodata.*) - *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) - *libphy.a:phy_chip_v6.o (.rodata .rodata.*) - *libpp.a:esf_buf.o (.rodata .rodata.*) -#endif - . = ALIGN(4); *(.gcc_except_table .gcc_except_table.*) . = ALIGN(4); From b7ec1ecf8bb5ecac9bbf9bbf8f45661c4ce6d64c Mon Sep 17 00:00:00 2001 From: TAiGA <> Date: Fri, 2 Dec 2022 16:24:48 +0800 Subject: [PATCH 4/9] Revert "Move FREE_MORE_DRAM" This reverts commit 4a3856f8d09edf44be33705cbb562b0d6404a548. --- tools/sdk/ld/eagle.app.v6.common.ld.h | 55 +++++++++++++-------------- 1 file changed, 26 insertions(+), 29 deletions(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index d525793241..3a6b62d39c 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -74,35 +74,6 @@ SECTIONS _dport0_data_end = ABSOLUTE(.); } >dport0_0_seg :dport0_0_phdr -#ifdef FREE_MORE_DRAM - .irom0.text1 : ALIGN(4) - { - *(.sdk.version) - *libc.a:lib_a-dtoa.o (.rodata .rodata.*) - *libc.a:lib_a-gdtoa-gethex.o (.rodata .rodata.*) - *libc.a:lib_a-impure.o (.rodata .rodata.*) - *libc.a:lib_a-lcltime.o (.rodata .rodata.*) - *libc.a:lib_a-lnumeric.o (.rodata .rodata.*) - *libc.a:lib_a-locale.o (.rodata .rodata.* .data) - *libc.a:lib_a-mprec.o (.rodata .rodata.*) - *libc.a:lib_a-nano-svfprintf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-svfscanf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfprintf_float.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfprintf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfscanf_float.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfscanf_i.o (.rodata .rodata.*) - *libc.a:lib_a-rand.o (.rodata .rodata.*) - *libc.a:lib_a-strtod.o (.rodata .rodata.*) - *libc.a:lib_a-tzset_r.o (.rodata .rodata.*) - *libc.a:lib_a-tzvars.o (.rodata .rodata.*) - *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) - *libphy.a:phy_chip_v6.o (.rodata .rodata.*) - *libpp.a:esf_buf.o (.rodata .rodata.*) - } >irom0_0_seg :irom0_0_phdr -#endif - .data : ALIGN(4) { _data_start = ABSOLUTE(.); @@ -279,6 +250,32 @@ SECTIONS /* std::make_shared */ *(.rodata._ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag) +#ifdef FREE_MORE_DRAM + *(.sdk.version) + *libc.a:lib_a-dtoa.o (.rodata .rodata.*) + *libc.a:lib_a-gdtoa-gethex.o (.rodata .rodata.*) + *libc.a:lib_a-impure.o (.rodata .rodata.*) + *libc.a:lib_a-lcltime.o (.rodata .rodata.*) + *libc.a:lib_a-lnumeric.o (.rodata .rodata.*) + *libc.a:lib_a-locale.o (.rodata .rodata.* .data) + *libc.a:lib_a-mprec.o (.rodata .rodata.*) + *libc.a:lib_a-nano-svfprintf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-svfscanf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfprintf_float.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfprintf.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfscanf_float.o (.rodata .rodata.*) + *libc.a:lib_a-nano-vfscanf_i.o (.rodata .rodata.*) + *libc.a:lib_a-rand.o (.rodata .rodata.*) + *libc.a:lib_a-strtod.o (.rodata .rodata.*) + *libc.a:lib_a-tzset_r.o (.rodata .rodata.*) + *libc.a:lib_a-tzvars.o (.rodata .rodata.*) + *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) + *libphy.a:phy_chip_v6.o (.rodata .rodata.*) + *libpp.a:esf_buf.o (.rodata .rodata.*) +#endif + . = ALIGN(4); *(.gcc_except_table .gcc_except_table.*) . = ALIGN(4); From 334ce2ed9dbc1b792db725516999f397c7979659 Mon Sep 17 00:00:00 2001 From: TAiGA <> Date: Fri, 9 Dec 2022 17:23:46 +0800 Subject: [PATCH 5/9] Added feat and lwip6 --- tools/sdk/ld/eagle.app.v6.common.ld.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index 3a6b62d39c..35aaa7e37b 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -271,6 +271,10 @@ SECTIONS *libc.a:lib_a-tzvars.o (.rodata .rodata.*) *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip2-536-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip2-1460-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip6-536-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) + *liblwip6-1460-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) *libphy.a:phy_chip_v6.o (.rodata .rodata.*) *libpp.a:esf_buf.o (.rodata .rodata.*) From b124b17c0506c5f6374ec6bb7dad5763c7c32a2a Mon Sep 17 00:00:00 2001 From: TAiGA <> Date: Thu, 15 Dec 2022 11:06:41 +0800 Subject: [PATCH 6/9] Remove FREE_MORE_DRAM --- tools/sdk/ld/eagle.app.v6.common.ld.h | 30 --------------------------- 1 file changed, 30 deletions(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index 35aaa7e37b..e79f9d4902 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -250,36 +250,6 @@ SECTIONS /* std::make_shared */ *(.rodata._ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag) -#ifdef FREE_MORE_DRAM - *(.sdk.version) - *libc.a:lib_a-dtoa.o (.rodata .rodata.*) - *libc.a:lib_a-gdtoa-gethex.o (.rodata .rodata.*) - *libc.a:lib_a-impure.o (.rodata .rodata.*) - *libc.a:lib_a-lcltime.o (.rodata .rodata.*) - *libc.a:lib_a-lnumeric.o (.rodata .rodata.*) - *libc.a:lib_a-locale.o (.rodata .rodata.* .data) - *libc.a:lib_a-mprec.o (.rodata .rodata.*) - *libc.a:lib_a-nano-svfprintf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-svfscanf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfprintf_float.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfprintf.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfscanf_float.o (.rodata .rodata.*) - *libc.a:lib_a-nano-vfscanf_i.o (.rodata .rodata.*) - *libc.a:lib_a-rand.o (.rodata .rodata.*) - *libc.a:lib_a-strtod.o (.rodata .rodata.*) - *libc.a:lib_a-tzset_r.o (.rodata .rodata.*) - *libc.a:lib_a-tzvars.o (.rodata .rodata.*) - *liblwip2-536.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip2-1460.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip2-536-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip2-1460-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip6-536-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *liblwip6-1460-feat.a: (.rodata .rodata.memp_pools .rodata.tcp_pcb_lists .rodata.dns_mquery_v4group .rodata.ip_addr_broadcast .rodata.ip_addr_any) - *libnet80211.a:ieee80211_input.o (.rodata .rodata.* .data) - *libphy.a:phy_chip_v6.o (.rodata .rodata.*) - *libpp.a:esf_buf.o (.rodata .rodata.*) -#endif - . = ALIGN(4); *(.gcc_except_table .gcc_except_table.*) . = ALIGN(4); From 65306ee68142dc1a8fb03fd910573a2175d8edf3 Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Wed, 4 Jan 2023 03:00:56 +0300 Subject: [PATCH 7/9] unused --- tools/sdk/ld/eagle.app.v6.common.ld.h | 4 ---- 1 file changed, 4 deletions(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index e79f9d4902..ef75b83745 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -175,10 +175,6 @@ SECTIONS KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) . = ALIGN(4); /* this table MUST be 4-byte aligned */ - _bss_table_start = ABSOLUTE(.); - LONG(_bss_start) - LONG(_bss_end) - _bss_table_end = ABSOLUTE(.); *libgcc.a:unwind-dw2.o(.literal .text .rodata .literal.* .text.* .rodata.*) *libgcc.a:unwind-dw2-fde.o(.literal .text .rodata .literal.* .text.* .rodata.*) From 0bf308010d2f74f9dfffb148dae7af96321c82ec Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Wed, 4 Jan 2023 03:01:17 +0300 Subject: [PATCH 8/9] maybe later --- tools/sdk/ld/eagle.app.v6.common.ld.h | 3 --- 1 file changed, 3 deletions(-) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index ef75b83745..f6e2c70da6 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -243,9 +243,6 @@ SECTIONS /* Fundamental type info */ *(.rodata._ZTIPKc .rodata._ZTIc .rodata._ZTIv .rodata._ZTSv .rodata._ZTSc .rodata._ZTSPKc .rodata._ZTSi .rodata._ZTIi) - /* std::make_shared */ - *(.rodata._ZZNSt19_Sp_make_shared_tag5_S_tiEvE5__tag) - . = ALIGN(4); *(.gcc_except_table .gcc_except_table.*) . = ALIGN(4); From 68ee1a1851351b795f6e9784ca631e5f6a6b300c Mon Sep 17 00:00:00 2001 From: Maxim Prokhorov Date: Wed, 4 Jan 2023 03:03:46 +0300 Subject: [PATCH 9/9] Revert "unused" This reverts commit 65306ee68142dc1a8fb03fd910573a2175d8edf3. --- tools/sdk/ld/eagle.app.v6.common.ld.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/sdk/ld/eagle.app.v6.common.ld.h b/tools/sdk/ld/eagle.app.v6.common.ld.h index f6e2c70da6..051ce170e7 100644 --- a/tools/sdk/ld/eagle.app.v6.common.ld.h +++ b/tools/sdk/ld/eagle.app.v6.common.ld.h @@ -175,6 +175,10 @@ SECTIONS KEEP (*(SORT(.dtors.*))) KEEP (*(.dtors)) . = ALIGN(4); /* this table MUST be 4-byte aligned */ + _bss_table_start = ABSOLUTE(.); + LONG(_bss_start) + LONG(_bss_end) + _bss_table_end = ABSOLUTE(.); *libgcc.a:unwind-dw2.o(.literal .text .rodata .literal.* .text.* .rodata.*) *libgcc.a:unwind-dw2-fde.o(.literal .text .rodata .literal.* .text.* .rodata.*)