Ghidra Decompiler Analysis Engine
Public Member Functions | Static Public Member Functions | List of all members
PcodeCompile Class Referenceabstract
Inheritance diagram for PcodeCompile:
Inheritance graph
[legend]

Public Member Functions

virtual const LocationgetLocation (SleighSymbol *sym) const =0
 
virtual void reportError (const Location *loc, const string &msg)=0
 
virtual void reportWarning (const Location *loc, const string &msg)=0
 
void resetLabelCount (void)
 
void setDefaultSpace (AddrSpace *spc)
 
void setConstantSpace (AddrSpace *spc)
 
void setUniqueSpace (AddrSpace *spc)
 
void setEnforceLocalKey (bool val)
 
AddrSpacegetDefaultSpace (void) const
 
AddrSpacegetConstantSpace (void) const
 
VarnodeTplbuildTemporary (void)
 
LabelSymboldefineLabel (string *name)
 
vector< OpTpl * > * placeLabel (LabelSymbol *sym)
 
vector< OpTpl * > * newOutput (bool usesLocalKey, ExprTree *rhs, string *varname, uint4 size=0)
 
void newLocalDefinition (string *varname, uint4 size=0)
 
ExprTreecreateOp (OpCode opc, ExprTree *vn)
 
ExprTreecreateOp (OpCode opc, ExprTree *vn1, ExprTree *vn2)
 
ExprTreecreateOpOut (VarnodeTpl *outvn, OpCode opc, ExprTree *vn1, ExprTree *vn2)
 
ExprTreecreateOpOutUnary (VarnodeTpl *outvn, OpCode opc, ExprTree *vn)
 
vector< OpTpl * > * createOpNoOut (OpCode opc, ExprTree *vn)
 
vector< OpTpl * > * createOpNoOut (OpCode opc, ExprTree *vn1, ExprTree *vn2)
 
vector< OpTpl * > * createOpConst (OpCode opc, uintb val)
 
ExprTreecreateLoad (StarQuality *qual, ExprTree *ptr)
 
vector< OpTpl * > * createStore (StarQuality *qual, ExprTree *ptr, ExprTree *val)
 
ExprTreecreateUserOp (UserOpSymbol *sym, vector< ExprTree * > *param)
 
vector< OpTpl * > * createUserOpNoOut (UserOpSymbol *sym, vector< ExprTree * > *param)
 
ExprTreecreateVariadic (OpCode opc, vector< ExprTree * > *param)
 
void appendOp (OpCode opc, ExprTree *res, uintb constval, int4 constsz)
 
VarnodeTplbuildTruncatedVarnode (VarnodeTpl *basevn, uint4 bitoffset, uint4 numbits)
 
vector< OpTpl * > * assignBitRange (VarnodeTpl *vn, uint4 bitoffset, uint4 numbits, ExprTree *rhs)
 
ExprTreecreateBitRange (SpecificSymbol *sym, uint4 bitoffset, uint4 numbits)
 
VarnodeTpladdressOf (VarnodeTpl *var, uint4 size)
 

Static Public Member Functions

static void force_size (VarnodeTpl *vt, const ConstTpl &size, const vector< OpTpl * > &ops)
 
static void matchSize (int4 j, OpTpl *op, bool inputonly, const vector< OpTpl * > &ops)
 
static void fillinZero (OpTpl *op, const vector< OpTpl * > &ops)
 
static bool propagateSize (ConstructTpl *ct)
 

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