Currently, the upcall used to create threads assumes ELFv1.
Instead, we should check which sysentvec is in use on the process and act accordingly.
This makes ELFv2 threaded processes partially work. (they still crash on thread exit at the moment, but with a valid backtrace instead of a trashed stack.)