PPCTables: Fix OPLOG system
Since OPLOG is defined in PPCTables.cpp only, it isn't visible elsewhere. This broke in 3ede866c37
.
This commit is contained in:
parent
34f39ee22e
commit
cd627d1232
|
@ -491,16 +491,5 @@ void Jit64::CompileInstruction(PPCAnalyst::CodeOp& op)
|
||||||
{
|
{
|
||||||
(this->*s_dyna_op_table[op.inst.OPCD])(op.inst);
|
(this->*s_dyna_op_table[op.inst.OPCD])(op.inst);
|
||||||
|
|
||||||
GekkoOPInfo* info = op.opinfo;
|
PPCTables::CountInstructionCompile(op.opinfo, js.compilerPC);
|
||||||
if (info)
|
|
||||||
{
|
|
||||||
#ifdef OPLOG
|
|
||||||
if (!strcmp(info->opname, OP_TO_LOG)) // "mcrfs"
|
|
||||||
{
|
|
||||||
rsplocations.push_back(js.compilerPC);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
info->compileCount++;
|
|
||||||
info->lastUse = js.compilerPC;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -491,16 +491,5 @@ void JitArm64::CompileInstruction(PPCAnalyst::CodeOp& op)
|
||||||
{
|
{
|
||||||
(this->*s_dyna_op_table[op.inst.OPCD])(op.inst);
|
(this->*s_dyna_op_table[op.inst.OPCD])(op.inst);
|
||||||
|
|
||||||
GekkoOPInfo* info = op.opinfo;
|
PPCTables::CountInstructionCompile(op.opinfo, js.compilerPC);
|
||||||
if (info)
|
|
||||||
{
|
|
||||||
#ifdef OPLOG
|
|
||||||
if (!strcmp(info->opname, OP_TO_LOG))
|
|
||||||
{ ///"mcrfs"
|
|
||||||
rsplocations.push_back(js.compilerPC);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
info->compileCount++;
|
|
||||||
info->lastUse = js.compilerPC;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,8 +110,8 @@ bool UsesFPU(UGeckoInstruction inst)
|
||||||
return (info->flags & FL_USE_FPU) != 0;
|
return (info->flags & FL_USE_FPU) != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define OPLOG
|
// #define OPLOG
|
||||||
#define OP_TO_LOG "mtfsb0x"
|
// #define OP_TO_LOG "mtfsb0x"
|
||||||
|
|
||||||
#ifdef OPLOG
|
#ifdef OPLOG
|
||||||
namespace
|
namespace
|
||||||
|
@ -141,6 +141,19 @@ void CountInstruction(UGeckoInstruction inst)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CountInstructionCompile(GekkoOPInfo* info, u32 pc)
|
||||||
|
{
|
||||||
|
info->compileCount++;
|
||||||
|
info->lastUse = pc;
|
||||||
|
|
||||||
|
#ifdef OPLOG
|
||||||
|
if (!strcmp(info->opname, OP_TO_LOG))
|
||||||
|
{
|
||||||
|
rsplocations.push_back(pc);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
void PrintInstructionRunCounts()
|
void PrintInstructionRunCounts()
|
||||||
{
|
{
|
||||||
typedef std::pair<const char*, u64> OpInfo;
|
typedef std::pair<const char*, u64> OpInfo;
|
||||||
|
|
|
@ -127,6 +127,7 @@ bool IsValidInstruction(UGeckoInstruction inst);
|
||||||
bool UsesFPU(UGeckoInstruction inst);
|
bool UsesFPU(UGeckoInstruction inst);
|
||||||
|
|
||||||
void CountInstruction(UGeckoInstruction inst);
|
void CountInstruction(UGeckoInstruction inst);
|
||||||
|
void CountInstructionCompile(GekkoOPInfo* info, u32 pc);
|
||||||
void PrintInstructionRunCounts();
|
void PrintInstructionRunCounts();
|
||||||
void LogCompiledInstructions();
|
void LogCompiledInstructions();
|
||||||
const char* GetInstructionName(UGeckoInstruction inst);
|
const char* GetInstructionName(UGeckoInstruction inst);
|
||||||
|
|
Loading…
Reference in New Issue