glibc/sysdeps
Stefan Liebler 97b74cbbb0 s390: Simplify elf_machine_{load_address, dynamic} [BZ #31799]
If an executable is static PIE and has a non-zero load address
(compare to elf/tst-pie-address-static), it segfaults as
elf_machine_load_address() returns 0x0 and elf_machine_dynamic()
returns the run-time instead of link-time address of _DYNAMIC.

Now rely on __ehdr_start and _DYNAMIC as also done on other
architectures.

Checked back to old arch-levels that this approach works fine:
- 31bit: -march=g5
- 64bit: -march=z900

Note, that there is no static-PIE support on 31bit, but this
approach cleans it also up.

Furthermore this cleanup in glibc does not change anything
regarding the first GOT-element as the s390 ABI
(https://github.com/IBM/s390x-abi) explicitely defines:
The doubleword at _GLOBAL_OFFSET_TABLE_[0] is set by the linkage
editor to hold the address of the dynamic structure, referenced
with the symbol _DYNAMIC. This allows a program, such as the dynamic
linker, to find its own dynamic structure without having yet processed
its relocation entries. This is especially important for the dynamic
linker, because it must initialize itself without relying on other
programs to relocate its memory image.
2024-12-13 09:44:38 +01:00
..
aarch64 AArch64: Improve codegen in users of ADVSIMD expm1 helper 2024-12-09 16:20:34 +00:00
alpha math: Use tanf from CORE-MATH 2024-11-22 10:52:27 -03:00
arc elf: Consolidate stackinfo.h 2024-12-02 17:14:58 +00:00
arm math: Use tanf from CORE-MATH 2024-11-22 10:52:27 -03:00
csky elf: Consolidate stackinfo.h 2024-12-02 17:14:58 +00:00
generic malloc: Optimize small memory clearing for calloc 2024-12-04 04:28:15 +08:00
gnu
hppa math: Use tanf from CORE-MATH 2024-11-22 10:52:27 -03:00
htl htl: move pthread_condattr_setpshared into libc. 2024-12-09 02:03:18 +01:00
hurd
i386 Implement C23 atan2pi 2024-12-12 20:57:44 +00:00
ieee754 Implement C23 atan2pi 2024-12-12 20:57:44 +00:00
loongarch elf: Consolidate stackinfo.h 2024-12-02 17:14:58 +00:00
m68k nptl: Add <thread_pointer.h> for m68k 2024-12-09 20:24:26 +00:00
mach Implement C23 atan2pi 2024-12-12 20:57:44 +00:00
microblaze Remove nios2-linux-gnu 2024-11-28 14:03:25 -03:00
mips math: Use tanf from CORE-MATH 2024-11-22 10:52:27 -03:00
nptl linux: Add support for getrandom vDSO 2024-11-12 14:42:12 -03:00
or1k or1k: Update libm-test-ulps 2024-12-13 07:20:32 +00:00
posix Silence most -Wzero-as-null-pointer-constant diagnostics 2024-11-25 16:45:59 -03:00
powerpc Implement C23 atan2pi 2024-12-12 20:57:44 +00:00
pthread Add threaded test of sem_trywait 2024-11-29 20:25:04 +00:00
riscv nptl: Add <thread_pointer.h> for RISC-V 2024-12-09 13:26:55 -05:00
s390 s390: Simplify elf_machine_{load_address, dynamic} [BZ #31799] 2024-12-13 09:44:38 +01:00
sh math: Use tanf from CORE-MATH 2024-11-22 10:52:27 -03:00
sparc math: Add sinpi,cospi,tanpi sparc64 ulps 2024-12-08 22:01:51 +01:00
unix Implement C23 atan2pi 2024-12-12 20:57:44 +00:00
wordsize-32
wordsize-64
x86 Silence most -Wzero-as-null-pointer-constant diagnostics 2024-11-25 16:45:59 -03:00
x86_64 Implement C23 atan2pi 2024-12-12 20:57:44 +00:00