Pseudocode: Track merged values. Compute closure of value usages over merge instructions. Exclude merge instructions from usage lists

This commit is contained in:
Alexey Sedunov
2014-07-17 16:29:42 +04:00
parent 267ea81bbe
commit ffd4af872c
4 changed files with 50 additions and 27 deletions
@@ -17,7 +17,7 @@ fun dowhile() {
while(0 > 1)
}
---------------------
0 <v0>: * NEW: r(0) -> <v0>
1 <v1>: * NEW: r(1) -> <v1>
0 > 1 <v2>: * NEW: call(0 > 1, compareTo|<v0>, <v1>) -> <v2>
0 <v0>: {<: Comparable<Int>} NEW: r(0) -> <v0>
1 <v1>: Int NEW: r(1) -> <v1>
0 > 1 <v2>: Boolean NEW: call(0 > 1, compareTo|<v0>, <v1>) -> <v2>
=====================