decompiler  1.0.0
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
PreferSplitManager Class Reference

Classes

class  SplitInstance
 

Public Member Functions

void init (Funcdata *fd, const vector< PreferSplitRecord > *rec)
 
const PreferSplitRecordfindRecord (Varnode *vn) const
 
void split (void)
 
void splitAdditional (void)
 

Static Public Member Functions

static void initialize (vector< PreferSplitRecord > &records)
 

Private Member Functions

void fillinInstance (SplitInstance *inst, bool bigendian, bool sethi, bool setlo)
 
void createCopyOps (SplitInstance *ininst, SplitInstance *outinst, PcodeOp *op, bool istemp)
 
bool testDefiningCopy (SplitInstance *inst, PcodeOp *def, bool &istemp)
 
void splitDefiningCopy (SplitInstance *inst, PcodeOp *def, bool istemp)
 
bool testReadingCopy (SplitInstance *inst, PcodeOp *readop, bool &istemp)
 
void splitReadingCopy (SplitInstance *inst, PcodeOp *readop, bool istemp)
 
bool testZext (SplitInstance *inst, PcodeOp *op)
 
void splitZext (SplitInstance *inst, PcodeOp *op)
 
bool testPiece (SplitInstance *inst, PcodeOp *op)
 
void splitPiece (SplitInstance *inst, PcodeOp *op)
 
bool testSubpiece (SplitInstance *inst, PcodeOp *op)
 
void splitSubpiece (SplitInstance *inst, PcodeOp *op)
 
bool testLoad (SplitInstance *inst, PcodeOp *op)
 
void splitLoad (SplitInstance *inst, PcodeOp *op)
 
bool testStore (SplitInstance *inst, PcodeOp *op)
 
void splitStore (SplitInstance *inst, PcodeOp *op)
 
bool splitVarnode (SplitInstance *inst)
 
void splitRecord (const PreferSplitRecord &rec)
 
bool testTemporary (SplitInstance *inst)
 
void splitTemporary (SplitInstance *inst)
 

Private Attributes

Funcdatadata
 
const vector< PreferSplitRecord > * records
 
vector< PcodeOp * > tempsplits
 

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