about summary refs log tree commit diff
path: root/crt/x86_64
Commit message (Collapse)AuthorAgeFilesLines
* remove hand-written crt1.s and Scrt1.s files for all archsRich Felker2015-10-142-32/+0
| | | | | | | | | | | | | | since commit c5e34dabbb47d8e97a4deccbb421e0cd93c0094b, crt1.c has provided a "mostly-C" implementation of the crt1 start file that avoids the need for arch-specific symbol referencing, PIC/PIE-specific code variants, etc. but for archs that had existing hand-written versions, the new code was initially unused, and later only used as the dynamic linker entry point. this commit switches all archs to using the new code. the code being removed was a recurring source of subtle errors, and was still broken at least on arm, where it failed to properly align the stack pointer before calling into C code.
* align stack properly for calling global ctors/dtors on x86[_64]Rich Felker2013-06-032-0/+4
| | | | | | failure to do so was causing crashes on x86_64 when ctors used SSE, which was first observed when ctors called variadic functions due to the SSE prologue code inserted into every variadic function.
* remove some junk from x86_64 start filesRich Felker2012-05-022-4/+0
| | | | | | | | | looks like nik copied these "extra arguments" from the i386 code. they're not actually arguments there, just 1-byte instructions to make sure the stack is aligned to 16 bytes after all the other arguments are pushed. since each push is 8 bytes on x86_64, they happened to have no effect here, but their presence is confusing and a minor waste of space.
* PIE support for x86_64 (untested)Rich Felker2012-05-021-0/+18
|
* add support for init/finit (constructors and destructors)Rich Felker2012-02-063-3/+17
| | | | | | | | | | 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.
* Port musl to x86-64. One giant commit!Nicholas J. Kain2011-02-151-0/+16