Skip to content

Commit

Permalink
Merge pull request #1159 from FioraAeterna/blocklinkdebug
Browse files Browse the repository at this point in the history
JIT: enable block linking and idle skipping in debug mode
  • Loading branch information
skidau committed Sep 30, 2014
2 parents 7828ddd + 23fbcec commit 9d9984e
Showing 1 changed file with 4 additions and 18 deletions.
22 changes: 4 additions & 18 deletions Source/Core/Core/PowerPC/Jit64/Jit.cpp
Expand Up @@ -174,26 +174,12 @@ bool Jit64::HandleFault(uintptr_t access_address, SContext* ctx)
void Jit64::Init()
{
jo.optimizeStack = true;
/* This will enable block linking in JitBlockCache::FinalizeBlock(), it gives faster execution but may not
be as stable as the alternative (to not link the blocks). However, I have not heard about any good examples
where this cause problems, so I'm enabling this by default, since I seem to get perhaps as much as 20% more
fps with this option enabled. If you suspect that this option cause problems you can also disable it from the
debugging window. */
if (SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableDebugging)
jo.enableBlocklink = true;
if (!SConfig::GetInstance().m_LocalCoreStartupParameter.bJITBlockLinking ||
SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU)
{
// TODO: support block linking with MMU
jo.enableBlocklink = false;
SConfig::GetInstance().m_LocalCoreStartupParameter.bSkipIdle = false;
}
else
{
if (!SConfig::GetInstance().m_LocalCoreStartupParameter.bJITBlockLinking)
{
jo.enableBlocklink = false;
}
else
{
jo.enableBlocklink = !SConfig::GetInstance().m_LocalCoreStartupParameter.bMMU;
}
}
jo.fpAccurateFcmp = SConfig::GetInstance().m_LocalCoreStartupParameter.bEnableFPRF;
jo.optimizeGatherPipe = true;
Expand Down

0 comments on commit 9d9984e

Please sign in to comment.