-
-
Save niner/0e32037010b7d31bd7443f4fd803162c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
MoarVM dump of binary compilation unit: | |
SC_0 : 648BAC5C71BE7BE7A5C6885C94ADE9C5DF665440 | |
SC_1 : F2C4AFFFA43D84AE3246F1C7874339333BEBBCAA-1486585400.62074 | |
SC_2 : AC32ABF7F7462E14EE588B2D0A6062A1B512D6D1 | |
Callsite_0 : | |
num_pos: 0 | |
arg_count: 0 | |
Callsite_1 : | |
num_pos: 1 | |
arg_count: 1 | |
Arg 1 : positional obj | |
Callsite_2 : | |
num_pos: 2 | |
arg_count: 2 | |
Arg 1 : positional obj | |
Arg 2 : positional str | |
Callsite_3 : | |
num_pos: 2 | |
arg_count: 2 | |
Arg 1 : positional obj | |
Arg 2 : positional obj | |
Frame_0 : | |
cuuid : 3 | |
name : <unit-outer> | |
Locals : | |
0: loc_0_obj | |
1: loc_1_obj | |
2: loc_2_obj | |
3: loc_3_obj | |
Instructions : | |
00000 getcode loc_3_obj, Frame_1 | |
00001 capturelex loc_3_obj | |
00002 getcode loc_1_obj, Frame_1 | |
00003 takeclosure loc_1_obj, loc_1_obj | |
00004 checkarity 0, -1 | |
00005 param_sp loc_0_obj, 0 | |
00006 paramnamesused | |
annotation: /home/nine/rakudo/lib/Foo.pm6 (Foo):1 | |
00007 decont loc_2_obj, loc_1_obj | |
00008 prepargs Callsite_0 | |
00009 invoke_o loc_2_obj, loc_2_obj | |
00010 return_o loc_2_obj | |
Frame_1 : | |
cuuid : 2 | |
name : <unit> | |
outer : Frame_0 | |
Locals : | |
0: loc_0_obj | |
1: loc_1_str | |
2: loc_2_obj | |
3: loc_3_int | |
4: loc_4_int | |
5: loc_5_obj | |
6: loc_6_obj | |
7: loc_7_obj | |
Lexicals : | |
0: lex_Frame_1__obj | |
1: lex_Frame_1__obj | |
2: lex_Frame_1__obj | |
3: lex_Frame_1__obj | |
4: lex_Frame_1__obj | |
5: lex_Frame_1__obj | |
6: lex_Frame_1__obj | |
7: lex_Frame_1__obj | |
8: lex_Frame_1__obj | |
9: lex_Frame_1__obj | |
10: lex_Frame_1__obj | |
11: lex_Frame_1__obj | |
Instructions : | |
00000 getcode loc_6_obj, Frame_2 | |
00001 takeclosure loc_6_obj, loc_6_obj | |
00002 checkarity 0, 0 | |
00003 paramnamesused | |
annotation: /home/nine/rakudo/lib/Foo.pm6 (Foo):1 | |
00004 const_s loc_1_str, '$*CTXSAVE' | |
00005 getdynlex loc_2_obj, loc_1_str | |
00006 set loc_0_obj, loc_2_obj | |
00007 isnull loc_3_int, loc_0_obj | |
00008 if_i loc_3_int, label_1(00018) | |
00009 decont loc_2_obj, loc_0_obj | |
00010 const_s loc_1_str, 'ctxsave' | |
00011 can_s loc_4_int, loc_2_obj, loc_1_str | |
00012 unless_i loc_4_int, label_1(00018) | |
00013 decont loc_5_obj, loc_0_obj | |
00014 findmeth loc_2_obj, loc_5_obj, 'ctxsave' | |
00015 prepargs Callsite_1 | |
00016 arg_o 0, loc_0_obj | |
00017 invoke_o loc_2_obj, loc_2_obj | |
annotation: /home/nine/rakudo/lib/Foo.pm6 (Foo):1 | |
label_1: | |
00018 prepargs Callsite_0 | |
00019 invoke_v loc_6_obj | |
00020 wval loc_5_obj, 1, 21 | |
00021 return_o loc_5_obj | |
Frame_2 : | |
cuuid : 1 | |
name : | |
outer : Frame_1 | |
Locals : | |
0: loc_0_str | |
1: loc_1_obj | |
2: loc_2_obj | |
Lexicals : | |
0: lex_Frame_2__obj | |
1: lex_Frame_2__obj | |
2: lex_Frame_2__obj | |
3: lex_Frame_2__obj | |
4: lex_Frame_2__obj | |
Instructions : | |
00000 checkarity 0, 0 | |
00001 paramnamesused | |
annotation: /home/nine/rakudo/lib/Foo.pm6 (Foo):1 | |
00002 const_s loc_0_str, '$_' | |
00003 getlexouter loc_1_obj, loc_0_str | |
00004 bindlex lex_Frame_2__obj, loc_1_obj | |
00005 return | |
Frame_3 : | |
cuuid : 4 | |
name : <dependencies+deserialize> | |
Locals : | |
0: loc_0_str | |
1: loc_1_str | |
2: loc_2_str | |
3: loc_3_obj | |
4: loc_4_obj | |
5: loc_5_obj | |
6: loc_6_obj | |
7: loc_7_obj | |
8: loc_8_obj | |
9: loc_9_obj | |
10: loc_10_obj | |
11: loc_11_int | |
12: loc_12_str | |
Instructions : | |
00000 getcode loc_10_obj, Frame_4 | |
00001 takeclosure loc_10_obj, loc_10_obj | |
00002 checkarity 0, 0 | |
00003 paramnamesused | |
00004 const_s loc_0_str, 'ModuleLoader.moarvm' | |
00005 loadbytecode loc_0_str, loc_0_str | |
00006 const_s loc_1_str, 'nqp' | |
00007 const_s loc_2_str, 'ModuleLoader' | |
00008 gethllsym loc_3_obj, loc_1_str, loc_2_str | |
00009 const_s loc_2_str, 'Perl6::ModuleLoader' | |
00010 decont loc_5_obj, loc_3_obj | |
00011 findmeth loc_4_obj, loc_5_obj, 'load_module' | |
00012 prepargs Callsite_2 | |
00013 arg_o 0, loc_3_obj | |
00014 arg_s 1, loc_2_str | |
00015 invoke_o loc_3_obj, loc_4_obj | |
00016 getcode loc_4_obj, Frame_0 | |
00017 const_s loc_2_str, 'ModuleLoader' | |
00018 getcurhllsym loc_5_obj, loc_2_str | |
00019 const_s loc_2_str, 'CORE' | |
00020 decont loc_7_obj, loc_5_obj | |
00021 findmeth loc_6_obj, loc_7_obj, 'load_setting' | |
00022 prepargs Callsite_2 | |
00023 arg_o 0, loc_5_obj | |
00024 arg_s 1, loc_2_str | |
00025 invoke_o loc_5_obj, loc_6_obj | |
00026 forceouterctx loc_4_obj, loc_5_obj | |
00027 const_s loc_2_str, '648BAC5C71BE7BE7A5C6885C94ADE9C5DF665440' | |
00028 createsc loc_5_obj, loc_2_str | |
00029 set loc_8_obj, loc_5_obj | |
00030 const_s loc_2_str, '/home/nine/rakudo/lib/Foo.pm6 (Foo)' | |
00031 scsetdesc loc_8_obj, loc_2_str | |
00032 hlllist loc_5_obj | |
00033 create loc_5_obj, loc_5_obj | |
00034 set loc_9_obj, loc_5_obj | |
00035 null_s loc_1_str | |
00036 null loc_5_obj | |
00037 prepargs Callsite_0 | |
00038 invoke_o loc_6_obj, loc_10_obj | |
00039 deserialize loc_1_str, loc_8_obj, loc_5_obj, loc_6_obj, loc_9_obj | |
00040 elems loc_11_int, loc_9_obj | |
00041 unless_i loc_11_int, label_1(00049) | |
00042 wval_wide loc_6_obj, 2, 38310 | |
00043 decont loc_7_obj, loc_6_obj | |
00044 findmeth loc_5_obj, loc_7_obj, 'resolve_repossession_conflicts' | |
00045 prepargs Callsite_3 | |
00046 arg_o 0, loc_6_obj | |
00047 arg_o 1, loc_9_obj | |
00048 invoke_o loc_6_obj, loc_5_obj | |
label_1: | |
00049 const_s loc_12_str, 'GLOBAL' | |
00050 wval loc_5_obj, 0, 0 | |
00051 bindcurhllsym loc_5_obj, loc_12_str, loc_5_obj | |
00052 return_o loc_5_obj | |
Frame_4 : | |
cuuid : 5 | |
name : | |
outer : Frame_3 | |
Locals : | |
0: loc_0_obj | |
1: loc_1_int | |
2: loc_2_obj | |
Instructions : | |
00000 checkarity 0, 0 | |
00001 paramnamesused | |
00002 bootarray loc_0_obj | |
00003 create loc_0_obj, loc_0_obj | |
00004 const_i64_16 loc_1_int, 2 | |
00005 setelemspos loc_0_obj, loc_1_int | |
00006 const_i64_16 loc_1_int, 0 | |
00007 setelemspos loc_0_obj, loc_1_int | |
00008 getcode loc_2_obj, Frame_2 | |
00009 push_o loc_0_obj, loc_2_obj | |
00010 getcode loc_2_obj, Frame_1 | |
00011 push_o loc_0_obj, loc_2_obj | |
00012 return_o loc_0_obj | |
Frame_5 : | |
cuuid : 6 | |
name : <load> | |
Locals : | |
0: loc_0_obj | |
1: loc_1_obj | |
Instructions : | |
00000 checkarity 0, 0 | |
00001 paramnamesused | |
00002 getcode loc_0_obj, Frame_0 | |
00003 decont loc_1_obj, loc_0_obj | |
00004 prepargs Callsite_0 | |
00005 invoke_o loc_1_obj, loc_1_obj | |
00006 return_o loc_1_obj |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment