My Project
Public Member Functions | List of all members
InjectedUserOp Class Reference

A user defined operation that is injected with other p-code. More...

#include <userop.hh>

Inheritance diagram for InjectedUserOp:
Inheritance graph
[legend]
Collaboration diagram for InjectedUserOp:
Collaboration graph
[legend]

Public Member Functions

 InjectedUserOp (Architecture *g, const string &nm, int4 ind, int4 injid)
 Constructor.
 
uint4 getInjectId (void) const
 Get the id of the injection object.
 
virtual void restoreXml (const Element *el)
 Restore the detailed description from an XML stream. More...
 
- 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.
 
virtual string getOperatorName (const PcodeOp *op) const
 Get the symbol representing this operation in decompiled code. More...
 

Additional Inherited Members

- 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

A user defined operation that is injected with other p-code.

The system can configure user defined p-code ops as a hook point within the control-flow where other p-code is injected during analysis. This class maps the raw CALLOTHER p-code op, via its constant id, to its injection object. The injection object is also referenced by an id and is managed by PcodeInjectLibrary.

Member Function Documentation

◆ restoreXml()

void InjectedUserOp::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: