LLVM API Documentation

TargetFrameInfo.cpp

Go to the documentation of this file.
00001 //===-- TargetFrameInfo.cpp - Implement machine frame interface -*- C++ -*-===//
00002 //
00003 //                     The LLVM Compiler Infrastructure
00004 //
00005 // This file was developed by the LLVM research group and is distributed under
00006 // the University of Illinois Open Source License. See LICENSE.TXT for details.
00007 //
00008 //===----------------------------------------------------------------------===//
00009 //
00010 // Implements the layout of a stack frame on the target machine.
00011 //
00012 //===----------------------------------------------------------------------===//
00013 
00014 #include "llvm/Target/TargetFrameInfo.h"
00015 #include <cstdlib>
00016 
00017 using namespace llvm;
00018 
00019 TargetFrameInfo::~TargetFrameInfo()
00020 {
00021 }
00022 
00023 //===--------------------------------------------------------------------===//
00024 // These methods provide details of the stack frame used by Sparc, thus they
00025 // are Sparc specific.
00026 //===--------------------------------------------------------------------===//
00027 
00028 // This method adjusts a stack offset to meet alignment rules of target.
00029 int
00030 TargetFrameInfo::adjustAlignment(int unalignedOffset, bool growUp,
00031                                  unsigned align) const {
00032   abort();
00033   return 0;
00034 }
00035 
00036 // These methods compute offsets using the frame contents for a particular
00037 // function.  The frame contents are obtained from the MachineFunction object
00038 // for the given function.  The rest must be implemented by the
00039 // machine-specific subclass.
00040 //
00041 int
00042 TargetFrameInfo::getIncomingArgOffset(MachineFunction& mcInfo, unsigned argNum)
00043   const {
00044   abort();
00045   return 0;
00046 }
00047 
00048 int
00049 TargetFrameInfo::getOutgoingArgOffset(MachineFunction& mcInfo,
00050                                       unsigned argNum) const {
00051   abort();
00052   return 0;
00053 }
00054 
00055 int
00056 TargetFrameInfo::getFirstAutomaticVarOffset(MachineFunction& mcInfo,
00057                                             bool& growUp) const {
00058   abort();
00059   return 0;
00060 }
00061 
00062 int
00063 TargetFrameInfo::getRegSpillAreaOffset(MachineFunction& mcInfo, bool& growUp)
00064   const {
00065   abort();
00066   return 0;
00067 }
00068 
00069 int
00070 TargetFrameInfo::getTmpAreaOffset(MachineFunction& mcInfo, bool& growUp) const {
00071   abort();
00072   return 0;
00073 }
00074 
00075 int
00076 TargetFrameInfo::getDynamicAreaOffset(MachineFunction& mcInfo, bool& growUp)
00077   const {
00078   abort();
00079   return 0;
00080 }
00081