Skip to content

Instantly share code, notes, and snippets.

@timo
Last active August 29, 2015 14:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save timo/afb0413f1aead980a275 to your computer and use it in GitHub Desktop.
Save timo/afb0413f1aead980a275 to your computer and use it in GitHub Desktop.
parse_graph_c.txt
got the source
parsed an entry for MVM_args_checkarity
parsed an entry for MVM_string_say
parsed an entry for MVM_string_print
parsed an entry for MVM_is_null
parsed an entry for MVM_frame_capturelex
parsed an entry for MVM_frame_takeclosure
parsed an entry for MVM_exception_newlexotic_from_jit
parsed an entry for MVM_args_use_capture
parsed an entry for MVM_args_save_capture
parsed an entry for MVM_args_assert_void_return_ok
parsed an entry for MVM_args_set_result_int
parsed an entry for MVM_args_set_result_str
parsed an entry for MVM_args_set_result_obj
parsed an entry for MVM_args_set_result_num
parsed an entry for MVM_coerce_i_s
parsed an entry for MVM_coerce_n_s
parsed an entry for MVM_coerce_s_i
parsed an entry for MVM_coerce_s_n
parsed an entry for MVM_bigint_to_num
parsed an entry for MVM_iterkey_s
parsed an entry for MVM_iter
parsed an entry for MVM_iterval
parsed an entry for MVM_exception_die
parsed an entry for MVM_exception_throwobj
parsed an entry for MVM_exception_throwcat
parsed an entry for MVM_exception_resume
parsed an entry for MVM_coerce_smart_numify
parsed an entry for MVM_coerce_smart_stringify
parsed an entry for MVM_io_write_string
parsed an entry for MVM_6model_get_how_obj
parsed an entry for MVM_box_int
parsed an entry for MVM_box_str
parsed an entry for MVM_box_num
parsed an entry for MVM_repr_get_int
parsed an entry for MVM_repr_get_str
parsed an entry for MVM_repr_get_num
parsed an entry for MVM_coerce_istrue
parsed an entry for MVM_6model_istype
parsed an entry for MVM_repr_compare_repr_id
parsed an entry for MVM_sc_get_sc_object
parsed an entry for MVM_frame_getdynlex
parsed an entry for MVM_frame_binddynlex
parsed an entry for MVM_frame_find_lexical_by_name_outer
parsed an entry for MVM_6model_find_method
parsed an entry for MVM_multi_cache_add
parsed an entry for MVM_multi_cache_find
parsed an entry for MVM_6model_can_method
parsed an entry for MVM_repr_push_i
parsed an entry for MVM_repr_push_n
parsed an entry for MVM_repr_push_s
parsed an entry for MVM_repr_push_o
parsed an entry for MVM_repr_unshift_i
parsed an entry for MVM_repr_unshift_n
parsed an entry for MVM_repr_unshift_s
parsed an entry for MVM_repr_unshift_o
parsed an entry for MVM_repr_pop_i
parsed an entry for MVM_repr_pop_n
parsed an entry for MVM_repr_pop_s
parsed an entry for MVM_repr_pop_o
parsed an entry for MVM_repr_shift_i
parsed an entry for MVM_repr_shift_n
parsed an entry for MVM_repr_shift_s
parsed an entry for MVM_repr_shift_o
parsed an entry for MVM_repr_pos_set_elems
parsed an entry for MVM_repr_pos_splice
parsed an entry for MVM_repr_exists_key
parsed an entry for MVM_repr_delete_key
parsed an entry for MVM_repr_at_pos_i
parsed an entry for MVM_repr_at_pos_n
parsed an entry for MVM_repr_at_pos_s
parsed an entry for MVM_repr_at_pos_o
parsed an entry for MVM_repr_exists_pos
parsed an entry for MVM_repr_at_key_i
parsed an entry for MVM_repr_at_key_n
parsed an entry for MVM_repr_at_key_s
parsed an entry for MVM_repr_at_key_o
parsed an entry for MVM_repr_bind_pos_i
parsed an entry for MVM_repr_bind_pos_n
parsed an entry for MVM_repr_bind_pos_s
parsed an entry for MVM_repr_bind_pos_o
parsed an entry for MVM_repr_bind_key_i
parsed an entry for MVM_repr_bind_key_n
parsed an entry for MVM_repr_bind_key_s
parsed an entry for MVM_repr_bind_key_o
parsed an entry for MVM_repr_get_attr_s
parsed an entry for MVM_repr_get_attr_n
parsed an entry for MVM_repr_get_attr_i
parsed an entry for MVM_repr_get_attr_o
parsed an entry for MVM_repr_get_attr_s
parsed an entry for MVM_repr_get_attr_n
parsed an entry for MVM_repr_get_attr_i
parsed an entry for MVM_repr_get_attr_o
parsed an entry for MVM_repr_bind_attr_inso
parsed an entry for MVM_repr_bind_attr_inso
parsed an entry for MVM_repr_elems
parsed an entry for MVM_string_flatten
parsed an entry for MVM_string_concatenate
parsed an entry for MVM_string_repeat
parsed an entry for MVM_string_flip
parsed an entry for MVM_string_split
parsed an entry for MVM_string_escape
parsed an entry for MVM_string_uc
parsed an entry for MVM_string_tc
parsed an entry for MVM_string_lc
parsed an entry for MVM_string_equal
parsed an entry for MVM_string_equal_at
parsed an entry for MVM_string_graphs
parsed an entry for MVM_string_codes
parsed an entry for MVM_string_index
parsed an entry for MVM_string_substring
parsed an entry for MVM_string_join
parsed an entry for MVM_string_is_cclass
parsed an entry for MVM_string_find_cclass
parsed an entry for MVM_string_find_not_cclass
parsed an entry for MVM_nfa_run_alt
parsed an entry for MVM_nfa_run_proto
parsed an entry for MVM_nfa_from_statelist
parsed an entry for MVM_hll_map
parsed an entry for MVM_repr_clone
parsed an entry for MVM_frame_get_code_object
parsed an entry for MVM_bigint_is_big
parsed an entry for MVM_bigint_cmp
parsed an entry for MVM_bigint_add
parsed an entry for MVM_bigint_sub
parsed an entry for MVM_bigint_mul
parsed an entry for MVM_bigint_div
parsed an entry for MVM_bigint_mod
parsed an entry for MVM_bigint_lcm
parsed an entry for MVM_bigint_gcd
parsed an entry for MVM_bigint_bool
parsed an entry for MVM_bigint_div_num
parsed an entry for MVM_bigint_to_str
parsed an entry for MVM_bigint_radix
parsed an entry for sqrt
parsed an entry for sin
parsed an entry for cos
parsed an entry for tan
parsed an entry for asin
parsed an entry for acos
parsed an entry for atan
parsed an entry for atan2
parsed an entry for pow
parsed an entry for MVM_proc_time_n
parsed an entry for MVM_proc_randscale_n
parsed an entry for MVM_num_isnanorinf
parsed an entry for MVM_nativecall_invoke
parsed an entry for MVM_6model_container_iscont_i
parsed an entry for MVM_6model_container_iscont_n
parsed an entry for MVM_6model_container_iscont_s
parsed an entry for MVM_6model_container_assign_i
parsed an entry for MVM_6model_container_assign_n
parsed an entry for MVM_6model_container_assign_s
parsed an entry for MVM_6model_container_decont_i
parsed an entry for MVM_6model_container_decont_n
parsed an entry for MVM_6model_container_decont_s
parsed an entry for MVM_nativeref_lex_i
parsed an entry for MVM_nativeref_lex_n
parsed an entry for MVM_nativeref_lex_s
parsed an entry for MVM_nativeref_attr_i
parsed an entry for MVM_nativeref_attr_n
parsed an entry for MVM_nativeref_attr_s
parsed an entry for MVM_nativeref_attr_i
parsed an entry for MVM_nativeref_attr_n
parsed an entry for MVM_nativeref_attr_s
parsed an entry for MVM_iter_istrue
parsed an entry for MVM_profile_log_allocated
parsed an entry for MVM_profile_log_exit
parsed
MVM_repr_push_i going to have a template built for it
MVM_repr_push_s going to have a template built for it
MVM_repr_push_o going to have a template built for it
MVM_repr_unshift_i going to have a template built for it
MVM_repr_unshift_s going to have a template built for it
MVM_repr_unshift_o going to have a template built for it
MVM_repr_unshift_n going to have a template built for it
MVM_repr_push_n going to have a template built for it
MVM_repr_shift_s going to have a template built for it
MVM_repr_pop_s going to have a template built for it
MVM_repr_shift_o going to have a template built for it
MVM_repr_pop_o going to have a template built for it
MVM_repr_shift_i going to have a template built for it
MVM_repr_pop_i going to have a template built for it
MVM_repr_shift_n going to have a template built for it
MVM_repr_pop_n going to have a template built for it
MVM_repr_delete_key going to have a template built for it
MVM_repr_pos_set_elems going to have a template built for it
MVM_repr_exists_key going to have a template built for it
MVM_repr_pos_splice going to have a template built for it
MVM_repr_exists_pos going to have a template built for it
MVM_repr_at_key_i going to have a template built for it
MVM_repr_at_pos_i going to have a template built for it
MVM_repr_at_key_n going to have a template built for it
MVM_repr_at_pos_n going to have a template built for it
MVM_repr_at_pos_o going to have a template built for it
MVM_repr_at_key_o going to have a template built for it
MVM_repr_at_key_s going to have a template built for it
MVM_repr_at_pos_s going to have a template built for it
MVM_repr_bind_key_n going to have a template built for it
MVM_repr_bind_pos_n going to have a template built for it
MVM_repr_bind_pos_i going to have a template built for it
MVM_repr_bind_pos_s going to have a template built for it
MVM_repr_bind_pos_o going to have a template built for it
MVM_repr_bind_key_i going to have a template built for it
MVM_repr_bind_key_s going to have a template built for it
MVM_repr_bind_key_o going to have a template built for it
=============
handling getattr_i, getattr_n, getattr_s, getattr_o
this line surprised us (expected MVMJitCallArg):
MVMuint16 kind = op == MVM_OP_getattr_i ? MVM_JIT_RV_INT :
=============
handling getattrs_i, getattrs_n, getattrs_s, getattrs_o
this line surprised us (expected MVMJitCallArg):
MVMuint16 kind = op == MVM_OP_getattrs_i ? MVM_JIT_RV_INT :
=============
handling bindattr_i, bindattr_n, bindattr_s, bindattr_o
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 obj = ins->operands[0].reg.orig;
var_source: MVMint16 typ = ins->operands[1].reg.orig;
var_source: MVMuint32 str_idx = ins->operands[2].lit_str_idx;
var_source: MVMint16 val = ins->operands[3].reg.orig;
var_source: MVMint16 hint = ins->operands[4].lit_i16;
MVMuint16 kind = op == MVM_OP_bindattr_i ? MVM_reg_int64 :
=============
handling bindattrs_i, bindattrs_n, bindattrs_s, bindattrs_o
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 obj = ins->operands[0].reg.orig;
var_source: MVMint16 typ = ins->operands[1].reg.orig;
var_source: MVMint16 str = ins->operands[2].reg.orig;
var_source: MVMint16 val = ins->operands[3].reg.orig;
MVMint16 hint = -1;
MVM_repr_elems going to have a template built for it
MVM_6model_get_how_obj going to have a template built for it
MVM_6model_istype going to have a template built for it
MVM_args_checkarity going to have a template built for it
MVM_string_say going to have a template built for it
MVM_string_print going to have a template built for it
=============
handling wval, wval_wide
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
var_source: MVMint16 dep = ins->operands[1].lit_i16;
MVMint64 idx = op == MVM_OP_wval
=============
handling throwdyn, throwlex, throwlexotic
this line surprised us (expected jg_append_call_c):
var_source: MVMint16 regi = ins->operands[0].reg.orig;
var_source: MVMint16 object = ins->operands[1].reg.orig;
c_args: MVMJitCallArg args[] = { { MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
{ MVM_JIT_LITERAL, { op == MVM_OP_throwlexotic ? MVM_EX_THROW_LEXOTIC :
=============
handling rethrow
didn't understand this kind of MVM_JIT_LITERAL.
var_source: MVMint16 obj = ins->operands[0].reg.orig;
c_args: MVMJitCallArg args[] = { { MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
{ MVM_JIT_LITERAL, { MVM_EX_THROW_DYN } },
=============
handling throwcatdyn, throwcatlex, throwcatlexotic
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 regi = ins->operands[0].reg.orig;
MVMint32 category = (MVMuint32)ins->operands[1].lit_i64;
MVM_exception_resume going to have a template built for it
MVM_exception_die going to have a template built for it
MVM_frame_getdynlex going to have a template built for it
MVM_frame_binddynlex going to have a template built for it
MVM_frame_find_lexical_by_name_outer going to have a template built for it
Use of Nil in numeric context in code at tools/parse_jitgraph.p6:252
Use of Nil in numeric context in block at tools/parse_jitgraph.p6:253
MVM_coerce_istrue going to have a template built for it
MVM_coerce_istrue going to have a template built for it
MVM_frame_capturelex going to have a template built for it
MVM_frame_takeclosure going to have a template built for it
=============
handling newlexotic
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
MVMint32 label = get_label_for_bb(tc, jgb->graph, ins->operands[1].ins_bb);
MVM_args_use_capture going to have a template built for it
MVM_args_save_capture going to have a template built for it
MVM_string_flatten going to have a template built for it
=============
handling hllize
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
var_source: MVMint16 src = ins->operands[1].reg.orig;
MVMHLLConfig *hll_config = jgb->sg->sf->body.cu->body.hll_config;
MVM_repr_clone going to have a template built for it
MVM_iterkey_s going to have a template built for it
MVM_iterval going to have a template built for it
MVM_iter going to have a template built for it
MVM_iter_istrue going to have a template built for it
=============
handling findmeth, findmeth_s
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
var_source: MVMint16 obj = ins->operands[1].reg.orig;
MVMint32 name = (op == MVM_OP_findmeth_s ? ins->operands[2].reg.orig :
MVM_multi_cache_find going to have a template built for it
MVM_multi_cache_add going to have a template built for it
=============
handling can, can_s
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
var_source: MVMint16 obj = ins->operands[1].reg.orig;
MVMint32 name = (op == MVM_OP_can_s ? ins->operands[2].reg.orig :
=============
handling coerce_sn, coerce_ns, coerce_si, coerce_is, coerce_In
this line surprised us (expected jg_append_call_c):
var_source: MVMint16 src = ins->operands[1].reg.orig;
var_source: MVMint16 dst = ins->operands[0].reg.orig;
c_args: MVMJitCallArg args[] = {{ MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
c_args: { MVM_JIT_REG_VAL, { src } } };
MVMJitRVMode rv_mode = ((op == MVM_OP_coerce_sn || op == MVM_OP_coerce_In) ? MVM_JIT_RV_NUM : op == MVM_OP_coerce_si ? MVM_JIT_RV_INT :
MVM_coerce_smart_stringify going to have a template built for it
MVM_coerce_smart_numify going to have a template built for it
MVM_io_write_string going to have a template built for it
MVM_box_num going to have a template built for it
MVM_box_str going to have a template built for it
MVM_box_int going to have a template built for it
MVM_repr_get_int going to have a template built for it
MVM_repr_get_num going to have a template built for it
MVM_repr_get_str going to have a template built for it
MVM_string_repeat going to have a template built for it
MVM_string_split going to have a template built for it
MVM_string_concatenate going to have a template built for it
MVM_string_escape going to have a template built for it
MVM_string_uc going to have a template built for it
MVM_string_lc going to have a template built for it
MVM_string_tc going to have a template built for it
=============
handling ne_s, eq_s
this line surprised us (expected jg_append_call_c):
var_source: MVMint16 src_a = ins->operands[1].reg.orig;
var_source: MVMint16 src_b = ins->operands[2].reg.orig;
var_source: MVMint16 dst = ins->operands[0].reg.orig;
c_args: MVMJitCallArg args[] = { { MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
c_args: { MVM_JIT_REG_VAL, { src_a } },
c_args: { MVM_JIT_REG_VAL, { src_b } } };
jg_append_call_c(tc, jgb->graph, op_to_func(tc, MVM_OP_eq_s), 3, args, MVM_JIT_RV_INT, dst);
MVM_string_equal_at going to have a template built for it
=============
handling chars, graphs_s, codes_s, flip
this line surprised us (expected jg_append_call_c):
var_source: MVMint16 src = ins->operands[1].reg.orig;
var_source: MVMint16 dst = ins->operands[0].reg.orig;
c_args: MVMJitCallArg args[] = { { MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
c_args: { MVM_JIT_REG_VAL, { src } } };
MVMJitRVMode rv_mode = (op == MVM_OP_flip ? MVM_JIT_RV_PTR : MVM_JIT_RV_INT);
MVM_string_join going to have a template built for it
MVM_string_substring going to have a template built for it
MVM_string_index going to have a template built for it
MVM_string_is_cclass going to have a template built for it
MVM_string_find_cclass going to have a template built for it
MVM_string_find_not_cclass going to have a template built for it
MVM_nfa_run_alt going to have a template built for it
MVM_nfa_run_proto going to have a template built for it
MVM_nfa_from_statelist going to have a template built for it
MVM_bigint_is_big going to have a template built for it
MVM_bigint_cmp going to have a template built for it
MVM_bigint_add going to have a template built for it
MVM_bigint_sub going to have a template built for it
MVM_bigint_mul going to have a template built for it
MVM_bigint_div going to have a template built for it
MVM_bigint_mod going to have a template built for it
MVM_bigint_lcm going to have a template built for it
MVM_bigint_gcd going to have a template built for it
MVM_bigint_div_num going to have a template built for it
MVM_bigint_to_str going to have a template built for it
MVM_bigint_radix going to have a template built for it
MVM_bigint_to_str going to have a template built for it
MVM_bigint_bool going to have a template built for it
MVM_frame_get_code_object going to have a template built for it
sqrt going to have a template built for it
sin going to have a template built for it
cos going to have a template built for it
tan going to have a template built for it
asin going to have a template built for it
acos going to have a template built for it
atan going to have a template built for it
pow going to have a template built for it
atan2 going to have a template built for it
MVM_proc_time_n going to have a template built for it
MVM_proc_randscale_n going to have a template built for it
MVM_num_isnanorinf going to have a template built for it
MVM_nativecall_invoke going to have a template built for it
MVM_6model_container_iscont_i going to have a template built for it
MVM_6model_container_iscont_n going to have a template built for it
MVM_6model_container_iscont_s going to have a template built for it
MVM_6model_container_assign_i going to have a template built for it
MVM_6model_container_assign_n going to have a template built for it
MVM_6model_container_assign_s going to have a template built for it
MVM_6model_container_decont_i going to have a template built for it
MVM_6model_container_decont_n going to have a template built for it
MVM_6model_container_decont_s going to have a template built for it
=============
handling getlexref_i, getlexref_n, getlexref_s
this line surprised us (expected MVMJitCallArg):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
MVMuint16 outers = ins->operands[1].lex.outers;
=============
handling getattrref_i, getattrref_n, getattrref_s
this line surprised us (expected jg_append_call_c):
var_source: MVMint16 dst = ins->operands[0].reg.orig;
var_source: MVMint16 obj = ins->operands[1].reg.orig;
var_source: MVMint16 class = ins->operands[2].reg.orig;
var_source: MVMint16 name = ins->operands[3].lit_str_idx;
c_args: MVMJitCallArg args[] = { { MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
c_args: { MVM_JIT_REG_VAL, { obj } },
c_args: { MVM_JIT_REG_VAL, { class } },
{ MVM_JIT_STR_IDX, { name } } };
MVM_nativeref_attr_i going to have a template built for it
MVM_nativeref_attr_n going to have a template built for it
MVM_nativeref_attr_s going to have a template built for it
MVM_profile_log_allocated going to have a template built for it
=============
handling return_o, return_s, return_n, return_i
this line surprised us (expected jg_append_call_c):
var_source: MVMint16 reg = ins->operands[0].reg.orig;
c_args: MVMJitCallArg args[] = {{ MVM_JIT_INTERP_VAR, { MVM_JIT_INTERP_TC } },
c_args: { MVM_JIT_REG_VAL, { reg } },
c_args: { MVM_JIT_LITERAL, { 0 } } };
if (op == MVM_OP_return_n) { args[1].type = MVM_JIT_REG_VAL_F;
all successfully parsed opcodes:
+ push_i
+ push_s
+ push_o
+ unshift_i
+ unshift_s
+ unshift_o
+ unshift_n
+ push_n
+ shift_s
+ pop_s
+ shift_o
+ pop_o
+ shift_i
+ pop_i
+ shift_n
+ pop_n
+ deletekey
+ setelemspos
+ existskey
+ splice
+ existspos
+ atkey_i
+ atpos_i
+ atkey_n
+ atpos_n
+ atpos_o
+ atkey_o
+ atkey_s
+ atpos_s
+ bindkey_n
+ bindpos_n
+ bindpos_i
+ bindpos_s
+ bindpos_o
+ bindkey_i
+ bindkey_s
+ bindkey_o
+ elems
+ gethow
+ istype
+ checkarity
+ say
+ print
+ resume
+ die
+ getdynlex
+ binddynlex
+ getlexouter
+ isfalse
+ istrue
+ capturelex
+ takeclosure
+ usecapture
+ savecapture
+ flattenropes
+ clone
+ iterkey_s
+ iterval
+ iter
+ sp_boolify_iter
+ multicachefind
+ multicacheadd
+ smrt_strify
+ smrt_numify
+ write_fhs
+ box_n
+ box_s
+ box_i
+ unbox_i
+ unbox_n
+ unbox_s
+ repeat_s
+ split
+ concat_s
+ escape
+ uc
+ lc
+ tc
+ eqat_s
+ join
+ substr_s
+ index_s
+ iscclass
+ findcclass
+ findnotcclass
+ nfarunalt
+ nfarunproto
+ nfafromstatelist
+ isbig_I
+ cmp_I
+ add_I
+ sub_I
+ mul_I
+ div_I
+ mod_I
+ lcm_I
+ gcd_I
+ div_In
+ coerce_Is
+ radix_I
+ base_I
+ bool_I
+ getcodeobj
+ sqrt_n
+ sin_n
+ cos_n
+ tan_n
+ asin_n
+ acos_n
+ atan_n
+ pow_n
+ atan2_n
+ time_n
+ randscale_n
+ isnanorinf
+ nativecallinvoke
+ iscont_i
+ iscont_n
+ iscont_s
+ assign_i
+ assign_n
+ assign_s
+ decont_i
+ decont_n
+ decont_s
+ getattrsref_i
+ getattrsref_n
+ getattrsref_s
+ prof_allocated
all skipped operations:
- getattr_i, getattr_n, getattr_s, getattr_o
- getattrs_i, getattrs_n, getattrs_s, getattrs_o
- bindattr_i, bindattr_n, bindattr_s, bindattr_o
- bindattrs_i, bindattrs_n, bindattrs_s, bindattrs_o
- wval, wval_wide
- throwdyn, throwlex, throwlexotic
- rethrow
- throwcatdyn, throwcatlex, throwcatlexotic
- newlexotic
- hllize
- findmeth, findmeth_s
- can, can_s
- coerce_sn, coerce_ns, coerce_si, coerce_is, coerce_In
- ne_s, eq_s
- chars, graphs_s, codes_s, flip
- getlexref_i, getlexref_n, getlexref_s
- getattrref_i, getattrref_n, getattrref_s
- return_o, return_s, return_n, return_i
(template: push_i
(call (^func MVM_repr_push_i)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: push_s
(call (^func MVM_repr_push_s)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: push_o
(call (^func MVM_repr_push_o)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: unshift_i
(call (^func MVM_repr_unshift_i)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: unshift_s
(call (^func MVM_repr_unshift_s)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: unshift_o
(call (^func MVM_repr_unshift_o)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: unshift_n
(call (^func MVM_repr_unshift_n)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 num)
)
void
) )
(template: push_n
(call (^func MVM_repr_push_n)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 num)
)
void
) )
(template: shift_s
(call (^func MVM_repr_shift_s)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: pop_s
(call (^func MVM_repr_pop_s)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: shift_o
(call (^func MVM_repr_shift_o)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: pop_o
(call (^func MVM_repr_pop_o)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: shift_i
(call (^func MVM_repr_shift_i)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: pop_i
(call (^func MVM_repr_pop_i)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: shift_n
(call (^func MVM_repr_shift_n)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
num
) )
(template: pop_n
(call (^func MVM_repr_pop_n)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
num
) )
(template: deletekey
(call (^func MVM_repr_delete_key)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: setelemspos
(call (^func MVM_repr_pos_set_elems)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: existskey
(call (^func MVM_repr_exists_key)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
int
) )
(template: splice
(call (^func MVM_repr_pos_splice)
(arglist 5
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
void
) )
(template: existspos
(call (^func MVM_repr_exists_pos)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
int
) )
(template: atkey_i
(call (^func MVM_repr_at_key_i)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
int
) )
(template: atpos_i
(call (^func MVM_repr_at_pos_i)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
int
) )
(template: atkey_n
(call (^func MVM_repr_at_key_n)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
num
) )
(template: atpos_n
(call (^func MVM_repr_at_pos_n)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
num
) )
(template: atpos_o
(call (^func MVM_repr_at_pos_o)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: atkey_o
(call (^func MVM_repr_at_key_o)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: atkey_s
(call (^func MVM_repr_at_key_s)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: atpos_s
(call (^func MVM_repr_at_pos_s)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: bindkey_n
(call (^func MVM_repr_bind_key_n)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 num)
)
void
) )
(template: bindpos_n
(call (^func MVM_repr_bind_pos_n)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 num)
)
void
) )
(template: bindpos_i
(call (^func MVM_repr_bind_pos_i)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
)
void
) )
(template: bindpos_s
(call (^func MVM_repr_bind_pos_s)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
)
void
) )
(template: bindpos_o
(call (^func MVM_repr_bind_pos_o)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
)
void
) )
(template: bindkey_i
(call (^func MVM_repr_bind_key_i)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
)
void
) )
(template: bindkey_s
(call (^func MVM_repr_bind_key_s)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
)
void
) )
(template: bindkey_o
(call (^func MVM_repr_bind_key_o)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
)
void
) )
(template: elems
(call (^func MVM_repr_elems)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: gethow
(call (^func MVM_6model_get_how_obj)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: istype
(call (^func MVM_6model_istype)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $0 ptr)
)
void
) )
(template: checkarity
(call (^func MVM_args_checkarity)
(arglist 4
(carg (tc) ptr)
(carg (^params) ptr)
(carg (copy $0) int)
(carg (copy $1) int)
)
void
) )
(template: say
(call (^func MVM_string_say)
(arglist 2
(carg (tc) ptr)
(carg $0 int)
)
void
) )
(template: print
(call (^func MVM_string_print)
(arglist 2
(carg (tc) ptr)
(carg $0 int)
)
void
) )
(template: resume
(call (^func MVM_exception_resume)
(arglist 2
(carg (tc) ptr)
(carg $0 int)
)
void
) )
(template: die
(call (^func MVM_exception_die)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
)
void
) )
(template: getdynlex
(call (^func MVM_frame_getdynlex)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg (^caller) ptr)
)
ptr
) )
(template: binddynlex
(call (^func MVM_frame_binddynlex)
(arglist 4
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg (^caller) ptr)
)
void
) )
(template: getlexouter
(call (^func MVM_frame_find_lexical_by_name_outer)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: isfalse
(call (^func MVM_coerce_istrue)
(arglist 6
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
(carg (const 0 int_sz) int)
(carg (const 0 int_sz) int)
(carg (const 0 int_sz) int)
)
void
) )
(template: istrue
(call (^func MVM_coerce_istrue)
(arglist 6
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
(carg (const 0 int_sz) int)
(carg (const 0 int_sz) int)
(carg (const 0 int_sz) int)
)
void
) )
(template: capturelex
(call (^func MVM_frame_capturelex)
(arglist 2
(carg (tc) ptr)
(carg $0 int)
)
void
) )
(template: takeclosure
(call (^func MVM_frame_takeclosure)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: usecapture
(call (^func MVM_args_use_capture)
(arglist 2
(carg (tc) ptr)
(carg (frame) ptr)
)
ptr
) )
(template: savecapture
(call (^func MVM_args_save_capture)
(arglist 2
(carg (tc) ptr)
(carg (frame) ptr)
)
ptr
) )
(template: flattenropes
(call (^func MVM_string_flatten)
(arglist 2
(carg (tc) ptr)
(carg $0 int)
)
void
) )
(template: clone
(call (^func MVM_repr_clone)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: iterkey_s
(call (^func MVM_iterkey_s)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: iterval
(call (^func MVM_iterval)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: iter
(call (^func MVM_iter)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: sp_boolify_iter
(call (^func MVM_iter_istrue)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: multicachefind
(call (^func MVM_multi_cache_find)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: multicacheadd
(call (^func MVM_multi_cache_add)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: smrt_strify
(call (^func MVM_coerce_smart_stringify)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
)
void
) )
(template: smrt_numify
(call (^func MVM_coerce_smart_numify)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
)
void
) )
(template: write_fhs
(call (^func MVM_io_write_string)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg (const 0 int_sz) int)
)
int
) )
(template: box_n
(call (^func MVM_box_num)
(arglist 4
(carg (tc) ptr)
(carg $1 num)
(carg $2 int)
(carg $0 ptr)
)
void
) )
(template: box_s
(call (^func MVM_box_str)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $0 ptr)
)
void
) )
(template: box_i
(call (^func MVM_box_int)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $0 ptr)
)
void
) )
(template: unbox_i
(call (^func MVM_repr_get_int)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: unbox_n
(call (^func MVM_repr_get_num)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
num
) )
(template: unbox_s
(call (^func MVM_repr_get_str)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: repeat_s
(call (^func MVM_string_repeat)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: split
(call (^func MVM_string_split)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: concat_s
(call (^func MVM_string_concatenate)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: escape
(call (^func MVM_string_escape)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: uc
(call (^func MVM_string_uc)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: lc
(call (^func MVM_string_lc)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: tc
(call (^func MVM_string_tc)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: eqat_s
(call (^func MVM_string_equal_at)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
int
) )
(template: join
(call (^func MVM_string_join)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: substr_s
(call (^func MVM_string_substring)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: index_s
(call (^func MVM_string_index)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: iscclass
(call (^func MVM_string_is_cclass)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
int
) )
(template: findcclass
(call (^func MVM_string_find_cclass)
(arglist 5
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
(carg $4 int)
)
int
) )
(template: findnotcclass
(call (^func MVM_string_find_not_cclass)
(arglist 5
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
(carg $4 int)
)
int
) )
(template: nfarunalt
(call (^func MVM_nfa_run_alt)
(arglist 7
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
(carg $2 int)
(carg $3 int)
(carg $4 int)
(carg $5 int)
)
void
) )
(template: nfarunproto
(call (^func MVM_nfa_run_proto)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: nfafromstatelist
(call (^func MVM_nfa_from_statelist)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: isbig_I
(call (^func MVM_bigint_is_big)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: cmp_I
(call (^func MVM_bigint_cmp)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
int
) )
(template: add_I
(call (^func MVM_bigint_add)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: sub_I
(call (^func MVM_bigint_sub)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: mul_I
(call (^func MVM_bigint_mul)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: div_I
(call (^func MVM_bigint_div)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: mod_I
(call (^func MVM_bigint_mod)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: lcm_I
(call (^func MVM_bigint_lcm)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: gcd_I
(call (^func MVM_bigint_gcd)
(arglist 4
(carg (tc) ptr)
(carg $3 int)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: div_In
(call (^func MVM_bigint_div_num)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
num
) )
(template: coerce_Is
(call (^func MVM_bigint_to_str)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg (const 10 int_sz) int)
)
ptr
) )
(template: radix_I
(call (^func MVM_bigint_radix)
(arglist 6
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
(carg $4 int)
(carg $5 int)
)
ptr
) )
(template: base_I
(call (^func MVM_bigint_to_str)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
)
ptr
) )
(template: bool_I
(call (^func MVM_bigint_bool)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: getcodeobj
(call (^func MVM_frame_get_code_object)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
ptr
) )
(template: sqrt_n
(call (^func sqrt)
(arglist 1
(carg $1 num)
)
num
) )
(template: sin_n
(call (^func sin)
(arglist 1
(carg $1 num)
)
num
) )
(template: cos_n
(call (^func cos)
(arglist 1
(carg $1 num)
)
num
) )
(template: tan_n
(call (^func tan)
(arglist 1
(carg $1 num)
)
num
) )
(template: asin_n
(call (^func asin)
(arglist 1
(carg $1 num)
)
num
) )
(template: acos_n
(call (^func acos)
(arglist 1
(carg $1 num)
)
num
) )
(template: atan_n
(call (^func atan)
(arglist 1
(carg $1 num)
)
num
) )
(template: pow_n
(call (^func pow)
(arglist 2
(carg $1 num)
(carg $2 num)
)
num
) )
(template: atan2_n
(call (^func atan2)
(arglist 2
(carg $1 num)
(carg $2 num)
)
num
) )
(template: time_n
(call (^func MVM_proc_time_n)
(arglist 1
(carg (tc) ptr)
)
num
) )
(template: randscale_n
(call (^func MVM_proc_randscale_n)
(arglist 2
(carg (tc) ptr)
(carg $1 num)
)
num
) )
(template: isnanorinf
(call (^func MVM_num_isnanorinf)
(arglist 2
(carg (tc) ptr)
(carg $1 num)
)
int
) )
(template: nativecallinvoke
(call (^func MVM_nativecall_invoke)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: iscont_i
(call (^func MVM_6model_container_iscont_i)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: iscont_n
(call (^func MVM_6model_container_iscont_n)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: iscont_s
(call (^func MVM_6model_container_iscont_s)
(arglist 2
(carg (tc) ptr)
(carg $1 int)
)
int
) )
(template: assign_i
(call (^func MVM_6model_container_assign_i)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: assign_n
(call (^func MVM_6model_container_assign_n)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: assign_s
(call (^func MVM_6model_container_assign_s)
(arglist 3
(carg (tc) ptr)
(carg $0 int)
(carg $1 int)
)
void
) )
(template: decont_i
(call (^func MVM_6model_container_decont_i)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
)
void
) )
(template: decont_n
(call (^func MVM_6model_container_decont_n)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
)
void
) )
(template: decont_s
(call (^func MVM_6model_container_decont_s)
(arglist 3
(carg (tc) ptr)
(carg $1 int)
(carg $0 ptr)
)
void
) )
(template: getattrsref_i
(call (^func MVM_nativeref_attr_i)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: getattrsref_n
(call (^func MVM_nativeref_attr_n)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: getattrsref_s
(call (^func MVM_nativeref_attr_s)
(arglist 4
(carg (tc) ptr)
(carg $1 int)
(carg $2 int)
(carg $3 int)
)
ptr
) )
(template: prof_allocated
(call (^func MVM_profile_log_allocated)
(arglist 2
(carg (tc) ptr)
(carg $0 int)
)
void
) )
75 Could not build an expression tree, stuck at instruction getlex
29 Could not build an expression tree, stuck at instruction unless_o
27 Could not build an expression tree, stuck at instruction coerce_ni
20 Could not build an expression tree, stuck at instruction band_i
16 Could not build an expression tree, stuck at instruction lt_i
15 Could not build an expression tree, stuck at instruction sp_findmeth
13 Could not build an expression tree, stuck at instruction prepargs
12 Could not build an expression tree, stuck at instruction bindlex
10 Could not build an expression tree, stuck at instruction sp_guardconc
10 Could not build an expression tree, stuck at instruction getattr_o
9 Could not build an expression tree, stuck at instruction coerce_in
7 Could not build an expression tree, stuck at instruction eq_i
4 Could not build an expression tree, stuck at instruction paramnamesused
4 Could not build an expression tree, stuck at instruction lexoticresult
4 Could not build an expression tree, stuck at instruction eq_n
4 Could not build an expression tree, stuck at instruction const_n64
3 Could not build an expression tree, stuck at instruction newlexotic
3 Could not build an expression tree, stuck at instruction lt_n
3 Could not build an expression tree, stuck at instruction isnull
3 Could not build an expression tree, stuck at instruction if_i
2 Could not build an expression tree, stuck at instruction return_s
2 Could not build an expression tree, stuck at instruction param_sn
2 Could not build an expression tree, stuck at instruction ne_i
2 Could not build an expression tree, stuck at instruction ishash
2 Could not build an expression tree, stuck at instruction gt_n
2 Could not build an expression tree, stuck at instruction gt_i
2 Could not build an expression tree, stuck at instruction getattr_i
2 Could not build an expression tree, stuck at instruction ge_i
2 Could not build an expression tree, stuck at instruction eqaddr
2 Could not build an expression tree, stuck at instruction bor_i
1 Could not build an expression tree, stuck at instruction sp_namedarg_used
1 Could not build an expression tree, stuck at instruction setmethcache
1 Could not build an expression tree, stuck at instruction return_i
1 Could not build an expression tree, stuck at instruction param_rp_i
1 Could not build an expression tree, stuck at instruction p6parcel
1 Could not build an expression tree, stuck at instruction p6bool
1 Could not build an expression tree, stuck at instruction not_i
1 Could not build an expression tree, stuck at instruction isconcrete
1 Could not build an expression tree, stuck at instruction ctxlexpad
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment