Skip to content

Commit a299dcc

Browse files
committed
Removed unused classes and methods, updated tests accordingly.
1 parent 74a8e23 commit a299dcc

99 files changed

Lines changed: 2110 additions & 1277 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/main/java/de/mirkosertic/metair/ir/Add.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,6 @@ public class Add extends Value {
1212

1313
@Override
1414
public String debugDescription() {
15-
return "Add : " + DebugUtils.toString(type);
15+
return "Add : " + TypeUtils.toString(type);
1616
}
1717
}

src/main/java/de/mirkosertic/metair/ir/ArrayLoad.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,6 @@ public class ArrayLoad extends Value {
1616

1717
@Override
1818
public String debugDescription() {
19-
return "ArrayLoad : " + DebugUtils.toString(type);
19+
return "ArrayLoad : " + TypeUtils.toString(type);
2020
}
2121
}

src/main/java/de/mirkosertic/metair/ir/ArrayStore.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ public class ArrayStore extends Node {
1515

1616
@Override
1717
public String debugDescription() {
18-
return "ArrayStore : " + DebugUtils.toString(arrayType);
18+
return "ArrayStore : " + TypeUtils.toString(arrayType);
1919
}
2020
}

src/main/java/de/mirkosertic/metair/ir/BitOperation.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,6 @@ public enum Operation {
1919

2020
@Override
2121
public String debugDescription() {
22-
return "BitOperation : " + operation + "(" + DebugUtils.toString(type) + ")";
22+
return "BitOperation : " + operation + "(" + TypeUtils.toString(type) + ")";
2323
}
2424
}

src/main/java/de/mirkosertic/metair/ir/Convert.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,6 @@ public class Convert extends Value {
1515

1616
@Override
1717
public String debugDescription() {
18-
return "Convert : " + DebugUtils.toString(from) + " to " + DebugUtils.toString(type);
18+
return "Convert : " + TypeUtils.toString(from) + " to " + TypeUtils.toString(type);
1919
}
2020
}

src/main/java/de/mirkosertic/metair/ir/Copy.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public class Copy extends Node {
1111

1212
@Override
1313
public boolean isConstant() {
14-
final Optional<Node> argument = uses.stream().filter(t -> t.use instanceof DataFlowUse).map(t -> t.node).findFirst();
14+
final Optional<Node> argument = uses.stream().filter(t -> t.use() instanceof DataFlowUse).map(t -> t.node()).findFirst();
1515
return argument.map(Node::isConstant).orElse(false);
1616
}
1717

src/main/java/de/mirkosertic/metair/ir/DFS.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,14 @@ public DFS(final Node startNode) {
2424

2525
for (final Node user : currentNode.usedBy) {
2626
for (final Node.UseEdge edge : user.uses) {
27-
if (edge.node == currentNode) {
28-
if (edge.use instanceof final ControlFlowUse cfu && cfu.type == ControlType.FORWARD) {
27+
if (edge.node() == currentNode) {
28+
if (edge.use() instanceof final ControlFlowUse cfu && cfu.type == ControlType.FORWARD) {
2929
forwardNodes.add(user);
30-
} else if (edge.use instanceof DefinedByUse) {
30+
} else if (edge.use() instanceof DefinedByUse) {
3131
forwardNodes.add(user);
32-
} else if (edge.use instanceof DataFlowUse) {
32+
} else if (edge.use() instanceof DataFlowUse) {
3333
forwardNodes.add(user);
34-
} else if (edge.use instanceof MemoryUse) {
34+
} else if (edge.use() instanceof MemoryUse) {
3535
forwardNodes.add(user);
3636
}
3737
}

src/main/java/de/mirkosertic/metair/ir/DOTExporter.java

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ public static void writeTo(final Method method, final PrintStream ps) {
9191
}
9292

9393
for (final Node.UseEdge useEdge : item.uses) {
94-
final Node usedNode = useEdge.node;
94+
final Node usedNode = useEdge.node();
9595
if (!visited.contains(usedNode)) {
9696
workingQueue.push(usedNode);
9797
}
@@ -103,7 +103,7 @@ public static void writeTo(final Method method, final PrintStream ps) {
103103
if (!(item instanceof Projection)) {
104104
if (usedNode instanceof Projection) {
105105
// Projections have only one use
106-
final Node use = usedNode.uses.getFirst().node;
106+
final Node use = usedNode.uses.getFirst().node();
107107
ps.print(" node" + nodeindex.indexOf(use));
108108
ps.print(":prj");
109109
ps.print(nodeindex.indexOf(usedNode));
@@ -112,19 +112,19 @@ public static void writeTo(final Method method, final PrintStream ps) {
112112
}
113113
ps.print(" -> node" + index);
114114

115-
if (useEdge.use instanceof final PHIUse phiUse) {
115+
if (useEdge.use() instanceof final PHIUse phiUse) {
116116
ps.print("[");
117117
ps.print("headlabel=\"if #" + nodeindex.indexOf(phiUse.origin) + "\", labeldistance=2, color=blue, constraint=false");
118118
ps.print("]");
119-
} else if (useEdge.use instanceof MemoryUse) {
119+
} else if (useEdge.use() instanceof MemoryUse) {
120120
ps.print("[labeldistance=2, color=green, constraint=false]");
121-
} else if (useEdge.use instanceof DataFlowUse) {
121+
} else if (useEdge.use() instanceof DataFlowUse) {
122122
ps.print("[");
123123
ps.print("headlabel=\"*" + item.uses.indexOf(useEdge) + "\", labeldistance=2");
124124
ps.print("]");
125-
} else if (useEdge.use instanceof DefinedByUse) {
125+
} else if (useEdge.use() instanceof DefinedByUse) {
126126
ps.print("[style=dotted]");
127-
} else if (useEdge.use instanceof final ControlFlowUse cfu) {
127+
} else if (useEdge.use() instanceof final ControlFlowUse cfu) {
128128
ps.print("[labeldistance=2, color=red, fontcolor=red");
129129
if (cfu.type == ControlType.BACKWARD) {
130130
ps.print(", style=dashed");
@@ -141,9 +141,9 @@ public static void writeTo(final Method method, final PrintStream ps) {
141141
final Map<Node, List<Node>> defines = new HashMap<>();
142142

143143
for (final Node node : nodeindex) {
144-
final List<Node.UseEdge> edges = node.uses.stream().filter(t -> t.use instanceof DefinedByUse).toList();
144+
final List<Node.UseEdge> edges = node.uses.stream().filter(t -> t.use() instanceof DefinedByUse).toList();
145145
for (final Node.UseEdge edge : edges) {
146-
defines.computeIfAbsent(edge.node, k -> new ArrayList<>()).add(node);
146+
defines.computeIfAbsent(edge.node(), k -> new ArrayList<>()).add(node);
147147
}
148148
}
149149

@@ -234,24 +234,24 @@ public static void writeTo(final DominatorTree tree, final PrintStream ps) {
234234
}
235235

236236
for (final Node.UseEdge useEdge : n.uses) {
237-
final Node usedNode = useEdge.node;
237+
final Node usedNode = useEdge.node();
238238

239239
ps.print(" node" + tree.preOrder.indexOf(usedNode));
240240
ps.print(" -> node" + tree.preOrder.indexOf(n));
241241

242-
if (useEdge.use instanceof final PHIUse phiUse) {
242+
if (useEdge.use() instanceof final PHIUse phiUse) {
243243
ps.print("[");
244244
ps.print("headlabel=\"if #" + tree.preOrder.indexOf(phiUse.origin) + "\", labeldistance=2, color=blue, constraint=false");
245245
ps.print("]");
246-
} else if (useEdge.use instanceof DataFlowUse) {
246+
} else if (useEdge.use() instanceof DataFlowUse) {
247247
ps.print("[");
248248
ps.print("headlabel=\"*" + n.uses.indexOf(useEdge) + "\", labeldistance=2");
249249
ps.print("]");
250-
} else if (useEdge.use instanceof DefinedByUse) {
250+
} else if (useEdge.use() instanceof DefinedByUse) {
251251
ps.print("[");
252252
ps.print("style=dotted");
253253
ps.print("]");
254-
} else if (useEdge.use instanceof final ControlFlowUse cfu) {
254+
} else if (useEdge.use() instanceof final ControlFlowUse cfu) {
255255
ps.print("[labeldistance=2, color=red, fontcolor=red");
256256
if (cfu.type == ControlType.BACKWARD) {
257257
ps.print(", style=dashed");

src/main/java/de/mirkosertic/metair/ir/Div.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,6 @@ public class Div extends Value {
1212

1313
@Override
1414
public String debugDescription() {
15-
return "Div : " + DebugUtils.toString(type);
15+
return "Div : " + TypeUtils.toString(type);
1616
}
1717
}

src/main/java/de/mirkosertic/metair/ir/DominatorTree.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ private void computeRPO(final Node current, final List<Node> finished, final Set
3737
if (visited.add(current)) {
3838
for (final Node user : current.usedBy.stream().sorted(Comparator.comparing((Node o) -> o.getClass().getSimpleName())).toList()) {
3939
for (final Node.UseEdge edge : user.uses) {
40-
if (edge.node == current) {
41-
if (edge.use instanceof final ControlFlowUse cfu) {
40+
if (edge.node() == current) {
41+
if (edge.use() instanceof final ControlFlowUse cfu) {
4242
if (cfu.type == ControlType.FORWARD) {
4343
computeRPO(user, finished, visited);
4444
}
@@ -73,15 +73,15 @@ private void computeDominators() {
7373
final Node oldIdom = getIDom(v);
7474
Node newIdom = null;
7575
for (final Node.UseEdge edge : v.uses) {
76-
if (edge.use instanceof ControlFlowUse || edge.use instanceof DefinedByUse || edge.use instanceof DataFlowUse || edge.use instanceof MemoryUse) {
77-
if (getIDom(edge.node) == null)
76+
if (edge.use() instanceof ControlFlowUse || edge.use() instanceof DefinedByUse || edge.use() instanceof DataFlowUse || edge.use() instanceof MemoryUse) {
77+
if (getIDom(edge.node()) == null)
7878
/* not yet analyzed */ continue;
7979
if (newIdom == null) {
8080
/* If we only have one (defined) predecessor pre, IDom(v) = pre */
81-
newIdom = edge.node;
81+
newIdom = edge.node();
8282
} else {
8383
/* compute the intersection of all defined predecessors of v */
84-
newIdom = intersectIDoms(edge.node, newIdom);
84+
newIdom = intersectIDoms(edge.node(), newIdom);
8585
}
8686
}
8787
}

0 commit comments

Comments
 (0)