This relocation is used when a reference is made to a globally-exported
symbol from an assembly file (the symbol being defined in the same
file).
It prevented exceptionman from running without a small hack.
is used to create a meaningful commit message for the previous commit.
Intended original commit message: Added explicit (s32) casts for source registers of sign-dependent MIPS instructions. This should prevent sign-errors to occur in reverse engineered code using the output of the basic-decompiler as its base.
I had to revert the "kprxgen" to the original psp-prxgen and add a second segment containing the relocation offset (program type 0x700000A0) so it is recognized by reboot.bin which only handles relocations whose address is specified in a program header. So now psp-kprxgen must be used to compile at least sysmem.
This trick didn't work for loadcore; I'll investigate later.
Added static libraries for function/variable imports linking
Fixed import linking file so it doesn't crash when there are variables
Made the 3rd argument of basic-decompiler facultative
Fixed psp-build-exports (it didn't want to use variable of 'void' type)
Cleanups/fixes/added exports file/headers/Makefile in audio, me_wrapper, avcodec, libatrac3plus, codec, sysmem, interruptman, exceptionman
Don't use kprxgen anymore: it can't work and is useless anyway
Use the PSPSDK header files for the prototypes/structures which are defined in them and not in an already RE'ed module
Fixed alignment.
Added our/my own version of psp-build-exports from the PSPSDK, so the library name is placed right before the library exports in .rodata.
Added our/my own version of psp-prxgen from the PSPSDK (named psp-kprxgen for us), so the module uses only program headers and absolutely no sections.