nuttx/boards:add KEEP to *(.init_array .init_array.*)

replace *(.init_array .init_array.*) with KEEP(*(.init_array .init_array.*)).

The KEEP statement within a linker script will instruct the linker to keep the specified section, even if no symbols inside it are referenced. This statement is used within the SECTIONS section of the linker script. This becomes relevant when garbage collection is performed at link time, enabled by passing the --gc-sections switch to the linker. The KEEP statement instructs the linker to use the specified section as a root node when creating a dependency graph, looking for unused sections. Essentially forcing the section to be marked as used.

Signed-off-by: cuiziwei <cuiziwei@xiaomi.com>
This commit is contained in:
cuiziwei
2023-02-27 14:21:36 +08:00
committed by Xiang Xiao
parent 1dfcdaad84
commit 25eb09c3bb
306 changed files with 306 additions and 307 deletions
+1 -1
View File
@@ -54,7 +54,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > sdram } > sdram
@@ -59,7 +59,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > ddr } > ddr
@@ -48,7 +48,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -48,7 +48,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -48,7 +48,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -45,7 +45,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash
@@ -61,7 +61,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -59,7 +59,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -77,7 +77,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -76,7 +76,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -122,7 +122,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -75,7 +75,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -122,7 +122,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -75,7 +75,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -122,7 +122,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
+1 -1
View File
@@ -75,7 +75,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -48,7 +48,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash
@@ -62,7 +62,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -84,7 +84,7 @@ SECTIONS
.init_section : .init_section :
{ {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -72,7 +72,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -68,7 +68,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -72,7 +72,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -72,7 +72,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -72,7 +72,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -72,7 +72,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -72,7 +72,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -63,7 +63,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -63,7 +63,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
+1 -1
View File
@@ -63,7 +63,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > progflash } > progflash
@@ -46,7 +46,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -54,7 +54,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -45,7 +45,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash
@@ -60,7 +60,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > FLASH } > FLASH
@@ -46,7 +46,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -45,7 +45,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash
@@ -60,7 +60,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > FLASH } > FLASH
@@ -46,7 +46,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -54,7 +54,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -45,7 +45,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash
@@ -64,7 +64,7 @@ SECTIONS
.init_section : ALIGN(16) { .init_section : ALIGN(16) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > FLASH } > FLASH
@@ -62,7 +62,7 @@ SECTIONS
.init_section : ALIGN(16) { .init_section : ALIGN(16) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > FLASH } > FLASH
@@ -65,7 +65,7 @@ SECTIONS
.init_section : ALIGN(16) { .init_section : ALIGN(16) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > SDRAM } > SDRAM
@@ -46,7 +46,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -54,7 +54,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -54,7 +54,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -54,7 +54,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > flash } > flash
@@ -45,7 +45,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash
@@ -60,7 +60,7 @@ SECTIONS
.init_section : ALIGN(4) { .init_section : ALIGN(4) {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > FLASH } > FLASH
@@ -46,7 +46,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > uflash } > uflash
@@ -45,7 +45,7 @@ SECTIONS
.init_section : { .init_section : {
_sinit = ABSOLUTE(.); _sinit = ABSOLUTE(.);
*(.init_array .init_array.*) KEEP(*(.init_array .init_array.*))
_einit = ABSOLUTE(.); _einit = ABSOLUTE(.);
} > kflash } > kflash

Some files were not shown because too many files have changed in this diff Show More