summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM/ARMFrameInfo.h
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2011-01-10 12:39:04 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2011-01-10 12:39:04 +0000
commit2f9312810919ea7937327237aec6589fe0204ac0 (patch)
tree308fc96247ecda830e430392757cef2d964449b8 /llvm/lib/Target/ARM/ARMFrameInfo.h
parent876bb0180f3527f45d04e901970911f7d2b512d4 (diff)
downloadbcm5719-llvm-2f9312810919ea7937327237aec6589fe0204ac0.tar.gz
bcm5719-llvm-2f9312810919ea7937327237aec6589fe0204ac0.zip
Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs and fixes here and there.
llvm-svn: 123170
Diffstat (limited to 'llvm/lib/Target/ARM/ARMFrameInfo.h')
-rw-r--r--llvm/lib/Target/ARM/ARMFrameInfo.h73
1 files changed, 0 insertions, 73 deletions
diff --git a/llvm/lib/Target/ARM/ARMFrameInfo.h b/llvm/lib/Target/ARM/ARMFrameInfo.h
deleted file mode 100644
index 260e5835cbb..00000000000
--- a/llvm/lib/Target/ARM/ARMFrameInfo.h
+++ /dev/null
@@ -1,73 +0,0 @@
-//===-- ARMTargetFrameInfo.h - Define TargetFrameInfo for ARM ---*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-//
-//
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef ARM_FRAMEINFO_H
-#define ARM_FRAMEINFO_H
-
-#include "ARM.h"
-#include "ARMSubtarget.h"
-#include "llvm/Target/TargetFrameInfo.h"
-
-namespace llvm {
- class ARMSubtarget;
-
-class ARMFrameInfo : public TargetFrameInfo {
-protected:
- const ARMSubtarget &STI;
-
-public:
- explicit ARMFrameInfo(const ARMSubtarget &sti)
- : TargetFrameInfo(StackGrowsDown, sti.getStackAlignment(), 0, 4), STI(sti) {
- }
-
- /// emitProlog/emitEpilog - These methods insert prolog and epilog code into
- /// the function.
- void emitPrologue(MachineFunction &MF) const;
- void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const;
-
- bool spillCalleeSavedRegisters(MachineBasicBlock &MBB,
- MachineBasicBlock::iterator MI,
- const std::vector<CalleeSavedInfo> &CSI,
- const TargetRegisterInfo *TRI) const;
-
- bool restoreCalleeSavedRegisters(MachineBasicBlock &MBB,
- MachineBasicBlock::iterator MI,
- const std::vector<CalleeSavedInfo> &CSI,
- const TargetRegisterInfo *TRI) const;
-
- bool hasFP(const MachineFunction &MF) const;
- bool hasReservedCallFrame(const MachineFunction &MF) const;
- bool canSimplifyCallFramePseudos(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;
-
- void processFunctionBeforeCalleeSavedScan(MachineFunction &MF,
- RegScavenger *RS) const;
-
- private:
- void emitPushInst(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI,
- const std::vector<CalleeSavedInfo> &CSI, unsigned StmOpc,
- unsigned StrOpc, bool NoGap,
- bool(*Func)(unsigned, bool)) const;
- void emitPopInst(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI,
- const std::vector<CalleeSavedInfo> &CSI, unsigned LdmOpc,
- unsigned LdrOpc, bool isVarArg, bool NoGap,
- bool(*Func)(unsigned, bool)) const;
-};
-
-} // End llvm namespace
-
-#endif
OpenPOWER on IntegriCloud