LLVM API Documentation
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