/** * * @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()); }
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!"); }
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"); }
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); }
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"); }