Ghidra Decompiler Analysis Engine
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:
Inheritance graph
[legend]
Collaboration diagram for VolatileReadOp:
Collaboration graph
[legend]

Public Member Functions

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...
 

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

◆ getOperatorName()

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.

◆ restoreXml()

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.


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