decompiler  1.0.0
Public Member Functions | List of all members
VolatileReadOp Class Reference

An operation that reads from volatile memory. More...

#include <userop.hh>

Inheritance diagram for VolatileReadOp:
VolatileOp UserPcodeOp

Public Member Functions

 VolatileReadOp (Architecture *g, const string &nm, int4 ind)
 Constructor.
 
virtual string getOperatorName (const PcodeOp *op) const
 Get the symbol representing this operation in decompiled code. More...
 
virtual void restoreXml (const Element *el)
 Restore the detailed description from an XML stream. More...
 
- Public Member Functions inherited from VolatileOp
 VolatileOp (Architecture *g, const string &nm, int4 ind)
 Constructor.
 
- Public Member Functions inherited from UserPcodeOp
 UserPcodeOp (Architecture *g, const string &nm, int4 ind)
 Construct from name and index.
 
const string & getName (void) const
 Get the low-level name of the p-code op.
 
int4 getIndex (void) const
 Get the constant id of the op.
 
virtual ~UserPcodeOp (void)
 Destructor.
 

Additional Inherited Members

- Static Protected Member Functions inherited from VolatileOp
static string appendSize (const string &base, int4 size)
 Append a suffix to a string encoding a specific size. More...
 
- Protected Attributes inherited from UserPcodeOp
string name
 Low-level name of p-code operator.
 
int4 useropindex
 Index passed in the CALLOTHER op.
 
Architectureglb
 Architecture owning the user defined op.
 

Detailed Description

An operation that reads from volatile memory.

This CALLOTHER p-code operation takes as its input parameter, after the constant id, a reference Varnode to the memory being read. The output returned by this operation is the actual value read from memory.

Member Function Documentation

string VolatileReadOp::getOperatorName ( const PcodeOp op) const
virtual

Get the symbol representing this operation in decompiled code.

This will return the symbol formally displayed in source code, which can be tailored more than the low-level name

Parameters
opis the operation (in context) where a symbol is needed
Returns
the symbol as a string

Reimplemented from UserPcodeOp.

References PcodeOp::getOut(), Varnode::getSize(), and UserPcodeOp::name.

void VolatileReadOp::restoreXml ( const Element el)
virtual

Restore the detailed description from an XML stream.

The details of how a user defined operation behaves can be dynamically configured from an XML tag.

Parameters
elis the root XML element describing the op

Implements UserPcodeOp.

References Element::getAttributeValue(), and UserPcodeOp::name.

Referenced by UserOpManage::parseVolatile().


The documentation for this class was generated from the following files: