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

Description of the bitfields covered by a Varnode. More...

#include <bitfield.hh>

Public Member Functions

 BitFieldNodeState (const BitRange &used, Varnode *vn, const TypeBitField *fld)
 Constructor to follow a field.
 
 BitFieldNodeState (const BitRange &used, Varnode *vn, int4 leastSig, int4 numBits)
 Constructor for a hole.
 
 BitFieldNodeState (const BitFieldNodeState &copy, const BitRange &newField, Varnode *vn, bool sgnExt)
 
bool isFieldAligned (void) const
 Can the current Varnode be treated as the isolated bitfield.
 
bool doesSignExtensionMatch (void) const
 Return true if the signedness of the field matches the extension used to extract it.
 

Public Attributes

BitRange bitsUsed
 Bits being used from this Varnode.
 
BitRange bitsField
 Bits from bit-field being followed.
 
Varnodenode
 Varnode holding bitfields.
 
const TypeBitFieldfield
 Bit-field being followed.
 
int4 origLeastSigBit
 Original position of least significant bit.
 
bool isSignExtended
 Bitfield has been sign-extended into node.
 

Detailed Description

Description of the bitfields covered by a Varnode.

Constructor & Destructor Documentation

◆ BitFieldNodeState()

ghidra::BitFieldNodeState::BitFieldNodeState ( const BitFieldNodeState copy,
const BitRange newField,
Varnode vn,
bool  sgnExt 
)

Copy constructor with new bitsField

Copy another state, but replace bitsField

Parameters
copyis the state to copy
newFieldis the new range for bitsField
vnis the Varnode holding the new range
sgnExtis the new state of sign extension

References field, isSignExtended, node, and origLeastSigBit.


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