summaryrefslogtreecommitdiff
path: root/libexec/ld.so/m88k
AgeCommit message (Collapse)Author
2013-06-13Appease LLVM warning..Brad Smith
error: indirection of non-volatile null pointer will be deleted, not trap [-Werror,-Wnull-dereference] Suggestion from matthew@ Ok matthew@ miod@
2013-06-09Constify the mib argument of sysctl().Miod Vallat
ok matthew@ millert@
2013-06-01Make all the syscall prototypes consistent with their real forms for types,Philip Guenther
whitespace, and no argument names. ok matthew@ deraadt@
2013-06-01Introduce ltrace(1). This tool works with ld.so to inject utrace record forMiod Vallat
each plt call, allowing to trace a binary linked against shared library at the public function call level. To do so, ltrace(1) sets up some environment variables to enable plt tracing in ld.so, and invokes ktrace(2) for utrace events. ld.so will force lazy binding and will send an utrace record in the plt resolver, without updating the plt. Minimal filtering capabilities are provided, inspired by Solaris' truss -u, to limit tracing to libraries and/or symbol names. Non-traced libraries and symbols will have the regular resolver processing, with the expected plt update. "Get it in" deraadt
2013-05-17Try and support the non-PIC TEXTREL relocations which may creep in binariesMiod Vallat
when linked against non-pic material (such as linking against libgcc without passing -fpic or -fPIC on the commandline). Given the large userland address space (4GB) and random library placement, it is unlikely that these relocations can ever suceed anyway (DISP26 only allows for a 256MB offset); _dl_exit() in that case, after printing a warning message. That's better than dumping core.
2013-05-08Implement symbol caching and RELACOUNT/RELCOUNT optimizations.Philip Guenther
Much assistance and testing by miod ok miod@
2013-04-20Prefer the processor-specific _DYNAMIC[] tags value to find out the boundariesMiod Vallat
of the .plt whenever possible, and fallback to the old behaviour of searching for special symbols pointing to its boundaries. No functional change.
2013-04-05- Add ORIGIN, OSNAME, OSREL and PLATFORM substitution support for rpaths.Kurt Miller
Improvements and okay matthew@, millert@, guenther@
2013-01-26Make sure to flush I$ over the plt in case of non-lazy relocation as well.Miod Vallat
2013-01-26Forgot to remove one line in 1.2, in turn caused div() from libc to fail ifMiod Vallat
invoked with lazy binding.
2013-01-23Cache flush .plt after updating its pointers to .got during the initialMiod Vallat
object relocation, if loaded at a different address than the one it was compiled for; unsurprisingly fixes some spurious crashes.
2013-01-21Use jmp, not jsr, to jump through registers. Doh!Miod Vallat
This makes lazy binding work, so don't disable it anymore.
2013-01-20A first cut at ld.so bits for m88k. Lazy binding is currently disabled as itMiod Vallat
does not work beyond the first few lazy resolver calls. But that's already enough to run simple binaries.