NetBSD/lib/csu
ross 2d62241cb9 Reorganization of crtbegin/crtend.
o  Primary mod: alpha and i386 code for .init and .fini section fallthroughs
o  Actual fallthru is not yet enabled, see csu/{alpha,i386_elf}/Makefile
o  When enabled, should fix bin/12865 & should fix at least one WINE bug,
   see http://www.winehq.com/hypermail/wine-devel/2001/05/0021.html
o  Also, removed the function pointer hack put in to prevent gcc from
   incorrectly attempting to do short calls over section boundaries,
   on some architectures, rather, simply simply move ctors() and dtors()
   into .init and .fini.
Other notes.
o  Our crtbegin.c and crtend.c were completely in C, despite
   the fact that .init and .fini section fallthroughs require machine code.
   These modules implement the gnu ctors/dtors mechanism directly, eliminating
   in part the need for the elf .init/.fini section fallthrough. However,
   if we ever want to use the gnu-provided constructor support, we need to
   do the fallthrough, at least one program (WINE) apparently uses the
   feature independently, and other compilers may depend on the mechanism.
o  It is amusing that the previous NetBSD _init() and _fini() were put
   into the .init and .fini sections, because nothing is gained over
   plain .text if they don't fall through. Cargo cult!
o  Other elf ports will need to copy the alpha and i386 example mods.
2001-05-11 22:44:14 +00:00
..
alpha Reorganization of crtbegin/crtend. 2001-05-11 22:44:14 +00:00
arm26 Our ARM ELF ld(1) currently has problems with PIC relocations, so don't 2001-04-28 17:32:33 +00:00
arm32 ANSIfy and merge some stylistic changes from arm26/crt0.c. 2001-02-18 23:03:34 +00:00
c++ change -fpic to -fPIC. Among other things this will let sparc shared 2000-04-29 17:42:46 +00:00
common_aout Const poisoning of dladdr (so that things build after the dlfcn.h change) 2000-02-09 22:41:53 +00:00
common_elf Reorganization of crtbegin/crtend. 2001-05-11 22:44:14 +00:00
i386
i386_elf Reorganization of crtbegin/crtend. 2001-05-11 22:44:14 +00:00
m68k
m68k_elf sweep of my licenses for consistency. (no functional changes) These 2000-06-15 16:48:28 +00:00
mips fix up NetBSD RCS Ids to match the standard, and the leading comment as 2000-06-14 06:48:47 +00:00
ns32k
powerpc sweep of my licenses for consistency. (no functional changes) These 2000-06-14 22:52:37 +00:00
sh3
sh3_elf check __LEADING_UNDERSCORE 2001-02-25 15:51:24 +00:00
sparc
sparc64 Remove old compatibility hack. Should no longer be needed. 2001-02-21 00:47:21 +00:00
sparc_elf sweep of my licenses for consistency. (no functional changes) These 2000-06-14 22:52:37 +00:00
vax
vax_elf Use the ___start etc. 2000-07-03 03:56:56 +00:00
Makefile - Fix typo 2001-01-10 13:20:17 +00:00