On Sun, 16 Mar 2025 at 00:18, Sam Edwards <cfswo...@gmail.com> wrote: > > There are a handful of sections that are not useful in the U-Boot output > binary. At present, the linker script moves these to the end of the > binary, after the _image_binary_end marker symbol, so that they don't > get loaded. > > The linker script syntax supports discarding sections that shouldn't be > included in the output. Switch to this instead, to make the intention > clearer and reduce the ELF sections that have to be handled later in the > build. This is also consistent with the other architectures' linker > scripts. > > Signed-off-by: Sam Edwards <cfswo...@gmail.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodi...@linaro.org> > --- > arch/arm/cpu/u-boot.lds | 20 ++++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) > > diff --git a/arch/arm/cpu/u-boot.lds b/arch/arm/cpu/u-boot.lds > index 63e82a09fad..817e7a983ae 100644 > --- a/arch/arm/cpu/u-boot.lds > +++ b/arch/arm/cpu/u-boot.lds > @@ -181,14 +181,14 @@ SECTIONS > __bss_end = .; > } > > - .dynsym _image_binary_end : { *(.dynsym) } > - .dynbss : { *(.dynbss) } > - .dynstr : { *(.dynstr*) } > - .dynamic : { *(.dynamic*) } > - .plt : { *(.plt*) } > - .interp : { *(.interp*) } > - .gnu.hash : { *(.gnu.hash) } > - .gnu : { *(.gnu*) } > - .ARM.exidx : { *(.ARM.exidx*) } > - .gnu.linkonce.armexidx : { *(.gnu.linkonce.armexidx.*) } > + /DISCARD/ : { *(.dynsym) } > + /DISCARD/ : { *(.dynbss) } > + /DISCARD/ : { *(.dynstr*) } > + /DISCARD/ : { *(.dynamic*) } > + /DISCARD/ : { *(.plt*) } > + /DISCARD/ : { *(.interp*) } > + /DISCARD/ : { *(.gnu.hash) } > + /DISCARD/ : { *(.gnu*) } > + /DISCARD/ : { *(.ARM.exidx*) } > + /DISCARD/ : { *(.gnu.linkonce.armexidx.*) } > } > -- > 2.48.1 >