Files
cell/boot/fd.cm.mcode

4643 lines
44 KiB
Plaintext

{
"name": "fd.cm",
"functions": [
{
"disruption_pc": 0,
"nr_slots": 4,
"nr_close_slots": 0,
"instructions": [
[
"put",
2,
3,
1,
7,
12
],
[
"return",
1,
8,
12
],
"_nop_ur_1",
"_nop_ur_2"
],
"name": "<anonymous>",
"filename": "fd.cm",
"nr_args": 2
},
{
"disruption_pc": 0,
"nr_slots": 10,
"nr_close_slots": 0,
"instructions": [
[
"null",
3,
5,
14
],
[
"function",
4,
0,
6,
21
],
[
"access",
6,
{
"name": "replace",
"kind": "name",
"make": "intrinsic"
},
6,
3
],
[
"frame",
7,
6,
3,
6,
3
],
[
"null",
8,
6,
3
],
[
"setarg",
7,
0,
8,
6,
3
],
[
"setarg",
7,
1,
1,
6,
3
],
[
"setarg",
7,
2,
2,
6,
3
],
[
"setarg",
7,
3,
4,
6,
3
],
[
"invoke",
7,
5,
6,
3
],
[
"return",
3,
10,
10
],
"_nop_ur_1",
"_nop_ur_2"
],
"name": "last_pos",
"filename": "fd.cm",
"nr_args": 2
},
{
"disruption_pc": 0,
"nr_slots": 27,
"nr_close_slots": 0,
"instructions": [
[
"regexp",
5,
"\\/+$",
"",
15,
25
],
[
"access",
6,
"",
15,
33
],
[
"access",
8,
{
"name": "replace",
"kind": "name",
"make": "intrinsic"
},
15,
11
],
[
"frame",
9,
8,
3,
15,
11
],
[
"null",
10,
15,
11
],
[
"setarg",
9,
0,
10,
15,
11
],
[
"setarg",
9,
1,
1,
15,
11
],
[
"setarg",
9,
2,
5,
15,
11
],
[
"setarg",
9,
3,
6,
15,
11
],
[
"invoke",
9,
7,
15,
11
],
[
"move",
3,
7,
15,
11
],
[
"regexp",
11,
"^\\/+",
"",
16,
24
],
[
"access",
12,
"",
16,
32
],
[
"access",
14,
{
"name": "replace",
"kind": "name",
"make": "intrinsic"
},
16,
11
],
[
"frame",
15,
14,
3,
16,
11
],
[
"null",
16,
16,
11
],
[
"setarg",
15,
0,
16,
16,
11
],
[
"setarg",
15,
1,
2,
16,
11
],
[
"setarg",
15,
2,
11,
16,
11
],
[
"setarg",
15,
3,
12,
16,
11
],
[
"invoke",
15,
13,
16,
11
],
[
"move",
4,
13,
16,
11
],
"_nop_bl_1",
[
"jump_true",
3,
"if_else_0",
17,
8
],
[
"return",
4,
17,
18
],
"_nop_ur_1",
"if_else_0",
"if_end_1",
"_nop_bl_2",
[
"jump_true",
4,
"if_else_2",
18,
8
],
[
"return",
3,
18,
18
],
"_nop_ur_2",
"if_else_2",
"if_end_3",
[
"access",
19,
"/",
19,
14
],
[
"is_text",
21,
3,
19,
14
],
[
"jump_false",
21,
"add_cn_5",
19,
14
],
"_nop_tc_1",
"_nop_tc_2",
[
"concat",
20,
3,
19,
19,
14
],
[
"jump",
"add_done_4",
19,
14
],
"add_cn_5",
[
"is_num",
21,
3,
19,
14
],
[
"jump_false",
21,
"add_err_6",
19,
14
],
"_nop_tc_3",
[
"jump",
"add_err_6",
19,
14
],
[
"add",
20,
3,
19,
19,
14
],
[
"jump",
"add_done_4",
19,
14
],
"add_err_6",
[
"disrupt",
19,
14
],
"add_done_4",
[
"is_text",
24,
20,
19,
20
],
[
"jump_false",
24,
"add_cn_8",
19,
20
],
[
"is_text",
25,
4,
19,
20
],
[
"jump_false",
25,
"add_cn_8",
19,
20
],
[
"concat",
23,
20,
4,
19,
20
],
[
"jump",
"add_done_7",
19,
20
],
"add_cn_8",
[
"is_num",
24,
20,
19,
20
],
[
"jump_false",
24,
"add_err_9",
19,
20
],
[
"is_num",
25,
4,
19,
20
],
[
"jump_false",
25,
"add_err_9",
19,
20
],
[
"add",
23,
20,
4,
19,
20
],
[
"jump",
"add_done_7",
19,
20
],
"add_err_9",
[
"disrupt",
19,
20
],
"add_done_7",
[
"return",
23,
19,
20
],
"_nop_ur_3",
"_nop_ur_4"
],
"name": "join_paths",
"filename": "fd.cm",
"nr_args": 2
},
{
"disruption_pc": 0,
"nr_slots": 21,
"nr_close_slots": 0,
"instructions": [
[
"access",
3,
"/",
24,
29
],
[
"get",
5,
4,
1,
24,
14
],
[
"frame",
6,
5,
2,
24,
14
],
[
"null",
7,
24,
14
],
[
"setarg",
6,
0,
7,
24,
14
],
[
"setarg",
6,
1,
1,
24,
14
],
[
"setarg",
6,
2,
3,
24,
14
],
[
"invoke",
6,
4,
24,
14
],
[
"move",
2,
4,
24,
14
],
[
"null",
8,
25,
15
],
[
"is_identical",
9,
2,
8,
25,
15
],
[
"jump_true",
9,
"eq_done_12",
25,
15
],
[
"is_int",
10,
2,
25,
15
],
[
"jump_false",
10,
"eq_ni_13",
25,
15
],
"_nop_tc_1",
[
"jump",
"eq_ni_13",
25,
15
],
[
"eq_int",
9,
2,
8,
25,
15
],
[
"jump",
"eq_done_12",
25,
15
],
"eq_ni_13",
[
"is_num",
10,
2,
25,
15
],
[
"jump_false",
10,
"eq_nn_14",
25,
15
],
"_nop_tc_2",
[
"jump",
"eq_nn_14",
25,
15
],
[
"eq_float",
9,
2,
8,
25,
15
],
[
"jump",
"eq_done_12",
25,
15
],
"eq_nn_14",
[
"is_text",
10,
2,
25,
15
],
[
"jump_false",
10,
"eq_nt_15",
25,
15
],
"_nop_tc_3",
[
"jump",
"eq_nt_15",
25,
15
],
[
"eq_text",
9,
2,
8,
25,
15
],
[
"jump",
"eq_done_12",
25,
15
],
"eq_nt_15",
[
"is_null",
10,
2,
25,
15
],
[
"jump_false",
10,
"eq_nnl_16",
25,
15
],
"_nop_tc_4",
"_nop_tc_5",
[
"true",
9,
25,
15
],
[
"jump",
"eq_done_12",
25,
15
],
"eq_nnl_16",
[
"is_bool",
10,
2,
25,
15
],
[
"jump_false",
10,
"eq_nb_17",
25,
15
],
"_nop_tc_6",
[
"jump",
"eq_nb_17",
25,
15
],
[
"eq_bool",
9,
2,
8,
25,
15
],
[
"jump",
"eq_done_12",
25,
15
],
"eq_nb_17",
[
"false",
9,
25,
15
],
"eq_done_12",
[
"jump_false",
9,
"if_else_10",
25,
15
],
[
"return",
1,
25,
28
],
"_nop_ur_1",
"if_else_10",
"if_end_11",
[
"access",
12,
1,
26,
26
],
[
"is_text",
14,
2,
26,
26
],
[
"jump_false",
14,
"add_cn_19",
26,
26
],
"_nop_tc_7",
[
"jump",
"add_cn_19",
26,
26
],
[
"concat",
13,
2,
12,
26,
26
],
[
"jump",
"add_done_18",
26,
26
],
"add_cn_19",
[
"is_num",
14,
2,
26,
26
],
[
"jump_false",
14,
"add_err_20",
26,
26
],
"_nop_tc_8",
"_nop_tc_9",
[
"add",
13,
2,
12,
26,
26
],
[
"jump",
"add_done_18",
26,
26
],
"add_err_20",
[
"disrupt",
26,
26
],
"add_done_18",
[
"access",
17,
{
"name": "text",
"kind": "name",
"make": "intrinsic"
},
26,
10
],
[
"frame",
18,
17,
2,
26,
10
],
[
"null",
19,
26,
10
],
[
"setarg",
18,
0,
19,
26,
10
],
[
"setarg",
18,
1,
1,
26,
10
],
[
"setarg",
18,
2,
13,
26,
10
],
[
"tail_invoke",
18,
16,
26,
10
],
[
"return",
16,
26,
10
],
"_nop_ur_2",
"_nop_ur_3"
],
"name": "basename",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 19,
"nr_close_slots": 0,
"instructions": [
[
"access",
3,
"/",
30,
29
],
[
"get",
5,
4,
1,
30,
14
],
[
"frame",
6,
5,
2,
30,
14
],
[
"null",
7,
30,
14
],
[
"setarg",
6,
0,
7,
30,
14
],
[
"setarg",
6,
1,
1,
30,
14
],
[
"setarg",
6,
2,
3,
30,
14
],
[
"invoke",
6,
4,
30,
14
],
[
"move",
2,
4,
30,
14
],
[
"null",
8,
31,
15
],
[
"is_identical",
9,
2,
8,
31,
15
],
[
"jump_true",
9,
"eq_done_23",
31,
15
],
[
"is_int",
10,
2,
31,
15
],
[
"jump_false",
10,
"eq_ni_24",
31,
15
],
"_nop_tc_1",
[
"jump",
"eq_ni_24",
31,
15
],
[
"eq_int",
9,
2,
8,
31,
15
],
[
"jump",
"eq_done_23",
31,
15
],
"eq_ni_24",
[
"is_num",
10,
2,
31,
15
],
[
"jump_false",
10,
"eq_nn_25",
31,
15
],
"_nop_tc_2",
[
"jump",
"eq_nn_25",
31,
15
],
[
"eq_float",
9,
2,
8,
31,
15
],
[
"jump",
"eq_done_23",
31,
15
],
"eq_nn_25",
[
"is_text",
10,
2,
31,
15
],
[
"jump_false",
10,
"eq_nt_26",
31,
15
],
"_nop_tc_3",
[
"jump",
"eq_nt_26",
31,
15
],
[
"eq_text",
9,
2,
8,
31,
15
],
[
"jump",
"eq_done_23",
31,
15
],
"eq_nt_26",
[
"is_null",
10,
2,
31,
15
],
[
"jump_false",
10,
"eq_nnl_27",
31,
15
],
"_nop_tc_4",
"_nop_tc_5",
[
"true",
9,
31,
15
],
[
"jump",
"eq_done_23",
31,
15
],
"eq_nnl_27",
[
"is_bool",
10,
2,
31,
15
],
[
"jump_false",
10,
"eq_nb_28",
31,
15
],
"_nop_tc_6",
[
"jump",
"eq_nb_28",
31,
15
],
[
"eq_bool",
9,
2,
8,
31,
15
],
[
"jump",
"eq_done_23",
31,
15
],
"eq_nb_28",
[
"false",
9,
31,
15
],
"eq_done_23",
[
"jump_false",
9,
"if_else_21",
31,
15
],
[
"access",
12,
"",
31,
28
],
[
"return",
12,
31,
28
],
"_nop_ur_1",
"if_else_21",
"if_end_22",
[
"access",
13,
0,
32,
20
],
[
"access",
15,
{
"name": "text",
"kind": "name",
"make": "intrinsic"
},
32,
10
],
[
"frame",
16,
15,
3,
32,
10
],
[
"null",
17,
32,
10
],
[
"setarg",
16,
0,
17,
32,
10
],
[
"setarg",
16,
1,
1,
32,
10
],
[
"setarg",
16,
2,
13,
32,
10
],
[
"setarg",
16,
3,
2,
32,
10
],
[
"tail_invoke",
16,
14,
32,
10
],
[
"return",
14,
32,
10
],
"_nop_ur_2",
"_nop_ur_3"
],
"name": "dirname",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 18,
"nr_close_slots": 0,
"instructions": [
[
"access",
3,
".",
36,
29
],
[
"get",
5,
4,
1,
36,
14
],
[
"frame",
6,
5,
2,
36,
14
],
[
"null",
7,
36,
14
],
[
"setarg",
6,
0,
7,
36,
14
],
[
"setarg",
6,
1,
1,
36,
14
],
[
"setarg",
6,
2,
3,
36,
14
],
[
"invoke",
6,
4,
36,
14
],
[
"move",
2,
4,
36,
14
],
[
"null",
8,
37,
15
],
[
"is_identical",
9,
2,
8,
37,
15
],
[
"jump_true",
9,
"eq_done_31",
37,
15
],
[
"is_int",
10,
2,
37,
15
],
[
"jump_false",
10,
"eq_ni_32",
37,
15
],
"_nop_tc_1",
[
"jump",
"eq_ni_32",
37,
15
],
[
"eq_int",
9,
2,
8,
37,
15
],
[
"jump",
"eq_done_31",
37,
15
],
"eq_ni_32",
[
"is_num",
10,
2,
37,
15
],
[
"jump_false",
10,
"eq_nn_33",
37,
15
],
"_nop_tc_2",
[
"jump",
"eq_nn_33",
37,
15
],
[
"eq_float",
9,
2,
8,
37,
15
],
[
"jump",
"eq_done_31",
37,
15
],
"eq_nn_33",
[
"is_text",
10,
2,
37,
15
],
[
"jump_false",
10,
"eq_nt_34",
37,
15
],
"_nop_tc_3",
[
"jump",
"eq_nt_34",
37,
15
],
[
"eq_text",
9,
2,
8,
37,
15
],
[
"jump",
"eq_done_31",
37,
15
],
"eq_nt_34",
[
"is_null",
10,
2,
37,
15
],
[
"jump_false",
10,
"eq_nnl_35",
37,
15
],
"_nop_tc_4",
"_nop_tc_5",
[
"true",
9,
37,
15
],
[
"jump",
"eq_done_31",
37,
15
],
"eq_nnl_35",
[
"is_bool",
10,
2,
37,
15
],
[
"jump_false",
10,
"eq_nb_36",
37,
15
],
"_nop_tc_6",
[
"jump",
"eq_nb_36",
37,
15
],
[
"eq_bool",
9,
2,
8,
37,
15
],
[
"jump",
"eq_done_31",
37,
15
],
"eq_nb_36",
[
"false",
9,
37,
15
],
"eq_done_31",
[
"jump_false",
9,
"if_else_29",
37,
15
],
[
"return",
1,
37,
28
],
"_nop_ur_1",
"if_else_29",
"if_end_30",
[
"access",
12,
0,
38,
20
],
[
"access",
14,
{
"name": "text",
"kind": "name",
"make": "intrinsic"
},
38,
10
],
[
"frame",
15,
14,
3,
38,
10
],
[
"null",
16,
38,
10
],
[
"setarg",
15,
0,
16,
38,
10
],
[
"setarg",
15,
1,
1,
38,
10
],
[
"setarg",
15,
2,
12,
38,
10
],
[
"setarg",
15,
3,
2,
38,
10
],
[
"tail_invoke",
15,
13,
38,
10
],
[
"return",
13,
38,
10
],
"_nop_ur_2",
"_nop_ur_3"
],
"name": "stem",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 28,
"nr_close_slots": 0,
"instructions": [
[
"access",
2,
"!",
49,
26
],
[
"access",
4,
{
"name": "starts_with",
"kind": "name",
"make": "intrinsic"
},
49,
11
],
[
"frame",
5,
4,
2,
49,
11
],
[
"null",
6,
49,
11
],
[
"setarg",
5,
0,
6,
49,
11
],
[
"setarg",
5,
1,
1,
49,
11
],
[
"setarg",
5,
2,
2,
49,
11
],
[
"invoke",
5,
3,
49,
11
],
[
"move",
7,
3,
49,
11
],
[
"jump_false",
7,
"and_end_47",
49,
11
],
[
"access",
8,
1,
49,
57
],
[
"access",
10,
{
"name": "text",
"kind": "name",
"make": "intrinsic"
},
49,
49
],
[
"frame",
11,
10,
2,
49,
49
],
[
"null",
12,
49,
49
],
[
"setarg",
11,
0,
12,
49,
49
],
[
"setarg",
11,
1,
1,
49,
49
],
[
"setarg",
11,
2,
8,
49,
49
],
[
"invoke",
11,
9,
49,
49
],
[
"get",
13,
1,
1,
49,
61
],
[
"get",
14,
3,
3,
49,
67
],
[
"load_field",
15,
14,
"WM_WILDSTAR",
49,
67
],
[
"get",
17,
3,
3,
49,
34
],
[
"is_proxy",
18,
17,
49,
34
],
[
"jump_false",
18,
"record_path_48",
49,
34
],
[
"null",
19,
49,
34
],
[
"access",
20,
"match",
49,
34
],
[
"array",
21,
0,
49,
34
],
[
"push",
21,
9,
49,
34
],
[
"push",
21,
13,
49,
34
],
[
"push",
21,
15,
49,
34
],
[
"frame",
22,
17,
2,
49,
34
],
[
"setarg",
22,
0,
19,
49,
34
],
[
"setarg",
22,
1,
20,
49,
34
],
[
"setarg",
22,
2,
21,
49,
34
],
[
"invoke",
22,
16,
49,
34
],
[
"jump",
"call_done_49",
49,
34
],
"record_path_48",
[
"load_field",
23,
17,
"match",
49,
34
],
[
"frame",
24,
23,
3,
49,
34
],
[
"setarg",
24,
0,
17,
49,
34
],
[
"setarg",
24,
1,
9,
49,
34
],
[
"setarg",
24,
2,
13,
49,
34
],
[
"setarg",
24,
3,
15,
49,
34
],
[
"invoke",
24,
16,
49,
34
],
"call_done_49",
[
"move",
7,
16,
49,
34
],
"and_end_47",
[
"jump_false",
7,
"if_else_45",
49,
34
],
[
"true",
25,
50,
17
],
[
"put",
25,
2,
1,
50,
17
],
[
"true",
26,
51,
16
],
[
"return",
26,
51,
16
],
"_nop_ur_1",
"if_else_45",
"if_end_46",
[
"null",
27,
51,
16
],
[
"return",
27,
51,
16
]
],
"name": "<anonymous>",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 12,
"nr_close_slots": 0,
"instructions": [
[
"false",
2,
47,
17
],
[
"get",
3,
1,
1,
48,
12
],
[
"function",
4,
6,
48,
19
],
[
"null",
5,
53,
8
],
[
"true",
6,
53,
14
],
[
"access",
8,
{
"name": "arrfor",
"kind": "name",
"make": "intrinsic"
},
48,
5
],
[
"frame",
9,
8,
4,
48,
5
],
[
"null",
10,
48,
5
],
[
"setarg",
9,
0,
10,
48,
5
],
[
"setarg",
9,
1,
3,
48,
5
],
[
"setarg",
9,
2,
4,
48,
5
],
[
"setarg",
9,
3,
5,
48,
5
],
[
"setarg",
9,
4,
6,
48,
5
],
[
"invoke",
9,
7,
48,
5
],
[
"return",
2,
54,
12
],
"_nop_ur_1",
"_nop_ur_2"
],
"name": "check_neg",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 24,
"nr_close_slots": 0,
"instructions": [
[
"access",
2,
"!",
60,
27
],
[
"access",
4,
{
"name": "starts_with",
"kind": "name",
"make": "intrinsic"
},
60,
12
],
[
"frame",
5,
4,
2,
60,
12
],
[
"null",
6,
60,
12
],
[
"setarg",
5,
0,
6,
60,
12
],
[
"setarg",
5,
1,
1,
60,
12
],
[
"setarg",
5,
2,
2,
60,
12
],
[
"invoke",
5,
3,
60,
12
],
[
"not",
7,
3,
60,
12
],
[
"move",
8,
7,
60,
12
],
[
"jump_false",
8,
"and_end_52",
60,
12
],
[
"get",
9,
1,
1,
60,
53
],
[
"get",
10,
3,
3,
60,
59
],
[
"load_field",
11,
10,
"WM_WILDSTAR",
60,
59
],
[
"get",
13,
3,
3,
60,
35
],
[
"is_proxy",
14,
13,
60,
35
],
[
"jump_false",
14,
"record_path_53",
60,
35
],
[
"null",
15,
60,
35
],
[
"access",
16,
"match",
60,
35
],
[
"array",
17,
0,
60,
35
],
[
"push",
17,
1,
60,
35
],
[
"push",
17,
9,
60,
35
],
[
"push",
17,
11,
60,
35
],
[
"frame",
18,
13,
2,
60,
35
],
[
"setarg",
18,
0,
15,
60,
35
],
[
"setarg",
18,
1,
16,
60,
35
],
[
"setarg",
18,
2,
17,
60,
35
],
[
"invoke",
18,
12,
60,
35
],
[
"jump",
"call_done_54",
60,
35
],
"record_path_53",
[
"load_field",
19,
13,
"match",
60,
35
],
[
"frame",
20,
19,
3,
60,
35
],
[
"setarg",
20,
0,
13,
60,
35
],
[
"setarg",
20,
1,
1,
60,
35
],
[
"setarg",
20,
2,
9,
60,
35
],
[
"setarg",
20,
3,
11,
60,
35
],
[
"invoke",
20,
12,
60,
35
],
"call_done_54",
[
"move",
8,
12,
60,
35
],
"and_end_52",
[
"jump_false",
8,
"if_else_50",
60,
35
],
[
"true",
21,
61,
17
],
[
"put",
21,
2,
1,
61,
17
],
[
"true",
22,
62,
16
],
[
"return",
22,
62,
16
],
"_nop_ur_1",
"if_else_50",
"if_end_51",
[
"null",
23,
62,
16
],
[
"return",
23,
62,
16
]
],
"name": "<anonymous>",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 12,
"nr_close_slots": 0,
"instructions": [
[
"false",
2,
58,
17
],
[
"get",
3,
1,
1,
59,
12
],
[
"function",
4,
8,
59,
19
],
[
"null",
5,
64,
8
],
[
"true",
6,
64,
14
],
[
"access",
8,
{
"name": "arrfor",
"kind": "name",
"make": "intrinsic"
},
59,
5
],
[
"frame",
9,
8,
4,
59,
5
],
[
"null",
10,
59,
5
],
[
"setarg",
9,
0,
10,
59,
5
],
[
"setarg",
9,
1,
3,
59,
5
],
[
"setarg",
9,
2,
4,
59,
5
],
[
"setarg",
9,
3,
5,
59,
5
],
[
"setarg",
9,
4,
6,
59,
5
],
[
"invoke",
9,
7,
59,
5
],
[
"return",
2,
65,
12
],
"_nop_ur_1",
"_nop_ur_2"
],
"name": "check_pos",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 52,
"nr_close_slots": 0,
"instructions": [
[
"get",
5,
2,
1,
75,
22
],
[
"jump_false",
5,
"tern_else_62",
75,
22
],
[
"get",
7,
2,
1,
75,
35
],
[
"access",
8,
"/",
75,
48
],
[
"is_text",
10,
7,
75,
48
],
[
"jump_false",
10,
"add_cn_65",
75,
48
],
"_nop_tc_1",
"_nop_tc_2",
[
"concat",
9,
7,
8,
75,
48
],
[
"jump",
"add_done_64",
75,
48
],
"add_cn_65",
[
"is_num",
10,
7,
75,
48
],
[
"jump_false",
10,
"add_err_66",
75,
48
],
"_nop_tc_3",
[
"jump",
"add_err_66",
75,
48
],
[
"add",
9,
7,
8,
75,
48
],
[
"jump",
"add_done_64",
75,
48
],
"add_err_66",
[
"disrupt",
75,
48
],
"add_done_64",
[
"is_text",
13,
9,
75,
54
],
[
"jump_false",
13,
"add_cn_68",
75,
54
],
[
"is_text",
14,
1,
75,
54
],
[
"jump_false",
14,
"add_cn_68",
75,
54
],
[
"concat",
12,
9,
1,
75,
54
],
[
"jump",
"add_done_67",
75,
54
],
"add_cn_68",
[
"is_num",
13,
9,
75,
54
],
[
"jump_false",
13,
"add_err_69",
75,
54
],
[
"is_num",
14,
1,
75,
54
],
[
"jump_false",
14,
"add_err_69",
75,
54
],
[
"add",
12,
9,
1,
75,
54
],
[
"jump",
"add_done_67",
75,
54
],
"add_err_69",
[
"disrupt",
75,
54
],
"add_done_67",
[
"move",
6,
12,
75,
54
],
[
"jump",
"tern_end_63",
75,
54
],
"tern_else_62",
[
"move",
6,
1,
75,
61
],
"tern_end_63",
[
"move",
2,
6,
75,
61
],
[
"get",
15,
1,
1,
77,
35
],
[
"get",
17,
1,
3,
77,
24
],
[
"frame",
18,
17,
2,
77,
24
],
[
"null",
19,
77,
24
],
[
"setarg",
18,
0,
19,
77,
24
],
[
"setarg",
18,
1,
15,
77,
24
],
[
"setarg",
18,
2,
1,
77,
24
],
[
"invoke",
18,
16,
77,
24
],
[
"move",
3,
16,
77,
24
],
[
"get",
21,
2,
3,
78,
16
],
[
"is_proxy",
22,
21,
78,
16
],
[
"jump_false",
22,
"record_path_70",
78,
16
],
[
"null",
23,
78,
16
],
[
"access",
24,
"stat",
78,
16
],
[
"array",
25,
0,
78,
16
],
[
"push",
25,
3,
78,
16
],
[
"frame",
26,
21,
2,
78,
16
],
[
"setarg",
26,
0,
23,
78,
16
],
[
"setarg",
26,
1,
24,
78,
16
],
[
"setarg",
26,
2,
25,
78,
16
],
[
"invoke",
26,
20,
78,
16
],
[
"jump",
"call_done_71",
78,
16
],
"record_path_70",
[
"load_field",
27,
21,
"stat",
78,
16
],
[
"frame",
28,
27,
1,
78,
16
],
[
"setarg",
28,
0,
21,
78,
16
],
[
"setarg",
28,
1,
3,
78,
16
],
[
"invoke",
28,
20,
78,
16
],
"call_done_71",
[
"move",
4,
20,
78,
16
],
[
"load_field",
29,
4,
"isDirectory",
80,
11
],
[
"jump_false",
29,
"if_else_72",
80,
11
],
[
"get",
31,
3,
2,
81,
14
],
[
"frame",
32,
31,
1,
81,
14
],
[
"null",
33,
81,
14
],
[
"setarg",
32,
0,
33,
81,
14
],
[
"setarg",
32,
1,
2,
81,
14
],
[
"invoke",
32,
30,
81,
14
],
"_nop_bl_1",
[
"jump_true",
30,
"if_else_74",
81,
14
],
[
"get",
36,
4,
2,
82,
11
],
[
"frame",
37,
36,
2,
82,
11
],
[
"null",
38,
82,
11
],
[
"setarg",
37,
0,
38,
82,
11
],
[
"setarg",
37,
1,
3,
82,
11
],
[
"setarg",
37,
2,
2,
82,
11
],
[
"invoke",
37,
35,
82,
11
],
[
"jump",
"if_end_75",
82,
11
],
"if_else_74",
"if_end_75",
[
"jump",
"if_end_73",
82,
11
],
"if_else_72",
[
"get",
40,
3,
2,
85,
14
],
[
"frame",
41,
40,
1,
85,
14
],
[
"null",
42,
85,
14
],
[
"setarg",
41,
0,
42,
85,
14
],
[
"setarg",
41,
1,
2,
85,
14
],
[
"invoke",
41,
39,
85,
14
],
[
"not",
43,
39,
85,
14
],
[
"move",
44,
43,
85,
14
],
[
"jump_false",
44,
"and_end_78",
85,
14
],
[
"get",
46,
8,
2,
85,
37
],
[
"frame",
47,
46,
1,
85,
37
],
[
"null",
48,
85,
37
],
[
"setarg",
47,
0,
48,
85,
37
],
[
"setarg",
47,
1,
2,
85,
37
],
[
"invoke",
47,
45,
85,
37
],
[
"move",
44,
45,
85,
37
],
"and_end_78",
[
"jump_false",
44,
"if_else_76",
85,
37
],
[
"get",
49,
7,
2,
86,
16
],
[
"is_array",
50,
49,
86,
25
],
[
"jump_false",
50,
"push_err_79",
86,
25
],
[
"push",
49,
2,
86,
25
],
[
"jump",
"push_done_80",
86,
25
],
"push_err_79",
[
"disrupt",
86,
25
],
"push_done_80",
[
"jump",
"if_end_77",
86,
25
],
"if_else_76",
"if_end_77",
"if_end_73",
[
"null",
51,
86,
25
],
[
"return",
51,
86,
25
]
],
"name": "<anonymous>",
"filename": "fd.cm",
"nr_args": 1
},
{
"disruption_pc": 0,
"nr_slots": 32,
"nr_close_slots": 0,
"instructions": [
[
"move",
4,
2,
69,
9
],
[
"jump_false",
4,
"and_end_57",
69,
9
],
[
"get",
6,
3,
1,
69,
23
],
[
"frame",
7,
6,
1,
69,
23
],
[
"null",
8,
69,
23
],
[
"setarg",
7,
0,
8,
69,
23
],
[
"setarg",
7,
1,
2,
69,
23
],
[
"invoke",
7,
5,
69,
23
],
[
"move",
4,
5,
69,
23
],
"and_end_57",
[
"jump_false",
4,
"if_else_55",
69,
23
],
[
"null",
9,
69,
46
],
[
"return",
9,
69,
46
],
"_nop_ur_1",
"if_else_55",
"if_end_56",
[
"get",
11,
2,
2,
71,
16
],
[
"is_proxy",
12,
11,
71,
16
],
[
"jump_false",
12,
"record_path_58",
71,
16
],
[
"null",
13,
71,
16
],
[
"access",
14,
"readdir",
71,
16
],
[
"array",
15,
0,
71,
16
],
[
"push",
15,
1,
71,
16
],
[
"frame",
16,
11,
2,
71,
16
],
[
"setarg",
16,
0,
13,
71,
16
],
[
"setarg",
16,
1,
14,
71,
16
],
[
"setarg",
16,
2,
15,
71,
16
],
[
"invoke",
16,
10,
71,
16
],
[
"jump",
"call_done_59",
71,
16
],
"record_path_58",
[
"load_field",
17,
11,
"readdir",
71,
16
],
[
"frame",
18,
17,
1,
71,
16
],
[
"setarg",
18,
0,
11,
71,
16
],
[
"setarg",
18,
1,
1,
71,
16
],
[
"invoke",
18,
10,
71,
16
],
"call_done_59",
[
"move",
3,
10,
71,
16
],
"_nop_bl_1",
[
"jump_true",
3,
"if_else_60",
72,
10
],
[
"null",
20,
72,
16
],
[
"return",
20,
72,
16
],
"_nop_ur_2",
"if_else_60",
"if_end_61",
[
"function",
21,
10,
74,
18
],
[
"length",
23,
3,
74,
18
],
[
"int",
24,
0,
74,
18
],
[
"int",
28,
1,
74,
18
],
[
"null",
27,
74,
18
],
"arrfor_loop_81",
[
"lt_int",
25,
24,
23,
74,
18
],
[
"jump_false",
25,
"arrfor_done_82",
74,
18
],
[
"load_index",
26,
3,
24,
74,
18
],
[
"frame",
29,
21,
2,
74,
18
],
[
"setarg",
29,
0,
27,
74,
18
],
[
"setarg",
29,
1,
26,
74,
18
],
[
"setarg",
29,
2,
24,
74,
18
],
[
"invoke",
29,
30,
74,
18
],
[
"add",
24,
24,
28,
74,
18
],
[
"jump",
"arrfor_loop_81",
74,
18
],
"arrfor_done_82",
[
"null",
22,
74,
18
],
[
"null",
31,
74,
18
],
[
"return",
31,
74,
18
]
],
"name": "visit",
"filename": "fd.cm",
"nr_args": 2
},
{
"disruption_pc": 0,
"nr_slots": 34,
"nr_close_slots": 0,
"instructions": [
[
"move",
5,
2,
42,
14
],
[
"null",
9,
43,
15
],
[
"is_identical",
10,
5,
9,
43,
15
],
[
"jump_true",
10,
"eq_done_39",
43,
15
],
[
"is_int",
11,
5,
43,
15
],
[
"jump_false",
11,
"eq_ni_40",
43,
15
],
"_nop_tc_1",
[
"jump",
"eq_ni_40",
43,
15
],
[
"eq_int",
10,
5,
9,
43,
15
],
[
"jump",
"eq_done_39",
43,
15
],
"eq_ni_40",
[
"is_num",
11,
5,
43,
15
],
[
"jump_false",
11,
"eq_nn_41",
43,
15
],
"_nop_tc_2",
[
"jump",
"eq_nn_41",
43,
15
],
[
"eq_float",
10,
5,
9,
43,
15
],
[
"jump",
"eq_done_39",
43,
15
],
"eq_nn_41",
[
"is_text",
11,
5,
43,
15
],
[
"jump_false",
11,
"eq_nt_42",
43,
15
],
"_nop_tc_3",
[
"jump",
"eq_nt_42",
43,
15
],
[
"eq_text",
10,
5,
9,
43,
15
],
[
"jump",
"eq_done_39",
43,
15
],
"eq_nt_42",
[
"is_null",
11,
5,
43,
15
],
[
"jump_false",
11,
"eq_nnl_43",
43,
15
],
"_nop_tc_4",
"_nop_tc_5",
[
"true",
10,
43,
15
],
[
"jump",
"eq_done_39",
43,
15
],
"eq_nnl_43",
[
"is_bool",
11,
5,
43,
15
],
[
"jump_false",
11,
"eq_nb_44",
43,
15
],
"_nop_tc_6",
[
"jump",
"eq_nb_44",
43,
15
],
[
"eq_bool",
10,
5,
9,
43,
15
],
[
"jump",
"eq_done_39",
43,
15
],
"eq_nb_44",
[
"false",
10,
43,
15
],
"eq_done_39",
[
"jump_false",
10,
"if_else_37",
43,
15
],
[
"access",
13,
".",
43,
28
],
[
"move",
5,
13,
43,
28
],
[
"jump",
"if_end_38",
43,
28
],
"if_else_37",
"if_end_38",
[
"array",
14,
0,
44,
17
],
[
"move",
7,
14,
44,
17
],
[
"function",
15,
7,
46,
3
],
[
"move",
3,
15,
46,
3
],
[
"function",
16,
9,
57,
3
],
[
"move",
8,
16,
57,
3
],
[
"function",
17,
11,
68,
3
],
[
"move",
4,
17,
68,
3
],
[
"get",
19,
2,
1,
92,
12
],
[
"is_proxy",
20,
19,
92,
12
],
[
"jump_false",
20,
"record_path_83",
92,
12
],
[
"null",
21,
92,
12
],
[
"access",
22,
"stat",
92,
12
],
[
"array",
23,
0,
92,
12
],
[
"push",
23,
5,
92,
12
],
[
"frame",
24,
19,
2,
92,
12
],
[
"setarg",
24,
0,
21,
92,
12
],
[
"setarg",
24,
1,
22,
92,
12
],
[
"setarg",
24,
2,
23,
92,
12
],
[
"invoke",
24,
18,
92,
12
],
[
"jump",
"call_done_84",
92,
12
],
"record_path_83",
[
"load_field",
25,
19,
"stat",
92,
12
],
[
"frame",
26,
25,
1,
92,
12
],
[
"setarg",
26,
0,
19,
92,
12
],
[
"setarg",
26,
1,
5,
92,
12
],
[
"invoke",
26,
18,
92,
12
],
"call_done_84",
[
"move",
6,
18,
92,
12
],
[
"move",
27,
6,
93,
7
],
[
"jump_false",
27,
"and_end_87",
93,
7
],
[
"load_field",
28,
6,
"isDirectory",
93,
13
],
[
"move",
27,
28,
93,
13
],
"and_end_87",
[
"jump_false",
27,
"if_else_85",
93,
13
],
[
"access",
29,
"",
94,
17
],
[
"frame",
31,
4,
2,
94,
5
],
[
"null",
32,
94,
5
],
[
"setarg",
31,
0,
32,
94,
5
],
[
"setarg",
31,
1,
5,
94,
5
],
[
"setarg",
31,
2,
29,
94,
5
],
[
"invoke",
31,
30,
94,
5
],
[
"jump",
"if_end_86",
94,
5
],
"if_else_85",
"if_end_86",
[
"return",
7,
97,
10
],
"_nop_ur_1",
"_nop_ur_2"
],
"name": "<anonymous>",
"filename": "fd.cm",
"nr_args": 2
}
],
"main": {
"nr_slots": 22,
"nr_close_slots": 0,
"instructions": [
[
"function",
5,
1,
0,
0
],
[
"move",
4,
5,
0,
0
],
[
"function",
6,
2,
0,
0
],
[
"move",
1,
6,
0,
0
],
[
"access",
7,
"internal/fd",
1,
14
],
[
"access",
9,
{
"name": "use",
"kind": "name",
"make": "intrinsic"
},
1,
10
],
[
"frame",
10,
9,
1,
1,
10
],
[
"null",
11,
1,
10
],
[
"setarg",
10,
0,
11,
1,
10
],
[
"setarg",
10,
1,
7,
1,
10
],
[
"invoke",
10,
8,
1,
10
],
[
"move",
2,
8,
1,
10
],
[
"access",
12,
"wildstar",
2,
20
],
[
"access",
14,
{
"name": "use",
"kind": "name",
"make": "intrinsic"
},
2,
16
],
[
"frame",
15,
14,
1,
2,
16
],
[
"null",
16,
2,
16
],
[
"setarg",
15,
0,
16,
2,
16
],
[
"setarg",
15,
1,
12,
2,
16
],
[
"invoke",
15,
13,
2,
16
],
[
"move",
3,
13,
2,
16
],
[
"store_field",
2,
1,
"join_paths",
22,
1
],
[
"function",
17,
3,
23,
15
],
[
"store_field",
2,
17,
"basename",
23,
1
],
[
"function",
18,
4,
29,
14
],
[
"store_field",
2,
18,
"dirname",
29,
1
],
[
"function",
19,
5,
35,
11
],
[
"store_field",
2,
19,
"stem",
35,
1
],
[
"function",
20,
12,
41,
13
],
[
"store_field",
2,
20,
"globfs",
41,
1
],
[
"return",
2,
100,
8
],
"_nop_ur_1",
"_nop_ur_2"
],
"nr_args": 0
},
"filename": "fd.cm",
"data": {}
}