DCCallPostfixNode Class Reference

#include <CallNodes.h>

Inheritance diagram for DCCallPostfixNode:

Node PrintHelperNode List of all members.

Public Member Functions

 DCCallPostfixNode ()
 DCCallPostfixNode (const uint32 opcode, const uint32 offset, const uint32 newSP)
 DCCallPostfixNode (const uint32 opcode, const uint32 offset)
 ~DCCallPostfixNode ()
void print () const
void print_unk (Console &o, const uint32 isize, const bool comment) const
void print_unk (Console &o, const uint32 isize) const
void print_asm (Console &o) const
void print_bin (ODequeDataSource &o) const
bool fold (DCUnit *unit, std::deque< Node * > &nodes)
sint32 size () const

Protected Types

 PUSH_RETVAL
 FREESTR
 ADDSP
enum  callpostfixtype { PUSH_RETVAL, FREESTR, ADDSP }

Protected Attributes

enum DCCallPostfixNode::callpostfixtype ptype

Private Attributes

uint32 sp

Detailed Description

Definition at line 28 of file CallNodes.h.


Member Enumeration Documentation

enum DCCallPostfixNode::callpostfixtype [protected]

Enumerator:
PUSH_RETVAL 
FREESTR 
ADDSP 

Definition at line 67 of file CallNodes.h.


Constructor & Destructor Documentation

DCCallPostfixNode::DCCallPostfixNode (  )  [inline]

Definition at line 31 of file CallNodes.h.

DCCallPostfixNode::DCCallPostfixNode ( const uint32  opcode,
const uint32  offset,
const uint32  newSP 
) [inline]

Definition at line 32 of file CallNodes.h.

References acceptOp(), ADDSP, FREESTR, and ptype.

DCCallPostfixNode::DCCallPostfixNode ( const uint32  opcode,
const uint32  offset 
) [inline]

Definition at line 43 of file CallNodes.h.

References acceptOp(), ptype, PUSH_RETVAL, Node::rtype(), Type::T_BYTE, and Type::T_WORD.

DCCallPostfixNode::~DCCallPostfixNode (  )  [inline]

Definition at line 54 of file CallNodes.h.


Member Function Documentation

bool DCCallPostfixNode::fold ( DCUnit unit,
std::deque< Node * > &  nodes 
) [virtual]

Implements Node.

Definition at line 49 of file CallNodes.cpp.

References acceptOp(), AddFreeToDCCallNode(), ADDSP, AddSpToDCCallNode(), FREESTR, print_assert(), ptype, PUSH_RETVAL, and PushRetValToDCCallNode().

void DCCallPostfixNode::print (  )  const [inline]

Definition at line 56 of file CallNodes.h.

void DCCallPostfixNode::print_asm ( Console o  )  const [virtual]

Reimplemented from Node.

Definition at line 92 of file CallNodes.cpp.

References ADDSP, FREESTR, Node::print_asm(), print_assert(), suc::print_sp(), Console::Printf(), ptype, PUSH_RETVAL, Node::rtype(), sp, Type::T_BYTE, Type::T_INVALID, and Type::T_WORD.

Referenced by DCCallNode::print_asm().

void DCCallPostfixNode::print_bin ( ODequeDataSource o  )  const [virtual]

Implements Node.

Definition at line 118 of file CallNodes.cpp.

References ADDSP, FREESTR, print_assert(), ptype, PUSH_RETVAL, Node::rtype(), sp, Type::T_BYTE, Type::T_INVALID, Type::T_WORD, and ODequeDataSource::write1().

Referenced by DCCallNode::print_bin().

void DCCallPostfixNode::print_unk ( Console o,
const uint32  isize 
) const [inline, virtual]

Implements Node.

Definition at line 58 of file CallNodes.h.

References print_unk().

void DCCallPostfixNode::print_unk ( Console o,
const uint32  isize,
const bool  comment 
) const

Definition at line 65 of file CallNodes.cpp.

References ADDSP, FREESTR, print_assert(), suc::print_sp(), Console::Printf(), ptype, PUSH_RETVAL, Node::rtype(), sp, Type::T_BYTE, Type::T_INVALID, and Type::T_WORD.

Referenced by print_unk().

sint32 DCCallPostfixNode::size (  )  const [inline]

Definition at line 64 of file CallNodes.h.

References sp.

Referenced by DCCallNode::fold().


Member Data Documentation

enum DCCallPostfixNode::callpostfixtype DCCallPostfixNode::ptype [protected]

Referenced by DCCallPostfixNode(), fold(), print_asm(), print_bin(), and print_unk().

uint32 DCCallPostfixNode::sp [private]

Definition at line 70 of file CallNodes.h.

Referenced by print_asm(), print_bin(), print_unk(), and size().


The documentation for this class was generated from the following files:
Generated on Fri Jul 27 22:29:06 2007 for pentagram by  doxygen 1.4.7