#include <VarNodes.h>
Inheritance diagram for PushVarNode:
Public Member Functions | |
PushVarNode (const uint32 opcode, const uint32 offset, const uint32 newValue) | |
PushVarNode (const uint32 opcode, const uint32 offset, const uint32 strSize, const std::string &str) | |
PushVarNode (const uint32 opcode, const uint32 offset, const uint32 variable, const uint32 varindex) | |
PushVarNode (const uint32 opcode, const uint32 offset) | |
~PushVarNode () | |
void | print_unk (Console &o, const uint32 isize) const |
void | print_asm (Console &o) const |
void | print_bin (ODequeDataSource &o) const |
bool | fold (DCUnit *, std::deque< Node * > &) |
const DataType & | dtype () const |
Private Attributes | |
DataType | _dtype |
Definition at line 71 of file VarNodes.h.
PushVarNode::PushVarNode | ( | const uint32 | opcode, | |
const uint32 | offset, | |||
const uint32 | newValue | |||
) | [inline] |
Definition at line 74 of file VarNodes.h.
References _dtype, acceptOp(), DataType::DT_BP, DataType::DT_BPADDR, DataType::DT_BYTES, Node::rtype(), Type::T_BYTE, Type::T_DWORD, Type::T_WORD, and DataType::type().
PushVarNode::PushVarNode | ( | const uint32 | opcode, | |
const uint32 | offset, | |||
const uint32 | strSize, | |||
const std::string & | str | |||
) | [inline] |
Definition at line 102 of file VarNodes.h.
References _dtype, acceptOp(), DataType::DT_STRING, Node::rtype(), Type::T_STRING, and DataType::type().
PushVarNode::PushVarNode | ( | const uint32 | opcode, | |
const uint32 | offset, | |||
const uint32 | variable, | |||
const uint32 | varindex | |||
) | [inline] |
Definition at line 116 of file VarNodes.h.
References _dtype, acceptOp(), DataType::DT_GLOBAL, Node::rtype(), Type::T_WORD, and DataType::type().
Definition at line 123 of file VarNodes.h.
References _dtype, acceptOp(), DataType::DT_PID, Node::rtype(), Type::T_WORD, and DataType::type().
PushVarNode::~PushVarNode | ( | ) | [inline] |
Definition at line 137 of file VarNodes.h.
const DataType& PushVarNode::dtype | ( | ) | const [inline] |
void PushVarNode::print_asm | ( | Console & | o | ) | const [virtual] |
Reimplemented from Node.
Definition at line 270 of file VarNodes.cpp.
References _dtype, DataType::DT_BP, DataType::DT_BPADDR, DataType::DT_BYTES, DataType::DT_GLOBAL, DataType::DT_PID, DataType::DT_STRING, DataType::dtype(), Node::print_asm(), DataType::print_value_asm(), Console::Printf(), Type::T_BYTE, Type::T_DWORD, Type::T_STRING, Type::T_WORD, Type::type(), and DataType::type().
void PushVarNode::print_bin | ( | ODequeDataSource & | o | ) | const [virtual] |
Implements Node.
Definition at line 319 of file VarNodes.cpp.
References _dtype, DataType::DT_BP, DataType::DT_BPADDR, DataType::DT_BYTES, DataType::DT_GLOBAL, DataType::DT_PID, DataType::DT_STRING, DataType::dtype(), DataType::print_value_bin(), Type::T_BYTE, Type::T_DWORD, Type::T_STRING, Type::T_WORD, Type::type(), DataType::type(), and ODequeDataSource::write1().
Implements Node.
Definition at line 261 of file VarNodes.cpp.
References _dtype, DataType::print_type_unk(), DataType::print_value_unk(), and Console::Putchar().
DataType PushVarNode::_dtype [private] |
Definition at line 150 of file VarNodes.h.
Referenced by dtype(), print_asm(), print_bin(), print_unk(), and PushVarNode().