Skip to content

Commit

Permalink
Fixes #159 type updated
Browse files Browse the repository at this point in the history
  • Loading branch information
CheShianHung committed Oct 12, 2017
1 parent bbcd122 commit 970890b
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 20 deletions.
20 changes: 10 additions & 10 deletions src/java/boa/functions/BoaGraphIntrinsics.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ public static CFG getcfg(final Method method) {
}

@FunctionSpec(name = "get_nodes_with_definition", returnType = "set of string", formalParameters = { "CFGNode" })
public static LinkedHashSet<String> getNodesWithDefinition(final CFGNode node) {
final LinkedHashSet<String> vardef = new LinkedHashSet<String>();
public static Set<String> getNodesWithDefinition(final CFGNode node) {
final Set<String> vardef = new LinkedHashSet<String>();
if (node.getExpression() != null) {
if (node.getExpression().getKind() == ExpressionKind.VARDECL || node.getExpression().getKind() == ExpressionKind.ASSIGN) {
vardef.add(String.valueOf(node.getId()));
Expand All @@ -51,8 +51,8 @@ public static LinkedHashSet<String> getNodesWithDefinition(final CFGNode node) {
}

@FunctionSpec(name = "get_variable_killed", returnType = "set of string", formalParameters = {"CFG", "CFGNode" })
public static LinkedHashSet<String> getVariableKilled(final boa.types.Control.CFG cfg, final CFGNode node) {
final LinkedHashSet<String> varkilled = new LinkedHashSet<String>();
public static Set<String> getVariableKilled(final boa.types.Control.CFG cfg, final CFGNode node) {
final Set<String> varkilled = new LinkedHashSet<String>();
String vardef = "";

if (node.getExpression() != null) {
Expand Down Expand Up @@ -86,8 +86,8 @@ else if (tnode.getExpression().getKind() == ExpressionKind.ASSIGN) {
}

@FunctionSpec(name = "get_variable_def", returnType = "set of string", formalParameters = { "CFGNode" })
public static LinkedHashSet<String> getVariableDef(final CFGNode node) {
final LinkedHashSet<String> vardef = new LinkedHashSet<String>();
public static Set<String> getVariableDef(final CFGNode node) {
final Set<String> vardef = new LinkedHashSet<String>();
if (node.getExpression() != null) {
if (node.getExpression().getKind() == ExpressionKind.VARDECL) {
vardef.add(node.getExpression().getVariableDeclsList().get(0).getName());
Expand All @@ -100,15 +100,15 @@ else if (node.getExpression().getKind() == ExpressionKind.ASSIGN) {
}

@FunctionSpec(name = "get_variable_used", returnType = "set of string", formalParameters = { "CFGNode" })
public static LinkedHashSet<String> getVariableUsed(final CFGNode node) {
final LinkedHashSet<String> varused = new LinkedHashSet<String>();
public static Set<String> getVariableUsed(final CFGNode node) {
final Set<String> varused = new LinkedHashSet<String>();
if (node.getExpression() != null) {
traverseExpr(varused,node.getExpression());
}
return varused;
}

public static void traverseExpr(final LinkedHashSet<String> varused, final Expression expr) {
public static void traverseExpr(final Set<String> varused, final Expression expr) {
if (expr.getVariable() != null) {
varused.add(expr.getVariable());
}
Expand All @@ -123,7 +123,7 @@ public static void traverseExpr(final LinkedHashSet<String> varused, final Expre
}
}

public static void traverseVarDecls(final LinkedHashSet<String> varused, final Variable vardecls) {
public static void traverseVarDecls(final Set<String> varused, final Variable vardecls) {
if (vardecls.getInitializer() != null) {
traverseExpr(varused, vardecls.getInitializer());
}
Expand Down
19 changes: 10 additions & 9 deletions src/java/boa/graphs/cfg/CFG.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
package boa.graphs.cfg;

import java.util.HashMap;
import java.util.Set;
import java.util.LinkedHashSet;
import java.util.List;
import java.util.Map;
Expand All @@ -43,11 +44,11 @@ public class CFG {
public String class_name;
static boolean endFlag = false;
static boolean switchFlag=false;
protected LinkedHashSet<CFGNode> nodes = new LinkedHashSet<CFGNode>();
private LinkedHashSet<CFGNode> outs = new LinkedHashSet<CFGNode>();
private LinkedHashSet<CFGNode> ins = new LinkedHashSet<CFGNode>();
private LinkedHashSet<CFGNode> breaks = new LinkedHashSet<CFGNode>();
private LinkedHashSet<CFGNode> returns = new LinkedHashSet<CFGNode>();
protected Set<CFGNode> nodes = new LinkedHashSet<CFGNode>();
private Set<CFGNode> outs = new LinkedHashSet<CFGNode>();
private Set<CFGNode> ins = new LinkedHashSet<CFGNode>();
private Set<CFGNode> breaks = new LinkedHashSet<CFGNode>();
private Set<CFGNode> returns = new LinkedHashSet<CFGNode>();
private CFGNode entryNode ;
private CFGNode exitNode ;
private boolean isLoopPresent = false;
Expand Down Expand Up @@ -97,15 +98,15 @@ public String getClass_name() {
return class_name;
}

public LinkedHashSet<CFGNode> getNodes() {
public Set<CFGNode> getNodes() {
return nodes;
}

public LinkedHashSet<CFGNode> getOuts() {
public Set<CFGNode> getOuts() {
return outs;
}

public LinkedHashSet<CFGNode> getIns() {
public Set<CFGNode> getIns() {
return ins;
}

Expand Down Expand Up @@ -204,7 +205,7 @@ public void mergeSeq(CFGNode branch) {
outs.add(branch);
}

public void mergeBranches(CFG target, LinkedHashSet<CFGNode> saveOuts) {
public void mergeBranches(CFG target, Set<CFGNode> saveOuts) {
if (target.getNodes().size() == 0)
return;

Expand Down
2 changes: 1 addition & 1 deletion src/java/boa/runtime/BoaAbstractTraversal.java
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ public final void traverse(final boa.graphs.cfg.CFG cfg, final Traversal.Travers
prevOutputMapObj = new java.util.HashMap<Integer,T1>(outputMapObj);
traverse(cfg, direction, kind);
fixpFlag=true;
java.util.LinkedHashSet<CFGNode> nl=cfg.getNodes();
java.util.Set<CFGNode> nl=cfg.getNodes();
for (CFGNode node : nl) {
boolean curFlag=outputMapObj.containsKey(node.getId());
if (curFlag) {
Expand Down

0 comments on commit 970890b

Please sign in to comment.