musl/crt
Rich Felker dc031ee0b1 add rcrt1 start file for fully static-linked PIE
static-linked PIE files need startup code to relocate themselves, much
like the dynamic linker does. rcrt1.c reuses the code in dlstart.c,
stage 1 of the dynamic linker, which in turn reuses crt_arch.h, to
achieve static PIE with no new code. only relative relocations are
supported.

existing toolchains that don't yet support static PIE directly can be
repurposed by passing "-shared -Wl,-Bstatic -Wl,-Bsymbolic" instead of
"-static -pie" and substituting rcrt1.o in place of crt1.o.

all libraries being linked must be built as PIC/PIE; TEXTRELs are not
supported at this time.
2015-05-26 03:37:41 -04:00
..
aarch64 add aarch64 port 2015-03-11 20:12:35 -04:00
arm add function types to arm crt assembly 2013-08-15 14:52:27 -04:00
i386 align stack properly for calling global ctors/dtors on x86[_64] 2013-06-03 17:32:42 -04:00
microblaze microblaze port 2012-09-29 01:05:31 -04:00
mips mark mips crt code as code 2015-05-25 16:02:49 -04:00
or1k add or1k (OpenRISC 1000) architecture port 2014-07-18 14:10:23 -04:00
powerpc add missing startfiles for powerpc 2012-11-23 13:31:16 -05:00
sh fix name of sh crt asm directory 2015-04-27 13:20:47 -04:00
x32 import vanilla x86_64 code as x32 2014-02-23 11:07:18 +01:00
x86_64 align stack properly for calling global ctors/dtors on x86[_64] 2013-06-03 17:32:42 -04:00
Scrt1.c new mostly-C crt1 implementation 2013-07-26 01:49:14 -04:00
crt1.c dynamic linker bootstrap overhaul 2015-04-13 03:04:42 -04:00
crti.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
crtn.c initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00
rcrt1.c add rcrt1 start file for fully static-linked PIE 2015-05-26 03:37:41 -04:00