[llvm-commits] CVS: llvm/include/llvm/CodeGen/MachineFrameInfo.h
Jim Laskey
jlaskey at apple.com
Fri Nov 17 13:19:33 PST 2006
Changes in directory llvm/include/llvm/CodeGen:
MachineFrameInfo.h updated: 1.20 -> 1.21
---
Log message:
Hopefully a good crack at making debugging work on intel -disable-fp-elim.
---
Diffs of the changes: (+17 -1)
MachineFrameInfo.h | 18 +++++++++++++++++-
1 files changed, 17 insertions(+), 1 deletion(-)
Index: llvm/include/llvm/CodeGen/MachineFrameInfo.h
diff -u llvm/include/llvm/CodeGen/MachineFrameInfo.h:1.20 llvm/include/llvm/CodeGen/MachineFrameInfo.h:1.21
--- llvm/include/llvm/CodeGen/MachineFrameInfo.h:1.20 Fri Aug 25 17:56:30 2006
+++ llvm/include/llvm/CodeGen/MachineFrameInfo.h Fri Nov 17 15:19:15 2006
@@ -112,6 +112,14 @@
///
unsigned StackSize;
+ /// OffsetAdjustment - The amount that a frame offset needs to be adjusted to
+ /// have the actual offset from the stack/frame pointer. The calculation is
+ /// MFI->getObjectOffset(Index) + StackSize - TFI.getOffsetOfLocalArea() +
+ /// OffsetAdjustment. If OffsetAdjustment is zero (default) then offsets are
+ /// away from TOS. If OffsetAdjustment == StackSize then offsets are toward
+ /// TOS.
+ int OffsetAdjustment;
+
/// MaxAlignment - The prolog/epilog code inserter may process objects
/// that require greater alignment than the default alignment the target
/// provides. To handle this, MaxAlignment is set to the maximum alignment
@@ -148,7 +156,7 @@
public:
MachineFrameInfo() {
- NumFixedObjects = StackSize = MaxAlignment = 0;
+ NumFixedObjects = StackSize = OffsetAdjustment = MaxAlignment = 0;
HasVarSizedObjects = false;
HasCalls = false;
MaxCallFrameSize = 0;
@@ -212,6 +220,14 @@
/// setStackSize - Set the size of the stack...
///
void setStackSize(unsigned Size) { StackSize = Size; }
+
+ /// getOffsetAdjustment - Return the correction for frame offsets.
+ ///
+ int getOffsetAdjustment() const { return OffsetAdjustment; }
+
+ /// setOffsetAdjustment - Set the correction for frame offsets.
+ ///
+ void setOffsetAdjustment(int Adj) { OffsetAdjustment = Adj; }
/// getMaxAlignment - Return the alignment in bytes that this function must be
/// aligned to, which is greater than the default stack alignment provided by
More information about the llvm-commits
mailing list