On Fri, 23 Jun 2023 11:39:41 +0200 Thomas Huth <thuth@xxxxxxxxxx> wrote: > We are using the "larl" instruction to load the address of __bss_end, > and this instruction can only deal with even addresses, so we have > to make sure that this symbol is aligned accordingly. Otherwise this > will cause a failure with the new binutils 2.40 and Clang: > > /usr/bin/ld: s390x/cstart64.o(.init+0x6a): misaligned symbol `__bss_end' > (0x2c0d1) for relocation R_390_PC32DBL > > Signed-off-by: Thomas Huth <thuth@xxxxxxxxxx> Reviewed-by: Claudio Imbrenda <imbrenda@xxxxxxxxxxxxx> > --- > s390x/flat.lds.S | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/s390x/flat.lds.S b/s390x/flat.lds.S > index 0cb7e383..5e91ecac 100644 > --- a/s390x/flat.lds.S > +++ b/s390x/flat.lds.S > @@ -37,6 +37,7 @@ SECTIONS > . = ALIGN(16); > __bss_start = .; > .bss : { *(.bss) } > + . = ALIGN(2); > __bss_end = .; > . = ALIGN(4K); > edata = .;