Commit Graph

6 Commits

Author SHA1 Message Date
Rich Felker c9dea48f84 remove attempts to be pie-compatible from i386 crt1.s
it does not work; after further consideration, a separate Scrt1.s for
pie really is essential. it would be nice if the unified approach
worked, but the linker fails to generate the correct PLT entries and
instead puts textrels in the main program, which don't work because
the kernel maps the text read-only.

new Scrt1.s will be committed soon in place of this.
2012-05-02 20:56:55 -04:00
Rich Felker 4ce3cb5cdd add support for init/finit (constructors and destructors)
this is mainly in hopes of supporting c++ (not yet possible for other
reasons) but will also help applications/libraries which use (and more
often, abuse) the gcc __attribute__((__constructor__)) feature in "C"
code.

x86_64 and arm versions of the new startup asm are untested and may
have minor problems.
2012-02-06 14:39:09 -05:00
Rich Felker 8cd48f0965 cleanup comment cruft in startup code 2011-02-21 22:27:35 -05:00
Rich Felker e2ee1bdd8d make startup code PIE-compatible 2011-02-21 22:26:31 -05:00
Rich Felker ba68efc921 shave off 2 bytes from crt1.o _start 2011-02-20 19:07:19 -05:00
Rich Felker 0b44a0315b initial check-in, version 0.5.0 2011-02-12 00:22:29 -05:00