| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
declared static.
OK guenther@
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
ok kettenis@
|
|
|
|
|
|
|
|
|
|
| |
sections as extern hidden arrays of indefinite size, so that the compiler
(well, clang) doesn't believe it knows the exact contents and thus optimize
things into infinite loops. Actually set the symbols to be in the sections
and insert the leading and trailing values via __asm().
Problem pointed out by patrick@
testing and ok kettenis@
|
|
|
|
|
|
|
|
| |
.dtors sections writable just like they are in crtend.o and code generated
by compilers. This is necessary to make sure that linkers that respect the
ELF spec a bit better (such as lld) correctly concatenate the secttions.
ok deraadt@
|
|
|
|
|
|
|
|
|
|
|
| |
stubs for the executable from crtbegin.o into libc, which lets them be
excluded from static links that don't use them.
For this, drop the normal crt{begin,end}S.o from libc.so: the .init and .fini
sections for libc aren't called at the right times anyway, so it's good that
they're unused. libc.so just needs __guard_local and the .note.openbsd.ident
section, so add them to stack_protector.c for now (this will be improved)
"good time" deraadt@
|
|
|
|
|
|
|
|
|
|
| |
unregistering callbacks if the DSO is unloaded. Move the callback
handling from libpthread to libc, though libpthread still overrides the
inner call to handle locking and thread-library reinitialization.
Major version bump for both libc and libpthread.
verification that this fixes various ports ajacoutot@
asm assistance miod@; ok millert@ deraadt@
|
|
|
|
| |
ok millert@
|
|
|
|
|
|
|
|
|
|
| |
right __dso_handle and have dlopen'ed shared objects run their atexit handlers
when they get unloaded. This is what Linux does, and several ports depend on
this behaviour (and will crash upon exit without this chang).
Based on an earlier diff from matthew@
Tested by ajacoutot@
ok deraadt@
|
|
|
|
|
|
| |
GCC's documentation. Fixes GNU C++'s init_priority attribute.
ok miod
|
|
|
|
|
|
| |
executable and DSO (via crtbegin.c/crtbeginS.c). Not used yet, but
needed before GCC can start emitting -fstack-protector code that uses
them instead of __guard.
|
|
|
|
|
|
|
| |
bits of code and data. With this change gcc4 builds usable crt*.o on sparc64,
other architectures probably need some more love.
ok marco@, jsg@
|
|
|
|
|
|
| |
with minor differences.
okay kettenis@ drahn@
|
| |
|
|
|
|
| |
ok drahn@, pval@, deraadt@
|
|
|
|
| |
ok drahn@, millert@
|
|
|
|
|
|
|
| |
stop most kde apps from burping all over the place on exit, which
means that, somehow, our destructors get registered twice... :-(
Okay drahn@
|
|
|
|
| |
ok drahn@, some time ago.
|
|
|
|
|
|
| |
be a section which code stubs (branches) can be added to initialize/destructor
This adds MD stubs to allow this to operate as expected. should fix wine
and behave according to ELF specs. ok miod@
|
| |
|
| |
|
| |
|
|
|
|
| |
This appears to be the standard way to do it.
|
| |
|
|
be shared between archs.
|