Added support for condition code loading/stroing in methods cpReg2Reg etc.
llvm-svn: 911
diff --git a/llvm/lib/Target/Sparc/SparcRegClassInfo.cpp b/llvm/lib/Target/Sparc/SparcRegClassInfo.cpp
index ff01f35..3ff0779 100644
--- a/llvm/lib/Target/Sparc/SparcRegClassInfo.cpp
+++ b/llvm/lib/Target/Sparc/SparcRegClassInfo.cpp
@@ -42,7 +42,7 @@
LR->setColor( LR->getSuggestedColor() );
return;
}
- else { // can't allocate the suggested col
+ else if ( DEBUG_RA ) { // can't allocate the suggested col
cerr << " Could NOT allocate the suggested color for LR ";
LR->printSet(); cerr << endl;
}
@@ -192,7 +192,7 @@
LR->setColor( LR->getSuggestedColor() );
return;
}
- else { // can't allocate the suggested col
+ else if (DEBUG_RA) { // can't allocate the suggested col
cerr << " Could NOT allocate the suggested color for LR ";
LR->printSet(); cerr << endl;
}
diff --git a/llvm/lib/Target/Sparc/SparcRegInfo.cpp b/llvm/lib/Target/Sparc/SparcRegInfo.cpp
index 5756dc3..60f4203 100644
--- a/llvm/lib/Target/Sparc/SparcRegInfo.cpp
+++ b/llvm/lib/Target/Sparc/SparcRegInfo.cpp
@@ -621,6 +621,8 @@
switch( RegType ) {
case IntRegType:
+ case IntCCRegType:
+ case FloatCCRegType:
MI = new MachineInstr(ADD, 3);
MI->SetMachineOperand(0, SrcReg, false);
MI->SetMachineOperand(1, SparcIntRegOrder::g0, false);
@@ -664,6 +666,8 @@
switch( RegType ) {
case IntRegType:
+ case IntCCRegType:
+ case FloatCCRegType:
MI = new MachineInstr(STX, 3);
MI->SetMachineOperand(0, DestPtrReg, false);
MI->SetMachineOperand(1, SrcReg, false);
@@ -711,6 +715,8 @@
switch( RegType ) {
case IntRegType:
+ case IntCCRegType:
+ case FloatCCRegType:
MI = new MachineInstr(LDX, 3);
MI->SetMachineOperand(0, SrcPtrReg, false);
MI->SetMachineOperand(1, MachineOperand:: MO_SignExtendedImmed,