aboutsummaryrefslogtreecommitdiff
path: root/src/ldso/x86_64 (follow)
Commit message (Expand)AuthorAgeFilesLines
* rename dynamic linker entry point from _start to _dlstart•••the main motivation for this change is to aid in debugging. since the main program's entry point is also named _start, it was difficult to set breakpoints or quickly identify which _start execution stopped in. Rich Felker2014-06-201-2/+2
* add tlsdesc support for x86_64Rich Felker2014-06-191-0/+40
* add ldd and main program loading support to dynamic linkerRich Felker2012-05-271-0/+8
* cleanup dynamic linker start code cruft•••two actual issues: one is that __dynlink no longer wants/needs a GOT pointer argument, so the code to generate that argument can be removed. the other issue was that in the i386 code, argc/argv were being loaded into registers that would be call-clobbered, then copied to preserved registers, rather than just being loaded into the proper call-preserved registers to begin with. this cleanup is in preparation for adding new dynamic linker functionality (ability to explicitly invoke the dynamic linker to run a program). Rich Felker2012-05-271-1/+0
* fix RTLD_NEXT on x86_64•••the return address was being truncated to 32 bits, preventing the dlsym code from determining which module contains the calling code. Rich Felker2011-09-031-1/+1
* RTLD_NEXT support•••the asm wrapper is needed to get the return address without compiler-specific extensions. Rich Felker2011-08-161-0/+6
* x86_64: ensure that dtor pointer passed to app is 0 so it won't be used•••leaving it uninitialized caused unpredictable crashes or worse due to calling an indeterminate function pointer. Rich Felker2011-06-191-0/+1
* experimental dynamic linker!•••some notes: - library search path is hard coded - x86_64 code is untested and may not work - dlopen/dlsym is not yet implemented - relocations in read-only memory won't work Rich Felker2011-06-181-0/+8