diff options
Diffstat (limited to 'llvm/lib/Target/Sparc/SparcV9FrameInfo.cpp')
-rw-r--r-- | llvm/lib/Target/Sparc/SparcV9FrameInfo.cpp | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/llvm/lib/Target/Sparc/SparcV9FrameInfo.cpp b/llvm/lib/Target/Sparc/SparcV9FrameInfo.cpp deleted file mode 100644 index d283e942bb4..00000000000 --- a/llvm/lib/Target/Sparc/SparcV9FrameInfo.cpp +++ /dev/null @@ -1,65 +0,0 @@ -//===-- Sparc.cpp - General implementation file for the Sparc Target ------===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by the LLVM research group and is distributed under -// the University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// Interface to stack frame layout info for the UltraSPARC. Starting offsets -// for each area of the stack frame are aligned at a multiple of -// getStackFrameSizeAlignment(). -// -//===----------------------------------------------------------------------===// - -#include "llvm/CodeGen/MachineFunction.h" -#include "llvm/CodeGen/MachineFunctionInfo.h" -#include "llvm/Target/TargetFrameInfo.h" -#include "SparcFrameInfo.h" - -using namespace llvm; - -int -SparcFrameInfo::getFirstAutomaticVarOffset(MachineFunction&, bool& pos) const { - pos = false; // static stack area grows downwards - return StaticAreaOffsetFromFP; -} - -int -SparcFrameInfo::getRegSpillAreaOffset(MachineFunction& mcInfo, bool& pos) const -{ - // ensure no more auto vars are added - mcInfo.getInfo()->freezeAutomaticVarsArea(); - - pos = false; // static stack area grows downwards - unsigned autoVarsSize = mcInfo.getInfo()->getAutomaticVarsSize(); - return StaticAreaOffsetFromFP - autoVarsSize; -} - -int SparcFrameInfo::getTmpAreaOffset(MachineFunction& mcInfo, bool& pos) const { - MachineFunctionInfo *MFI = mcInfo.getInfo(); - MFI->freezeAutomaticVarsArea(); // ensure no more auto vars are added - MFI->freezeSpillsArea(); // ensure no more spill slots are added - - pos = false; // static stack area grows downwards - unsigned autoVarsSize = MFI->getAutomaticVarsSize(); - unsigned spillAreaSize = MFI->getRegSpillsSize(); - int offset = autoVarsSize + spillAreaSize; - return StaticAreaOffsetFromFP - offset; -} - -int -SparcFrameInfo::getDynamicAreaOffset(MachineFunction& mcInfo, bool& pos) const { - // Dynamic stack area grows downwards starting at top of opt-args area. - // The opt-args, required-args, and register-save areas are empty except - // during calls and traps, so they are shifted downwards on each - // dynamic-size alloca. - pos = false; - unsigned optArgsSize = mcInfo.getInfo()->getMaxOptionalArgsSize(); - if (int extra = optArgsSize % getStackFrameSizeAlignment()) - optArgsSize += (getStackFrameSizeAlignment() - extra); - int offset = optArgsSize + FirstOptionalOutgoingArgOffsetFromSP; - assert((offset - OFFSET) % getStackFrameSizeAlignment() == 0); - return offset; -} |