History log of /openbsd-current/libexec/ld.so/m88k/archdep.h
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.11 18-Nov-2023 deraadt

crt0 uses a helper function in a MD src/libexec/ld.so .h file (rather than
reproducing the relevant defines and code in a different place) to perform
minor relocations. If things go very wrong, it would call _dl_exit() --
a locally defined crt0 function which is syscall exit(2). We don't need
to call exit(2) for this obscure case which doesn't happen and provides no
debugging information. An 'abort' is going to provide better information.
So let's change the function name to _dso_abort() and make it a single
illegal instruction.
ok guenther


Revision tags: OPENBSD_7_1_BASE OPENBSD_7_2_BASE OPENBSD_7_3_BASE OPENBSD_7_4_BASE
# 1.10 16-Jan-2022 guenther

Nothing depends on archdep.h pulling in other #includes anymore,
so delete the #includes and hide the RELOC_* functions that are
only used by lib/csu behind "#ifdef RCRT0"

ok aoyama@


# 1.9 14-Nov-2021 guenther

Delete all the no-op RELOC_GOT() macros and their uses.
Annotate RELOC_DYN() on non-hppa as only used in lib/csu.
Delete some inconsistent comments, adjust whitespace, and reorder
mips64's archdep.h so that the ld.so/*/archdep.h files look
(almost) the same.

ok visa@ kettenis@


Revision tags: OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.8 23-Oct-2019 guenther

Prefer the size-independent ELF identifiers over the size-specific ones.
Strip superfluous parens from return statements while here.

Done programatically with two perl invocations

idea ok kettenis@ drahn@
ok visa@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.7 16-Jun-2018 guenther

Add add PIE support for m88k (requires gcc4 toolchain)
Convert __cerror to hidden visibility.

from miod@


Revision tags: OPENBSD_6_3_BASE
# 1.6 27-Oct-2017 mpi

Use <elf.h> instead of <elf_abi.h>

ok jasper@, jca@, deraadt@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.5 24-Jan-2017 guenther

On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of
simply exiting, via helper functions _dl_die(), _dl_diedie(), and
_dl_oom().

prompted by a complaint from jsing@
ok jsing@ deraadt@


# 1.4 20-Jan-2017 guenther

Delete ancient macros and unnecessary #includes

ok deraadt@


# 1.3 09-Jan-2017 kettenis

Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO
instead. Result in a few more pages that aren't writable on some platforms
(such as hppa). Based on an initial diff from guenther@.

Thanks to deraadt@ for testing.

ok guenther@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.2 06-Dec-2015 guenther

Simplify the relocation code for the ld.so bootstrap and static pie: track
just the dynamic tags are needed instead of reusing the generic elf_object_t
structure.

testing and feedback from miod@
ok kettenis@


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.1 20-Jan-2013 miod

A first cut at ld.so bits for m88k. Lazy binding is currently disabled as it
does not work beyond the first few lazy resolver calls. But that's already
enough to run simple binaries.


# 1.10 16-Jan-2022 guenther

Nothing depends on archdep.h pulling in other #includes anymore,
so delete the #includes and hide the RELOC_* functions that are
only used by lib/csu behind "#ifdef RCRT0"

ok aoyama@


# 1.9 14-Nov-2021 guenther

Delete all the no-op RELOC_GOT() macros and their uses.
Annotate RELOC_DYN() on non-hppa as only used in lib/csu.
Delete some inconsistent comments, adjust whitespace, and reorder
mips64's archdep.h so that the ld.so/*/archdep.h files look
(almost) the same.

ok visa@ kettenis@


Revision tags: OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.8 23-Oct-2019 guenther

Prefer the size-independent ELF identifiers over the size-specific ones.
Strip superfluous parens from return statements while here.

Done programatically with two perl invocations

idea ok kettenis@ drahn@
ok visa@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.7 16-Jun-2018 guenther

Add add PIE support for m88k (requires gcc4 toolchain)
Convert __cerror to hidden visibility.

from miod@


Revision tags: OPENBSD_6_3_BASE
# 1.6 27-Oct-2017 mpi

Use <elf.h> instead of <elf_abi.h>

ok jasper@, jca@, deraadt@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.5 24-Jan-2017 guenther

On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of
simply exiting, via helper functions _dl_die(), _dl_diedie(), and
_dl_oom().

prompted by a complaint from jsing@
ok jsing@ deraadt@


# 1.4 20-Jan-2017 guenther

Delete ancient macros and unnecessary #includes

ok deraadt@


# 1.3 09-Jan-2017 kettenis

Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO
instead. Result in a few more pages that aren't writable on some platforms
(such as hppa). Based on an initial diff from guenther@.

Thanks to deraadt@ for testing.

ok guenther@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.2 06-Dec-2015 guenther

Simplify the relocation code for the ld.so bootstrap and static pie: track
just the dynamic tags are needed instead of reusing the generic elf_object_t
structure.

testing and feedback from miod@
ok kettenis@


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.1 20-Jan-2013 miod

A first cut at ld.so bits for m88k. Lazy binding is currently disabled as it
does not work beyond the first few lazy resolver calls. But that's already
enough to run simple binaries.


# 1.9 14-Nov-2021 guenther

Delete all the no-op RELOC_GOT() macros and their uses.
Annotate RELOC_DYN() on non-hppa as only used in lib/csu.
Delete some inconsistent comments, adjust whitespace, and reorder
mips64's archdep.h so that the ld.so/*/archdep.h files look
(almost) the same.

ok visa@ kettenis@


Revision tags: OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE
# 1.8 23-Oct-2019 guenther

Prefer the size-independent ELF identifiers over the size-specific ones.
Strip superfluous parens from return statements while here.

Done programatically with two perl invocations

idea ok kettenis@ drahn@
ok visa@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.7 16-Jun-2018 guenther

Add add PIE support for m88k (requires gcc4 toolchain)
Convert __cerror to hidden visibility.

from miod@


Revision tags: OPENBSD_6_3_BASE
# 1.6 27-Oct-2017 mpi

Use <elf.h> instead of <elf_abi.h>

ok jasper@, jca@, deraadt@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.5 24-Jan-2017 guenther

On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of
simply exiting, via helper functions _dl_die(), _dl_diedie(), and
_dl_oom().

prompted by a complaint from jsing@
ok jsing@ deraadt@


# 1.4 20-Jan-2017 guenther

Delete ancient macros and unnecessary #includes

ok deraadt@


# 1.3 09-Jan-2017 kettenis

Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO
instead. Result in a few more pages that aren't writable on some platforms
(such as hppa). Based on an initial diff from guenther@.

Thanks to deraadt@ for testing.

ok guenther@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.2 06-Dec-2015 guenther

Simplify the relocation code for the ld.so bootstrap and static pie: track
just the dynamic tags are needed instead of reusing the generic elf_object_t
structure.

testing and feedback from miod@
ok kettenis@


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.1 20-Jan-2013 miod

A first cut at ld.so bits for m88k. Lazy binding is currently disabled as it
does not work beyond the first few lazy resolver calls. But that's already
enough to run simple binaries.


# 1.8 23-Oct-2019 guenther

Prefer the size-independent ELF identifiers over the size-specific ones.
Strip superfluous parens from return statements while here.

Done programatically with two perl invocations

idea ok kettenis@ drahn@
ok visa@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE
# 1.7 16-Jun-2018 guenther

Add add PIE support for m88k (requires gcc4 toolchain)
Convert __cerror to hidden visibility.

from miod@


Revision tags: OPENBSD_6_3_BASE
# 1.6 27-Oct-2017 mpi

Use <elf.h> instead of <elf_abi.h>

ok jasper@, jca@, deraadt@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.5 24-Jan-2017 guenther

On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of
simply exiting, via helper functions _dl_die(), _dl_diedie(), and
_dl_oom().

prompted by a complaint from jsing@
ok jsing@ deraadt@


# 1.4 20-Jan-2017 guenther

Delete ancient macros and unnecessary #includes

ok deraadt@


# 1.3 09-Jan-2017 kettenis

Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO
instead. Result in a few more pages that aren't writable on some platforms
(such as hppa). Based on an initial diff from guenther@.

Thanks to deraadt@ for testing.

ok guenther@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.2 06-Dec-2015 guenther

Simplify the relocation code for the ld.so bootstrap and static pie: track
just the dynamic tags are needed instead of reusing the generic elf_object_t
structure.

testing and feedback from miod@
ok kettenis@


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.1 20-Jan-2013 miod

A first cut at ld.so bits for m88k. Lazy binding is currently disabled as it
does not work beyond the first few lazy resolver calls. But that's already
enough to run simple binaries.


# 1.7 16-Jun-2018 guenther

Add add PIE support for m88k (requires gcc4 toolchain)
Convert __cerror to hidden visibility.

from miod@


Revision tags: OPENBSD_6_3_BASE
# 1.6 27-Oct-2017 mpi

Use <elf.h> instead of <elf_abi.h>

ok jasper@, jca@, deraadt@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.5 24-Jan-2017 guenther

On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of
simply exiting, via helper functions _dl_die(), _dl_diedie(), and
_dl_oom().

prompted by a complaint from jsing@
ok jsing@ deraadt@


# 1.4 20-Jan-2017 guenther

Delete ancient macros and unnecessary #includes

ok deraadt@


# 1.3 09-Jan-2017 kettenis

Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO
instead. Result in a few more pages that aren't writable on some platforms
(such as hppa). Based on an initial diff from guenther@.

Thanks to deraadt@ for testing.

ok guenther@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.2 06-Dec-2015 guenther

Simplify the relocation code for the ld.so bootstrap and static pie: track
just the dynamic tags are needed instead of reusing the generic elf_object_t
structure.

testing and feedback from miod@
ok kettenis@


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.1 20-Jan-2013 miod

A first cut at ld.so bits for m88k. Lazy binding is currently disabled as it
does not work beyond the first few lazy resolver calls. But that's already
enough to run simple binaries.


# 1.6 27-Oct-2017 mpi

Use <elf.h> instead of <elf_abi.h>

ok jasper@, jca@, deraadt@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.5 24-Jan-2017 guenther

On fatal errors, kill ourselves with thrkill(0,9,NULL) instead of
simply exiting, via helper functions _dl_die(), _dl_diedie(), and
_dl_oom().

prompted by a complaint from jsing@
ok jsing@ deraadt@


# 1.4 20-Jan-2017 guenther

Delete ancient macros and unnecessary #includes

ok deraadt@


# 1.3 09-Jan-2017 kettenis

Remove dependency on __got_{start,end} symbols and look at PT_GNU_RELRO
instead. Result in a few more pages that aren't writable on some platforms
(such as hppa). Based on an initial diff from guenther@.

Thanks to deraadt@ for testing.

ok guenther@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.2 06-Dec-2015 guenther

Simplify the relocation code for the ld.so bootstrap and static pie: track
just the dynamic tags are needed instead of reusing the generic elf_object_t
structure.

testing and feedback from miod@
ok kettenis@


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.1 20-Jan-2013 miod

A first cut at ld.so bits for m88k. Lazy binding is currently disabled as it
does not work beyond the first few lazy resolver calls. But that's already
enough to run simple binaries.