Description
Direct call transformation emits a direct call for a patch instead of having a PLT entry. This is possible if a called method is in the same assembly and requires no initialization. In nollvm configuration, when a call is made through a PLT entry, it initializes the got slots used by the method and runs its class cctor if needed. In llvm configuration, methods initialize themselves and they can be called at any time.
The idea is to change nollvm methods to init themselves without a PLT entry. Method entry point should invoke class constructor and initialize all GOT entries used.
Tasks