Explicit import/export isn't C. PLT "trampoline" ABI on x86 is exactly the problem the linked article covers.
-
-
Win32 does explicit import/export in C via __declspec, granted, not a good option for Linux/... codebases
-
PLT calls generate stuff inline in the function; trampoline would generate it at externally at link time.
-
You're mistaken here. At call point, call through PLT looks normal. That's the whole point.
-
No extra code is generated for thr call itself, but some archs (x86) require GOT reg to be valid for external calls.
-
ok. this would make the PLT more directly analogous to the IAT then (ex: a stub used typically only on external calls)?...
-
meanwhile, assuming I make progress on the SH compiler; torn between GOT-for-everything and explicit PC-relative addressing.
-
PC relative only works for local, and only for non-fdpic.
-
yeah, it is a tradeoff; could possibly save some cycles for PIC and be limited to local calls (with vars/... still via GOT). TBD
- 5 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.