more detail on broken pipeline and vm suit tests
This commit is contained in:
File diff suppressed because it is too large
Load Diff
1186
boot/engine.cm.mcode
1186
boot/engine.cm.mcode
File diff suppressed because it is too large
Load Diff
@@ -1502,7 +1502,7 @@
|
|||||||
"instructions": [
|
"instructions": [
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
5,
|
4,
|
||||||
2,
|
2,
|
||||||
42,
|
42,
|
||||||
14
|
14
|
||||||
@@ -1516,7 +1516,7 @@
|
|||||||
[
|
[
|
||||||
"is_identical",
|
"is_identical",
|
||||||
10,
|
10,
|
||||||
5,
|
4,
|
||||||
9,
|
9,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
@@ -1531,7 +1531,7 @@
|
|||||||
[
|
[
|
||||||
"is_int",
|
"is_int",
|
||||||
11,
|
11,
|
||||||
5,
|
4,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
],
|
],
|
||||||
@@ -1552,7 +1552,7 @@
|
|||||||
[
|
[
|
||||||
"eq_int",
|
"eq_int",
|
||||||
10,
|
10,
|
||||||
5,
|
4,
|
||||||
9,
|
9,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
@@ -1567,7 +1567,7 @@
|
|||||||
[
|
[
|
||||||
"is_num",
|
"is_num",
|
||||||
11,
|
11,
|
||||||
5,
|
4,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
],
|
],
|
||||||
@@ -1588,7 +1588,7 @@
|
|||||||
[
|
[
|
||||||
"eq_float",
|
"eq_float",
|
||||||
10,
|
10,
|
||||||
5,
|
4,
|
||||||
9,
|
9,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
@@ -1603,7 +1603,7 @@
|
|||||||
[
|
[
|
||||||
"is_text",
|
"is_text",
|
||||||
11,
|
11,
|
||||||
5,
|
4,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
],
|
],
|
||||||
@@ -1624,7 +1624,7 @@
|
|||||||
[
|
[
|
||||||
"eq_text",
|
"eq_text",
|
||||||
10,
|
10,
|
||||||
5,
|
4,
|
||||||
9,
|
9,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
@@ -1639,7 +1639,7 @@
|
|||||||
[
|
[
|
||||||
"is_null",
|
"is_null",
|
||||||
11,
|
11,
|
||||||
5,
|
4,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
],
|
],
|
||||||
@@ -1668,7 +1668,7 @@
|
|||||||
[
|
[
|
||||||
"is_bool",
|
"is_bool",
|
||||||
11,
|
11,
|
||||||
5,
|
4,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
],
|
],
|
||||||
@@ -1689,7 +1689,7 @@
|
|||||||
[
|
[
|
||||||
"eq_bool",
|
"eq_bool",
|
||||||
10,
|
10,
|
||||||
5,
|
4,
|
||||||
9,
|
9,
|
||||||
43,
|
43,
|
||||||
15
|
15
|
||||||
@@ -1724,7 +1724,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
5,
|
4,
|
||||||
13,
|
13,
|
||||||
43,
|
43,
|
||||||
28
|
28
|
||||||
@@ -1746,7 +1746,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
7,
|
6,
|
||||||
14,
|
14,
|
||||||
44,
|
44,
|
||||||
17
|
17
|
||||||
@@ -1796,7 +1796,7 @@
|
|||||||
[
|
[
|
||||||
"push",
|
"push",
|
||||||
20,
|
20,
|
||||||
5,
|
4,
|
||||||
92,
|
92,
|
||||||
12
|
12
|
||||||
],
|
],
|
||||||
@@ -1874,7 +1874,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
23,
|
23,
|
||||||
1,
|
1,
|
||||||
5,
|
4,
|
||||||
92,
|
92,
|
||||||
12
|
12
|
||||||
],
|
],
|
||||||
@@ -1888,7 +1888,7 @@
|
|||||||
"call_done_37",
|
"call_done_37",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
6,
|
8,
|
||||||
15,
|
15,
|
||||||
92,
|
92,
|
||||||
12
|
12
|
||||||
@@ -1896,7 +1896,7 @@
|
|||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
24,
|
24,
|
||||||
6,
|
8,
|
||||||
93,
|
93,
|
||||||
7
|
7
|
||||||
],
|
],
|
||||||
@@ -1910,7 +1910,7 @@
|
|||||||
[
|
[
|
||||||
"load_field",
|
"load_field",
|
||||||
25,
|
25,
|
||||||
6,
|
8,
|
||||||
"isDirectory",
|
"isDirectory",
|
||||||
93,
|
93,
|
||||||
13
|
13
|
||||||
@@ -1963,7 +1963,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
28,
|
28,
|
||||||
1,
|
1,
|
||||||
5,
|
4,
|
||||||
94,
|
94,
|
||||||
5
|
5
|
||||||
],
|
],
|
||||||
@@ -1992,7 +1992,7 @@
|
|||||||
"if_end_39",
|
"if_end_39",
|
||||||
[
|
[
|
||||||
"return",
|
"return",
|
||||||
7,
|
6,
|
||||||
97,
|
97,
|
||||||
10
|
10
|
||||||
],
|
],
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -9,7 +9,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
1,
|
1,
|
||||||
5,
|
4,
|
||||||
1,
|
1,
|
||||||
13,
|
13,
|
||||||
10
|
10
|
||||||
@@ -50,7 +50,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
1,
|
1,
|
||||||
5,
|
4,
|
||||||
1,
|
1,
|
||||||
18,
|
18,
|
||||||
10
|
10
|
||||||
@@ -444,7 +444,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
3,
|
3,
|
||||||
11,
|
10,
|
||||||
1,
|
1,
|
||||||
30,
|
30,
|
||||||
10
|
10
|
||||||
@@ -496,7 +496,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
9,
|
9,
|
||||||
8,
|
7,
|
||||||
1,
|
1,
|
||||||
30,
|
30,
|
||||||
37
|
37
|
||||||
@@ -567,7 +567,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
6,
|
6,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
34,
|
34,
|
||||||
7
|
7
|
||||||
@@ -1324,7 +1324,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
44,
|
44,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
41,
|
41,
|
||||||
10
|
10
|
||||||
@@ -1475,7 +1475,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
55,
|
55,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
42,
|
42,
|
||||||
7
|
7
|
||||||
@@ -1756,7 +1756,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
8,
|
8,
|
||||||
11,
|
10,
|
||||||
1,
|
1,
|
||||||
55,
|
55,
|
||||||
10
|
10
|
||||||
@@ -1808,7 +1808,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
14,
|
14,
|
||||||
8,
|
7,
|
||||||
1,
|
1,
|
||||||
55,
|
55,
|
||||||
37
|
37
|
||||||
@@ -1887,7 +1887,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
5,
|
5,
|
||||||
2,
|
1,
|
||||||
2,
|
2,
|
||||||
71,
|
71,
|
||||||
24
|
24
|
||||||
@@ -2077,7 +2077,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
18,
|
18,
|
||||||
7,
|
6,
|
||||||
2,
|
2,
|
||||||
72,
|
72,
|
||||||
15
|
15
|
||||||
@@ -2264,7 +2264,7 @@
|
|||||||
[
|
[
|
||||||
"put",
|
"put",
|
||||||
28,
|
28,
|
||||||
10,
|
9,
|
||||||
2,
|
2,
|
||||||
73,
|
73,
|
||||||
40
|
40
|
||||||
@@ -2284,7 +2284,7 @@
|
|||||||
[
|
[
|
||||||
"put",
|
"put",
|
||||||
29,
|
29,
|
||||||
10,
|
9,
|
||||||
2,
|
2,
|
||||||
74,
|
74,
|
||||||
23
|
23
|
||||||
@@ -2366,7 +2366,7 @@
|
|||||||
[
|
[
|
||||||
"put",
|
"put",
|
||||||
36,
|
36,
|
||||||
10,
|
9,
|
||||||
2,
|
2,
|
||||||
77,
|
77,
|
||||||
18
|
18
|
||||||
@@ -2396,7 +2396,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
3,
|
3,
|
||||||
10,
|
9,
|
||||||
1,
|
1,
|
||||||
63,
|
63,
|
||||||
7
|
7
|
||||||
@@ -2411,7 +2411,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
4,
|
4,
|
||||||
10,
|
9,
|
||||||
1,
|
1,
|
||||||
63,
|
63,
|
||||||
26
|
26
|
||||||
@@ -2472,7 +2472,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
10,
|
10,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
65,
|
65,
|
||||||
8
|
8
|
||||||
@@ -2620,7 +2620,7 @@
|
|||||||
[
|
[
|
||||||
"put",
|
"put",
|
||||||
19,
|
19,
|
||||||
10,
|
9,
|
||||||
1,
|
1,
|
||||||
66,
|
66,
|
||||||
18
|
18
|
||||||
@@ -2628,7 +2628,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
20,
|
20,
|
||||||
10,
|
9,
|
||||||
1,
|
1,
|
||||||
67,
|
67,
|
||||||
12
|
12
|
||||||
@@ -2688,7 +2688,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
25,
|
25,
|
||||||
10,
|
9,
|
||||||
1,
|
1,
|
||||||
80,
|
80,
|
||||||
10
|
10
|
||||||
@@ -2714,7 +2714,7 @@
|
|||||||
[
|
[
|
||||||
"put",
|
"put",
|
||||||
1,
|
1,
|
||||||
10,
|
9,
|
||||||
1,
|
1,
|
||||||
84,
|
84,
|
||||||
16
|
16
|
||||||
@@ -2786,7 +2786,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
11,
|
11,
|
||||||
7,
|
6,
|
||||||
1,
|
1,
|
||||||
87,
|
87,
|
||||||
16
|
16
|
||||||
@@ -2921,7 +2921,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
20,
|
20,
|
||||||
4,
|
3,
|
||||||
1,
|
1,
|
||||||
87,
|
87,
|
||||||
11
|
11
|
||||||
@@ -3021,7 +3021,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
28,
|
28,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
89,
|
89,
|
||||||
3
|
3
|
||||||
@@ -3193,7 +3193,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
1,
|
1,
|
||||||
3,
|
2,
|
||||||
1,
|
1,
|
||||||
138,
|
138,
|
||||||
22
|
22
|
||||||
@@ -3336,7 +3336,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
11,
|
11,
|
||||||
3,
|
2,
|
||||||
1,
|
1,
|
||||||
139,
|
139,
|
||||||
26
|
26
|
||||||
@@ -3492,7 +3492,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
22,
|
22,
|
||||||
3,
|
2,
|
||||||
1,
|
1,
|
||||||
1,
|
1,
|
||||||
1
|
1
|
||||||
@@ -3670,7 +3670,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
3,
|
2,
|
||||||
6,
|
6,
|
||||||
130,
|
130,
|
||||||
46
|
46
|
||||||
@@ -3719,7 +3719,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
10,
|
10,
|
||||||
1,
|
1,
|
||||||
3,
|
2,
|
||||||
132,
|
132,
|
||||||
15
|
15
|
||||||
],
|
],
|
||||||
@@ -3755,7 +3755,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
14,
|
14,
|
||||||
2,
|
1,
|
||||||
3,
|
3,
|
||||||
132,
|
132,
|
||||||
49
|
49
|
||||||
@@ -3797,7 +3797,7 @@
|
|||||||
[
|
[
|
||||||
"push",
|
"push",
|
||||||
18,
|
18,
|
||||||
3,
|
2,
|
||||||
132,
|
132,
|
||||||
49
|
49
|
||||||
],
|
],
|
||||||
@@ -3875,7 +3875,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
21,
|
21,
|
||||||
1,
|
1,
|
||||||
3,
|
2,
|
||||||
132,
|
132,
|
||||||
49
|
49
|
||||||
],
|
],
|
||||||
@@ -3920,7 +3920,7 @@
|
|||||||
"add",
|
"add",
|
||||||
24,
|
24,
|
||||||
23,
|
23,
|
||||||
3,
|
2,
|
||||||
133,
|
133,
|
||||||
61
|
61
|
||||||
],
|
],
|
||||||
@@ -4011,7 +4011,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
2,
|
3,
|
||||||
32,
|
32,
|
||||||
137,
|
137,
|
||||||
26
|
26
|
||||||
@@ -4019,7 +4019,7 @@
|
|||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
34,
|
34,
|
||||||
2,
|
3,
|
||||||
0,
|
0,
|
||||||
143,
|
143,
|
||||||
11
|
11
|
||||||
@@ -4070,7 +4070,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
3,
|
3,
|
||||||
7,
|
5,
|
||||||
1,
|
1,
|
||||||
126,
|
126,
|
||||||
35
|
35
|
||||||
@@ -4078,7 +4078,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
5,
|
5,
|
||||||
2,
|
1,
|
||||||
2,
|
2,
|
||||||
126,
|
126,
|
||||||
26
|
26
|
||||||
@@ -4268,7 +4268,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
18,
|
18,
|
||||||
7,
|
6,
|
||||||
2,
|
2,
|
||||||
127,
|
127,
|
||||||
17
|
17
|
||||||
@@ -4642,7 +4642,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
44,
|
44,
|
||||||
7,
|
5,
|
||||||
1,
|
1,
|
||||||
1,
|
1,
|
||||||
1
|
1
|
||||||
@@ -4908,7 +4908,7 @@
|
|||||||
"call_done_51",
|
"call_done_51",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
6,
|
7,
|
||||||
9,
|
9,
|
||||||
94,
|
94,
|
||||||
14
|
14
|
||||||
@@ -4916,7 +4916,7 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
17,
|
17,
|
||||||
6,
|
7,
|
||||||
1,
|
1,
|
||||||
95,
|
95,
|
||||||
13
|
13
|
||||||
@@ -5131,7 +5131,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
38,
|
38,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
103,
|
103,
|
||||||
10
|
10
|
||||||
@@ -5500,7 +5500,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
64,
|
64,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
112,
|
112,
|
||||||
15
|
15
|
||||||
@@ -5635,7 +5635,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
73,
|
73,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
114,
|
114,
|
||||||
3
|
3
|
||||||
@@ -5770,7 +5770,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
82,
|
82,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
117,
|
117,
|
||||||
3
|
3
|
||||||
@@ -6019,7 +6019,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
97,
|
97,
|
||||||
3,
|
2,
|
||||||
1,
|
1,
|
||||||
121,
|
121,
|
||||||
57
|
57
|
||||||
@@ -6071,7 +6071,7 @@
|
|||||||
"tern_end_69",
|
"tern_end_69",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
5,
|
8,
|
||||||
95,
|
95,
|
||||||
121,
|
121,
|
||||||
57
|
57
|
||||||
@@ -6086,28 +6086,28 @@
|
|||||||
[
|
[
|
||||||
"add",
|
"add",
|
||||||
101,
|
101,
|
||||||
5,
|
8,
|
||||||
100,
|
100,
|
||||||
122,
|
122,
|
||||||
33
|
33
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
7,
|
5,
|
||||||
101,
|
101,
|
||||||
122,
|
122,
|
||||||
33
|
33
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
8,
|
6,
|
||||||
123,
|
123,
|
||||||
23
|
23
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
103,
|
103,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
124,
|
124,
|
||||||
7
|
7
|
||||||
@@ -6149,7 +6149,7 @@
|
|||||||
[
|
[
|
||||||
"push",
|
"push",
|
||||||
107,
|
107,
|
||||||
7,
|
5,
|
||||||
124,
|
124,
|
||||||
7
|
7
|
||||||
],
|
],
|
||||||
@@ -6227,7 +6227,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
110,
|
110,
|
||||||
1,
|
1,
|
||||||
7,
|
5,
|
||||||
124,
|
124,
|
||||||
7
|
7
|
||||||
],
|
],
|
||||||
@@ -6255,7 +6255,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
8,
|
6,
|
||||||
111,
|
111,
|
||||||
125,
|
125,
|
||||||
21
|
21
|
||||||
@@ -6263,7 +6263,7 @@
|
|||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
113,
|
113,
|
||||||
8,
|
6,
|
||||||
0,
|
0,
|
||||||
149,
|
149,
|
||||||
5
|
5
|
||||||
@@ -6425,7 +6425,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
5,
|
5,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
157,
|
157,
|
||||||
15
|
15
|
||||||
@@ -6583,7 +6583,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
17,
|
17,
|
||||||
3,
|
2,
|
||||||
1,
|
1,
|
||||||
161,
|
161,
|
||||||
20
|
20
|
||||||
@@ -6635,7 +6635,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
21,
|
21,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
162,
|
162,
|
||||||
7
|
7
|
||||||
@@ -6777,7 +6777,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
30,
|
30,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
163,
|
163,
|
||||||
5
|
5
|
||||||
@@ -7006,7 +7006,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
48,
|
48,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
168,
|
168,
|
||||||
3
|
3
|
||||||
@@ -7243,7 +7243,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
4,
|
4,
|
||||||
3,
|
2,
|
||||||
2,
|
2,
|
||||||
177,
|
177,
|
||||||
22
|
22
|
||||||
@@ -7295,7 +7295,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
8,
|
8,
|
||||||
2,
|
1,
|
||||||
2,
|
2,
|
||||||
178,
|
178,
|
||||||
9
|
9
|
||||||
@@ -7437,7 +7437,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
17,
|
17,
|
||||||
2,
|
1,
|
||||||
2,
|
2,
|
||||||
179,
|
179,
|
||||||
7
|
7
|
||||||
@@ -7602,7 +7602,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
3,
|
3,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
175,
|
175,
|
||||||
15
|
15
|
||||||
@@ -7900,7 +7900,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
27,
|
27,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
183,
|
183,
|
||||||
3
|
3
|
||||||
@@ -8114,7 +8114,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
9,
|
9,
|
||||||
3,
|
2,
|
||||||
1,
|
1,
|
||||||
190,
|
190,
|
||||||
20
|
20
|
||||||
@@ -8166,7 +8166,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
13,
|
13,
|
||||||
1,
|
11,
|
||||||
1,
|
1,
|
||||||
191,
|
191,
|
||||||
21
|
21
|
||||||
@@ -8218,7 +8218,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
17,
|
17,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
194,
|
194,
|
||||||
16
|
16
|
||||||
@@ -8360,7 +8360,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
26,
|
26,
|
||||||
9,
|
8,
|
||||||
1,
|
1,
|
||||||
195,
|
195,
|
||||||
3
|
3
|
||||||
@@ -8411,7 +8411,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
30,
|
30,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
199,
|
199,
|
||||||
7
|
7
|
||||||
@@ -8553,7 +8553,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
39,
|
39,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
200,
|
200,
|
||||||
20
|
20
|
||||||
@@ -8960,7 +8960,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
52,
|
52,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
209,
|
209,
|
||||||
7
|
7
|
||||||
@@ -9102,7 +9102,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
61,
|
61,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
210,
|
210,
|
||||||
5
|
5
|
||||||
@@ -9244,7 +9244,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
70,
|
70,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
211,
|
211,
|
||||||
14
|
14
|
||||||
@@ -9393,7 +9393,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
80,
|
80,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
212,
|
212,
|
||||||
5
|
5
|
||||||
@@ -9552,7 +9552,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
89,
|
89,
|
||||||
2,
|
1,
|
||||||
1,
|
1,
|
||||||
216,
|
216,
|
||||||
3
|
3
|
||||||
@@ -10155,7 +10155,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
14,
|
14,
|
||||||
2,
|
1,
|
||||||
5,
|
5,
|
||||||
251,
|
251,
|
||||||
51
|
51
|
||||||
@@ -10400,7 +10400,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
5,
|
5,
|
||||||
2,
|
1,
|
||||||
4,
|
4,
|
||||||
245,
|
245,
|
||||||
28
|
28
|
||||||
@@ -10590,7 +10590,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
18,
|
18,
|
||||||
7,
|
6,
|
||||||
4,
|
4,
|
||||||
246,
|
246,
|
||||||
19
|
19
|
||||||
@@ -10994,7 +10994,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
6,
|
6,
|
||||||
1,
|
11,
|
||||||
3,
|
3,
|
||||||
230,
|
230,
|
||||||
25
|
25
|
||||||
@@ -11038,7 +11038,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
2,
|
3,
|
||||||
5,
|
5,
|
||||||
230,
|
230,
|
||||||
25
|
25
|
||||||
@@ -11046,7 +11046,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
10,
|
10,
|
||||||
2,
|
1,
|
||||||
3,
|
3,
|
||||||
231,
|
231,
|
||||||
12
|
12
|
||||||
@@ -11088,7 +11088,7 @@
|
|||||||
[
|
[
|
||||||
"push",
|
"push",
|
||||||
14,
|
14,
|
||||||
2,
|
3,
|
||||||
231,
|
231,
|
||||||
12
|
12
|
||||||
],
|
],
|
||||||
@@ -11166,7 +11166,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
17,
|
17,
|
||||||
1,
|
1,
|
||||||
2,
|
3,
|
||||||
231,
|
231,
|
||||||
12
|
12
|
||||||
],
|
],
|
||||||
@@ -11221,7 +11221,7 @@
|
|||||||
"add",
|
"add",
|
||||||
23,
|
23,
|
||||||
22,
|
22,
|
||||||
2,
|
3,
|
||||||
232,
|
232,
|
||||||
48
|
48
|
||||||
],
|
],
|
||||||
@@ -11299,7 +11299,7 @@
|
|||||||
[
|
[
|
||||||
"add",
|
"add",
|
||||||
29,
|
29,
|
||||||
2,
|
3,
|
||||||
28,
|
28,
|
||||||
235,
|
235,
|
||||||
37
|
37
|
||||||
@@ -11307,7 +11307,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
31,
|
31,
|
||||||
2,
|
1,
|
||||||
3,
|
3,
|
||||||
235,
|
235,
|
||||||
12
|
12
|
||||||
@@ -11482,7 +11482,7 @@
|
|||||||
"add",
|
"add",
|
||||||
44,
|
44,
|
||||||
43,
|
43,
|
||||||
2,
|
3,
|
||||||
236,
|
236,
|
||||||
48
|
48
|
||||||
],
|
],
|
||||||
@@ -11577,7 +11577,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
53,
|
53,
|
||||||
6,
|
5,
|
||||||
3,
|
3,
|
||||||
240,
|
240,
|
||||||
7
|
7
|
||||||
@@ -11749,7 +11749,7 @@
|
|||||||
[
|
[
|
||||||
"add",
|
"add",
|
||||||
62,
|
62,
|
||||||
2,
|
3,
|
||||||
61,
|
61,
|
||||||
243,
|
243,
|
||||||
37
|
37
|
||||||
@@ -11770,7 +11770,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
3,
|
2,
|
||||||
63,
|
63,
|
||||||
244,
|
244,
|
||||||
22
|
22
|
||||||
@@ -11778,7 +11778,7 @@
|
|||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
65,
|
65,
|
||||||
3,
|
2,
|
||||||
0,
|
0,
|
||||||
267,
|
267,
|
||||||
7
|
7
|
||||||
@@ -12026,7 +12026,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
6,
|
6,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
222,
|
222,
|
||||||
15
|
15
|
||||||
@@ -12379,7 +12379,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
4,
|
4,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
281,
|
281,
|
||||||
15
|
15
|
||||||
@@ -12753,7 +12753,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
4,
|
4,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
287,
|
287,
|
||||||
15
|
15
|
||||||
@@ -13238,7 +13238,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
5,
|
5,
|
||||||
6,
|
5,
|
||||||
1,
|
1,
|
||||||
294,
|
294,
|
||||||
15
|
15
|
||||||
@@ -13576,7 +13576,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
11,
|
10,
|
||||||
15,
|
15,
|
||||||
0,
|
0,
|
||||||
0
|
0
|
||||||
@@ -13590,7 +13590,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
8,
|
7,
|
||||||
16,
|
16,
|
||||||
0,
|
0,
|
||||||
0
|
0
|
||||||
@@ -13604,7 +13604,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
3,
|
2,
|
||||||
17,
|
17,
|
||||||
0,
|
0,
|
||||||
0
|
0
|
||||||
@@ -13618,7 +13618,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
9,
|
8,
|
||||||
18,
|
18,
|
||||||
0,
|
0,
|
||||||
0
|
0
|
||||||
@@ -13632,7 +13632,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
1,
|
11,
|
||||||
19,
|
19,
|
||||||
0,
|
0,
|
||||||
0
|
0
|
||||||
@@ -13694,7 +13694,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
7,
|
6,
|
||||||
21,
|
21,
|
||||||
4,
|
4,
|
||||||
12
|
12
|
||||||
@@ -13756,7 +13756,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
2,
|
1,
|
||||||
26,
|
26,
|
||||||
5,
|
5,
|
||||||
10
|
10
|
||||||
@@ -13818,7 +13818,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
4,
|
3,
|
||||||
31,
|
31,
|
||||||
6,
|
6,
|
||||||
12
|
12
|
||||||
@@ -13895,7 +13895,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
5,
|
4,
|
||||||
40,
|
40,
|
||||||
9,
|
9,
|
||||||
24
|
24
|
||||||
@@ -13907,14 +13907,14 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
6,
|
5,
|
||||||
41,
|
41,
|
||||||
58,
|
58,
|
||||||
12
|
12
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
10,
|
9,
|
||||||
60,
|
60,
|
||||||
18
|
18
|
||||||
],
|
],
|
||||||
@@ -13927,7 +13927,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
42,
|
42,
|
||||||
"load",
|
"load",
|
||||||
62,
|
62,
|
||||||
@@ -13942,7 +13942,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
43,
|
43,
|
||||||
"save",
|
"save",
|
||||||
83,
|
83,
|
||||||
@@ -13957,7 +13957,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
44,
|
44,
|
||||||
"add",
|
"add",
|
||||||
92,
|
92,
|
||||||
@@ -13972,7 +13972,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
45,
|
45,
|
||||||
"remove",
|
"remove",
|
||||||
156,
|
156,
|
||||||
@@ -13987,7 +13987,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
46,
|
46,
|
||||||
"clear",
|
"clear",
|
||||||
173,
|
173,
|
||||||
@@ -14002,7 +14002,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
47,
|
47,
|
||||||
"sync_one",
|
"sync_one",
|
||||||
189,
|
189,
|
||||||
@@ -14017,7 +14017,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
48,
|
48,
|
||||||
"sync_all",
|
"sync_all",
|
||||||
221,
|
221,
|
||||||
@@ -14032,7 +14032,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
49,
|
49,
|
||||||
"is_linked",
|
"is_linked",
|
||||||
280,
|
280,
|
||||||
@@ -14047,7 +14047,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
50,
|
50,
|
||||||
"get_target",
|
"get_target",
|
||||||
286,
|
286,
|
||||||
@@ -14062,7 +14062,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
6,
|
5,
|
||||||
51,
|
51,
|
||||||
"get_origin",
|
"get_origin",
|
||||||
293,
|
293,
|
||||||
@@ -14070,7 +14070,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"return",
|
"return",
|
||||||
6,
|
5,
|
||||||
302,
|
302,
|
||||||
8
|
8
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -6295,7 +6295,7 @@
|
|||||||
"call_done_124",
|
"call_done_124",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
3,
|
2,
|
||||||
6,
|
6,
|
||||||
165,
|
165,
|
||||||
18
|
18
|
||||||
@@ -6303,7 +6303,7 @@
|
|||||||
"_nop_bl_1",
|
"_nop_bl_1",
|
||||||
[
|
[
|
||||||
"jump_true",
|
"jump_true",
|
||||||
3,
|
2,
|
||||||
"if_else_125",
|
"if_else_125",
|
||||||
166,
|
166,
|
||||||
10
|
10
|
||||||
@@ -6326,34 +6326,34 @@
|
|||||||
[
|
[
|
||||||
"load_field",
|
"load_field",
|
||||||
17,
|
17,
|
||||||
3,
|
2,
|
||||||
"dependencies",
|
"dependencies",
|
||||||
168,
|
168,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
4,
|
3,
|
||||||
17,
|
17,
|
||||||
168,
|
168,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
1,
|
4,
|
||||||
169,
|
169,
|
||||||
23
|
23
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
2,
|
1,
|
||||||
170,
|
170,
|
||||||
26
|
26
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
18,
|
18,
|
||||||
4,
|
3,
|
||||||
171,
|
171,
|
||||||
9
|
9
|
||||||
],
|
],
|
||||||
@@ -6375,7 +6375,7 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
20,
|
20,
|
||||||
4,
|
3,
|
||||||
19,
|
19,
|
||||||
171,
|
171,
|
||||||
22
|
22
|
||||||
@@ -6406,14 +6406,14 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
22,
|
22,
|
||||||
4,
|
3,
|
||||||
21,
|
21,
|
||||||
172,
|
172,
|
||||||
26
|
26
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
1,
|
4,
|
||||||
22,
|
22,
|
||||||
172,
|
172,
|
||||||
26
|
26
|
||||||
@@ -6554,7 +6554,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
2,
|
1,
|
||||||
30,
|
30,
|
||||||
173,
|
173,
|
||||||
24
|
24
|
||||||
@@ -6567,7 +6567,7 @@
|
|||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
34,
|
34,
|
||||||
1,
|
4,
|
||||||
"package",
|
"package",
|
||||||
174,
|
174,
|
||||||
25
|
25
|
||||||
@@ -6575,7 +6575,7 @@
|
|||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
34,
|
34,
|
||||||
2,
|
1,
|
||||||
"path",
|
"path",
|
||||||
174,
|
174,
|
||||||
44
|
44
|
||||||
@@ -11009,7 +11009,7 @@
|
|||||||
[
|
[
|
||||||
"get",
|
"get",
|
||||||
5,
|
5,
|
||||||
9,
|
8,
|
||||||
1,
|
1,
|
||||||
360,
|
360,
|
||||||
17
|
17
|
||||||
@@ -11789,7 +11789,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
18,
|
17,
|
||||||
23,
|
23,
|
||||||
300,
|
300,
|
||||||
20
|
20
|
||||||
@@ -11831,7 +11831,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
29,
|
29,
|
||||||
1,
|
1,
|
||||||
18,
|
17,
|
||||||
301,
|
301,
|
||||||
23
|
23
|
||||||
],
|
],
|
||||||
@@ -11844,7 +11844,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
8,
|
12,
|
||||||
27,
|
27,
|
||||||
301,
|
301,
|
||||||
23
|
23
|
||||||
@@ -11998,7 +11998,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
9,
|
8,
|
||||||
40,
|
40,
|
||||||
305,
|
305,
|
||||||
16
|
16
|
||||||
@@ -12012,7 +12012,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
10,
|
9,
|
||||||
308,
|
308,
|
||||||
14
|
14
|
||||||
],
|
],
|
||||||
@@ -12024,7 +12024,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
19,
|
18,
|
||||||
310,
|
310,
|
||||||
14
|
14
|
||||||
],
|
],
|
||||||
@@ -12042,13 +12042,13 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
11,
|
10,
|
||||||
313,
|
313,
|
||||||
13
|
13
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
12,
|
11,
|
||||||
314,
|
314,
|
||||||
20
|
20
|
||||||
],
|
],
|
||||||
@@ -12060,7 +12060,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
17,
|
16,
|
||||||
316,
|
316,
|
||||||
22
|
22
|
||||||
],
|
],
|
||||||
@@ -12079,7 +12079,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"null",
|
"null",
|
||||||
16,
|
19,
|
||||||
319,
|
319,
|
||||||
19
|
19
|
||||||
],
|
],
|
||||||
@@ -12226,7 +12226,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
10,
|
9,
|
||||||
46,
|
46,
|
||||||
321,
|
321,
|
||||||
18
|
18
|
||||||
@@ -12275,7 +12275,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
50,
|
50,
|
||||||
1,
|
1,
|
||||||
10,
|
9,
|
||||||
322,
|
322,
|
||||||
10
|
10
|
||||||
],
|
],
|
||||||
@@ -12359,7 +12359,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
57,
|
57,
|
||||||
1,
|
1,
|
||||||
10,
|
9,
|
||||||
322,
|
322,
|
||||||
36
|
36
|
||||||
],
|
],
|
||||||
@@ -12458,7 +12458,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
63,
|
63,
|
||||||
1,
|
1,
|
||||||
10,
|
9,
|
||||||
324,
|
324,
|
||||||
11
|
11
|
||||||
],
|
],
|
||||||
@@ -12585,7 +12585,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
73,
|
73,
|
||||||
1,
|
1,
|
||||||
10,
|
9,
|
||||||
325,
|
325,
|
||||||
12
|
12
|
||||||
],
|
],
|
||||||
@@ -12614,7 +12614,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
19,
|
18,
|
||||||
71,
|
71,
|
||||||
325,
|
325,
|
||||||
12
|
12
|
||||||
@@ -12664,7 +12664,7 @@
|
|||||||
[
|
[
|
||||||
"push",
|
"push",
|
||||||
80,
|
80,
|
||||||
19,
|
18,
|
||||||
326,
|
326,
|
||||||
17
|
17
|
||||||
],
|
],
|
||||||
@@ -12742,7 +12742,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
83,
|
83,
|
||||||
1,
|
1,
|
||||||
19,
|
18,
|
||||||
326,
|
326,
|
||||||
17
|
17
|
||||||
],
|
],
|
||||||
@@ -12806,7 +12806,7 @@
|
|||||||
[
|
[
|
||||||
"push",
|
"push",
|
||||||
89,
|
89,
|
||||||
19,
|
18,
|
||||||
327,
|
327,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -12884,7 +12884,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
92,
|
92,
|
||||||
1,
|
1,
|
||||||
19,
|
18,
|
||||||
327,
|
327,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -13200,7 +13200,7 @@
|
|||||||
"tern_end_240",
|
"tern_end_240",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
11,
|
10,
|
||||||
98,
|
98,
|
||||||
328,
|
328,
|
||||||
60
|
60
|
||||||
@@ -13213,7 +13213,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
12,
|
11,
|
||||||
102,
|
102,
|
||||||
331,
|
331,
|
||||||
18
|
18
|
||||||
@@ -13233,7 +13233,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
17,
|
16,
|
||||||
4,
|
4,
|
||||||
333,
|
333,
|
||||||
20
|
20
|
||||||
@@ -13256,7 +13256,7 @@
|
|||||||
[
|
[
|
||||||
"length",
|
"length",
|
||||||
105,
|
105,
|
||||||
8,
|
12,
|
||||||
335,
|
335,
|
||||||
28
|
28
|
||||||
],
|
],
|
||||||
@@ -13381,7 +13381,7 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
110,
|
110,
|
||||||
8,
|
12,
|
||||||
5,
|
5,
|
||||||
336,
|
336,
|
||||||
36
|
36
|
||||||
@@ -13472,7 +13472,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
12,
|
11,
|
||||||
116,
|
116,
|
||||||
338,
|
338,
|
||||||
22
|
22
|
||||||
@@ -13480,7 +13480,7 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
117,
|
117,
|
||||||
8,
|
12,
|
||||||
5,
|
5,
|
||||||
339,
|
339,
|
||||||
40
|
40
|
||||||
@@ -13579,7 +13579,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
17,
|
16,
|
||||||
121,
|
121,
|
||||||
340,
|
340,
|
||||||
24
|
24
|
||||||
@@ -13638,8 +13638,8 @@
|
|||||||
[
|
[
|
||||||
"add",
|
"add",
|
||||||
128,
|
128,
|
||||||
11,
|
10,
|
||||||
17,
|
16,
|
||||||
345,
|
345,
|
||||||
23
|
23
|
||||||
],
|
],
|
||||||
@@ -13653,7 +13653,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
16,
|
19,
|
||||||
129,
|
129,
|
||||||
345,
|
345,
|
||||||
38
|
38
|
||||||
@@ -13661,8 +13661,8 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
130,
|
130,
|
||||||
9,
|
8,
|
||||||
16,
|
19,
|
||||||
346,
|
346,
|
||||||
17
|
17
|
||||||
],
|
],
|
||||||
@@ -13708,9 +13708,9 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_dynamic",
|
"store_dynamic",
|
||||||
9,
|
8,
|
||||||
132,
|
132,
|
||||||
16,
|
19,
|
||||||
347,
|
347,
|
||||||
14
|
14
|
||||||
],
|
],
|
||||||
@@ -13724,7 +13724,7 @@
|
|||||||
"if_end_260",
|
"if_end_260",
|
||||||
[
|
[
|
||||||
"jump_false",
|
"jump_false",
|
||||||
12,
|
11,
|
||||||
"if_else_261",
|
"if_else_261",
|
||||||
350,
|
350,
|
||||||
9
|
9
|
||||||
@@ -13732,8 +13732,8 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
135,
|
135,
|
||||||
9,
|
8,
|
||||||
16,
|
19,
|
||||||
351,
|
351,
|
||||||
14
|
14
|
||||||
],
|
],
|
||||||
@@ -13748,7 +13748,7 @@
|
|||||||
[
|
[
|
||||||
"store_dynamic",
|
"store_dynamic",
|
||||||
136,
|
136,
|
||||||
10,
|
9,
|
||||||
13,
|
13,
|
||||||
351,
|
351,
|
||||||
34
|
34
|
||||||
@@ -13763,15 +13763,15 @@
|
|||||||
[
|
[
|
||||||
"load_dynamic",
|
"load_dynamic",
|
||||||
137,
|
137,
|
||||||
9,
|
8,
|
||||||
16,
|
19,
|
||||||
353,
|
353,
|
||||||
14
|
14
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
137,
|
137,
|
||||||
10,
|
9,
|
||||||
"generic",
|
"generic",
|
||||||
353,
|
353,
|
||||||
14
|
14
|
||||||
@@ -13865,7 +13865,7 @@
|
|||||||
"setarg",
|
"setarg",
|
||||||
144,
|
144,
|
||||||
1,
|
1,
|
||||||
9,
|
8,
|
||||||
359,
|
359,
|
||||||
10
|
10
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1391,7 +1391,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"access",
|
"access",
|
||||||
4,
|
5,
|
||||||
0,
|
0,
|
||||||
42,
|
42,
|
||||||
17
|
17
|
||||||
@@ -1404,14 +1404,14 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"false",
|
"false",
|
||||||
5,
|
3,
|
||||||
44,
|
44,
|
||||||
21
|
21
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
14,
|
14,
|
||||||
3,
|
4,
|
||||||
0,
|
0,
|
||||||
82,
|
82,
|
||||||
5
|
5
|
||||||
@@ -2076,7 +2076,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
4,
|
5,
|
||||||
19,
|
19,
|
||||||
115,
|
115,
|
||||||
19
|
19
|
||||||
@@ -2139,21 +2139,21 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
10,
|
8,
|
||||||
24,
|
24,
|
||||||
116,
|
116,
|
||||||
23
|
23
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"access",
|
"access",
|
||||||
9,
|
10,
|
||||||
0,
|
0,
|
||||||
117,
|
117,
|
||||||
22
|
22
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"access",
|
"access",
|
||||||
7,
|
4,
|
||||||
0,
|
0,
|
||||||
118,
|
118,
|
||||||
21
|
21
|
||||||
@@ -2167,7 +2167,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"false",
|
"false",
|
||||||
5,
|
6,
|
||||||
120,
|
120,
|
||||||
20
|
20
|
||||||
],
|
],
|
||||||
@@ -2290,7 +2290,7 @@
|
|||||||
"tern_end_90",
|
"tern_end_90",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
8,
|
9,
|
||||||
29,
|
29,
|
||||||
174,
|
174,
|
||||||
54
|
54
|
||||||
@@ -2320,7 +2320,7 @@
|
|||||||
[
|
[
|
||||||
"is_int",
|
"is_int",
|
||||||
39,
|
39,
|
||||||
8,
|
9,
|
||||||
176,
|
176,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -2335,7 +2335,7 @@
|
|||||||
"lt_int",
|
"lt_int",
|
||||||
37,
|
37,
|
||||||
11,
|
11,
|
||||||
8,
|
9,
|
||||||
176,
|
176,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -2363,7 +2363,7 @@
|
|||||||
[
|
[
|
||||||
"is_num",
|
"is_num",
|
||||||
39,
|
39,
|
||||||
8,
|
9,
|
||||||
176,
|
176,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -2378,7 +2378,7 @@
|
|||||||
"lt_float",
|
"lt_float",
|
||||||
37,
|
37,
|
||||||
11,
|
11,
|
||||||
8,
|
9,
|
||||||
176,
|
176,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -2406,7 +2406,7 @@
|
|||||||
[
|
[
|
||||||
"is_text",
|
"is_text",
|
||||||
39,
|
39,
|
||||||
8,
|
9,
|
||||||
176,
|
176,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -2421,7 +2421,7 @@
|
|||||||
"lt_text",
|
"lt_text",
|
||||||
37,
|
37,
|
||||||
11,
|
11,
|
||||||
8,
|
9,
|
||||||
176,
|
176,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -2448,7 +2448,7 @@
|
|||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
41,
|
41,
|
||||||
6,
|
7,
|
||||||
0,
|
0,
|
||||||
176,
|
176,
|
||||||
30
|
30
|
||||||
@@ -4434,21 +4434,21 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
10,
|
7,
|
||||||
24,
|
24,
|
||||||
208,
|
208,
|
||||||
23
|
23
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"access",
|
"access",
|
||||||
9,
|
10,
|
||||||
0,
|
0,
|
||||||
209,
|
209,
|
||||||
22
|
22
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"access",
|
"access",
|
||||||
4,
|
8,
|
||||||
0,
|
0,
|
||||||
210,
|
210,
|
||||||
21
|
21
|
||||||
@@ -4585,7 +4585,7 @@
|
|||||||
"tern_end_143",
|
"tern_end_143",
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
8,
|
9,
|
||||||
29,
|
29,
|
||||||
269,
|
269,
|
||||||
54
|
54
|
||||||
@@ -4615,7 +4615,7 @@
|
|||||||
[
|
[
|
||||||
"is_int",
|
"is_int",
|
||||||
39,
|
39,
|
||||||
8,
|
9,
|
||||||
271,
|
271,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -4630,7 +4630,7 @@
|
|||||||
"lt_int",
|
"lt_int",
|
||||||
37,
|
37,
|
||||||
11,
|
11,
|
||||||
8,
|
9,
|
||||||
271,
|
271,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -4658,7 +4658,7 @@
|
|||||||
[
|
[
|
||||||
"is_num",
|
"is_num",
|
||||||
39,
|
39,
|
||||||
8,
|
9,
|
||||||
271,
|
271,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -4673,7 +4673,7 @@
|
|||||||
"lt_float",
|
"lt_float",
|
||||||
37,
|
37,
|
||||||
11,
|
11,
|
||||||
8,
|
9,
|
||||||
271,
|
271,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -4701,7 +4701,7 @@
|
|||||||
[
|
[
|
||||||
"is_text",
|
"is_text",
|
||||||
39,
|
39,
|
||||||
8,
|
9,
|
||||||
271,
|
271,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -4716,7 +4716,7 @@
|
|||||||
"lt_text",
|
"lt_text",
|
||||||
37,
|
37,
|
||||||
11,
|
11,
|
||||||
8,
|
9,
|
||||||
271,
|
271,
|
||||||
16
|
16
|
||||||
],
|
],
|
||||||
@@ -4743,7 +4743,7 @@
|
|||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
41,
|
41,
|
||||||
7,
|
4,
|
||||||
0,
|
0,
|
||||||
271,
|
271,
|
||||||
30
|
30
|
||||||
@@ -6647,7 +6647,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"access",
|
"access",
|
||||||
4,
|
3,
|
||||||
0,
|
0,
|
||||||
292,
|
292,
|
||||||
17
|
17
|
||||||
@@ -6660,14 +6660,14 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"false",
|
"false",
|
||||||
3,
|
5,
|
||||||
294,
|
294,
|
||||||
21
|
21
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
"frame",
|
"frame",
|
||||||
14,
|
14,
|
||||||
5,
|
4,
|
||||||
1,
|
1,
|
||||||
332,
|
332,
|
||||||
5
|
5
|
||||||
|
|||||||
@@ -10073,7 +10073,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
14,
|
15,
|
||||||
75,
|
75,
|
||||||
35,
|
35,
|
||||||
17
|
17
|
||||||
@@ -10157,7 +10157,7 @@
|
|||||||
],
|
],
|
||||||
[
|
[
|
||||||
"move",
|
"move",
|
||||||
15,
|
14,
|
||||||
81,
|
81,
|
||||||
74,
|
74,
|
||||||
15
|
15
|
||||||
@@ -11016,7 +11016,7 @@
|
|||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
138,
|
138,
|
||||||
14,
|
15,
|
||||||
"is_number",
|
"is_number",
|
||||||
544,
|
544,
|
||||||
14
|
14
|
||||||
@@ -11064,7 +11064,7 @@
|
|||||||
[
|
[
|
||||||
"store_field",
|
"store_field",
|
||||||
138,
|
138,
|
||||||
15,
|
14,
|
||||||
"is_text",
|
"is_text",
|
||||||
550,
|
550,
|
||||||
12
|
12
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -17,12 +17,25 @@ itself, but the only available compiler (old pitweb) miscompiles it.
|
|||||||
## Current State
|
## Current State
|
||||||
|
|
||||||
- `boot/tokenize.cm.mcode` through `boot/streamline.cm.mcode` contain the **old pitweb**
|
- `boot/tokenize.cm.mcode` through `boot/streamline.cm.mcode` contain the **old pitweb**
|
||||||
pipeline mcode (pre-merge). These work correctly — 641/641 vm_suite tests pass.
|
pipeline mcode (pre-merge). These pass 641/641 vm_suite tests.
|
||||||
- All other boot mcode files (engine, bootstrap, seed_bootstrap, plus core modules like
|
- All other boot mcode files (engine, bootstrap, seed_bootstrap, plus core modules like
|
||||||
fd, time, toml, etc.) are compiled from the merged source and work correctly.
|
fd, time, toml, etc.) are compiled from the merged source and work correctly.
|
||||||
- The merged pipeline `.cm` source has changes from fix_gc that are **not active** — the
|
- The merged pipeline `.cm` source has changes from fix_gc that are **not active** — the
|
||||||
runtime uses the old pitweb pipeline mcode.
|
runtime uses the old pitweb pipeline mcode.
|
||||||
|
|
||||||
|
**The old pitweb pipeline is NOT fully working.** While it passes the test suite, it
|
||||||
|
miscompiles nested function declarations. This breaks:
|
||||||
|
|
||||||
|
- `toml.encode()` — the encoder uses nested `function` declarations inside `encode_toml`
|
||||||
|
- `Shop.save_lock()` — calls `toml.encode()`, so any lock.toml mutation fails
|
||||||
|
- Any other `.cm` module that uses nested named function declarations
|
||||||
|
|
||||||
|
This means the **ID-based package symbol naming** (Phase 2 in the plan) is blocked: it
|
||||||
|
needs `save_lock()` to persist package IDs to lock.toml.
|
||||||
|
|
||||||
|
The shop.cm changes for ID-based naming are already written and correct — they just need
|
||||||
|
a working pipeline underneath. Once the pipeline is fixed, the ID system will work.
|
||||||
|
|
||||||
## What Changed in the Pipeline
|
## What Changed in the Pipeline
|
||||||
|
|
||||||
The fix_gc merge brought these changes to the pipeline `.cm` files:
|
The fix_gc merge brought these changes to the pipeline `.cm` files:
|
||||||
@@ -88,8 +101,12 @@ compiled by the current (old pitweb) pipeline. The process:
|
|||||||
- Use `--seed` mode for testing compilation — it bypasses the engine entirely and
|
- Use `--seed` mode for testing compilation — it bypasses the engine entirely and
|
||||||
loads the pipeline directly from boot mcode.
|
loads the pipeline directly from boot mcode.
|
||||||
- The failure mode is silent: the old compiler compiles the new source without errors
|
- The failure mode is silent: the old compiler compiles the new source without errors
|
||||||
but produces wrong bytecode. Start debugging with the simplest failing case
|
but produces wrong bytecode.
|
||||||
(`var x = 42; print(x)`) and work up.
|
- Known broken patterns with the old pitweb pipeline:
|
||||||
|
- `var x = 42; print(x)` fails when compiled by the regenned pipeline mcode
|
||||||
|
- Nested named function declarations (`function foo() {}` inside another function)
|
||||||
|
produce "not a function" errors — this breaks `toml.encode()`
|
||||||
|
- Test with: `echo 'var toml = use("toml"); print(toml.encode({a: 1}))' > /tmp/t.ce && ./cell --dev /tmp/t.ce`
|
||||||
- The most likely culprits are the mcode.cm changes (type-guarded arithmetic, array/record
|
- The most likely culprits are the mcode.cm changes (type-guarded arithmetic, array/record
|
||||||
count args) since these change the bytecode format. The fold.cm changes (lookup tables)
|
count args) since these change the bytecode format. The fold.cm changes (lookup tables)
|
||||||
are more likely safe refactors.
|
are more likely safe refactors.
|
||||||
|
|||||||
@@ -21,6 +21,54 @@ var my$_ = actor_api
|
|||||||
|
|
||||||
var core = "core"
|
var core = "core"
|
||||||
|
|
||||||
|
// Generate a random 5-letter uppercase identifier for package symbol naming.
|
||||||
|
// Avoids collisions with existing IDs and "CORE".
|
||||||
|
function generate_package_id() {
|
||||||
|
var lock = Shop.load_lock()
|
||||||
|
var existing = {}
|
||||||
|
var keys = array(lock)
|
||||||
|
var _i = 0
|
||||||
|
while (_i < length(keys)) {
|
||||||
|
if (lock[keys[_i]] && lock[keys[_i]].id)
|
||||||
|
existing[lock[keys[_i]].id] = true
|
||||||
|
_i = _i + 1
|
||||||
|
}
|
||||||
|
existing["CORE"] = true
|
||||||
|
|
||||||
|
var id = null
|
||||||
|
var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
|
||||||
|
var _j = 0
|
||||||
|
while (true) {
|
||||||
|
id = ""
|
||||||
|
_j = 0
|
||||||
|
while (_j < 5) {
|
||||||
|
id = id + chars[abs(os.random()) % 26]
|
||||||
|
_j = _j + 1
|
||||||
|
}
|
||||||
|
if (!existing[id]) return id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Get the assigned ID for a package, generating one if needed.
|
||||||
|
// Core always returns "core". Other packages get a random 5-letter ID
|
||||||
|
// assigned lazily on first use and persisted in lock.toml.
|
||||||
|
function get_package_id(pkg) {
|
||||||
|
if (pkg == core) return core
|
||||||
|
|
||||||
|
var lock = Shop.load_lock()
|
||||||
|
var entry = lock[pkg]
|
||||||
|
if (entry && entry.id) return entry.id
|
||||||
|
|
||||||
|
var id = generate_package_id()
|
||||||
|
if (!entry) {
|
||||||
|
entry = {}
|
||||||
|
lock[pkg] = entry
|
||||||
|
}
|
||||||
|
entry.id = id
|
||||||
|
Shop.save_lock(lock)
|
||||||
|
return id
|
||||||
|
}
|
||||||
|
|
||||||
function pull_from_cache(content)
|
function pull_from_cache(content)
|
||||||
{
|
{
|
||||||
var path = hash_path(content)
|
var path = hash_path(content)
|
||||||
@@ -593,12 +641,11 @@ function resolve_locator(path, ctx)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Generate symbol name for a C module file
|
// Generate symbol name for a C module file
|
||||||
// Uses the same format as Shop.c_symbol_for_file
|
// Uses the package's assigned ID (5-letter random or "core") instead of the full name
|
||||||
// Symbol names are based on canonical package names, not link targets
|
|
||||||
function make_c_symbol(pkg, file) {
|
function make_c_symbol(pkg, file) {
|
||||||
var pkg_safe = replace(replace(replace(pkg, '/', '_'), '.', '_'), '-', '_')
|
var pkg_id = get_package_id(pkg)
|
||||||
var file_safe = replace(replace(replace(file, '/', '_'), '.', '_'), '-', '_')
|
var file_safe = replace(replace(replace(file, '/', '_'), '.', '_'), '-', '_')
|
||||||
return 'js_' + pkg_safe + '_' + file_safe + '_use'
|
return 'js_' + pkg_id + '_' + file_safe + '_use'
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the deterministic dylib path for a module in lib/<pkg>/<stem>.dylib
|
// Get the deterministic dylib path for a module in lib/<pkg>/<stem>.dylib
|
||||||
@@ -1360,28 +1407,32 @@ Shop.get_package_dir = function(pkg) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Generate C symbol name for a file within a package
|
// Generate C symbol name for a file within a package
|
||||||
|
// Uses the package's assigned ID (e.g., "WAWOF") instead of the full name
|
||||||
// e.g., c_symbol_for_file('gitea.pockle.world/john/prosperon', 'sprite.c')
|
// e.g., c_symbol_for_file('gitea.pockle.world/john/prosperon', 'sprite.c')
|
||||||
// -> 'js_gitea_pockle_world_john_prosperon_sprite_use'
|
// -> 'js_WAWOF_sprite_use'
|
||||||
Shop.c_symbol_for_file = function(pkg, file) {
|
Shop.c_symbol_for_file = function(pkg, file) {
|
||||||
var pkg_safe = replace(replace(replace(pkg, '/', '_'), '.', '_'), '-', '_')
|
var pkg_id = get_package_id(pkg)
|
||||||
var file_safe = replace(replace(fd.stem(file), '/', '_'), '.', '_')
|
var file_safe = replace(replace(fd.stem(file), '/', '_'), '.', '_')
|
||||||
var suffix = ends_with(file, '.ce') ? '_program' : '_use'
|
var suffix = ends_with(file, '.ce') ? '_program' : '_use'
|
||||||
return 'js_' + pkg_safe + '_' + file_safe + suffix
|
return 'js_' + pkg_id + '_' + file_safe + suffix
|
||||||
}
|
}
|
||||||
|
|
||||||
// Generate C symbol prefix for a package
|
// Generate C symbol prefix for a package
|
||||||
// e.g., c_symbol_prefix('gitea.pockle.world/john/prosperon') -> 'js_gitea_pockle_world_john_prosperon_'
|
// e.g., c_symbol_prefix('gitea.pockle.world/john/prosperon') -> 'js_WAWOF_'
|
||||||
Shop.c_symbol_prefix = function(pkg) {
|
Shop.c_symbol_prefix = function(pkg) {
|
||||||
var pkg_safe = replace(replace(replace(pkg, '/', '_'), '.', '_'), '-', '_')
|
var pkg_id = get_package_id(pkg)
|
||||||
return 'js_' + pkg_safe + '_'
|
return 'js_' + pkg_id + '_'
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the library name for a package (without extension)
|
// Get the library name for a package
|
||||||
// e.g., 'gitea.pockle.world/john/prosperon' -> 'gitea_pockle_world_john_prosperon'
|
// e.g., 'gitea.pockle.world/john/prosperon' -> 'WAWOF'
|
||||||
Shop.lib_name_for_package = function(pkg) {
|
Shop.lib_name_for_package = function(pkg) {
|
||||||
return replace(replace(replace(pkg, '/', '_'), '.', '_'), '-', '_')
|
return get_package_id(pkg)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Get the assigned package ID (public API)
|
||||||
|
Shop.get_package_id = get_package_id
|
||||||
|
|
||||||
// Returns { ok: bool, results: [{pkg, ok, error}] }
|
// Returns { ok: bool, results: [{pkg, ok, error}] }
|
||||||
// Get the deterministic dylib path for a module (public API)
|
// Get the deterministic dylib path for a module (public API)
|
||||||
Shop.get_dylib_path = function(pkg, stem) {
|
Shop.get_dylib_path = function(pkg, stem) {
|
||||||
|
|||||||
76
vm_suite.ce
76
vm_suite.ce
@@ -4935,6 +4935,82 @@ run("object literal 300 function values returned from function", function() {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
// ============================================================================
|
||||||
|
// NESTED FUNCTION DECLARATIONS
|
||||||
|
// ============================================================================
|
||||||
|
|
||||||
|
run("nested named function basic", function() {
|
||||||
|
function inner(x) {
|
||||||
|
return x + 1
|
||||||
|
}
|
||||||
|
assert_eq(inner(41), 42, "nested named function call")
|
||||||
|
})
|
||||||
|
|
||||||
|
run("nested named function used by sibling", function() {
|
||||||
|
function helper(v) {
|
||||||
|
return v * 2
|
||||||
|
}
|
||||||
|
function caller(v) {
|
||||||
|
return helper(v) + 1
|
||||||
|
}
|
||||||
|
assert_eq(caller(5), 11, "sibling nested function call")
|
||||||
|
})
|
||||||
|
|
||||||
|
run("nested named function in var function", function() {
|
||||||
|
var outer = function() {
|
||||||
|
function inner(a, b) {
|
||||||
|
return a + b
|
||||||
|
}
|
||||||
|
return inner(10, 20)
|
||||||
|
}
|
||||||
|
assert_eq(outer(), 30, "nested function inside var function")
|
||||||
|
})
|
||||||
|
|
||||||
|
run("nested named function with closure", function() {
|
||||||
|
var multiplier = 3
|
||||||
|
function scale(x) {
|
||||||
|
return x * multiplier
|
||||||
|
}
|
||||||
|
assert_eq(scale(7), 21, "nested function closing over outer var")
|
||||||
|
})
|
||||||
|
|
||||||
|
run("nested named function recursive", function() {
|
||||||
|
function factorial(n) {
|
||||||
|
if (n <= 1) return 1
|
||||||
|
return n * factorial(n - 1)
|
||||||
|
}
|
||||||
|
assert_eq(factorial(5), 120, "nested recursive function")
|
||||||
|
})
|
||||||
|
|
||||||
|
run("deeply nested named functions", function() {
|
||||||
|
var outer = function() {
|
||||||
|
function mid(x) {
|
||||||
|
function inner(y) {
|
||||||
|
return y + 1
|
||||||
|
}
|
||||||
|
return inner(x) * 2
|
||||||
|
}
|
||||||
|
return mid(4)
|
||||||
|
}
|
||||||
|
assert_eq(outer(), 10, "deeply nested named functions")
|
||||||
|
})
|
||||||
|
|
||||||
|
run("nested function used after definition", function() {
|
||||||
|
var result = []
|
||||||
|
function encode_value(v) {
|
||||||
|
if (is_text(v)) return '"' + v + '"'
|
||||||
|
if (is_number(v)) return text(v)
|
||||||
|
return "null"
|
||||||
|
}
|
||||||
|
function quote_key(k) {
|
||||||
|
return k
|
||||||
|
}
|
||||||
|
result[] = quote_key("a") + " = " + encode_value(1)
|
||||||
|
result[] = quote_key("b") + " = " + encode_value("hi")
|
||||||
|
assert_eq(result[0], "a = 1", "nested fn encode number")
|
||||||
|
assert_eq(result[1], 'b = "hi"', "nested fn encode text")
|
||||||
|
})
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// SUMMARY
|
// SUMMARY
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
|||||||
Reference in New Issue
Block a user