On Thu, 12 Jan 2023 15:45:43 +0000 Janosch Frank <frankja@xxxxxxxxxxxxx> wrote: > There are a lot of things in there which we don't need for snippets > and the alignments can be switched from 64K to 4K since that's the > s390 page size. > > Signed-off-by: Janosch Frank <frankja@xxxxxxxxxxxxx> Reviewed-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx> > --- > s390x/snippets/c/flat.lds | 28 +++++++++------------------- > 1 file changed, 9 insertions(+), 19 deletions(-) > > diff --git a/s390x/snippets/c/flat.lds b/s390x/snippets/c/flat.lds > index 260ab1c4..9e5eb66b 100644 > --- a/s390x/snippets/c/flat.lds > +++ b/s390x/snippets/c/flat.lds > @@ -16,27 +16,22 @@ SECTIONS > QUAD(0x0000000000004000) > } > . = 0x4000; > + /* > + * The stack grows down from 0x4000 to 0x2000, we pre-allocoate > + * a frame via the -160. > + */ > stackptr = . - 160; > stacktop = .; > + /* Start text 0x4000 */ > .text : { > *(.init) > *(.text) > *(.text.*) > } > - . = ALIGN(64K); > + . = ALIGN(4K); > etext = .; > - .opd : { *(.opd) } > - . = ALIGN(16); > - .dynamic : { > - dynamic_start = .; > - *(.dynamic) > - } > - .dynsym : { > - dynsym_start = .; > - *(.dynsym) > - } > - .rela.dyn : { *(.rela*) } > - . = ALIGN(16); > + /* End text */ > + /* Start data */ > .data : { > *(.data) > *(.data.rel*) > @@ -44,11 +39,6 @@ SECTIONS > . = ALIGN(16); > .rodata : { *(.rodata) *(.rodata.*) } > . = ALIGN(16); > - __bss_start = .; > .bss : { *(.bss) } > - __bss_end = .; > - . = ALIGN(64K); > - edata = .; > - . += 64K; > - . = ALIGN(64K); > + /* End data */ > }