diff options
author | Evan Cheng <evan.cheng@apple.com> | 2007-05-01 00:47:46 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2007-05-01 00:47:46 +0000 |
commit | 14f1dd120fc13200697560680999c0efe7ecd714 (patch) | |
tree | a77a2041a5b8a7abda5d7314ada20d6f9a4d5630 /include | |
parent | 43d44f036ce571cc7f22996419740ae314525329 (diff) |
Added hook hasReservedCallFrame(). It returns true if the call frame is
included as part of the stack frame.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36606 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Target/MRegisterInfo.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/llvm/Target/MRegisterInfo.h b/include/llvm/Target/MRegisterInfo.h index 2db4f2031b..4b9389accb 100644 --- a/include/llvm/Target/MRegisterInfo.h +++ b/include/llvm/Target/MRegisterInfo.h @@ -451,6 +451,15 @@ public: /// variable sized allocas or if frame pointer elimination is disabled. virtual bool hasFP(const MachineFunction &MF) const = 0; + // hasReservedCallFrame - Under normal circumstances, when a frame pointer is + // not required, we reserve argument space for call sites in the function + // immediately on entry to the current function. This eliminates the need for + // add/sub sp brackets around call sites. Returns true if the call frame is + // included as part of the stack frame. + virtual bool hasReservedCallFrame(MachineFunction &MF) const { + return !hasFP(MF); + } + /// getCallFrameSetup/DestroyOpcode - These methods return the opcode of the /// frame setup/destroy instructions if they exist (-1 otherwise). Some /// targets use pseudo instructions in order to abstract away the difference |