本文整理汇总了Java中soot.jimple.spark.SparkTransformer类的典型用法代码示例。如果您正苦于以下问题:Java SparkTransformer类的具体用法?Java SparkTransformer怎么用?Java SparkTransformer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SparkTransformer类属于soot.jimple.spark包,在下文中一共展示了SparkTransformer类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: generateSparkCallGraph
import soot.jimple.spark.SparkTransformer; //导入依赖的package包/类
/**
*
* @param options
*/
public void generateSparkCallGraph(Map options) {
HashMap opt = new HashMap(options);
opt.put("verbose","true");
opt.put("propagator","worklist"); //worklist
opt.put("simple-edges-bidirectional","true");
opt.put("on-fly-cg","true");
opt.put("set-impl","double");
opt.put("double-set-old","hybrid");
opt.put("double-set-new","hybrid");
opt.put("dump-html","false");
opt.put("dump-pag","false");
opt.put("string-constants","false");
SparkTransformer.v().transform("",opt);
//logger.info("Current point to point analysis: "+ Scene.v().getPointsToAnalysis());
}
示例2: setSparkPointsToAnalysis
import soot.jimple.spark.SparkTransformer; //导入依赖的package包/类
static void setSparkPointsToAnalysis() {
System.out.println("[spark] Starting analysis ...");
HashMap opt = new HashMap();
opt.put("enabled","true");
opt.put("verbose","true");
opt.put("ignore-types","false");
opt.put("force-gc","false");
opt.put("pre-jimplify","false");
opt.put("vta","false");
opt.put("rta","false");
opt.put("field-based","false");
opt.put("types-for-sites","false");
opt.put("merge-stringbuffer","true");
opt.put("string-constants","false");
opt.put("simulate-natives","true");
opt.put("simple-edges-bidirectional","false");
opt.put("on-fly-cg","true");
opt.put("simplify-offline","false");
opt.put("simplify-sccs","false");
opt.put("ignore-types-for-sccs","false");
opt.put("propagator","worklist");
opt.put("set-impl","double");
opt.put("double-set-old","hybrid");
opt.put("double-set-new","hybrid");
opt.put("dump-html","false");
opt.put("dump-pag","false");
opt.put("dump-solution","false");
opt.put("topo-sort","false");
opt.put("dump-types","true");
opt.put("class-method-var","true");
opt.put("dump-answer","false");
opt.put("add-tags","false");
opt.put("set-mass","false");
SparkTransformer.v().transform("",opt);
System.out.println("[spark] Done!");
}
示例3: enableSparkCallGraph
import soot.jimple.spark.SparkTransformer; //导入依赖的package包/类
private static void enableSparkCallGraph()
{
//Enable Spark
HashMap<String,String> sparkOptions = new HashMap<String,String>();
sparkOptions.put("on-fly-cg" , "true");
SparkTransformer.v().transform("",sparkOptions);
PhaseOptions.v().setPhaseOption("cg.spark", "enabled:true");
}
示例4: runSparkPTA
import soot.jimple.spark.SparkTransformer; //导入依赖的package包/类
public static void runSparkPTA() {
HashMap<String, String> opt = new HashMap<>();
opt.put("enabled", "true");
// opt.put("verbose", "true");
opt.put("set-impl", "double");
opt.put("double-set-old", "hybrid");
opt.put("double-set-new", "hybrid");
opt.put("propagator", "worklist");
opt.put("string-constants", "true");
SparkTransformer.v().transform("", opt);
}
示例5: enableSpark
import soot.jimple.spark.SparkTransformer; //导入依赖的package包/类
private static void enableSpark()
{
//Enable Spark
HashMap<String,String> opt = new HashMap<String,String>();
//opt.put("verbose","true");
opt.put("propagator","worklist");
opt.put("simple-edges-bidirectional","false");
opt.put("on-fly-cg","true");
opt.put("set-impl","double");
opt.put("double-set-old","hybrid");
opt.put("double-set-new","hybrid");
opt.put("pre_jimplify", "true");
SparkTransformer.v().transform("",opt);
PhaseOptions.v().setPhaseOption("cg.spark", "enabled:true");
}