summaryrefslogtreecommitdiffstats
path: root/libexec/rtld-elf/powerpc/rtld_machdep.h
Commit message (Collapse)AuthorAgeFilesLines
* MFC r308689:kib2016-11-231-0/+3
| | | | | | | | | | Pass CPUID[1] %edx (cpu_feature), %ecx (cpu_feature2) and CPUID[7].%ebx (cpu_stdext_feature), %ecx (cpu_stdext_feature2) to the ifunc resolvers on x86. MFC r308925: Adjust r308689 to make rtld compilable with either in-tree or (hopefully) stock gcc 4.2.1 on i386 and other arches.
* Create a generalized exec hook that different architectures can hookimp2016-01-031-0/+2
| | | | | | into if they need to, but default to no action. Differential Review: https://reviews.freebsd.org/D2718
* Add support for preinit, init and fini arrays. Some ABIs, inkib2012-03-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | particular on ARM, do require working init arrays. Traditional FreeBSD crt1 calls _init and _fini of the binary, instead of allowing runtime linker to arrange the calls. This was probably done to have the same crt code serve both statically and dynamically linked binaries. Since ABI mandates that first is called preinit array functions, then init, and then init array functions, the init have to be called from rtld now. To provide binary compatibility to old FreeBSD crt1, which calls _init itself, rtld only calls intializers and finalizers for main binary if binary has a note indicating that new crt was used for linking. Add parsing of ELF notes to rtld, and cache p_osrel value since we parsed it anyway. The patch is inspired by init_array support for DragonflyBSD, written by John Marino. Reviewed by: kan Tested by: andrew (arm, previous version), flo (sparc64, previous version) MFC after: 3 weeks
* When loading dso without PT_GNU_STACK phdr, only callkib2011-01-251-0/+3
| | | | | | | __pthread_map_stacks_exec() on architectures that allow executable stacks. Reported and tested by: marcel (ia64)
* Support the extended PLT format used when objects have more than 8192nwhitehorn2010-02-221-0/+1
| | | | PLT relocations on PPC32.
* Now that the kernel defines CACHE_LINE_SIZE in machine/param.h, userwatson2009-04-191-2/+0
| | | | | | | | that definition in the custom locking code for the run-time linker rather than local definitions. Pointed out by: tinderbox MFC after: 2 weeks
* Implement TLS relocations for powerpc.ssouhlal2004-11-021-0/+8
| | | | Approved by: grehan (mentor)
* Add stubs for powerpc TLS.dfr2004-08-041-0/+15
| | | | Submitted by: ssouhlal
* Allow threading libraries to register their own lockingkan2003-05-291-4/+2
| | | | | | | | | | implementation in case default one provided by rtld is not suitable. Consolidate various identical MD lock implementation into a single file using appropriate machine/atomic.h. Approved by: re (scottl)
* rtld support for PowerPC. Mostly obtained from NetBSD, with modsgrehan2002-12-041-0/+67
for binutils 2.13 Reviewed by: benno Approved by: re (blanket)
OpenPOWER on IntegriCloud