Add CC operand as 4th operand of SUBcc, and mark it as a def.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@348 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp b/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp
index 901ad00..b472feb 100644
--- a/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp
+++ b/lib/CodeGen/TargetMachine/Sparc/SparcInstrSelection.cpp
@@ -479,12 +479,11 @@
 	mvec[0] = new MachineInstr(SUBcc);
 	Set3OperandsFromInstr(mvec[0], subtreeRoot, target, discardResult);
 	
-	if (discardResult)
-	  {// mark the "result" operand as being a CC register
-	    mvec[0]->SetMachineOperand(2, MachineOperand::MO_CCRegister,
-				          subtreeRoot->getValue());
-	  }
-	else
+	// mark the 4th operand as being a CC register, and a "result"
+	mvec[0]->SetMachineOperand(3, MachineOperand::MO_CCRegister,
+				      subtreeRoot->getValue(), /*def*/ true);
+	
+	if (!discardResult) 
 	  { // recompute bool if needed, using the integer condition codes
 	    if (result->getOpcode() == Instruction::SetNE)
 	      discardResult = true;