A few more skeleton things for planner
This commit is contained in:
parent
3376818a17
commit
db39014e1b
@ -148,6 +148,7 @@ enum DecompilationStep : uint32_t {
|
|||||||
eNotDecoded, // no processing done yet
|
eNotDecoded, // no processing done yet
|
||||||
eDisassemblyInProgress,
|
eDisassemblyInProgress,
|
||||||
eDissassembled, // low level disassembly done
|
eDissassembled, // low level disassembly done
|
||||||
|
//eLocatedImpureRefs,
|
||||||
//eStackTracing, // tracing stack depth across function calls
|
//eStackTracing, // tracing stack depth across function calls
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
@ -37,6 +37,15 @@ void AutomatedPlanner::planFor(Function & func) {
|
|||||||
switch(func.nStep) {
|
switch(func.nStep) {
|
||||||
case eNotDecoded:
|
case eNotDecoded:
|
||||||
addAction(func,new FollowControlFlow(func.state));
|
addAction(func,new FollowControlFlow(func.state));
|
||||||
|
break;
|
||||||
|
case eDisassemblyInProgress:
|
||||||
|
// The command queue is empty and function is in eDisassemblyInProgress state ? Switch to eDisassembled
|
||||||
|
assert(false and "Not implemented yet");
|
||||||
|
break;
|
||||||
|
case eDissassembled:
|
||||||
|
// addAction(func,new LowLevelMarkImpure(func)
|
||||||
|
assert(false and "Not implemented yet");
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -45,10 +45,9 @@ void Function::controlFlowAnalysis()
|
|||||||
{
|
{
|
||||||
if (flg & PROC_ISLIB)
|
if (flg & PROC_ISLIB)
|
||||||
return; /* Ignore library functions */
|
return; /* Ignore library functions */
|
||||||
derSeq *derivedG=nullptr;
|
|
||||||
|
|
||||||
/* Make cfg reducible and build derived sequences */
|
/* Make cfg reducible and build derived sequences */
|
||||||
derivedG=checkReducibility();
|
derSeq *derivedG = checkReducibility();
|
||||||
|
|
||||||
if (option.VeryVerbose)
|
if (option.VeryVerbose)
|
||||||
derivedG->display();
|
derivedG->display();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user