From 2b617090daffb71d9099831de26d68d7c88172ff Mon Sep 17 00:00:00 2001
From: clc5q <clc5q@git.zephyr-software.com>
Date: Tue, 6 May 2008 11:01:44 +0000
Subject: [PATCH] Move add with carry and subtract with borrow back to always
 NUMERIC case in InferOperatorType.

---
 SMPInstr.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/SMPInstr.cpp b/SMPInstr.cpp
index b6a770c9..efdc4503 100644
--- a/SMPInstr.cpp
+++ b/SMPInstr.cpp
@@ -1421,6 +1421,8 @@ bool SMPInstr::InferOperatorType(SMPRegTransfer *CurrRT) {
 		case SMP_ROTATE_LEFT_CARRY: // rotate left through carry
 		case SMP_ROTATE_RIGHT:
 		case SMP_ROTATE_RIGHT_CARRY: // rotate right through carry
+		case SMP_ADD_CARRY:   // add with carry
+		case SMP_SUBTRACT_BORROW:  // subtract with borrow
 		case SMP_U_MULTIPLY:
 		case SMP_S_MULTIPLY:
 		case SMP_U_DIVIDE:
@@ -1519,7 +1521,6 @@ bool SMPInstr::InferOperatorType(SMPRegTransfer *CurrRT) {
 			break;
 
 		case SMP_ADD:
-		case SMP_ADD_CARRY:   // add with carry
 		case SMP_BITWISE_AND:
 		case SMP_BITWISE_OR:
 			// Extract the current types of right and left operands and the operator.
@@ -1648,7 +1649,6 @@ bool SMPInstr::InferOperatorType(SMPRegTransfer *CurrRT) {
 			break;
 
 		case SMP_SUBTRACT:
-		case SMP_SUBTRACT_BORROW:  // subtract with borrow
 			// Extract the current types of right and left operands and the operator.
 			OperType = CurrRT->GetOperatorType();
 			LeftOp = CurrRT->GetLeftOperand();
-- 
GitLab