soot.options.Options.time()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(6.3k)|赞(0)|评价(0)|浏览(106)

本文整理了Java中soot.options.Options.time()方法的一些代码示例,展示了Options.time()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Options.time()方法的具体详情如下:
包路径:soot.options.Options
类名称:Options
方法名:time

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();

相关文章

微信公众号

最新文章

更多