aboutsummaryrefslogtreecommitdiff
path: root/lib/Target/X86/X86InstrBuilder.h
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-10-17 09:20:14 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-10-17 09:20:14 +0000
commit491f54f1fd700204db0a19efde0cc2627641d711 (patch)
treeab872f273e18f6668a5aad26d1d7692a6a0b842d /lib/Target/X86/X86InstrBuilder.h
parenta8e65426107be9c04e09ba29b3d7b54e168236d6 (diff)
Distinquish stack slots from other stack objects. They (and fixed objects) get FixedStack PseudoSourceValues.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84326 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/X86InstrBuilder.h')
-rw-r--r--lib/Target/X86/X86InstrBuilder.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Target/X86/X86InstrBuilder.h b/lib/Target/X86/X86InstrBuilder.h
index c475b56d12..8cbdfec87d 100644
--- a/lib/Target/X86/X86InstrBuilder.h
+++ b/lib/Target/X86/X86InstrBuilder.h
@@ -143,8 +143,11 @@ addFrameReference(const MachineInstrBuilder &MIB, int FI, int Offset = 0) {
Flags |= MachineMemOperand::MOLoad;
if (TID.mayStore())
Flags |= MachineMemOperand::MOStore;
+ const Value *SV = (MFI.isFixedObjectIndex(FI) ||
+ MFI.isSpillSlotObjectIndex(FI))
+ ? PseudoSourceValue::getFixedStack(FI) : PseudoSourceValue::getStack();
MachineMemOperand *MMO =
- MF.getMachineMemOperand(PseudoSourceValue::getFixedStack(FI),
+ MF.getMachineMemOperand(SV,
Flags, Offset,
MFI.getObjectSize(FI),
MFI.getObjectAlignment(FI));