diff options
author | Dylan McKay <dylanmckay34@gmail.com> | 2016-10-08 01:10:31 +0000 |
---|---|---|
committer | Dylan McKay <dylanmckay34@gmail.com> | 2016-10-08 01:10:31 +0000 |
commit | b16b6d5739cb4feca62d5caec7029e57a6ab2ec6 (patch) | |
tree | d55c3a5abead6b8e8fc2acdd980c2d841ddf9cc3 /llvm/lib/Target/AVR | |
parent | 7c2d41aa9f7570f5180a33b73f2cfe7ce3cca35c (diff) | |
download | bcm5719-llvm-b16b6d5739cb4feca62d5caec7029e57a6ab2ec6.tar.gz bcm5719-llvm-b16b6d5739cb4feca62d5caec7029e57a6ab2ec6.zip |
[AVR] Don't worry about call frame size when initializing frame pointer
We previously only used the frame pointer if the frame pointer was too
big. This was to work around a bug (described in this old commit)
https://sourceforge.net/p/avr-llvm/code/204/tree//llvm/trunk/AVR/AVRFrameLowering.cpp?diff=50d64d912718465cb887d17a:203
I mistakenly invered the condition assuming it was a typo. I am now
removing it because it doesn't seem to be a problem anymore (plus it's a
dirty hack).
llvm-svn: 283639
Diffstat (limited to 'llvm/lib/Target/AVR')
-rw-r--r-- | llvm/lib/Target/AVR/AVRFrameLowering.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/llvm/lib/Target/AVR/AVRFrameLowering.cpp b/llvm/lib/Target/AVR/AVRFrameLowering.cpp index 342c90a16d5..dd7007892d0 100644 --- a/llvm/lib/Target/AVR/AVRFrameLowering.cpp +++ b/llvm/lib/Target/AVR/AVRFrameLowering.cpp @@ -45,10 +45,9 @@ bool AVRFrameLowering::hasReservedCallFrame(const MachineFunction &MF) const { // conditions: // - Y pointer is reserved to be the frame pointer. // - The function does not contain variable sized objects. - // - MaxCallFrameSize doesn't fit into 6-bits (when it's greater than 63). + const MachineFrameInfo &MFI = MF.getFrameInfo(); - return (hasFP(MF) && !MFI.hasVarSizedObjects() && - !isUInt<6>(MFI.getMaxCallFrameSize())); + return hasFP(MF) && !MFI.hasVarSizedObjects(); } void AVRFrameLowering::emitPrologue(MachineFunction &MF, |