From 4daf99fa4420b5f398f8ec1686d5e62eef21bab0 Mon Sep 17 00:00:00 2001 From: Dani Messerman Date: Fri, 1 May 2015 00:31:43 +0300 Subject: [PATCH] Fix mov sanitation --- src/binary_translation/Instructions/DataProcessing.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/binary_translation/Instructions/DataProcessing.cpp b/src/binary_translation/Instructions/DataProcessing.cpp index a9dd62660..8a63db40d 100644 --- a/src/binary_translation/Instructions/DataProcessing.cpp +++ b/src/binary_translation/Instructions/DataProcessing.cpp @@ -12,9 +12,10 @@ bool DataProcessing::Decode() FieldDef<4>(&rd), FieldDef<5>(&imm5), FieldDef<3>(0), FieldDef<4>(&rm) })) { form = Form::Register; + if (cond != Condition::AL) return false; if (imm5 != 0) return false; // Shifts if (s != 0) return false; // Set flags - if (rd == Register::PC) return false; // Jump + if (rm == Register::PC) return false; // Jump return true; } if (ReadFields({ FieldDef<4>(&cond), FieldDef<3>(1), FieldDef<4>(&short_op), FieldDef<1>(&s), FieldDef<4>(&rn),