Fix weak symbol linkage in shared objects

Weak symbols must be called indirectly (la+jalr), not via PLT (auipc+jalr).