DSPEmitter: Make m_unresolved_jumps private

By making the jitted function a private static function of DSPEmitter,
we can allow access to data members within the context of the function
without making them public overall.

This finally makes all data members for the x64 DSP emitter private.
This commit is contained in:
Lioncash 2018-06-04 15:35:06 -04:00
parent 5f29e891d3
commit bbd2fd080e
2 changed files with 7 additions and 3 deletions

View File

@ -365,7 +365,7 @@ void DSPEmitter::Compile(u16 start_addr)
JMP(m_return_dispatcher, true); JMP(m_return_dispatcher, true);
} }
static void CompileCurrent(DSPEmitter& emitter) void DSPEmitter::CompileCurrent(DSPEmitter& emitter)
{ {
emitter.Compile(g_dsp.pc); emitter.Compile(g_dsp.pc);

View File

@ -205,9 +205,11 @@ public:
void madd(UDSPInstruction opc); void madd(UDSPInstruction opc);
void msub(UDSPInstruction opc); void msub(UDSPInstruction opc);
std::array<std::list<u16>, MAX_BLOCKS> m_unresolved_jumps;
private: private:
// The emitter emits calls to this function. It's present here
// within the class itself to allow access to member variables.
static void CompileCurrent(DSPEmitter& emitter);
void WriteBranchExit(); void WriteBranchExit();
void WriteBlockLink(u16 dest); void WriteBlockLink(u16 dest);
@ -307,6 +309,8 @@ private:
std::vector<Block> m_block_links; std::vector<Block> m_block_links;
Block m_block_link_entry; Block m_block_link_entry;
std::array<std::list<u16>, MAX_BLOCKS> m_unresolved_jumps;
u16 m_cycles_left = 0; u16 m_cycles_left = 0;
// The index of the last stored ext value (compile time). // The index of the last stored ext value (compile time).