decompiler 1.0.0
Public Member Functions | Public Attributes | List of all members
ghidra::InsertStoreExpression Class Reference

A write to a bitfield through a STORE op. More...

#include <expression.hh>

Inheritance diagram for ghidra::InsertStoreExpression:
ghidra::BitFieldExpression

Public Member Functions

 InsertStoreExpression (const PcodeOp *store)
 Construct from a STORE.
 
- Public Member Functions inherited from ghidra::BitFieldExpression
const Varnode * recoverStructurePointer (const Varnode *vn, int4 offset)
 Recover the Varnode holding the pointer to the parent structure.
 
bool isValid (void) const
 Is this a valid bitfield expression.
 

Public Attributes

const PcodeOp * insertOp
 INSERT op.
 
const PcodeOp * loadOp
 LOAD op (may be null)
 
const Varnode * structPtr
 Varnode holding pointer to the parent structure.
 
- Public Attributes inherited from ghidra::BitFieldExpression
TypeStruct * theStruct
 Parent structure containing the bitfield.
 
const TypeBitField * bitfield
 Formal bitfield description.
 
int4 byteRangeOffset
 Offset of byte range into encompassStruct.
 
int4 offsetToBitStruct
 Offset of structure containing bitfield in encompassStruct.
 

Additional Inherited Members

- Static Public Member Functions inherited from ghidra::BitFieldExpression
static const TypeBitField * getPullField (const PcodeOp *pull)
 Get field description corresponding to given ZPULL or SPULL.
 
- Protected Member Functions inherited from ghidra::BitFieldExpression
void getStructures (Datatype *dt, int4 initByteOff, int4 leastBitOff, bool isBigEndian)
 Recover the structure(s) holding the bitfield.
 

Detailed Description

A write to a bitfield through a STORE op.

The INSERT output is expected to hold data-type info. A final STORE must be present and a LOAD, recovering parts of the structure that are unaffected, may be present.


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