summaryrefslogtreecommitdiff
path: root/include/llvm/CodeGen
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2016-01-16 17:17:12 +0000
committerDimitry Andric <dim@FreeBSD.org>2016-01-16 17:17:12 +0000
commitdfab1a98e00a97e03f1d59a3cbdc33ced8622a9c (patch)
treed98eb329c62cf06c560c5bd3ac3404fcbbc970e4 /include/llvm/CodeGen
parent050e163ae8b4bb6eb252b59e2f8f36e68ae9239d (diff)
Diffstat (limited to 'include/llvm/CodeGen')
-rw-r--r--include/llvm/CodeGen/MachineFrameInfo.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/MachineFrameInfo.h b/include/llvm/CodeGen/MachineFrameInfo.h
index 48e8ca75052e..e50779aacc23 100644
--- a/include/llvm/CodeGen/MachineFrameInfo.h
+++ b/include/llvm/CodeGen/MachineFrameInfo.h
@@ -251,6 +251,10 @@ class MachineFrameInfo {
/// opaque mechanism like inline assembly or Win32 EH.
bool HasOpaqueSPAdjustment;
+ /// True if the function contains operations which will lower down to
+ /// instructions which manipulate the stack pointer.
+ bool HasCopyImplyingStackAdjustment;
+
/// True if the function contains a call to the llvm.vastart intrinsic.
bool HasVAStart;
@@ -288,6 +292,7 @@ public:
LocalFrameMaxAlign = 0;
UseLocalStackAllocationBlock = false;
HasOpaqueSPAdjustment = false;
+ HasCopyImplyingStackAdjustment = false;
HasVAStart = false;
HasMustTailInVarArgFunc = false;
Save = nullptr;
@@ -493,6 +498,15 @@ public:
bool hasOpaqueSPAdjustment() const { return HasOpaqueSPAdjustment; }
void setHasOpaqueSPAdjustment(bool B) { HasOpaqueSPAdjustment = B; }
+ /// Returns true if the function contains operations which will lower down to
+ /// instructions which manipulate the stack pointer.
+ bool hasCopyImplyingStackAdjustment() const {
+ return HasCopyImplyingStackAdjustment;
+ }
+ void setHasCopyImplyingStackAdjustment(bool B) {
+ HasCopyImplyingStackAdjustment = B;
+ }
+
/// Returns true if the function calls the llvm.va_start intrinsic.
bool hasVAStart() const { return HasVAStart; }
void setHasVAStart(bool B) { HasVAStart = B; }