diff options
author | Jim Grosbach <grosbach@apple.com> | 2010-08-05 19:27:37 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2010-08-05 19:27:37 +0000 |
commit | e3ede5e2e4de6d028956c0b75c6bfa17ec50cc09 (patch) | |
tree | b8ecbda30d7ad8a353e31ad0267e8015a1bb935f /lib/Target/ARM/ARMBaseRegisterInfo.h | |
parent | 751aaf8ac586860df8f22c3707905d1a8005f1ba (diff) | |
download | llvm-e3ede5e2e4de6d028956c0b75c6bfa17ec50cc09.tar.gz llvm-e3ede5e2e4de6d028956c0b75c6bfa17ec50cc09.tar.bz2 llvm-e3ede5e2e4de6d028956c0b75c6bfa17ec50cc09.tar.xz |
For local variables in functions with a frame pointer, use FP as a base
register for local access when it's closer to the stack slot being refererenced
than the stack pointer. Make sure to take into account any argument frame
SP adjustments that are in affect at the time.
rdar://8256090
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110366 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/ARMBaseRegisterInfo.h')
-rw-r--r-- | lib/Target/ARM/ARMBaseRegisterInfo.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMBaseRegisterInfo.h b/lib/Target/ARM/ARMBaseRegisterInfo.h index eefbc12692..d644ecc1ab 100644 --- a/lib/Target/ARM/ARMBaseRegisterInfo.h +++ b/lib/Target/ARM/ARMBaseRegisterInfo.h @@ -116,6 +116,8 @@ public: unsigned getFrameRegister(const MachineFunction &MF) const; int getFrameIndexReference(const MachineFunction &MF, int FI, unsigned &FrameReg) const; + int ResolveFrameIndexReference(const MachineFunction &MF, int FI, + unsigned &FrameReg, int SPAdj) const; int getFrameIndexOffset(const MachineFunction &MF, int FI) const; // Exception handling queries. |