Ghidra Decompiler Analysis Engine
|
A container for hints about the data-type layout of an address space. More...
#include <varmap.hh>
Public Member Functions | |
MapState (AddrSpace *spc, const RangeList &rn, const RangeList &pm, Datatype *dt) | |
Constructor. More... | |
~MapState (void) | |
Destructor. | |
bool | initialize (void) |
Initialize the hint collection for iteration. More... | |
void | gatherSymbols (const EntryMap *rangemap) |
Add Symbol information as hints to the collection. More... | |
void | gatherVarnodes (const Funcdata &fd) |
Add stack Varnodes as hints to the collection. More... | |
void | gatherHighs (const Funcdata &fd) |
Add HighVariables as hints to the collection. More... | |
void | gatherOpen (const Funcdata &fd) |
Add pointer references as hints to the collection. More... | |
A container for hints about the data-type layout of an address space.
A collection of data-type hints for the address space (as RangeHint objects) can be collected from Varnodes, HighVariables or other sources, using the gatherVarnodes(), gatherHighs(), and gatherOpen() methods. This class can then sort and iterate through the RangeHint objects.
spc | is the address space being analyzed |
rn | is the subset of addresses within the address space to analyze |
pm | is subset of ranges within the address space considered to be parameters |
dt | is the default data-type |
void MapState::gatherHighs | ( | const Funcdata & | fd | ) |
Add HighVariables as hints to the collection.
Add a RangeHint corresponding to each HighVariable that is mapped to our address space for the given function.
fd | is the given function |
void MapState::gatherOpen | ( | const Funcdata & | fd | ) |
void MapState::gatherSymbols | ( | const EntryMap * | rangemap | ) |
void MapState::gatherVarnodes | ( | const Funcdata & | fd | ) |
bool MapState::initialize | ( | void | ) |
Initialize the hint collection for iteration.
Sort the collection and add a special terminating RangeHint