glibc/sysdeps/s390/s390-64
Stefan Liebler 807849965b Avoid padding in _init and _fini. [BZ #31042]
The linker just concatenates the .init and .fini sections which
results in the complete _init and _fini functions. If needed the
linker adds padding bytes due to an alignment. GNU ld is adding
NOPs, which is fine.  But e.g. mold is adding traps which results
in broken _init and _fini functions.

Thus this patch removes the alignment in .init and .fini sections
in crtn.S files.

We keep the 4 byte function alignment in crti.S files. As the
assembler now also outputs the start of _init and _fini functions
as multiples of 4 byte, it perhaps has to fill it. Although GNU as
is using NOPs here, to be sure, we just keep the alignment with
0x07 (=NOPs) at the end of crti.S.

In order to avoid an obvious NOP slide in _fini, this patch also
uses an lg instead of lgr instruction. Then the emitted instructions
needs a multiple of 4 bytes.
2023-11-30 13:31:23 +01:00
..
bits Refactor long double information into bits/long-double.h. 2016-12-14 18:27:56 +00:00
__longjmp.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
add_n.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
bsd-_setjmp.S Move sysdeps/s390/s390-64/elf files 2012-03-28 09:31:29 +02:00
bsd-setjmp.S Move sysdeps/s390/s390-64/elf files 2012-03-28 09:31:29 +02:00
configure s390x: Fix static PIE condition for toolchain bootstrapping. 2023-08-18 10:57:59 +02:00
configure.ac s390x: Fix static PIE condition for toolchain bootstrapping. 2023-08-18 10:57:59 +02:00
crti.S Avoid padding in _init and _fini. [BZ #31042] 2023-11-30 13:31:23 +01:00
crtn.S Avoid padding in _init and _fini. [BZ #31042] 2023-11-30 13:31:23 +01:00
dl-hwcap-check.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dl-hwcaps-subdirs.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
dl-machine.h elf: Remove LD_PROFILE for static binaries 2023-11-21 16:15:42 -03:00
dl-trampoline.h elf: Remove LD_PROFILE for static binaries 2023-11-21 16:15:42 -03:00
dl-trampoline.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Implies Remove dbl-64/wordsize-64 (part 2) 2021-01-07 15:26:26 +00:00
Makefile arc4random: simplify design for better safety 2022-07-27 08:58:27 -03:00
s390x-mcount.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
s390x-mcount.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
setjmp.S Fix misspellings in sysdeps/ -- BZ 25337 2023-05-30 23:02:29 +00:00
stackguard-macros.h S390: Use __asm__ instead of asm. 2015-11-20 08:56:40 +01:00
start.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
strncpy-z900.S Fix misspellings in sysdeps/ -- BZ 25337 2023-05-30 23:02:29 +00:00
sub_n.S Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
sysdep.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-audit.h Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
tst-glibc-hwcaps.c Update copyright dates with scripts/update-copyrights 2023-01-06 21:14:39 +00:00
Versions S390: Implement 64-bit __fentry__ 2018-08-10 09:07:44 +02:00