本文整理了Java中soot.options.Options.time()
方法的一些代码示例,展示了Options.time()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Options.time()
方法的具体详情如下:
包路径:soot.options.Options
类名称:Options
方法名:time
暂无
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().readTimer.start();
if (Options.v().time()) {
Timers.v().readTimer.end();
代码示例来源:origin: Sable/soot
@Override
protected void assignColorsToLocals(Body body) {
super.assignColorsToLocals(body);
if (Options.v().time()) {
Timers.v().packTimer.end();
}
}
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().fieldTimer.start();
readFields(d);
if (Options.v().time()) {
Timers.v().fieldTimer.end();
if (Options.v().time()) {
Timers.v().methodTimer.start();
readMethods(d);
if (Options.v().time()) {
Timers.v().methodTimer.end();
if (Options.v().time()) {
Timers.v().attributeTimer.start();
readAttributes(d, attributes_count, attributes);
if (Options.v().time()) {
Timers.v().attributeTimer.end();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().packTimer.start();
代码示例来源:origin: Sable/soot
protected void assignColorsToLocals(Body body) {
super.assignColorsToLocals(body);
// Call the graph colorer.
FastColorer.assignColorsToLocals(body, localToGroup, localToColor, groupToColorCount);
if (Options.v().time()) {
Timers.v().packTimer.end();
}
}
代码示例来源:origin: Sable/soot
/**
* Constructs a BriefUnitGraph given a Body instance.
*
* @param body
* The underlying body we want to make a graph for.
*/
public BriefUnitGraph(Body body) {
super(body);
int size = unitChain.size();
if (Options.v().time()) {
Timers.v().graphTimer.start();
}
unitToSuccs = new HashMap<Unit, List<Unit>>(size * 2 + 1, 0.7f);
unitToPreds = new HashMap<Unit, List<Unit>>(size * 2 + 1, 0.7f);
buildUnexceptionalEdges(unitToSuccs, unitToPreds);
buildHeadsAndTails();
if (Options.v().time()) {
Timers.v().graphTimer.end();
}
soot.util.PhaseDumper.v().dumpGraph(this, body);
}
代码示例来源:origin: Sable/soot
SimpleLocalDefs(DirectedGraph<Unit> graph, Local[] locals, FlowAnalysisMode mode) {
final Options options = Options.v();
if (options.time()) {
Timers.v().defsTimer.start();
}
final int N = locals.length;
// reassign local numbers
int[] oldNumbers = new int[N];
for (int i = 0; i < N; i++) {
oldNumbers[i] = locals[i].getNumber();
locals[i].setNumber(i);
}
init(graph, locals, mode);
// restore local numbering
for (int i = 0; i < N; i++) {
locals[i].setNumber(oldNumbers[i]);
}
if (options.time()) {
Timers.v().defsTimer.end();
}
}
代码示例来源:origin: Sable/soot
/**
* Constructs the graph from a given Body instance.
*
* @param the
* Body instance from which the graph is built.
*/
public TrapUnitGraph(Body body) {
super(body);
int size = unitChain.size();
if (Options.v().time()) {
Timers.v().graphTimer.start();
}
unitToSuccs = new HashMap<Unit, List<Unit>>(size * 2 + 1, 0.7f);
unitToPreds = new HashMap<Unit, List<Unit>>(size * 2 + 1, 0.7f);
buildUnexceptionalEdges(unitToSuccs, unitToPreds);
buildExceptionalEdges(unitToSuccs, unitToPreds);
buildHeadsAndTails();
if (Options.v().time()) {
Timers.v().graphTimer.end();
}
soot.util.PhaseDumper.v().dumpGraph(this, body);
}
代码示例来源:origin: Sable/soot
/**
* Computes the analysis given a UnitGraph computed from a method body. It is recommended that a ExceptionalUnitGraph (or
* similar) be provided for correct results in the case of exceptional control flow.
*
* @param graph
* a graph on which to compute the analysis.
*
* @see ExceptionalUnitGraph
*/
public SimpleLiveLocals(UnitGraph graph) {
if (Options.v().time()) {
Timers.v().liveTimer.start();
}
if (Options.v().verbose()) {
logger.debug("[" + graph.getBody().getMethod().getName() + "] Constructing SimpleLiveLocals...");
}
analysis = new Analysis(graph);
if (Options.v().time()) {
Timers.v().liveAnalysisTimer.start();
}
analysis.doAnalysis();
if (Options.v().time()) {
Timers.v().liveAnalysisTimer.end();
}
if (Options.v().time()) {
Timers.v().liveTimer.end();
}
}
代码示例来源:origin: Sable/soot
Set<Unit> trapUnitsThatAreHeads = Collections.emptySet();
if (Options.v().time()) {
Timers.v().graphTimer.start();
if (Options.v().time()) {
Timers.v().graphTimer.end();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().printProfilingInformation();
代码示例来源:origin: Sable/soot
this.body = body;
final Options options = Options.v();
if (options.time()) {
Timers.v().usesTimer.start();
Timers.v().usePhase1Timer.start();
if (options.time()) {
Timers.v().usePhase1Timer.end();
Timers.v().usePhase2Timer.start();
if (options.time()) {
Timers.v().usePhase2Timer.end();
Timers.v().usesTimer.end();
代码示例来源:origin: Sable/soot
boolean onlyStackVars = PhaseOptions.getBoolean(options, "only-stack-locals");
if (Options.v().time()) {
Timers.v().aggregationTimer.start();
} while (changed);
if (Options.v().time()) {
Timers.v().aggregationTimer.end();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().splitTimer.start();
if (Options.v().time()) {
Timers.v().splitPhase1Timer.start();
final LocalUses uses = LocalUses.Factory.newLocalUses(graph, defs);
if (Options.v().time()) {
Timers.v().splitPhase1Timer.end();
if (Options.v().time()) {
Timers.v().splitPhase2Timer.start();
if (Options.v().time()) {
Timers.v().splitPhase2Timer.end();
if (Options.v().time()) {
Timers.v().splitTimer.end();
代码示例来源:origin: Sable/soot
public SmartLocalDefs(UnitGraph g, LiveLocals live) {
this.graph = g;
if (Options.v().time()) {
Timers.v().defsTimer.start();
if (Options.v().time()) {
Timers.v().defsTimer.end();
代码示例来源:origin: Sable/soot
@Override
protected void emitMethodBody(SootMethod method) {
if (Options.v().time()) {
Timers.v().buildJasminTimer.end();
if (Options.v().time()) {
Timers.v().buildJasminTimer.start();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().propagatorTimer.start();
if (Options.v().time()) {
Timers.v().propagatorTimer.end();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().splitTimer.start();
if (Options.v().time()) {
Timers.v().splitTimer.end();
PackManager.v().getTransform("jj.ne").apply(b);
if (Options.v().time()) {
Timers.v().assignTimer.start();
if (Options.v().time()) {
Timers.v().assignTimer.end();
if (Options.v().time()) {
Timers.v().stmtCount += b.getUnits().size();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().conversionTimer.start();
Scene.v().setPhantomRefs(oldPhantomValue);
if (Options.v().time()) {
Timers.v().conversionTimer.end();
代码示例来源:origin: Sable/soot
if (Options.v().time()) {
Timers.v().splitTimer.start();
if (Options.v().time()) {
Timers.v().splitTimer.end();
PackManager.v().getTransform("jb.ule").apply(b);
if (Options.v().time()) {
Timers.v().assignTimer.start();
if (Options.v().time()) {
Timers.v().assignTimer.end();
if (Options.v().time()) {
Timers.v().stmtCount += b.getUnits().size();
内容来源于网络,如有侵权,请联系作者删除!