|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object soot.util.PhaseDumper
public class PhaseDumper
The PhaseDumper is a debugging aid. It maintains two
lists of phases to be debugged. If a phase is on the
bodyDumpingPhases
list, then the intermediate
representation of the bodies being manipulated by the phase is
dumped before and after the phase is applied. If a phase is on the
cfgDumpingPhases
list, then whenever a CFG is
constructed during the phase, a dot file is dumped representing the
CFG constructed.
Constructor Summary | |
---|---|
PhaseDumper(Singletons.Global g)
|
Method Summary | |
---|---|
void |
dumpAfter(Body b,
String phaseName)
Tells the PhaseDumper that a Body
transforming phase has ended, so that it can dump the
phases's “after” file. |
void |
dumpAfter(String phaseName)
Tells the PhaseDumper that a Scene
transforming phase has ended, so that it can dump the
phases's “after” files. |
void |
dumpBefore(Body b,
String phaseName)
Tells the PhaseDumper that a Body
transforming phase has started, so that it can dump the
phases's “before” file. |
void |
dumpBefore(String phaseName)
Tells the PhaseDumper that a Scene
transforming phase has started, so that it can dump the
phases's “before” files. |
void |
dumpBody(Body b,
String baseName)
|
void |
dumpGraph(DirectedGraph g,
Body b)
Asks the PhaseDumper to dump the passed DirectedGraph if the current phase is being dumped. |
void |
dumpGraph(ExceptionalGraph g)
Asks the PhaseDumper to dump the passed ExceptionalGraph if the current phase is being dumped. |
void |
printCurrentStackTrace()
Prints the current stack trace, as a brute force tool for program understanding. |
static PhaseDumper |
v()
Returns the single instance of PhaseDumper . |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public PhaseDumper(Singletons.Global g)
Method Detail |
---|
public static PhaseDumper v()
PhaseDumper
.
PhaseDumper
.public void dumpBody(Body b, String baseName)
public void dumpBefore(Body b, String phaseName)
PhaseDumper
that a Body
transforming phase has started, so that it can dump the
phases's “before” file. If the phase is to be
dumped, dumpBefore
deletes any old
graph files dumped during previous runs of the phase.
b
- the Body
being transformed.phaseName
- the name of the phase that has just started.public void dumpAfter(Body b, String phaseName)
PhaseDumper
that a Body
transforming phase has ended, so that it can dump the
phases's “after” file.
b
- the Body
being transformed.phaseName
- the name of the phase that has just ended.
IllegalArgumentException
- if phaseName
does not
match the PhaseDumper
's record of the current phase.public void dumpBefore(String phaseName)
PhaseDumper
that a Scene
transforming phase has started, so that it can dump the
phases's “before” files. If the phase is to be
dumped, dumpBefore
deletes any old
graph files dumped during previous runs of the phase.
phaseName
- the name of the phase that has just started.public void dumpAfter(String phaseName)
PhaseDumper
that a Scene
transforming phase has ended, so that it can dump the
phases's “after” files.
phaseName
- the name of the phase that has just ended.
IllegalArgumentException
- if phaseName
does not
match the PhaseDumper
's record of the current phase.public void dumpGraph(DirectedGraph g, Body b)
PhaseDumper
to dump the passed DirectedGraph
if the current phase is being dumped.
g
- the graph to dump.body
- the Body
represented by g
.public void dumpGraph(ExceptionalGraph g)
PhaseDumper
to dump the passed ExceptionalGraph
if the current phase is being dumped.
g
- the graph to dump.public void printCurrentStackTrace()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |