1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
--- a
+++ b
@@ -54,3 +54,3 @@
def main(args: Array[String] (ARRAY[REF(class String)])): Unit {
- locals: value args, value x, value y
+ locals: value args
startBlock: 1
@@ -59,10 +59,6 @@
1:
- 52 CONSTANT(2)
- 52 STORE_LOCAL(value x)
52 SCOPE_ENTER value x
- 53 LOAD_LOCAL(value x)
- 53 STORE_LOCAL(value y)
53 SCOPE_ENTER value y
54 LOAD_MODULE object Predef
- 54 LOAD_LOCAL(value y)
+ 54 CONSTANT(2)
54 BOX INT
@@ -109,3 +105,3 @@
def main(args: Array[String] (ARRAY[REF(class String)])): Unit {
- locals: value args, value x, value y
+ locals: value args, value x
startBlock: 1
@@ -118,7 +114,5 @@
81 SCOPE_ENTER value x
- 82 LOAD_LOCAL(value x)
- 82 STORE_LOCAL(value y)
82 SCOPE_ENTER value y
83 LOAD_MODULE object Predef
- 83 LOAD_LOCAL(value y)
+ 83 LOAD_LOCAL(value x)
83 BOX INT
@@ -152,3 +146,3 @@
def main(args: Array[String] (ARRAY[REF(class String)])): Unit {
- locals: value args, value x, value y
+ locals: value args
startBlock: 1
@@ -157,10 +151,6 @@
1:
- 66 THIS(TestAliasChainDerefThis)
- 66 STORE_LOCAL(value x)
66 SCOPE_ENTER value x
- 67 LOAD_LOCAL(value x)
- 67 STORE_LOCAL(value y)
67 SCOPE_ENTER value y
68 LOAD_MODULE object Predef
- 68 LOAD_LOCAL(value y)
+ 68 THIS(Object)
68 CALL_METHOD scala.Predef.println (dynamic)
@@ -193,3 +183,3 @@
def test(x: Int (INT)): Unit {
- locals: value x, value y
+ locals: value x
startBlock: 1
@@ -198,7 +188,5 @@
1:
- 29 LOAD_LOCAL(value x)
- 29 STORE_LOCAL(value y)
29 SCOPE_ENTER value y
30 LOAD_MODULE object Predef
- 30 LOAD_LOCAL(value y)
+ 30 LOAD_LOCAL(value x)
30 BOX INT
@@ -240,7 +228,5 @@
96 SCOPE_ENTER variable x
- 97 LOAD_LOCAL(variable x)
- 97 STORE_LOCAL(variable y)
97 SCOPE_ENTER variable y
98 LOAD_MODULE object Predef
- 98 LOAD_LOCAL(variable y)
+ 98 LOAD_LOCAL(variable x)
98 BOX INT
@@ -250,6 +236,4 @@
100 STORE_LOCAL(variable y)
- 101 LOAD_LOCAL(variable y)
- 101 STORE_LOCAL(variable x)
102 LOAD_MODULE object Predef
- 102 LOAD_LOCAL(variable x)
+ 102 LOAD_LOCAL(variable y)
102 BOX INT
|