Looking around in printf, we noticed it didn't work as objects were not being relocated across libraries. This PR enables this relocation; as well as adding a few extra tests.
TODOs:
we do not properly handle GLOBAL vs LOCAL relocations; it might be a small optimization to ensure we hold the two symbol types in different containers, so that when we do relocate, we don't needlessly look around at LOCAL bound symbols;
WEAK bound symbols aren't relocated;
some of the added tests are currently not fully workingm mainly due to (we believe) WEAK bound symbols, which are planned to be fixed shortly.
Looking around in
printf
, we noticed it didn't work as objects were not being relocated across libraries. This PR enables this relocation; as well as adding a few extra tests.TODOs: