RegCache64: devirtualize RegCache::Start

This commit is contained in:
degasus 2014-06-02 13:26:31 +02:00
parent 8693e0abaa
commit fd9bfddde7
3 changed files with 4 additions and 16 deletions

View file

@ -468,8 +468,8 @@ const u8* Jit64::DoJit(u32 em_address, PPCAnalyst::CodeBuffer *code_buf, JitBloc
// Start up the register allocators // Start up the register allocators
// They use the information in gpa/fpa to preload commonly used registers. // They use the information in gpa/fpa to preload commonly used registers.
gpr.Start(js.gpa); gpr.Start();
fpr.Start(js.fpa); fpr.Start();
js.downcountAmount = 0; js.downcountAmount = 0;
if (!Core::g_CoreStartupParameter.bEnableDebugging) if (!Core::g_CoreStartupParameter.bEnableDebugging)

View file

@ -13,7 +13,7 @@ RegCache::RegCache() : emit(nullptr)
{ {
} }
void RegCache::Start(PPCAnalyst::BlockRegStats &stats) void RegCache::Start()
{ {
for (auto& xreg : xregs) for (auto& xreg : xregs)
{ {
@ -163,16 +163,6 @@ void GPRRegCache::SetImmediate32(int preg, u32 immValue)
regs[preg].location = Imm32(immValue); regs[preg].location = Imm32(immValue);
} }
void GPRRegCache::Start(PPCAnalyst::BlockRegStats &stats)
{
RegCache::Start(stats);
}
void FPURegCache::Start(PPCAnalyst::BlockRegStats &stats)
{
RegCache::Start(stats);
}
const int *GPRRegCache::GetAllocationOrder(int &count) const int *GPRRegCache::GetAllocationOrder(int &count)
{ {
static const int allocationOrder[] = static const int allocationOrder[] =

View file

@ -48,7 +48,7 @@ public:
RegCache(); RegCache();
virtual ~RegCache() {} virtual ~RegCache() {}
virtual void Start(PPCAnalyst::BlockRegStats &stats) = 0; void Start();
void DiscardRegContentsIfCached(int preg); void DiscardRegContentsIfCached(int preg);
void SetEmitter(XEmitter *emitter) {emit = emitter;} void SetEmitter(XEmitter *emitter) {emit = emitter;}
@ -106,7 +106,6 @@ public:
class GPRRegCache : public RegCache class GPRRegCache : public RegCache
{ {
public: public:
void Start(PPCAnalyst::BlockRegStats &stats) override;
void BindToRegister(int preg, bool doLoad = true, bool makeDirty = true) override; void BindToRegister(int preg, bool doLoad = true, bool makeDirty = true) override;
void StoreFromRegister(int preg) override; void StoreFromRegister(int preg) override;
OpArg GetDefaultLocation(int reg) const override; OpArg GetDefaultLocation(int reg) const override;
@ -118,7 +117,6 @@ public:
class FPURegCache : public RegCache class FPURegCache : public RegCache
{ {
public: public:
void Start(PPCAnalyst::BlockRegStats &stats) override;
void BindToRegister(int preg, bool doLoad = true, bool makeDirty = true) override; void BindToRegister(int preg, bool doLoad = true, bool makeDirty = true) override;
void StoreFromRegister(int preg) override; void StoreFromRegister(int preg) override;
const int *GetAllocationOrder(int &count) override; const int *GetAllocationOrder(int &count) override;