static int precompile_enq_specialization_(jl_typemap_entry_t *l, void *closure) { jl_method_instance_t *mi = l->func.linfo; assert(jl_is_method_instance(mi)); jl_code_instance_t *codeinst = mi->cache; while (codeinst) { int do_compile = 0; if (codeinst->functionObjectsDecls.functionObject == NULL && codeinst->invoke != jl_fptr_const_return) { if (codeinst->inferred && codeinst->inferred != jl_nothing && jl_ast_flag_inferred((jl_array_t*)codeinst->inferred) && !jl_ast_flag_inlineable((jl_array_t*)codeinst->inferred)) { do_compile = 1; } else if (codeinst->invoke != NULL) { do_compile = 1; } } if (do_compile) { jl_array_ptr_1d_push((jl_array_t*)closure, (jl_value_t*)mi); return 1; } codeinst = codeinst->next; } return 1; }
static int precompile_enq_specialization_(jl_typemap_entry_t *l, void *closure) { if (jl_is_method_instance(l->func.value) && l->func.linfo->functionObjectsDecls.functionObject == NULL && l->func.linfo->invoke != jl_fptr_const_return && (l->func.linfo->invoke != jl_fptr_trampoline || (l->func.linfo->inferred && l->func.linfo->inferred != jl_nothing && jl_ast_flag_inferred((jl_array_t*)l->func.linfo->inferred) && !jl_ast_flag_inlineable((jl_array_t*)l->func.linfo->inferred)))) jl_array_ptr_1d_push((jl_array_t*)closure, (jl_value_t*)l->sig); return 1; }