opnsense-src/lib/libc/csu/powerpc64
Jessica Clarke 9684658e35 libc/csu: Unify INIT_RELOCS across architectures
Some architectures don't need any arguments, whilst others need auxargs,
which they get by passing in env thanks to INIT_RELOCS referencing the
local variable in __libc_start1(_gcrt) by name. This is unnecessarily
confusing, fragile (one has to look at INIT_IRELOCS's definition to see
that it uses env) and duplicates code between architectures.

Instead, implement it more like rtld-elf. Each architecture provides an
ifunc_init that takes the auxargs directly, and those that don't need it
can just ignore it.

Reviewed by:	kib
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D47188
2024-10-19 00:48:52 +01:00
..
Makefile.inc libc/csu: Unify INIT_RELOCS across architectures 2024-10-19 00:48:52 +01:00
reloc.c libc/csu: Unify INIT_RELOCS across architectures 2024-10-19 00:48:52 +01:00