diff --git a/SMPInstr.cpp b/SMPInstr.cpp
index 01d931b77817c04ca38395eb408c002419df0ff8..18411c253e34bc3384a5dc8d11d771e2f495cee6 100644
--- a/SMPInstr.cpp
+++ b/SMPInstr.cpp
@@ -1371,16 +1371,6 @@ bool SMPInstr::InferOperatorType(SMPRegTransfer *CurrRT) {
 		case SMP_OUTPUT: // output to port
 		case SMP_SIGN_EXTEND:
 		case SMP_ZERO_EXTEND:
-		case SMP_S_COMPARE: // signed compare (subtraction-based)
-		case SMP_U_COMPARE: // unsigned compare (AND-based)
-		case SMP_LESS_THAN: // boolean test operators
-		case SMP_GREATER_THAN:
-		case SMP_LESS_EQUAL:
-		case SMP_GREATER_EQUAL:
-		case SMP_EQUAL:
-		case SMP_NOT_EQUAL:
-		case SMP_LOGICAL_AND:
-		case SMP_LOGICAL_OR:
 			break;
 
 		case SMP_ADDRESS_OF: // take effective address
@@ -1410,6 +1400,16 @@ bool SMPInstr::InferOperatorType(SMPRegTransfer *CurrRT) {
 		case SMP_BITWISE_NOT: // unary operator
 		case SMP_BITWISE_XOR:
 		case SMP_NEGATE:    // unary negation
+		case SMP_S_COMPARE: // signed compare (subtraction-based)
+		case SMP_U_COMPARE: // unsigned compare (AND-based)
+		case SMP_LESS_THAN: // boolean test operators
+		case SMP_GREATER_THAN:
+		case SMP_LESS_EQUAL:
+		case SMP_GREATER_EQUAL:
+		case SMP_EQUAL:
+		case SMP_NOT_EQUAL:
+		case SMP_LOGICAL_AND:
+		case SMP_LOGICAL_OR:
 		case SMP_UNARY_NUMERIC_OPERATION:  // miscellaneous; produces NUMERIC result
 		case SMP_BINARY_NUMERIC_OPERATION:  // miscellaneous; produces NUMERIC result
 		case SMP_SYSTEM_OPERATION:   // for instructions such as CPUID, RDTSC, etc.; NUMERIC