Two bug fixes that were suppressing some "load-constant-into-register" instrs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@795 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/SparcV9/SparcV9InstrSelection.cpp b/lib/Target/SparcV9/SparcV9InstrSelection.cpp
index 891c319..d303f8e 100644
--- a/lib/Target/SparcV9/SparcV9InstrSelection.cpp
+++ b/lib/Target/SparcV9/SparcV9InstrSelection.cpp
@@ -1146,7 +1146,7 @@
TmpInstruction*
InsertCodeToLoadConstant(ConstPoolVal* opValue,
Instruction* vmInstr,
- vector<MachineInstr*> loadConstVec,
+ vector<MachineInstr*>& loadConstVec,
TargetMachine& target)
{
// value is constant and must be loaded into a register.
@@ -1244,7 +1244,7 @@
// have no immediate fields, so the constant always needs to be loaded
// into a register.
//
- for (unsigned i=1, N=minstr->getNumImplicitRefs(); i < N; ++i)
+ for (unsigned i=0, N=minstr->getNumImplicitRefs(); i < N; ++i)
if (isa<ConstPoolVal>(minstr->getImplicitRef(i)))
{
TmpInstruction* tmpReg = InsertCodeToLoadConstant((ConstPoolVal*)