summaryrefslogtreecommitdiff
path: root/src/ldso/mips/start.s
AgeCommit message (Collapse)AuthorFilesLines
2012-08-17fix bug computing argc when invoking ld-musl-mips.so.1 progname ...Rich Felker1-3/+3
2012-08-05mips dynamic linker supportRich Felker1-0/+46
not heavily tested, but the basics are working. the basic concept is that the dynamic linker entry point code invokes a pure-PIC (no global accesses) C function in reloc.h to perform the early GOT relocations needed to make the dynamic linker itself functional, then invokes __dynlink like on other archs. since mips uses some ugly arch-specific hacks to optimize relocating the GOT (rather than just using the normal DT_REL[A] tables like on other archs), the dynamic linker has been modified slightly to support calling arch-specific relocation code in reloc.h. most of the actual mips-specific behavior was developed by reading the output of readelf on libc.so and simple executable files. i could not find good reference information on which relocation types need to be supported or their semantics, so it's possible that some legitimate usage cases will not work yet.