decompiler
1.0.0
|
Record for scoring a BlockTrace for suitability as an unstructured branch. More...
Public Member Functions | |
bool | compareFinal (const BadEdgeScore &op2) const |
Compare BadEdgeScore for unstructured suitability. More... | |
bool | operator< (const BadEdgeScore &op2) const |
Compare for grouping. More... | |
Public Attributes | |
FlowBlock * | exitproto |
Putative exit block for the BlockTrace. | |
BlockTrace * | trace |
The active BlockTrace being considered. | |
int4 | distance |
Minimum distance crossed by this and any other BlockTrace sharing same exit block. | |
int4 | terminal |
1 if BlockTrace destination has no exit, 0 otherwise | |
int4 | siblingedge |
Number of active BlockTraces with same BranchPoint and exit as this. | |
Record for scoring a BlockTrace for suitability as an unstructured branch.
This class holds various metrics about BlockTraces that are used to sort them.
bool ghidra::TraceDAG::BadEdgeScore::compareFinal | ( | const BadEdgeScore & | op2 | ) | const |
Compare BadEdgeScore for unstructured suitability.
op2 | is the other BadEdgeScore to compare with this |
References ghidra::TraceDAG::BranchPoint::depth, distance, siblingedge, terminal, ghidra::TraceDAG::BlockTrace::top, and trace.
bool ghidra::TraceDAG::BadEdgeScore::operator< | ( | const BadEdgeScore & | op2 | ) | const |
Compare for grouping.
Comparator for grouping BlockTraces with the same exit block and parent BranchPoint
op2 | is the other BadEdgeScore to compare to |
References exitproto, ghidra::FlowBlock::getIndex(), ghidra::TraceDAG::BlockTrace::pathout, ghidra::TraceDAG::BranchPoint::top, ghidra::TraceDAG::BlockTrace::top, and trace.