UCFunc Class Reference

#include <ucfunc.h>

Collaboration diagram for UCFunc:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 UCFunc ()
bool output_list (std::ostream &o, unsigned int funcno, const UCOptions &options)
bool output_ucs (std::ostream &o, const FuncMap &funcmap, const std::map< unsigned int, std::string > &intrinsics, const UCOptions &options)
std::ostream & output_ucs_funcname (std::ostream &o, const FuncMap &funcmap)
std::ostream & output_ucs_funcname (std::ostream &o, const FuncMap &funcmap, unsigned int funcid, unsigned int numargs, bool return_var)
void output_ucs_node (std::ostream &o, const FuncMap &funcmap, UCNode *ucn, const std::map< unsigned int, std::string > &intrinsics, unsigned int indent, const UCOptions &options)
void output_ucs_data (std::ostream &o, const FuncMap &funcmap, const std::map< unsigned int, std::string > &intrinsics, const UCOptions &options, unsigned int indent)
void output_ucs_opcode (std::ostream &o, const FuncMap &funcmap, const std::vector< UCOpcodeData > &optab, const UCc &op, const std::map< unsigned int, std::string > &intrinsics, unsigned int indent)
void parse_ucs (const FuncMap &funcmap, const std::map< unsigned int, std::string > &intrinsics, const UCOptions &options)
void parse_ucs_pass1 (std::vector< UCNode * > &nodes)
void parse_ucs_pass2 (std::vector< GotoSet > &gotoset, const FuncMap &funcmap, const std::map< unsigned int, std::string > &intrinsics)
std::vector< UCc * > parse_ucs_pass2a (std::vector< std::pair< UCc *, bool > >::reverse_iterator current, std::vector< std::pair< UCc *, bool > > &vec, unsigned int opsneeded, const FuncMap &funcmap, const std::map< unsigned int, std::string > &intrinsics)
void parse_ucs_pass3 (std::vector< GotoSet > &gotoset, const std::map< unsigned int, std::string > &intrinsics)
bool output_asm (std::ostream &o, const FuncMap &funcmap, const std::map< unsigned int, std::string > &intrinsics, const UCOptions &options)
void output_asm_data (std::ostream &o)
void output_asm_opcode (std::ostream &o, const FuncMap &funcmap, const std::vector< UCOpcodeData > &optab, const std::map< unsigned int, std::string > &intrinsics, const UCc &op, const UCOptions &options)
void output_raw_opcodes (std::ostream &o, const UCc &op)
bool output_tt (std::ostream &o)
unsigned int codesize () const

Public Attributes

std::vector< GotoSetgotoset
std::streampos _offset
unsigned int _funcid
unsigned int _funcsize
std::streampos _bodyoffset
unsigned int _datasize
std::map< unsigned int, std::string,
std::less< unsigned int > > 
_data
std::streampos _codeoffset
unsigned int _num_args
unsigned int _num_locals
unsigned int _num_externs
std::vector< unsigned int > _externs
std::vector< UCc_opcodes
bool return_var
bool debugging_info
unsigned int debugging_offset
std::string funcname
bool ext32
UCNode node

Detailed Description

Definition at line 199 of file ucfunc.h.


Constructor & Destructor Documentation

UCFunc::UCFunc (  )  [inline]

Definition at line 202 of file ucfunc.h.


Member Function Documentation

bool UCFunc::output_list ( std::ostream &  o,
unsigned int  funcno,
const UCOptions options 
)

bool UCFunc::output_ucs ( std::ostream &  o,
const FuncMap funcmap,
const std::map< unsigned int, std::string > &  intrinsics,
const UCOptions options 
)

std::ostream& UCFunc::output_ucs_funcname ( std::ostream &  o,
const FuncMap funcmap 
)

std::ostream& UCFunc::output_ucs_funcname ( std::ostream &  o,
const FuncMap funcmap,
unsigned int  funcid,
unsigned int  numargs,
bool  return_var 
)

void UCFunc::output_ucs_node ( std::ostream &  o,
const FuncMap funcmap,
UCNode ucn,
const std::map< unsigned int, std::string > &  intrinsics,
unsigned int  indent,
const UCOptions options 
)

void UCFunc::output_ucs_data ( std::ostream &  o,
const FuncMap funcmap,
const std::map< unsigned int, std::string > &  intrinsics,
const UCOptions options,
unsigned int  indent 
)

void UCFunc::output_ucs_opcode ( std::ostream &  o,
const FuncMap funcmap,
const std::vector< UCOpcodeData > &  optab,
const UCc op,
const std::map< unsigned int, std::string > &  intrinsics,
unsigned int  indent 
)

void UCFunc::parse_ucs ( const FuncMap funcmap,
const std::map< unsigned int, std::string > &  intrinsics,
const UCOptions options 
)

void UCFunc::parse_ucs_pass1 ( std::vector< UCNode * > &  nodes  ) 

void UCFunc::parse_ucs_pass2 ( std::vector< GotoSet > &  gotoset,
const FuncMap funcmap,
const std::map< unsigned int, std::string > &  intrinsics 
)

std::vector<UCc *> UCFunc::parse_ucs_pass2a ( std::vector< std::pair< UCc *, bool > >::reverse_iterator  current,
std::vector< std::pair< UCc *, bool > > &  vec,
unsigned int  opsneeded,
const FuncMap funcmap,
const std::map< unsigned int, std::string > &  intrinsics 
)

void UCFunc::parse_ucs_pass3 ( std::vector< GotoSet > &  gotoset,
const std::map< unsigned int, std::string > &  intrinsics 
)

bool UCFunc::output_asm ( std::ostream &  o,
const FuncMap funcmap,
const std::map< unsigned int, std::string > &  intrinsics,
const UCOptions options 
)

void UCFunc::output_asm_data ( std::ostream &  o  ) 

void UCFunc::output_asm_opcode ( std::ostream &  o,
const FuncMap funcmap,
const std::vector< UCOpcodeData > &  optab,
const std::map< unsigned int, std::string > &  intrinsics,
const UCc op,
const UCOptions options 
)

void UCFunc::output_raw_opcodes ( std::ostream &  o,
const UCc op 
)

bool UCFunc::output_tt ( std::ostream &  o  ) 

Definition at line 484 of file ucfunc.cc.

References _data, and _funcid.

unsigned int UCFunc::codesize (  )  const [inline]

Definition at line 262 of file ucfunc.h.


Member Data Documentation

std::vector<GotoSet> UCFunc::gotoset

Definition at line 234 of file ucfunc.h.

std::streampos UCFunc::_offset

Definition at line 236 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

unsigned int UCFunc::_funcid

Definition at line 237 of file ucfunc.h.

Referenced by demunge_ocstring(), output_tt(), and readbin_U7UCFunc().

unsigned int UCFunc::_funcsize

Definition at line 238 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

std::streampos UCFunc::_bodyoffset

Definition at line 239 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

unsigned int UCFunc::_datasize

Definition at line 241 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

std::map<unsigned int, std::string, std::less<unsigned int> > UCFunc::_data

Definition at line 243 of file ucfunc.h.

Referenced by demunge_ocstring(), output_tt(), and readbin_U7UCFunc().

std::streampos UCFunc::_codeoffset

Definition at line 246 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

unsigned int UCFunc::_num_args

Definition at line 248 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

unsigned int UCFunc::_num_locals

Definition at line 249 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

unsigned int UCFunc::_num_externs

Definition at line 250 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

std::vector<unsigned int> UCFunc::_externs

Definition at line 251 of file ucfunc.h.

Referenced by demunge_ocstring(), and readbin_U7UCFunc().

std::vector<UCc> UCFunc::_opcodes

Definition at line 253 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

bool UCFunc::return_var

Definition at line 255 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

bool UCFunc::debugging_info

Definition at line 256 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

unsigned int UCFunc::debugging_offset

Definition at line 257 of file ucfunc.h.

Referenced by readbin_U7UCFunc().

std::string UCFunc::funcname

Definition at line 258 of file ucfunc.h.

Referenced by demunge_ocstring(), and readbin_U7UCFunc().

bool UCFunc::ext32

Definition at line 260 of file ucfunc.h.

Referenced by UCData::load_funcs(), and readbin_U7UCFunc().

UCNode UCFunc::node

Definition at line 262 of file ucfunc.h.


The documentation for this class was generated from the following files:
Generated on Mon Jul 9 15:04:53 2007 for ExultEngine by  doxygen 1.5.1