Include a frame index in the "fixed stack" pseudo source value
instead of using the frame index for the SVOffset, which was
inconsistent.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53486 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Target/PowerPC/PPCISelLowering.cpp b/lib/Target/PowerPC/PPCISelLowering.cpp
index fc626ee..dc38c7c 100644
--- a/lib/Target/PowerPC/PPCISelLowering.cpp
+++ b/lib/Target/PowerPC/PPCISelLowering.cpp
@@ -1943,8 +1943,8 @@
int FI = TailCallArgs[i].FrameIdx;
// Store relative to framepointer.
MemOpChains.push_back(DAG.getStore(Chain, Arg, FIN,
- PseudoSourceValue::getFixedStack(),
- FI));
+ PseudoSourceValue::getFixedStack(FI),
+ 0));
}
}
@@ -1972,10 +1972,10 @@
MVT VT = isPPC64 ? MVT::i64 : MVT::i32;
SDOperand NewRetAddrFrIdx = DAG.getFrameIndex(NewRetAddr, VT);
Chain = DAG.getStore(Chain, OldRetAddr, NewRetAddrFrIdx,
- PseudoSourceValue::getFixedStack(), NewRetAddr);
+ PseudoSourceValue::getFixedStack(NewRetAddr), 0);
SDOperand NewFramePtrIdx = DAG.getFrameIndex(NewFPIdx, VT);
Chain = DAG.getStore(Chain, OldFP, NewFramePtrIdx,
- PseudoSourceValue::getFixedStack(), NewFPIdx);
+ PseudoSourceValue::getFixedStack(NewFPIdx), 0);
}
return Chain;
}
@@ -3029,8 +3029,8 @@
Op.getOperand(0));
// STD the extended value into the stack slot.
- MachineMemOperand MO(PseudoSourceValue::getFixedStack(),
- MachineMemOperand::MOStore, FrameIdx, 8, 8);
+ MachineMemOperand MO(PseudoSourceValue::getFixedStack(FrameIdx),
+ MachineMemOperand::MOStore, 0, 8, 8);
SDOperand Store = DAG.getNode(PPCISD::STD_32, MVT::Other,
DAG.getEntryNode(), Ext64, FIdx,
DAG.getMemOperand(MO));