Commit Graph

85 Commits

Author SHA1 Message Date
PoroCYon 4b4d8107a8 add support for R_X86_64_REX_GOTPCRELX reloc (thanks Shiz) 2019-05-17 15:36:41 +00:00
PoroCYon be3942ed6d fix dnload version 2019-04-29 23:46:13 +00:00
PoroCYon 3eea42e29c 32-bit version working (not yet the dnload version) 2019-04-29 23:46:13 +00:00
PoroCYon 8c7ce9c930 fix importing weak symbols 2019-04-29 23:46:13 +00:00
PoroCYon 8a4b7ce4ec src->rt; smol*.py -> src; add optional 16-bit hash version 2019-04-29 23:46:13 +00:00
PoroCYon c75be623eb 32-bit version using dnload loader now working 2019-04-29 23:46:13 +00:00
PoroCYon d9dbaae27a fixes. dnload mode should now be usableish 2019-03-14 14:40:33 +00:00
PoroCYon 26d96fc2c1 get rid of a few more bytes 2019-03-14 14:40:33 +00:00
PoroCYon 5e19c2746e add dnload import method to 64-bit version (unoptimized atm) 2019-03-14 14:40:33 +00:00
PoroCYon aed33c73a9 make things smaller again 2019-03-14 14:40:33 +00:00
PoroCYon 434630e6cc fix -fno-plt failing 2019-03-14 14:40:33 +00:00
PoroCYon 1e55344436 fix crash when a hash's LSbyte is 0 2019-03-06 12:01:42 +00:00
PoroCYon 237ba99104 more size crunching, but not completely perfect 2019-03-06 12:01:42 +00:00
PoroCYon 296556080d more optimizations (64-bit only for now) 2019-03-06 12:01:42 +00:00
PoroCYon 6e2aa414a3 more optimizations (64-bit only for now) 2019-03-06 12:01:42 +00:00
PoroCYon 518a15d2af make the linker survive -ffunction-sections -fdata-sections -Wl,--gc-sections 2019-02-27 23:23:10 +00:00
PoroCYon 0993ec8dcb use repne scas[dq] for searching for l_entry 2019-02-27 23:23:10 +00:00
PoroCYon a6c4c6f2dd ... and fix the Makefile to work again with code that uses main() instead of _start() 2019-02-27 23:23:10 +00:00
PoroCYon d903ef2d50 use pkg-config in makefile (thanks unlord) 2019-02-27 23:23:10 +00:00
PoroCYon a73dfb9789 fix stupid 32-bit compilation failure 2019-02-27 23:23:10 +00:00
PoroCYon 5b262ffca0 docs on smoldd 2019-02-27 23:23:10 +00:00
PoroCYon f317bc18db USE_DT_DEBUG, SKIP_ENTRIES options 2019-02-27 23:23:10 +00:00
PoroCYon 9d117fe66f use better defaults for lib search paths 2019-02-27 23:23:10 +00:00
PoroCYon d9a5eac2e6 add support for more than one relocation type on x86_64, make stack alignment optional 2019-02-27 23:23:10 +00:00
PoroCYon 560ce8c0f2 add smoldd 2019-02-27 23:23:10 +00:00
PoroCYon b08e23a16c add LICENSE 2019-02-27 23:23:10 +00:00
PoroCYon 75c1cfe603 add docs etc 2019-02-27 23:23:10 +00:00
PoroCYon 38ea8e9531 64-bit version. 2019-02-27 23:23:10 +00:00
PoroCYon cccd9656de lots of stuff, see detailed desc.
* reorganize the project structure a bit (sorry not sorry :P)
  * src/ -> test/
  * ldr/ -> src/, ld/
  * mksyms -> smol.py (and smol*.py)
* clean up and make the python script a bit less hacky
* optimize the loader code (there can still be done more, though)
* preserve the stack so argc, argv and envp can be read
* more stuff
2019-02-27 23:23:10 +00:00
PoroCYon f6b9a927a6 use _start, but don't call it ;) 2019-02-27 23:23:10 +00:00
PoroCYon 56357dc04b add optional PT_INTERP stuff 2019-02-27 23:23:10 +00:00
PoroCYon 378714f449 make the loader compatible with at least more than one glibc version 2019-02-27 23:23:10 +00:00
PoroCYon 9f57498eea fix smol wrt new glibc version, make mksyms much faster 2019-02-27 23:23:10 +00:00
Shiz d87b11a6c8 Simplify and remove questionable defaults. 2018-04-12 01:05:42 +02:00
Shiz 6081557aa2 epoch 2018-04-12 00:14:36 +02:00