diff --git a/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp b/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp index 9133da5df49..0acdcdbc7bc 100644 --- a/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp +++ b/lib/CodeGen/RegAlloc/PhyRegAlloc.cpp @@ -1036,7 +1036,8 @@ void PhyRegAlloc::allocateStackSpace4SpilledLRs() LiveRange *L = (*HMI).second; // get the LiveRange if(L) if( ! L->hasColor() ) - L->setSpillOffFromFP(mcInfo.allocateSpilledValue(TM,L->getType())); + /**** NOTE: THIS SHOULD USE THE RIGHT SIZE FOR THE REG BEING PUSHED ****/ + L->setSpillOffFromFP(mcInfo.allocateSpilledValue(TM, Type::LongTy /*L->getType()*/ )); } } // for all LR's in hash map } diff --git a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp index 9133da5df49..0acdcdbc7bc 100644 --- a/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp +++ b/lib/Target/SparcV9/RegAlloc/PhyRegAlloc.cpp @@ -1036,7 +1036,8 @@ void PhyRegAlloc::allocateStackSpace4SpilledLRs() LiveRange *L = (*HMI).second; // get the LiveRange if(L) if( ! L->hasColor() ) - L->setSpillOffFromFP(mcInfo.allocateSpilledValue(TM,L->getType())); + /**** NOTE: THIS SHOULD USE THE RIGHT SIZE FOR THE REG BEING PUSHED ****/ + L->setSpillOffFromFP(mcInfo.allocateSpilledValue(TM, Type::LongTy /*L->getType()*/ )); } } // for all LR's in hash map }