зеркало из https://github.com/github/ruby.git
Add a debug_counter for JIT cancel on leave
This commit is contained in:
Родитель
d300a73441
Коммит
0bd025ad69
|
@ -333,6 +333,7 @@ RB_DEBUG_COUNTER(mjit_cancel_exivar_inline)
|
|||
RB_DEBUG_COUNTER(mjit_cancel_send_inline)
|
||||
RB_DEBUG_COUNTER(mjit_cancel_opt_insn) /* CALL_SIMPLE_METHOD */
|
||||
RB_DEBUG_COUNTER(mjit_cancel_invalidate_all)
|
||||
RB_DEBUG_COUNTER(mjit_cancel_leave)
|
||||
|
||||
/* rb_mjit_unit_list length */
|
||||
RB_DEBUG_COUNTER(mjit_length_unit_queue)
|
||||
|
|
|
@ -76,6 +76,7 @@ switch (insn) {
|
|||
fprintf(f, " if (UNLIKELY(RUBY_VM_INTERRUPTED_ANY(ec))) {\n");
|
||||
fprintf(f, " reg_cfp->sp = vm_base_ptr(reg_cfp) + %d;\n", b->stack_size);
|
||||
fprintf(f, " reg_cfp->pc = original_body_iseq + %d;\n", pos);
|
||||
fprintf(f, " RB_DEBUG_COUNTER_INC(mjit_cancel_leave);\n");
|
||||
fprintf(f, " goto cancel;\n");
|
||||
fprintf(f, " }\n");
|
||||
fprintf(f, " ec->cfp = RUBY_VM_PREVIOUS_CONTROL_FRAME(reg_cfp);\n"); // vm_pop_frame
|
||||
|
|
Загрузка…
Ссылка в новой задаче