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

A read of a bitfield via a ZPULL or SPULL operator. More...

#include <expression.hh>

Inheritance diagram for ghidra::PullExpression:
ghidra::BitFieldExpression

Public Member Functions

 PullExpression (const PcodeOp *pull)
 Construct from a ZPULL or SPULL.
 
- 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 * pullOp
 ZPULL or SPULL op.
 
const Symbol * symbol
 Symbol holding the structure and bitfield (may be null)
 
const PcodeOp * loadOp
 LOAD reading bytes containing the bitfield (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 read of a bitfield via a ZPULL or SPULL operator.

The first input to the operator must either be a (partial) symbol or be written by a LOAD.


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