LRDE Tiger Compiler  1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
frame Namespace Reference

Tools to describe activation blocks: Frame, Access. More...

Classes

class  Access
 Variables have to be stored. There are two kinds of places: saved in a register, or in the frame. Access abstracts both. More...
class  In_Register
 Local variable stored in register. More...
class  In_Frame
 Local variable stored in the stack frame. More...
class  Frame
 Stack frame (or activation record) of a function. More...

Typedefs

typedef std::list< bool > bool_list_type
typedef std::list< const Access * > access_list_type

Functions

std::ostream & operator<< (std::ostream &ostr, const Access &acc)
 Report acc on ostr.
std::ostream & operator<< (std::ostream &o, const Frame &f)
 Report f on o for debugging purpose.

Variables

size_t word_size = 4
 Global word size, in byte.

Detailed Description

Tools to describe activation blocks: Frame, Access.

Typedef Documentation

typedef std::list<const Access*> frame::access_list_type
typedef std::list<bool> frame::bool_list_type

Function Documentation

std::ostream & frame::operator<< ( std::ostream &  ostr,
const Access &  acc 
)

Report acc on ostr.

References frame::Access::dump().

std::ostream & frame::operator<< ( std::ostream &  o,
const Frame &  f 
)

Report f on o for debugging purpose.

References frame::Frame::label_get().

Variable Documentation

size_t frame::word_size = 4