summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2010-08-18 17:57:37 +0000
committerJim Grosbach <grosbach@apple.com>2010-08-18 17:57:37 +0000
commit74d803a58c7935c067397bb19afc05ec464d8159 (patch)
tree5a5c144b511d1e15d1d757bd50c721de7c9a2c63 /include
parent18cde6df91a33d62a334002a7b608917c07791e8 (diff)
downloadllvm-74d803a58c7935c067397bb19afc05ec464d8159.tar.gz
llvm-74d803a58c7935c067397bb19afc05ec464d8159.tar.bz2
llvm-74d803a58c7935c067397bb19afc05ec464d8159.tar.xz
Add hook for re-using virtual base registers for local stack slot access.
Nothing fancy, just ask the target if any currently available base reg is in range for the instruction under consideration and use the first one that is. Placeholder ARM implementation simply returns false for now. ongoing saga of rdar://8277890 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111374 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Target/TargetRegisterInfo.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetRegisterInfo.h b/include/llvm/Target/TargetRegisterInfo.h
index b1cf3e9db4..e36cc4f9ce 100644
--- a/include/llvm/Target/TargetRegisterInfo.h
+++ b/include/llvm/Target/TargetRegisterInfo.h
@@ -659,6 +659,13 @@ public:
assert(0 && "resolveFrameIndex does not exist on this target");
}
+ /// isBaseRegInRange - Determine whether a given base register definition
+ /// is in range to resolve a frame index.
+ virtual bool isBaseRegInRange(const MachineInstr *MI, unsigned Reg,
+ int64_t Offset) const {
+ assert(0 && "isBaseRegInRange does not exist on this target");
+ return false; // Must return a value in order to compile with VS 2005
+ }
/// getCallFrameSetup/DestroyOpcode - These methods return the opcode of the
/// frame setup/destroy instructions if they exist (-1 otherwise). Some