From: Evan Cheng Date: Thu, 10 Jan 2008 08:24:38 +0000 (+0000) Subject: Only remat loads from immutable stack slots. X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=8480293f41c11c22762164449e41cd3adb0dd7d8;p=oota-llvm.git Only remat loads from immutable stack slots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45831 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/CodeGen/LiveIntervalAnalysis.cpp b/lib/CodeGen/LiveIntervalAnalysis.cpp index 80920405de4..da76269c68f 100644 --- a/lib/CodeGen/LiveIntervalAnalysis.cpp +++ b/lib/CodeGen/LiveIntervalAnalysis.cpp @@ -624,7 +624,7 @@ bool LiveIntervals::isReMaterializable(const LiveInterval &li, int FrameIdx = 0; if (!tii_->isLoadFromStackSlot(MI, FrameIdx) || - !mf_->getFrameInfo()->isFixedObjectIndex(FrameIdx)) + !mf_->getFrameInfo()->isImmutableObjectIndex(FrameIdx)) return false; // This is a load from fixed stack slot. It can be rematerialized unless it's @@ -719,7 +719,7 @@ bool LiveIntervals::tryFoldMemoryOperand(MachineInstr* &MI, else LiveVariables::transferKillDeadInfo(MI, fmi, mri_); MachineBasicBlock &MBB = *MI->getParent(); - if (isSS && !mf_->getFrameInfo()->isFixedObjectIndex(Slot)) + if (isSS && !mf_->getFrameInfo()->isImmutableObjectIndex(Slot)) vrm.virtFolded(Reg, MI, fmi, (VirtRegMap::ModRef)MRInfo); vrm.transferSpillPts(MI, fmi); vrm.transferRestorePts(MI, fmi);