From dc1b024b801d8e5499fabd2a491b6e0a14d6b9c3 Mon Sep 17 00:00:00 2001 From: Lioncash Date: Wed, 26 Aug 2015 00:10:23 -0400 Subject: [PATCH] dyncom: Simplify some comparisons in CondPassed --- src/core/arm/dyncom/arm_dyncom_interpreter.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp index 0756cfe61..0fddb07a0 100644 --- a/src/core/arm/dyncom/arm_dyncom_interpreter.cpp +++ b/src/core/arm/dyncom/arm_dyncom_interpreter.cpp @@ -77,13 +77,13 @@ static bool CondPassed(ARMul_State* cpu, unsigned int cond) { case ConditionCode::LS: return (!c_flag || z_flag); case ConditionCode::GE: - return ((!n_flag && !v_flag) || (n_flag && v_flag)); + return (n_flag == v_flag); case ConditionCode::LT: - return ((n_flag && !v_flag) || (!n_flag && v_flag)); + return (n_flag != v_flag); case ConditionCode::GT: - return ((!n_flag && !v_flag && !z_flag) || (n_flag && v_flag && !z_flag)); + return (!z_flag && (n_flag == v_flag)); case ConditionCode::LE: - return ((n_flag && !v_flag) || (!n_flag && v_flag)) || z_flag; + return (z_flag || (n_flag != v_flag)); case ConditionCode::AL: case ConditionCode::NV: // Unconditional return true;