#ifndef PS2RECOMP_ELF_ANALYSIS_CONTEXT_H #define PS2RECOMP_ELF_ANALYSIS_CONTEXT_H #include "ps2recomp/types.h" #include #include #include #include namespace ps2recomp { struct ElfAnalysisContext { std::vector functions; std::vector symbols; std::vector
sections; std::vector relocations; std::unordered_map functionIndexByStart; mutable std::unordered_map> instructionCache; void clear(); void buildFunctionIndex(); void clearInstructionCache(); Function *findFunction(uint32_t start); const Function *findFunction(uint32_t start) const; Function *findFunctionContaining(uint32_t address); const Function *findFunctionContaining(uint32_t address) const; }; } #endif // PS2RECOMP_ELF_ANALYSIS_CONTEXT_H