Merge pull request #7251 from unknownbrackets/jit-minor

x86jit: Fix another sequential detect problem
This commit is contained in:
Henrik Rydgård 2015-01-01 10:11:39 +01:00
commit 4ec9f758ea
2 changed files with 6 additions and 4 deletions

View File

@ -121,8 +121,7 @@ JitOptions::JitOptions()
continueBranches = false;
continueJumps = false;
continueMaxInstructions = 300;
// TODO: breaks something in Monhun Nikki Poka Poka Ailu Mura G (see #7245.)
enableVFPUSIMD = false;
enableVFPUSIMD = true;
// Set by Asm if needed.
reserveR15ForAsm = false;
}

View File

@ -332,14 +332,17 @@ X64Reg FPURegCache::LoadRegsVS(const u8 *v, int n) {
// Let's also check if the memory addresses are sequential.
int sequential = 1;
for (int i = 1; i < n; ++i) {
if (v[i] < 128) {
if (v[i] < 128 && v[i - 1] < 128) {
if (voffset[v[i]] != voffset[v[i - 1]] + 1) {
break;
}
} else {
} else if (v[i] >= 128 && v[i - 1] >= 128) {
if (v[i] != v[i - 1] + 1) {
break;
}
} else {
// Temps can't be sequential with non-temps.
break;
}
++sequential;
}