arm: Handle Cond::NV (some 3DS games use this despite being obsolete).

This commit is contained in:
bunnei 2016-08-04 23:14:15 -04:00
parent ec3a98cf95
commit 72608b7af6

View file

@ -53,13 +53,17 @@ bool ArmTranslatorVisitor::ConditionPassed(Cond cond) {
"(i.e.: one and only one conditional instruction per block)"); "(i.e.: one and only one conditional instruction per block)");
ASSERT_MSG(cond_state != ConditionalState::Break, ASSERT_MSG(cond_state != ConditionalState::Break,
"This should never happen. We requested a break but that wasn't honored."); "This should never happen. We requested a break but that wasn't honored.");
ASSERT_MSG(cond != Cond::NV, "NV conditional is obsolete");
if (cond == Cond::AL) { if (cond == Cond::AL) {
// Everything is fine with the world // Everything is fine with the world
return true; return true;
} }
if (cond == Cond::NV) {
// NV conditional is obsolete, but still seems to be used in some places!
return false;
}
// non-AL cond // non-AL cond
if (!ir.block.instructions.empty()) { if (!ir.block.instructions.empty()) {