#include "psprecomp/common.hpp" #include "psprecomp/decoder.hpp" #include "psprecomp/elf32.hpp" #include "psprecomp/guest_memory.hpp" #include #include #include #include static std::uint32_t parse(std::string s) { if (s.rfind("0x",0)==0 || s.rfind("0X",0)==0) s.erase(0,2); std::uint32_t v{}; std::from_chars(s.data(),s.data()+s.size(),v,16); return v; } int main(int argc,char**argv){ if(argc<4){std::cerr<<"usage: dump_function elf address count\n";return 2;} auto elf=psprecomp::Elf32Image::from_file(argv[1]); psprecomp::GuestMemory mem; (void)elf.load_and_relocate(mem); auto pc=parse(argv[2]); auto count=parse(argv[3]); for(std::uint32_t i=0;i