summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc/SparcInstrSelection.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/Sparc/SparcInstrSelection.cpp')
-rw-r--r--llvm/lib/Target/Sparc/SparcInstrSelection.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Target/Sparc/SparcInstrSelection.cpp b/llvm/lib/Target/Sparc/SparcInstrSelection.cpp
index 533d74c15f9..4feecbb1bd1 100644
--- a/llvm/lib/Target/Sparc/SparcInstrSelection.cpp
+++ b/llvm/lib/Target/Sparc/SparcInstrSelection.cpp
@@ -2017,6 +2017,10 @@ GetInstructionsByRule(InstructionNode* subtreeRoot,
}
case 64: // reg: Phi(reg,reg)
+ numInstr = 0; // don't forward the value
+ break;
+#undef NEED_PHI_MACHINE_INSTRS
+#ifdef NEED_PHI_MACHINE_INSTRS
{ // This instruction has variable #operands, so resultPos is 0.
Instruction* phi = subtreeRoot->getInstruction();
mvec[0] = new MachineInstr(PHI, 1 + phi->getNumOperands());
@@ -2027,6 +2031,7 @@ GetInstructionsByRule(InstructionNode* subtreeRoot,
phi->getOperand(i));
break;
}
+#endif NEED_PHI_MACHINE_INSTRS
case 71: // reg: VReg
case 72: // reg: Constant
OpenPOWER on IntegriCloud