Move MicroJIT compilation threshold into MicroJIT's header

This commit is contained in:
Alan Wu 2020-10-22 14:16:39 -04:00
Родитель 809ecfb126
Коммит 498fe0fb52
2 изменённых файлов: 3 добавлений и 2 удалений

3
mjit.h
Просмотреть файл

@ -150,8 +150,7 @@ mjit_exec(rb_execution_context_t *ec)
} }
#ifndef MJIT_HEADER #ifndef MJIT_HEADER
const int ujit_call_threashold = 10; if (rb_ujit_enabled_p() && !mjit_call_p && body->total_calls == UJIT_CALL_THRESHOLD) {
if (rb_ujit_enabled_p() && !mjit_call_p && body->total_calls == ujit_call_threashold) {
rb_ujit_compile_iseq(iseq); rb_ujit_compile_iseq(iseq);
return Qundef; return Qundef;
} }

Просмотреть файл

@ -20,6 +20,8 @@ bool rb_ujit_enabled_p(void)
return rb_ujit_enabled; return rb_ujit_enabled;
} }
#define UJIT_CALL_THRESHOLD (10u)
void rb_ujit_init(void); void rb_ujit_init(void);
uint8_t *ujit_compile_insn(const rb_iseq_t *iseq, unsigned int insn_idx, unsigned int *next_ujit_idx); uint8_t *ujit_compile_insn(const rb_iseq_t *iseq, unsigned int insn_idx, unsigned int *next_ujit_idx);
void rb_ujit_compile_iseq(const rb_iseq_t *iseq); void rb_ujit_compile_iseq(const rb_iseq_t *iseq);