1344 lines
39 KiB
Plaintext
1344 lines
39 KiB
Plaintext
{
|
|
"name": "boot/seed_bootstrap.cm",
|
|
"functions": [
|
|
{
|
|
"disruption_pc": 0,
|
|
"nr_slots": 24,
|
|
"nr_close_slots": 0,
|
|
"instructions": [
|
|
["get", 3, 1, 1, 16, 7],
|
|
["load_dynamic", 4, 3, 1, 16, 17],
|
|
["jump_false", 4, "if_else_0", 16, 17],
|
|
["get", 5, 1, 1, 17, 12],
|
|
["load_dynamic", 6, 5, 1, 17, 22],
|
|
["return", 6, 17, 22],
|
|
"_nop_ur_1",
|
|
"if_else_0",
|
|
"if_end_1",
|
|
["access", 7, "js_core_", 18, 30],
|
|
["access", 8, "/", 18, 57],
|
|
["access", 9, "_", 18, 62],
|
|
[
|
|
"access",
|
|
11,
|
|
{
|
|
"name": "replace",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
18,
|
|
43
|
|
],
|
|
["frame", 12, 11, 3, 18, 43],
|
|
["null", 13, 18, 43],
|
|
["setarg", 12, 0, 13, 18, 43],
|
|
["setarg", 12, 1, 1, 18, 43],
|
|
["setarg", 12, 2, 8, 18, 43],
|
|
["setarg", 12, 3, 9, 18, 43],
|
|
["invoke", 12, 10, 18, 43],
|
|
["add", 14, 7, 10, 18, 43],
|
|
["access", 15, "_use", 18, 69],
|
|
["add", 16, 14, 15, 18, 69],
|
|
["get", 18, 9, 1, 18, 16],
|
|
["frame", 19, 18, 1, 18, 16],
|
|
["null", 20, 18, 16],
|
|
["setarg", 19, 0, 20, 18, 16],
|
|
["setarg", 19, 1, 16, 18, 16],
|
|
["invoke", 19, 17, 18, 16],
|
|
["move", 2, 17, 18, 16],
|
|
["jump_false", 2, "if_else_2", 19, 7],
|
|
["get", 21, 1, 1, 20, 5],
|
|
["store_dynamic", 21, 2, 1, 20, 15],
|
|
["return", 2, 21, 12],
|
|
"_nop_ur_2",
|
|
"if_else_2",
|
|
"if_end_3",
|
|
["null", 22, 23, 10],
|
|
["return", 22, 23, 10],
|
|
"_nop_ur_3",
|
|
"_nop_ur_4"
|
|
],
|
|
"name": "use_basic",
|
|
"filename": "boot/seed_bootstrap.cm",
|
|
"nr_args": 1
|
|
},
|
|
{
|
|
"disruption_pc": 0,
|
|
"nr_slots": 48,
|
|
"nr_close_slots": 0,
|
|
"instructions": [
|
|
[
|
|
"access",
|
|
4,
|
|
{
|
|
"name": "core_path",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
28,
|
|
20
|
|
],
|
|
["access", 5, "/boot/", 28, 32],
|
|
["add", 6, 4, 5, 28, 32],
|
|
["add", 7, 6, 1, 28, 43],
|
|
["access", 8, ".cm.mcode", 28, 50],
|
|
["add", 9, 7, 8, 28, 50],
|
|
["move", 2, 9, 28, 50],
|
|
["null", 3, 29, 20],
|
|
["get", 11, 3, 1, 30, 8],
|
|
["is_proxy", 12, 11, 30, 8],
|
|
["jump_false", 12, "record_path_6", 30, 8],
|
|
["null", 13, 30, 8],
|
|
["access", 14, "is_file", 30, 8],
|
|
["array", 15, 0, 30, 8],
|
|
["push", 15, 2, 30, 8],
|
|
["frame", 16, 11, 2, 30, 8],
|
|
["setarg", 16, 0, 13, 30, 8],
|
|
["setarg", 16, 1, 14, 30, 8],
|
|
["setarg", 16, 2, 15, 30, 8],
|
|
["invoke", 16, 10, 30, 8],
|
|
["jump", "call_done_7", 30, 8],
|
|
"record_path_6",
|
|
["load_field", 17, 11, "is_file", 30, 8],
|
|
["frame", 18, 17, 1, 30, 8],
|
|
["setarg", 18, 0, 11, 30, 8],
|
|
["setarg", 18, 1, 2, 30, 8],
|
|
["invoke", 18, 10, 30, 8],
|
|
"call_done_7",
|
|
"_nop_bl_1",
|
|
["jump_true", 10, "if_else_4", 30, 8],
|
|
["access", 20, "seed: missing boot mcode: ", 31, 11],
|
|
["add", 21, 20, 2, 31, 42],
|
|
["access", 22, "\n", 31, 55],
|
|
["add", 23, 21, 22, 31, 55],
|
|
[
|
|
"access",
|
|
25,
|
|
{
|
|
"name": "print",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
31,
|
|
5
|
|
],
|
|
["frame", 26, 25, 1, 31, 5],
|
|
["null", 27, 31, 5],
|
|
["setarg", 26, 0, 27, 31, 5],
|
|
["setarg", 26, 1, 23, 31, 5],
|
|
["invoke", 26, 24, 31, 5],
|
|
["disrupt", 32, 5],
|
|
["jump", "if_end_5", 32, 5],
|
|
"if_else_4",
|
|
"if_end_5",
|
|
["get", 29, 3, 1, 34, 21],
|
|
["is_proxy", 30, 29, 34, 21],
|
|
["jump_false", 30, "record_path_8", 34, 21],
|
|
["null", 31, 34, 21],
|
|
["access", 32, "slurp", 34, 21],
|
|
["array", 33, 0, 34, 21],
|
|
["push", 33, 2, 34, 21],
|
|
["frame", 34, 29, 2, 34, 21],
|
|
["setarg", 34, 0, 31, 34, 21],
|
|
["setarg", 34, 1, 32, 34, 21],
|
|
["setarg", 34, 2, 33, 34, 21],
|
|
["invoke", 34, 28, 34, 21],
|
|
["jump", "call_done_9", 34, 21],
|
|
"record_path_8",
|
|
["load_field", 35, 29, "slurp", 34, 21],
|
|
["frame", 36, 35, 1, 34, 21],
|
|
["setarg", 36, 0, 29, 34, 21],
|
|
["setarg", 36, 1, 2, 34, 21],
|
|
["invoke", 36, 28, 34, 21],
|
|
"call_done_9",
|
|
[
|
|
"access",
|
|
38,
|
|
{
|
|
"name": "text",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
34,
|
|
16
|
|
],
|
|
["frame", 39, 38, 1, 34, 16],
|
|
["null", 40, 34, 16],
|
|
["setarg", 39, 0, 40, 34, 16],
|
|
["setarg", 39, 1, 28, 34, 16],
|
|
["invoke", 39, 37, 34, 16],
|
|
["move", 3, 37, 34, 16],
|
|
["record", 41, 0],
|
|
["get", 42, 19, 1, 35, 50],
|
|
["store_field", 41, 42, "use", 35, 50],
|
|
[
|
|
"access",
|
|
44,
|
|
{
|
|
"name": "mach_eval_mcode",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
35,
|
|
10
|
|
],
|
|
["frame", 45, 44, 3, 35, 10],
|
|
["null", 46, 35, 10],
|
|
["setarg", 45, 0, 46, 35, 10],
|
|
["setarg", 45, 1, 1, 35, 10],
|
|
["setarg", 45, 2, 3, 35, 10],
|
|
["setarg", 45, 3, 41, 35, 10],
|
|
["tail_invoke", 45, 43, 35, 10],
|
|
["return", 43, 35, 10],
|
|
"_nop_ur_1",
|
|
"_nop_ur_2"
|
|
],
|
|
"name": "boot_load",
|
|
"filename": "boot/seed_bootstrap.cm",
|
|
"nr_args": 1
|
|
},
|
|
{
|
|
"disruption_pc": 0,
|
|
"nr_slots": 81,
|
|
"nr_close_slots": 0,
|
|
"instructions": [
|
|
["get", 9, 6, 1, 51, 20],
|
|
["frame", 10, 9, 2, 51, 20],
|
|
["null", 11, 51, 20],
|
|
["setarg", 10, 0, 11, 51, 20],
|
|
["setarg", 10, 1, 1, 51, 20],
|
|
["setarg", 10, 2, 2, 51, 20],
|
|
["invoke", 10, 8, 51, 20],
|
|
["move", 3, 8, 51, 20],
|
|
["load_field", 12, 3, "tokens", 52, 23],
|
|
["get", 13, 6, 1, 52, 57],
|
|
["get", 15, 4, 1, 52, 13],
|
|
["frame", 16, 15, 4, 52, 13],
|
|
["null", 17, 52, 13],
|
|
["setarg", 16, 0, 17, 52, 13],
|
|
["setarg", 16, 1, 12, 52, 13],
|
|
["setarg", 16, 2, 1, 52, 13],
|
|
["setarg", 16, 3, 2, 52, 13],
|
|
["setarg", 16, 4, 13, 52, 13],
|
|
["invoke", 16, 14, 52, 13],
|
|
["move", 5, 14, 52, 13],
|
|
["access", 7, 0, 53, 12],
|
|
["null", 6, 54, 11],
|
|
["load_field", 18, 5, "errors", 55, 20],
|
|
["null", 19, 55, 34],
|
|
["is_identical", 20, 18, 19, 55, 34],
|
|
["jump_true", 20, "ne_nid_12", 55, 34],
|
|
["jump", "ne_ni_13", 55, 34],
|
|
"ne_nid_12",
|
|
["false", 20, 55, 34],
|
|
["jump", "ne_done_11", 55, 34],
|
|
"ne_ni_13",
|
|
["is_int", 21, 18, 55, 34],
|
|
["jump_false", 21, "ne_nn_14", 55, 34],
|
|
"_nop_tc_1",
|
|
["jump", "ne_nn_14", 55, 34],
|
|
["ne_int", 20, 18, 19, 55, 34],
|
|
["jump", "ne_done_11", 55, 34],
|
|
"ne_nn_14",
|
|
["is_num", 21, 18, 55, 34],
|
|
["jump_false", 21, "ne_nt_15", 55, 34],
|
|
"_nop_tc_2",
|
|
["jump", "ne_nt_15", 55, 34],
|
|
["ne_float", 20, 18, 19, 55, 34],
|
|
["jump", "ne_done_11", 55, 34],
|
|
"ne_nt_15",
|
|
["is_text", 21, 18, 55, 34],
|
|
["jump_false", 21, "ne_nnl_16", 55, 34],
|
|
"_nop_tc_3",
|
|
["jump", "ne_nnl_16", 55, 34],
|
|
["ne_text", 20, 18, 19, 55, 34],
|
|
["jump", "ne_done_11", 55, 34],
|
|
"ne_nnl_16",
|
|
["is_null", 21, 18, 55, 34],
|
|
["jump_false", 21, "ne_nb_17", 55, 34],
|
|
"_nop_tc_4",
|
|
"_nop_tc_5",
|
|
["false", 20, 55, 34],
|
|
["jump", "ne_done_11", 55, 34],
|
|
"ne_nb_17",
|
|
["is_bool", 21, 18, 55, 34],
|
|
["jump_false", 21, "ne_mis_18", 55, 34],
|
|
"_nop_tc_6",
|
|
["jump", "ne_mis_18", 55, 34],
|
|
["ne_bool", 20, 18, 19, 55, 34],
|
|
["jump", "ne_done_11", 55, 34],
|
|
"ne_mis_18",
|
|
["true", 20, 55, 34],
|
|
"ne_done_11",
|
|
["move", 23, 20, 55, 34],
|
|
["jump_false", 23, "and_end_10", 55, 34],
|
|
["load_field", 24, 5, "errors", 55, 49],
|
|
["length", 25, 24, 55, 49],
|
|
["access", 26, 0, 55, 63],
|
|
"_nop_tc_7",
|
|
"_nop_tc_8",
|
|
"_nop_tc_9",
|
|
["jump", "rel_ni_19", 55, 63],
|
|
["gt_int", 27, 25, 26, 55, 63],
|
|
["jump", "rel_done_21", 55, 63],
|
|
"rel_ni_19",
|
|
"_nop_tc_10",
|
|
"_nop_tc_11",
|
|
"_nop_tc_12",
|
|
"_nop_tc_13",
|
|
["gt_float", 27, 25, 26, 55, 63],
|
|
["jump", "rel_done_21", 55, 63],
|
|
"rel_nn_20",
|
|
"_nop_tc_14",
|
|
["jump", "rel_err_22", 55, 63],
|
|
"_nop_tc_15",
|
|
["jump", "rel_err_22", 55, 63],
|
|
["gt_text", 27, 25, 26, 55, 63],
|
|
["jump", "rel_done_21", 55, 63],
|
|
"rel_err_22",
|
|
["disrupt", 55, 63],
|
|
"rel_done_21",
|
|
["move", 23, 27, 55, 63],
|
|
"and_end_10",
|
|
["move", 4, 23, 55, 63],
|
|
["jump_false", 4, "if_else_23", 56, 7],
|
|
"while_start_25",
|
|
["load_field", 30, 5, "errors", 57, 24],
|
|
["length", 31, 30, 57, 24],
|
|
["is_int", 33, 7, 57, 24],
|
|
["jump_false", 33, "rel_ni_27", 57, 24],
|
|
"_nop_tc_16",
|
|
"_nop_tc_17",
|
|
["lt_int", 32, 7, 31, 57, 24],
|
|
["jump", "rel_done_29", 57, 24],
|
|
"rel_ni_27",
|
|
["is_num", 33, 7, 57, 24],
|
|
["jump_false", 33, "rel_nn_28", 57, 24],
|
|
"_nop_tc_18",
|
|
"_nop_tc_19",
|
|
["lt_float", 32, 7, 31, 57, 24],
|
|
["jump", "rel_done_29", 57, 24],
|
|
"rel_nn_28",
|
|
["is_text", 33, 7, 57, 24],
|
|
["jump_false", 33, "rel_err_30", 57, 24],
|
|
"_nop_tc_20",
|
|
["jump", "rel_err_30", 57, 24],
|
|
["lt_text", 32, 7, 31, 57, 24],
|
|
["jump", "rel_done_29", 57, 24],
|
|
"rel_err_30",
|
|
["disrupt", 57, 24],
|
|
"rel_done_29",
|
|
["jump_false", 32, "while_end_26", 57, 24],
|
|
["load_field", 35, 5, "errors", 58, 11],
|
|
["load_dynamic", 36, 35, 7, 58, 22],
|
|
["move", 6, 36, 58, 22],
|
|
["load_field", 37, 6, "line", 59, 11],
|
|
["null", 38, 59, 21],
|
|
["is_identical", 39, 37, 38, 59, 21],
|
|
["jump_true", 39, "ne_nid_34", 59, 21],
|
|
["jump", "ne_ni_35", 59, 21],
|
|
"ne_nid_34",
|
|
["false", 39, 59, 21],
|
|
["jump", "ne_done_33", 59, 21],
|
|
"ne_ni_35",
|
|
["is_int", 40, 37, 59, 21],
|
|
["jump_false", 40, "ne_nn_36", 59, 21],
|
|
"_nop_tc_21",
|
|
["jump", "ne_nn_36", 59, 21],
|
|
["ne_int", 39, 37, 38, 59, 21],
|
|
["jump", "ne_done_33", 59, 21],
|
|
"ne_nn_36",
|
|
["is_num", 40, 37, 59, 21],
|
|
["jump_false", 40, "ne_nt_37", 59, 21],
|
|
"_nop_tc_22",
|
|
["jump", "ne_nt_37", 59, 21],
|
|
["ne_float", 39, 37, 38, 59, 21],
|
|
["jump", "ne_done_33", 59, 21],
|
|
"ne_nt_37",
|
|
["is_text", 40, 37, 59, 21],
|
|
["jump_false", 40, "ne_nnl_38", 59, 21],
|
|
"_nop_tc_23",
|
|
["jump", "ne_nnl_38", 59, 21],
|
|
["ne_text", 39, 37, 38, 59, 21],
|
|
["jump", "ne_done_33", 59, 21],
|
|
"ne_nnl_38",
|
|
["is_null", 40, 37, 59, 21],
|
|
["jump_false", 40, "ne_nb_39", 59, 21],
|
|
"_nop_tc_24",
|
|
"_nop_tc_25",
|
|
["false", 39, 59, 21],
|
|
["jump", "ne_done_33", 59, 21],
|
|
"ne_nb_39",
|
|
["is_bool", 40, 37, 59, 21],
|
|
["jump_false", 40, "ne_mis_40", 59, 21],
|
|
"_nop_tc_26",
|
|
["jump", "ne_mis_40", 59, 21],
|
|
["ne_bool", 39, 37, 38, 59, 21],
|
|
["jump", "ne_done_33", 59, 21],
|
|
"ne_mis_40",
|
|
["true", 39, 59, 21],
|
|
"ne_done_33",
|
|
["jump_false", 39, "if_else_31", 59, 21],
|
|
["load_field", 42, 6, "line", 1, 6],
|
|
[
|
|
"access",
|
|
44,
|
|
{
|
|
"name": "text",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
1,
|
|
1
|
|
],
|
|
["frame", 45, 44, 1, 1, 1],
|
|
["null", 46, 1, 1],
|
|
["setarg", 45, 0, 46, 1, 1],
|
|
["setarg", 45, 1, 42, 1, 1],
|
|
["invoke", 45, 43, 1, 1],
|
|
["load_field", 47, 6, "column", 1, 6],
|
|
[
|
|
"access",
|
|
49,
|
|
{
|
|
"name": "text",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
1,
|
|
1
|
|
],
|
|
["frame", 50, 49, 1, 1, 1],
|
|
["null", 51, 1, 1],
|
|
["setarg", 50, 0, 51, 1, 1],
|
|
["setarg", 50, 1, 47, 1, 1],
|
|
["invoke", 50, 48, 1, 1],
|
|
["load_field", 52, 6, "message", 1, 1],
|
|
["array", 53, 0, 1, 1],
|
|
["push", 53, 2, 1, 1],
|
|
["push", 53, 43, 1, 1],
|
|
["push", 53, 48, 1, 1],
|
|
["push", 53, 52, 1, 1],
|
|
[
|
|
"access",
|
|
54,
|
|
{
|
|
"name": "format",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
1,
|
|
1
|
|
],
|
|
["access", 55, "{0}:{1}:{2}: error: {3}", 1, 1],
|
|
["frame", 57, 54, 2, 1, 1],
|
|
["null", 58, 1, 1],
|
|
["setarg", 57, 0, 58, 1, 1],
|
|
["setarg", 57, 1, 55, 1, 1],
|
|
["setarg", 57, 2, 53, 1, 1],
|
|
["invoke", 57, 56, 1, 1],
|
|
[
|
|
"access",
|
|
60,
|
|
{
|
|
"name": "print",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
60,
|
|
9
|
|
],
|
|
["frame", 61, 60, 1, 60, 9],
|
|
["null", 62, 60, 9],
|
|
["setarg", 61, 0, 62, 60, 9],
|
|
["setarg", 61, 1, 56, 60, 9],
|
|
["invoke", 61, 59, 60, 9],
|
|
["jump", "if_end_32", 60, 9],
|
|
"if_else_31",
|
|
["load_field", 63, 6, "message", 1, 1],
|
|
["array", 64, 0, 1, 1],
|
|
["push", 64, 2, 1, 1],
|
|
["push", 64, 63, 1, 1],
|
|
[
|
|
"access",
|
|
65,
|
|
{
|
|
"name": "format",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
1,
|
|
1
|
|
],
|
|
["access", 66, "{0}: error: {1}", 1, 1],
|
|
["frame", 68, 65, 2, 1, 1],
|
|
["null", 69, 1, 1],
|
|
["setarg", 68, 0, 69, 1, 1],
|
|
["setarg", 68, 1, 66, 1, 1],
|
|
["setarg", 68, 2, 64, 1, 1],
|
|
["invoke", 68, 67, 1, 1],
|
|
[
|
|
"access",
|
|
71,
|
|
{
|
|
"name": "print",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
62,
|
|
9
|
|
],
|
|
["frame", 72, 71, 1, 62, 9],
|
|
["null", 73, 62, 9],
|
|
["setarg", 72, 0, 73, 62, 9],
|
|
["setarg", 72, 1, 67, 62, 9],
|
|
["invoke", 72, 70, 62, 9],
|
|
"if_end_32",
|
|
["access", 74, 1, 64, 17],
|
|
["add", 75, 7, 74, 64, 17],
|
|
["move", 7, 75, 64, 17],
|
|
["jump", "while_start_25", 64, 17],
|
|
"while_end_26",
|
|
["disrupt", 66, 5],
|
|
["jump", "if_end_24", 66, 5],
|
|
"if_else_23",
|
|
"if_end_24",
|
|
["get", 77, 2, 1, 68, 10],
|
|
["frame", 78, 77, 1, 68, 10],
|
|
["null", 79, 68, 10],
|
|
["setarg", 78, 0, 79, 68, 10],
|
|
["setarg", 78, 1, 5, 68, 10],
|
|
["tail_invoke", 78, 76, 68, 10],
|
|
["return", 76, 68, 10],
|
|
"_nop_ur_1",
|
|
"_nop_ur_2"
|
|
],
|
|
"name": "analyze",
|
|
"filename": "boot/seed_bootstrap.cm",
|
|
"nr_args": 2
|
|
},
|
|
{
|
|
"disruption_pc": 0,
|
|
"nr_slots": 29,
|
|
"nr_close_slots": 0,
|
|
"instructions": [
|
|
["get", 8, 7, 1, 72, 18],
|
|
["frame", 9, 8, 1, 72, 18],
|
|
["null", 10, 72, 18],
|
|
["setarg", 9, 0, 10, 72, 18],
|
|
["setarg", 9, 1, 2, 72, 18],
|
|
["invoke", 9, 7, 72, 18],
|
|
["move", 4, 7, 72, 18],
|
|
["get", 12, 17, 1, 73, 19],
|
|
["frame", 13, 12, 1, 73, 19],
|
|
["null", 14, 73, 19],
|
|
["setarg", 13, 0, 14, 73, 19],
|
|
["setarg", 13, 1, 4, 73, 19],
|
|
["invoke", 13, 11, 73, 19],
|
|
["move", 6, 11, 73, 19],
|
|
[
|
|
"access",
|
|
16,
|
|
{
|
|
"name": "json",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
74,
|
|
20
|
|
],
|
|
["is_proxy", 17, 16, 74, 20],
|
|
["jump_false", 17, "record_path_41", 74, 20],
|
|
["null", 18, 74, 20],
|
|
["access", 19, "encode", 74, 20],
|
|
["array", 20, 0, 74, 20],
|
|
["push", 20, 6, 74, 20],
|
|
["frame", 21, 16, 2, 74, 20],
|
|
["setarg", 21, 0, 18, 74, 20],
|
|
["setarg", 21, 1, 19, 74, 20],
|
|
["setarg", 21, 2, 20, 74, 20],
|
|
["invoke", 21, 15, 74, 20],
|
|
["jump", "call_done_42", 74, 20],
|
|
"record_path_41",
|
|
["load_field", 22, 16, "encode", 74, 20],
|
|
["frame", 23, 22, 1, 74, 20],
|
|
["setarg", 23, 0, 16, 74, 20],
|
|
["setarg", 23, 1, 6, 74, 20],
|
|
["invoke", 23, 15, 74, 20],
|
|
"call_done_42",
|
|
["move", 5, 15, 74, 20],
|
|
[
|
|
"access",
|
|
25,
|
|
{
|
|
"name": "mach_eval_mcode",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
75,
|
|
10
|
|
],
|
|
["frame", 26, 25, 3, 75, 10],
|
|
["null", 27, 75, 10],
|
|
["setarg", 26, 0, 27, 75, 10],
|
|
["setarg", 26, 1, 1, 75, 10],
|
|
["setarg", 26, 2, 5, 75, 10],
|
|
["setarg", 26, 3, 3, 75, 10],
|
|
["tail_invoke", 26, 24, 75, 10],
|
|
["return", 24, 75, 10],
|
|
"_nop_ur_1",
|
|
"_nop_ur_2"
|
|
],
|
|
"name": "run_ast",
|
|
"filename": "boot/seed_bootstrap.cm",
|
|
"nr_args": 3
|
|
},
|
|
{
|
|
"disruption_pc": 0,
|
|
"nr_slots": 122,
|
|
"nr_close_slots": 0,
|
|
"instructions": [
|
|
["null", 3, 79, 16],
|
|
["null", 2, 80, 19],
|
|
["null", 4, 81, 16],
|
|
["null", 5, 82, 13],
|
|
["null", 7, 83, 20],
|
|
["null", 6, 84, 20],
|
|
["get", 8, 1, 1, 85, 7],
|
|
["load_dynamic", 9, 8, 1, 85, 17],
|
|
["jump_false", 9, "if_else_43", 85, 17],
|
|
["get", 10, 1, 1, 86, 12],
|
|
["load_dynamic", 11, 10, 1, 86, 22],
|
|
["return", 11, 86, 22],
|
|
"_nop_ur_1",
|
|
"if_else_43",
|
|
"if_end_44",
|
|
["access", 12, "js_core_", 89, 26],
|
|
["access", 13, "/", 89, 53],
|
|
["access", 14, "_", 89, 58],
|
|
[
|
|
"access",
|
|
16,
|
|
{
|
|
"name": "replace",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
89,
|
|
39
|
|
],
|
|
["frame", 17, 16, 3, 89, 39],
|
|
["null", 18, 89, 39],
|
|
["setarg", 17, 0, 18, 89, 39],
|
|
["setarg", 17, 1, 1, 89, 39],
|
|
["setarg", 17, 2, 13, 89, 39],
|
|
["setarg", 17, 3, 14, 89, 39],
|
|
["invoke", 17, 15, 89, 39],
|
|
["add", 19, 12, 15, 89, 39],
|
|
["access", 20, "_use", 89, 65],
|
|
["add", 21, 19, 20, 89, 65],
|
|
["get", 23, 9, 1, 89, 12],
|
|
["frame", 24, 23, 1, 89, 12],
|
|
["null", 25, 89, 12],
|
|
["setarg", 24, 0, 25, 89, 12],
|
|
["setarg", 24, 1, 21, 89, 12],
|
|
["invoke", 24, 22, 89, 12],
|
|
["move", 3, 22, 89, 12],
|
|
["jump_false", 3, "if_else_45", 90, 7],
|
|
["get", 26, 1, 1, 91, 5],
|
|
["store_dynamic", 26, 3, 1, 91, 15],
|
|
["return", 3, 92, 12],
|
|
"_nop_ur_2",
|
|
"if_else_45",
|
|
"if_end_46",
|
|
[
|
|
"access",
|
|
27,
|
|
{
|
|
"name": "core_path",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
96,
|
|
16
|
|
],
|
|
["access", 28, "/boot/", 96, 28],
|
|
["add", 29, 27, 28, 96, 28],
|
|
["add", 30, 29, 1, 96, 39],
|
|
["access", 31, ".cm.mcode", 96, 46],
|
|
["add", 32, 30, 31, 96, 46],
|
|
["move", 7, 32, 96, 46],
|
|
["get", 34, 3, 1, 97, 7],
|
|
["is_proxy", 35, 34, 97, 7],
|
|
["jump_false", 35, "record_path_49", 97, 7],
|
|
["null", 36, 97, 7],
|
|
["access", 37, "is_file", 97, 7],
|
|
["array", 38, 0, 97, 7],
|
|
["push", 38, 7, 97, 7],
|
|
["frame", 39, 34, 2, 97, 7],
|
|
["setarg", 39, 0, 36, 97, 7],
|
|
["setarg", 39, 1, 37, 97, 7],
|
|
["setarg", 39, 2, 38, 97, 7],
|
|
["invoke", 39, 33, 97, 7],
|
|
["jump", "call_done_50", 97, 7],
|
|
"record_path_49",
|
|
["load_field", 40, 34, "is_file", 97, 7],
|
|
["frame", 41, 40, 1, 97, 7],
|
|
["setarg", 41, 0, 34, 97, 7],
|
|
["setarg", 41, 1, 7, 97, 7],
|
|
["invoke", 41, 33, 97, 7],
|
|
"call_done_50",
|
|
["jump_false", 33, "if_else_47", 97, 7],
|
|
["get", 43, 3, 1, 98, 23],
|
|
["is_proxy", 44, 43, 98, 23],
|
|
["jump_false", 44, "record_path_51", 98, 23],
|
|
["null", 45, 98, 23],
|
|
["access", 46, "slurp", 98, 23],
|
|
["array", 47, 0, 98, 23],
|
|
["push", 47, 7, 98, 23],
|
|
["frame", 48, 43, 2, 98, 23],
|
|
["setarg", 48, 0, 45, 98, 23],
|
|
["setarg", 48, 1, 46, 98, 23],
|
|
["setarg", 48, 2, 47, 98, 23],
|
|
["invoke", 48, 42, 98, 23],
|
|
["jump", "call_done_52", 98, 23],
|
|
"record_path_51",
|
|
["load_field", 49, 43, "slurp", 98, 23],
|
|
["frame", 50, 49, 1, 98, 23],
|
|
["setarg", 50, 0, 43, 98, 23],
|
|
["setarg", 50, 1, 7, 98, 23],
|
|
["invoke", 50, 42, 98, 23],
|
|
"call_done_52",
|
|
[
|
|
"access",
|
|
52,
|
|
{
|
|
"name": "text",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
98,
|
|
18
|
|
],
|
|
["frame", 53, 52, 1, 98, 18],
|
|
["null", 54, 98, 18],
|
|
["setarg", 53, 0, 54, 98, 18],
|
|
["setarg", 53, 1, 42, 98, 18],
|
|
["invoke", 53, 51, 98, 18],
|
|
["move", 6, 51, 98, 18],
|
|
["record", 55, 0],
|
|
["get", 56, 11, 1, 99, 54],
|
|
["store_field", 55, 56, "use", 99, 54],
|
|
[
|
|
"access",
|
|
58,
|
|
{
|
|
"name": "mach_eval_mcode",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
99,
|
|
14
|
|
],
|
|
["frame", 59, 58, 3, 99, 14],
|
|
["null", 60, 99, 14],
|
|
["setarg", 59, 0, 60, 99, 14],
|
|
["setarg", 59, 1, 1, 99, 14],
|
|
["setarg", 59, 2, 6, 99, 14],
|
|
["setarg", 59, 3, 55, 99, 14],
|
|
["invoke", 59, 57, 99, 14],
|
|
["move", 3, 57, 99, 14],
|
|
["get", 61, 1, 1, 100, 5],
|
|
["store_dynamic", 61, 3, 1, 100, 15],
|
|
["return", 3, 101, 12],
|
|
"_nop_ur_3",
|
|
"if_else_47",
|
|
"if_end_48",
|
|
["access", 62, ".cm", 105, 22],
|
|
["add", 63, 1, 62, 105, 22],
|
|
["move", 2, 63, 105, 22],
|
|
["get", 65, 3, 1, 106, 8],
|
|
["is_proxy", 66, 65, 106, 8],
|
|
["jump_false", 66, "record_path_55", 106, 8],
|
|
["null", 67, 106, 8],
|
|
["access", 68, "is_file", 106, 8],
|
|
["array", 69, 0, 106, 8],
|
|
["push", 69, 2, 106, 8],
|
|
["frame", 70, 65, 2, 106, 8],
|
|
["setarg", 70, 0, 67, 106, 8],
|
|
["setarg", 70, 1, 68, 106, 8],
|
|
["setarg", 70, 2, 69, 106, 8],
|
|
["invoke", 70, 64, 106, 8],
|
|
["jump", "call_done_56", 106, 8],
|
|
"record_path_55",
|
|
["load_field", 71, 65, "is_file", 106, 8],
|
|
["frame", 72, 71, 1, 106, 8],
|
|
["setarg", 72, 0, 65, 106, 8],
|
|
["setarg", 72, 1, 2, 106, 8],
|
|
["invoke", 72, 64, 106, 8],
|
|
"call_done_56",
|
|
"_nop_bl_1",
|
|
["jump_true", 64, "if_else_53", 106, 8],
|
|
[
|
|
"access",
|
|
74,
|
|
{
|
|
"name": "core_path",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
107,
|
|
17
|
|
],
|
|
["access", 75, "/", 107, 29],
|
|
["add", 76, 74, 75, 107, 29],
|
|
["add", 77, 76, 1, 107, 35],
|
|
["access", 78, ".cm", 107, 42],
|
|
["add", 79, 77, 78, 107, 42],
|
|
["move", 2, 79, 107, 42],
|
|
["jump", "if_end_54", 107, 42],
|
|
"if_else_53",
|
|
"if_end_54",
|
|
["get", 81, 3, 1, 108, 7],
|
|
["is_proxy", 82, 81, 108, 7],
|
|
["jump_false", 82, "record_path_59", 108, 7],
|
|
["null", 83, 108, 7],
|
|
["access", 84, "is_file", 108, 7],
|
|
["array", 85, 0, 108, 7],
|
|
["push", 85, 2, 108, 7],
|
|
["frame", 86, 81, 2, 108, 7],
|
|
["setarg", 86, 0, 83, 108, 7],
|
|
["setarg", 86, 1, 84, 108, 7],
|
|
["setarg", 86, 2, 85, 108, 7],
|
|
["invoke", 86, 80, 108, 7],
|
|
["jump", "call_done_60", 108, 7],
|
|
"record_path_59",
|
|
["load_field", 87, 81, "is_file", 108, 7],
|
|
["frame", 88, 87, 1, 108, 7],
|
|
["setarg", 88, 0, 81, 108, 7],
|
|
["setarg", 88, 1, 2, 108, 7],
|
|
["invoke", 88, 80, 108, 7],
|
|
"call_done_60",
|
|
["jump_false", 80, "if_else_57", 108, 7],
|
|
["get", 90, 3, 1, 109, 19],
|
|
["is_proxy", 91, 90, 109, 19],
|
|
["jump_false", 91, "record_path_61", 109, 19],
|
|
["null", 92, 109, 19],
|
|
["access", 93, "slurp", 109, 19],
|
|
["array", 94, 0, 109, 19],
|
|
["push", 94, 2, 109, 19],
|
|
["frame", 95, 90, 2, 109, 19],
|
|
["setarg", 95, 0, 92, 109, 19],
|
|
["setarg", 95, 1, 93, 109, 19],
|
|
["setarg", 95, 2, 94, 109, 19],
|
|
["invoke", 95, 89, 109, 19],
|
|
["jump", "call_done_62", 109, 19],
|
|
"record_path_61",
|
|
["load_field", 96, 90, "slurp", 109, 19],
|
|
["frame", 97, 96, 1, 109, 19],
|
|
["setarg", 97, 0, 90, 109, 19],
|
|
["setarg", 97, 1, 2, 109, 19],
|
|
["invoke", 97, 89, 109, 19],
|
|
"call_done_62",
|
|
[
|
|
"access",
|
|
99,
|
|
{
|
|
"name": "text",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
109,
|
|
14
|
|
],
|
|
["frame", 100, 99, 1, 109, 14],
|
|
["null", 101, 109, 14],
|
|
["setarg", 100, 0, 101, 109, 14],
|
|
["setarg", 100, 1, 89, 109, 14],
|
|
["invoke", 100, 98, 109, 14],
|
|
["move", 4, 98, 109, 14],
|
|
["get", 103, 10, 1, 110, 11],
|
|
["frame", 104, 103, 2, 110, 11],
|
|
["null", 105, 110, 11],
|
|
["setarg", 104, 0, 105, 110, 11],
|
|
["setarg", 104, 1, 4, 110, 11],
|
|
["setarg", 104, 2, 2, 110, 11],
|
|
["invoke", 104, 102, 110, 11],
|
|
["move", 5, 102, 110, 11],
|
|
["record", 106, 0],
|
|
["get", 107, 11, 1, 111, 39],
|
|
["store_field", 106, 107, "use", 111, 39],
|
|
["get", 109, 13, 1, 111, 14],
|
|
["frame", 110, 109, 3, 111, 14],
|
|
["null", 111, 111, 14],
|
|
["setarg", 110, 0, 111, 111, 14],
|
|
["setarg", 110, 1, 1, 111, 14],
|
|
["setarg", 110, 2, 5, 111, 14],
|
|
["setarg", 110, 3, 106, 111, 14],
|
|
["invoke", 110, 108, 111, 14],
|
|
["move", 3, 108, 111, 14],
|
|
["get", 112, 1, 1, 112, 5],
|
|
["store_dynamic", 112, 3, 1, 112, 15],
|
|
["return", 3, 113, 12],
|
|
"_nop_ur_4",
|
|
"if_else_57",
|
|
"if_end_58",
|
|
["access", 113, "seed: module not found: ", 116, 9],
|
|
["add", 114, 113, 1, 116, 38],
|
|
["access", 115, "\n", 116, 45],
|
|
["add", 116, 114, 115, 116, 45],
|
|
[
|
|
"access",
|
|
118,
|
|
{
|
|
"name": "print",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
116,
|
|
3
|
|
],
|
|
["frame", 119, 118, 1, 116, 3],
|
|
["null", 120, 116, 3],
|
|
["setarg", 119, 0, 120, 116, 3],
|
|
["setarg", 119, 1, 116, 116, 3],
|
|
["invoke", 119, 117, 116, 3],
|
|
["disrupt", 117, 3],
|
|
["null", 121, 117, 3],
|
|
["return", 121, 117, 3]
|
|
],
|
|
"name": "use_fn",
|
|
"filename": "boot/seed_bootstrap.cm",
|
|
"nr_args": 1
|
|
}
|
|
],
|
|
"main": {
|
|
"nr_args": 0,
|
|
"nr_close_slots": 0,
|
|
"nr_slots": 161,
|
|
"instructions": [
|
|
["function", 20, 0, 0, 0],
|
|
["move", 19, 20, 0, 0],
|
|
["function", 21, 1, 0, 0],
|
|
["move", 12, 21, 0, 0],
|
|
["function", 22, 2, 0, 0],
|
|
["move", 10, 22, 0, 0],
|
|
["function", 23, 3, 0, 0],
|
|
["move", 13, 23, 0, 0],
|
|
["function", 24, 4, 0, 0],
|
|
["move", 11, 24, 0, 0],
|
|
[
|
|
"access",
|
|
25,
|
|
{
|
|
"name": "os",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
7,
|
|
21
|
|
],
|
|
["load_field", 26, 25, "load_internal", 7, 21],
|
|
["move", 9, 26, 7, 21],
|
|
["access", 27, "js_core_internal_fd_use", 8, 24],
|
|
["frame", 29, 9, 1, 8, 10],
|
|
["null", 30, 8, 10],
|
|
["setarg", 29, 0, 30, 8, 10],
|
|
["setarg", 29, 1, 27, 8, 10],
|
|
["invoke", 29, 28, 8, 10],
|
|
["move", 3, 28, 8, 10],
|
|
["record", 31, 0],
|
|
["move", 1, 31, 10, 17],
|
|
["access", 32, "fd", 11, 11],
|
|
["store_field", 1, 3, 32, 11, 11],
|
|
[
|
|
"access",
|
|
33,
|
|
{
|
|
"name": "os",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
12,
|
|
19
|
|
],
|
|
["access", 34, "os", 12, 11],
|
|
["store_field", 1, 33, 34, 12, 11],
|
|
[
|
|
"access",
|
|
35,
|
|
{
|
|
"name": "json",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
13,
|
|
21
|
|
],
|
|
["access", 36, "json", 13, 11],
|
|
["store_field", 1, 35, 36, 13, 11],
|
|
["access", 37, "tokenize", 38, 30],
|
|
["frame", 39, 12, 1, 38, 20],
|
|
["null", 40, 38, 20],
|
|
["setarg", 39, 0, 40, 38, 20],
|
|
["setarg", 39, 1, 37, 38, 20],
|
|
["invoke", 39, 38, 38, 20],
|
|
["move", 6, 38, 38, 20],
|
|
["access", 41, "parse", 39, 27],
|
|
["frame", 43, 12, 1, 39, 17],
|
|
["null", 44, 39, 17],
|
|
["setarg", 43, 0, 44, 39, 17],
|
|
["setarg", 43, 1, 41, 39, 17],
|
|
["invoke", 43, 42, 39, 17],
|
|
["move", 4, 42, 39, 17],
|
|
["access", 45, "fold", 40, 26],
|
|
["frame", 47, 12, 1, 40, 16],
|
|
["null", 48, 40, 16],
|
|
["setarg", 47, 0, 48, 40, 16],
|
|
["setarg", 47, 1, 45, 40, 16],
|
|
["invoke", 47, 46, 40, 16],
|
|
["move", 2, 46, 40, 16],
|
|
["access", 49, "mcode", 41, 27],
|
|
["frame", 51, 12, 1, 41, 17],
|
|
["null", 52, 41, 17],
|
|
["setarg", 51, 0, 52, 41, 17],
|
|
["setarg", 51, 1, 49, 41, 17],
|
|
["invoke", 51, 50, 41, 17],
|
|
["move", 7, 50, 41, 17],
|
|
["access", 53, "streamline", 42, 32],
|
|
["frame", 55, 12, 1, 42, 22],
|
|
["null", 56, 42, 22],
|
|
["setarg", 55, 0, 56, 42, 22],
|
|
["setarg", 55, 1, 53, 42, 22],
|
|
["invoke", 55, 54, 42, 22],
|
|
["move", 17, 54, 42, 22],
|
|
["access", 57, "tokenize", 44, 11],
|
|
["store_field", 1, 6, 57, 44, 11],
|
|
["access", 58, "parse", 45, 11],
|
|
["store_field", 1, 4, 58, 45, 11],
|
|
["access", 59, "fold", 46, 11],
|
|
["store_field", 1, 2, 59, 46, 11],
|
|
["access", 60, "mcode", 47, 11],
|
|
["store_field", 1, 7, 60, 47, 11],
|
|
["access", 61, "streamline", 48, 11],
|
|
["store_field", 1, 17, 61, 48, 11],
|
|
[
|
|
"access",
|
|
62,
|
|
{
|
|
"name": "args",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
121,
|
|
15
|
|
],
|
|
["access", 63, 0, 121, 20],
|
|
["load_index", 64, 62, 63, 121, 20],
|
|
["move", 16, 64, 121, 20],
|
|
["array", 65, 0, 122, 17],
|
|
["move", 14, 65, 122, 17],
|
|
["access", 8, 1, 123, 10],
|
|
["null", 15, 124, 17],
|
|
["null", 5, 125, 14],
|
|
["null", 18, 126, 11],
|
|
"_nop_bl_1",
|
|
["jump_true", 16, "if_else_63", 128, 6],
|
|
["access", 67, "seed: no program specified\n", 129, 9],
|
|
[
|
|
"access",
|
|
69,
|
|
{
|
|
"name": "print",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
129,
|
|
3
|
|
],
|
|
["frame", 70, 69, 1, 129, 3],
|
|
["null", 71, 129, 3],
|
|
["setarg", 70, 0, 71, 129, 3],
|
|
["setarg", 70, 1, 67, 129, 3],
|
|
["invoke", 70, 68, 129, 3],
|
|
["disrupt", 130, 3],
|
|
["jump", "if_end_64", 130, 3],
|
|
"if_else_63",
|
|
"if_end_64",
|
|
"while_start_65",
|
|
[
|
|
"access",
|
|
72,
|
|
{
|
|
"name": "args",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
133,
|
|
20
|
|
],
|
|
["length", 73, 72, 133, 20],
|
|
["is_int", 75, 8, 133, 20],
|
|
["jump_false", 75, "rel_ni_67", 133, 20],
|
|
"_nop_tc_1",
|
|
"_nop_tc_2",
|
|
["lt_int", 74, 8, 73, 133, 20],
|
|
["jump", "rel_done_69", 133, 20],
|
|
"rel_ni_67",
|
|
["is_num", 75, 8, 133, 20],
|
|
["jump_false", 75, "rel_nn_68", 133, 20],
|
|
"_nop_tc_3",
|
|
"_nop_tc_4",
|
|
["lt_float", 74, 8, 73, 133, 20],
|
|
["jump", "rel_done_69", 133, 20],
|
|
"rel_nn_68",
|
|
["is_text", 75, 8, 133, 20],
|
|
["jump_false", 75, "rel_err_70", 133, 20],
|
|
"_nop_tc_5",
|
|
["jump", "rel_err_70", 133, 20],
|
|
["lt_text", 74, 8, 73, 133, 20],
|
|
["jump", "rel_done_69", 133, 20],
|
|
"rel_err_70",
|
|
["disrupt", 133, 20],
|
|
"rel_done_69",
|
|
["jump_false", 74, "while_end_66", 133, 20],
|
|
[
|
|
"access",
|
|
77,
|
|
{
|
|
"name": "args",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
134,
|
|
19
|
|
],
|
|
["load_dynamic", 78, 77, 8, 134, 24],
|
|
["is_array", 79, 14, 134, 24],
|
|
["jump_false", 79, "push_err_71", 134, 24],
|
|
["push", 14, 78, 134, 24],
|
|
["jump", "push_done_72", 134, 24],
|
|
"push_err_71",
|
|
["disrupt", 134, 24],
|
|
"push_done_72",
|
|
["access", 80, 1, 135, 13],
|
|
["add", 81, 8, 80, 135, 13],
|
|
["move", 8, 81, 135, 13],
|
|
["jump", "while_start_65", 135, 13],
|
|
"while_end_66",
|
|
["access", 82, ".ce", 138, 23],
|
|
["add", 83, 16, 82, 138, 23],
|
|
["move", 15, 83, 138, 23],
|
|
["is_proxy", 85, 3, 139, 6],
|
|
["jump_false", 85, "record_path_75", 139, 6],
|
|
["null", 86, 139, 6],
|
|
["access", 87, "is_file", 139, 6],
|
|
["array", 88, 0, 139, 6],
|
|
["push", 88, 15, 139, 6],
|
|
["frame", 89, 3, 2, 139, 6],
|
|
["setarg", 89, 0, 86, 139, 6],
|
|
["setarg", 89, 1, 87, 139, 6],
|
|
["setarg", 89, 2, 88, 139, 6],
|
|
["invoke", 89, 84, 139, 6],
|
|
["jump", "call_done_76", 139, 6],
|
|
"record_path_75",
|
|
["load_field", 90, 3, "is_file", 139, 6],
|
|
["frame", 91, 90, 1, 139, 6],
|
|
["setarg", 91, 0, 3, 139, 6],
|
|
["setarg", 91, 1, 15, 139, 6],
|
|
["invoke", 91, 84, 139, 6],
|
|
"call_done_76",
|
|
"_nop_bl_2",
|
|
["jump_true", 84, "if_else_73", 139, 6],
|
|
[
|
|
"access",
|
|
93,
|
|
{
|
|
"name": "core_path",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
140,
|
|
15
|
|
],
|
|
["access", 94, "/", 140, 27],
|
|
["add", 95, 93, 94, 140, 27],
|
|
["add", 96, 95, 16, 140, 33],
|
|
["access", 97, ".ce", 140, 43],
|
|
["add", 98, 96, 97, 140, 43],
|
|
["move", 15, 98, 140, 43],
|
|
["jump", "if_end_74", 140, 43],
|
|
"if_else_73",
|
|
"if_end_74",
|
|
["is_proxy", 100, 3, 141, 6],
|
|
["jump_false", 100, "record_path_79", 141, 6],
|
|
["null", 101, 141, 6],
|
|
["access", 102, "is_file", 141, 6],
|
|
["array", 103, 0, 141, 6],
|
|
["push", 103, 15, 141, 6],
|
|
["frame", 104, 3, 2, 141, 6],
|
|
["setarg", 104, 0, 101, 141, 6],
|
|
["setarg", 104, 1, 102, 141, 6],
|
|
["setarg", 104, 2, 103, 141, 6],
|
|
["invoke", 104, 99, 141, 6],
|
|
["jump", "call_done_80", 141, 6],
|
|
"record_path_79",
|
|
["load_field", 105, 3, "is_file", 141, 6],
|
|
["frame", 106, 105, 1, 141, 6],
|
|
["setarg", 106, 0, 3, 141, 6],
|
|
["setarg", 106, 1, 15, 141, 6],
|
|
["invoke", 106, 99, 141, 6],
|
|
"call_done_80",
|
|
"_nop_bl_3",
|
|
["jump_true", 99, "if_else_77", 141, 6],
|
|
["access", 108, ".cm", 142, 25],
|
|
["add", 109, 16, 108, 142, 25],
|
|
["move", 15, 109, 142, 25],
|
|
["is_proxy", 111, 3, 143, 8],
|
|
["jump_false", 111, "record_path_83", 143, 8],
|
|
["null", 112, 143, 8],
|
|
["access", 113, "is_file", 143, 8],
|
|
["array", 114, 0, 143, 8],
|
|
["push", 114, 15, 143, 8],
|
|
["frame", 115, 3, 2, 143, 8],
|
|
["setarg", 115, 0, 112, 143, 8],
|
|
["setarg", 115, 1, 113, 143, 8],
|
|
["setarg", 115, 2, 114, 143, 8],
|
|
["invoke", 115, 110, 143, 8],
|
|
["jump", "call_done_84", 143, 8],
|
|
"record_path_83",
|
|
["load_field", 116, 3, "is_file", 143, 8],
|
|
["frame", 117, 116, 1, 143, 8],
|
|
["setarg", 117, 0, 3, 143, 8],
|
|
["setarg", 117, 1, 15, 143, 8],
|
|
["invoke", 117, 110, 143, 8],
|
|
"call_done_84",
|
|
"_nop_bl_4",
|
|
["jump_true", 110, "if_else_81", 143, 8],
|
|
[
|
|
"access",
|
|
119,
|
|
{
|
|
"name": "core_path",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
144,
|
|
17
|
|
],
|
|
["access", 120, "/", 144, 29],
|
|
["add", 121, 119, 120, 144, 29],
|
|
["add", 122, 121, 16, 144, 35],
|
|
["access", 123, ".cm", 144, 45],
|
|
["add", 124, 122, 123, 144, 45],
|
|
["move", 15, 124, 144, 45],
|
|
["jump", "if_end_82", 144, 45],
|
|
"if_else_81",
|
|
"if_end_82",
|
|
["jump", "if_end_78", 144, 45],
|
|
"if_else_77",
|
|
"if_end_78",
|
|
["is_proxy", 126, 3, 146, 6],
|
|
["jump_false", 126, "record_path_87", 146, 6],
|
|
["null", 127, 146, 6],
|
|
["access", 128, "is_file", 146, 6],
|
|
["array", 129, 0, 146, 6],
|
|
["push", 129, 15, 146, 6],
|
|
["frame", 130, 3, 2, 146, 6],
|
|
["setarg", 130, 0, 127, 146, 6],
|
|
["setarg", 130, 1, 128, 146, 6],
|
|
["setarg", 130, 2, 129, 146, 6],
|
|
["invoke", 130, 125, 146, 6],
|
|
["jump", "call_done_88", 146, 6],
|
|
"record_path_87",
|
|
["load_field", 131, 3, "is_file", 146, 6],
|
|
["frame", 132, 131, 1, 146, 6],
|
|
["setarg", 132, 0, 3, 146, 6],
|
|
["setarg", 132, 1, 15, 146, 6],
|
|
["invoke", 132, 125, 146, 6],
|
|
"call_done_88",
|
|
"_nop_bl_5",
|
|
["jump_true", 125, "if_else_85", 146, 6],
|
|
["access", 134, "seed: program not found: ", 147, 9],
|
|
["add", 135, 134, 16, 147, 39],
|
|
["access", 136, "\n", 147, 49],
|
|
["add", 137, 135, 136, 147, 49],
|
|
[
|
|
"access",
|
|
139,
|
|
{
|
|
"name": "print",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
147,
|
|
3
|
|
],
|
|
["frame", 140, 139, 1, 147, 3],
|
|
["null", 141, 147, 3],
|
|
["setarg", 140, 0, 141, 147, 3],
|
|
["setarg", 140, 1, 137, 147, 3],
|
|
["invoke", 140, 138, 147, 3],
|
|
["disrupt", 148, 3],
|
|
["jump", "if_end_86", 148, 3],
|
|
"if_else_85",
|
|
"if_end_86",
|
|
["is_proxy", 143, 3, 151, 15],
|
|
["jump_false", 143, "record_path_89", 151, 15],
|
|
["null", 144, 151, 15],
|
|
["access", 145, "slurp", 151, 15],
|
|
["array", 146, 0, 151, 15],
|
|
["push", 146, 15, 151, 15],
|
|
["frame", 147, 3, 2, 151, 15],
|
|
["setarg", 147, 0, 144, 151, 15],
|
|
["setarg", 147, 1, 145, 151, 15],
|
|
["setarg", 147, 2, 146, 151, 15],
|
|
["invoke", 147, 142, 151, 15],
|
|
["jump", "call_done_90", 151, 15],
|
|
"record_path_89",
|
|
["load_field", 148, 3, "slurp", 151, 15],
|
|
["frame", 149, 148, 1, 151, 15],
|
|
["setarg", 149, 0, 3, 151, 15],
|
|
["setarg", 149, 1, 15, 151, 15],
|
|
["invoke", 149, 142, 151, 15],
|
|
"call_done_90",
|
|
[
|
|
"access",
|
|
151,
|
|
{
|
|
"name": "text",
|
|
"kind": "name",
|
|
"make": "intrinsic"
|
|
},
|
|
151,
|
|
10
|
|
],
|
|
["frame", 152, 151, 1, 151, 10],
|
|
["null", 153, 151, 10],
|
|
["setarg", 152, 0, 153, 151, 10],
|
|
["setarg", 152, 1, 142, 151, 10],
|
|
["invoke", 152, 150, 151, 10],
|
|
["move", 5, 150, 151, 10],
|
|
["frame", 155, 10, 2, 152, 7],
|
|
["null", 156, 152, 7],
|
|
["setarg", 155, 0, 156, 152, 7],
|
|
["setarg", 155, 1, 5, 152, 7],
|
|
["setarg", 155, 2, 15, 152, 7],
|
|
["invoke", 155, 154, 152, 7],
|
|
["move", 18, 154, 152, 7],
|
|
["record", 157, 0],
|
|
["store_field", 157, 11, "use", 153, 29],
|
|
["store_field", 157, 14, "args", 153, 43],
|
|
["frame", 159, 13, 3, 153, 1],
|
|
["null", 160, 153, 1],
|
|
["setarg", 159, 0, 160, 153, 1],
|
|
["setarg", 159, 1, 16, 153, 1],
|
|
["setarg", 159, 2, 18, 153, 1],
|
|
["setarg", 159, 3, 157, 153, 1],
|
|
["invoke", 159, 158, 153, 1],
|
|
["return", 158, 153, 1]
|
|
]
|
|
},
|
|
"filename": "boot/seed_bootstrap.cm",
|
|
"data": {}
|
|
} |