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

(Low/High) intermediate code. More...

Classes

class  Binop
class  Call
class  Cjump
 Conditional branching. More...
class  Const
class  Eseq
class  Exp
 Node that has a value, contrary to Stm. More...
class  Fragment
 Piece of intermediate representation resource. More...
class  DataFrag
 Fragment for a string data. More...
class  ProcFrag
 Fragment for some code `data'. More...
class  Fragments
 Fragments: Fragment list. More...
class  Iterator
class  Jump
class  Label
class  Mem
 Memory indirection. More...
class  Move
 Copy the content of the second operand to the first operand. More...
class  Name
class  Seq
class  Stm
 Node that has no value, contrary to Exp. More...
class  Sxp
 An expression which value is discarded. More...
class  Temp
 An Exp for a temporary (pseudo register). More...
class  Tree
class  GenVisitor

Typedefs

typedef std::list< rTree > tree_list_type
typedef GenVisitor
< misc::constify_traits
ConstVisitor
 Readonly visitor.
typedef GenVisitor
< misc::id_traits
Visitor
 Read-write visitor.

Functions

Cjump::Relop symmetrize (const Cjump::Relop &r)
 Return the Relop R defined by: (x r y) <=> (y R x)
std::ostream & operator<< (std::ostream &ostr, const Cjump::Relop &r)
 Print Relop r on ostr.
std::ostream & operator<< (std::ostream &o, const Fragment &f)
std::ostream & operator<< (std::ostream &o, const Fragments &f)
 Report fragments on ostr.
std::ostream & dump (const tree::Fragments &fragments, std::ostream &ostr=std::cout)
 Display a list of fragments, by default on std::cout.
std::ostream & operator<< (std::ostream &o, const Tree &t)
 Print t on o.
std::ostream & operator<< (std::ostream &o, const tree_list_type &t)
 Print t on o.

Detailed Description

(Low/High) intermediate code.

Typedef Documentation

Readonly visitor.

typedef std::list<rTree> tree::tree_list_type

Read-write visitor.

Function Documentation

std::ostream & tree::dump ( const tree::Fragments fragments,
std::ostream &  ostr 
)

Display a list of fragments, by default on std::cout.

References target::tasks::fragments.

std::ostream & tree::operator<< ( std::ostream &  o,
const tree_list_type &  t 
)

Print t on o.

References misc::iendl(), and misc::separate().

std::ostream & tree::operator<< ( std::ostream &  o,
const Fragments &  f 
)

Report fragments on ostr.

References misc::separate().

std::ostream & tree::operator<< ( std::ostream &  ostr,
const Cjump::Relop &  r 
)
std::ostream & tree::operator<< ( std::ostream &  o,
const Fragment &  f 
)
inline
std::ostream & tree::operator<< ( std::ostream &  o,
const Tree &  t 
)
inline

Print t on o.

References tree::Tree::dump().

Cjump::Relop tree::symmetrize ( const Cjump::Relop &  r)