History log of /netbsd-src/lib/csu/common/crtbegin.c (Results 1 – 17 of 17)
Revision Date Author Comments
# 12faa818 28-Dec-2018 christos <christos@NetBSD.org>

Undo previous; breaks macppc/m68k (at least)


# 96e2e1e3 28-Dec-2018 christos <christos@NetBSD.org>

Avoid duplicate definitions on arm (reported by kre@)


# 7848d457 27-Dec-2018 christos <christos@NetBSD.org>

Allow both array and non-array constructors for transition.


# b373b9e5 18-Jul-2017 joerg <joerg@NetBSD.org>

.eh_frame should be read-only on MIPS too.


# b16a9777 29-Jun-2016 joerg <joerg@NetBSD.org>

For some mind-boogling reasons, GCC 5.4 believes that a weak reference
cannot alias with an extern. While this is clearly bogus, avoid yet
another alias handling bug and use strong aliases. It's actu

For some mind-boogling reasons, GCC 5.4 believes that a weak reference
cannot alias with an extern. While this is clearly bogus, avoid yet
another alias handling bug and use strong aliases. It's actually
slightly simpler, too.

show more ...


# 6da05bfa 07-Jun-2016 joerg <joerg@NetBSD.org>

Fun fact of the weak: a weak reference doesn't have visibility attached.
As such, reorganize the start/end references to use a weak reference
only, if we use it to remove size knowledge. Otherwise us

Fun fact of the weak: a weak reference doesn't have visibility attached.
As such, reorganize the start/end references to use a weak reference
only, if we use it to remove size knowledge. Otherwise use weak
external declarations.

show more ...


# 70b825c3 05-Jun-2016 joerg <joerg@NetBSD.org>

Make older GCC and Clang happy and use weak references to the elements,
not declared as arrays.


# ad68895f 01-Jun-2016 joerg <joerg@NetBSD.org>

PR toolchain/51121:
__CTOR_LIST__ and __CTOR_LIST_END__ are logically the same object, but
due to the start marker, the former has to be declared as array of fixed
size. Newer GCC versions take the l

PR toolchain/51121:
__CTOR_LIST__ and __CTOR_LIST_END__ are logically the same object, but
due to the start marker, the former has to be declared as array of fixed
size. Newer GCC versions take the liberty of exploiting the UB of
accessing global objects past the end to unconditionally load zero
values in that case. Two fixes are possible:
(1) Pruning via inline assembler as done by GCC's own CRT copy.
(2) Pruning via weak references as done for linker sets.
Since the second part is known and required to work anyway, prefer this
approach. In theory, the labels could be replaced completely, except
that GNU as doesn't provide start/end symbols for sections containing
dots.

show more ...


# 353aedd8 06-May-2014 joerg <joerg@NetBSD.org>

Make EHABI optional.


# 0a181232 29-Jan-2014 bouyer <bouyer@NetBSD.org>

Also make sure the __CTOR_LIST__ is just aligned to a pointer boundary.
By default, mips N32 will aligned to a 64-bit boundary not 32-bit
which causes an extra NULL entry to be added.
Fix "segfault o

Also make sure the __CTOR_LIST__ is just aligned to a pointer boundary.
By default, mips N32 will aligned to a 64-bit boundary not 32-bit
which causes an extra NULL entry to be added.
Fix "segfault on exit" several people have noticed on mips N32,
caused by a jr to a NULL address.

show more ...


# 7118e2b3 11-Dec-2013 matt <matt@NetBSD.org>

Make sure the __CTOR_LIST__ is just aligned to a pointer boundary.
By default, mips N32 will aligned to a 64-bit boundary not 32-bit
which causes an extra NULL entry to be added.


# cd32ef25 29-Nov-2013 joerg <joerg@NetBSD.org>

Include crtbegin.h first to make it possible to build with the stricter
attribute consistency checks in clang.


# 704e1f28 26-Aug-2013 matt <matt@NetBSD.org>

MIPS wants a read/write eh_frame.


# c1007461 19-Aug-2013 matt <matt@NetBSD.org>

Put the ctors code in .text.startup and dtors code in .text.exit


# 350cb9bc 27-Jun-2013 matt <matt@NetBSD.org>

Switch arm, earm, powerpc to use crtbegin.c
Use -fpie for crtbegin.


# 21ba1833 24-Jun-2013 matt <matt@NetBSD.org>

Make dwarf_eh_object is 8 words long


# 2ad451b6 22-Jun-2013 matt <matt@NetBSD.org>

Add a common crtbegin.c file and use a machine dependent crtbegin.h to
fill in .init/.fini.
Add mips support for USE_COMPILERCRTSTUFF=no (compiled only)