зеркало из https://github.com/github/ruby.git
Disable MJIT on a couple of conditions
This commit is contained in:
Родитель
43f579afb4
Коммит
114f8d3e33
14
mjit.c
14
mjit.c
|
@ -370,6 +370,20 @@ mjit_compile(FILE *f, const rb_iseq_t *iseq, const char *funcname, int id)
|
|||
// JIT buffer
|
||||
uint8_t *rb_mjit_mem_block = NULL;
|
||||
|
||||
MJIT_FUNC_EXPORTED void
|
||||
rb_mjit_bop_redefined(int redefined_flag, enum ruby_basic_operators bop)
|
||||
{
|
||||
if (!mjit_call_p) return;
|
||||
mjit_call_p = false;
|
||||
}
|
||||
|
||||
void
|
||||
rb_mjit_before_ractor_spawn(void)
|
||||
{
|
||||
if (!mjit_call_p) return;
|
||||
mjit_call_p = false;
|
||||
}
|
||||
|
||||
void
|
||||
rb_mjit_compile(const rb_iseq_t *iseq)
|
||||
{
|
||||
|
|
6
mjit.h
6
mjit.h
|
@ -114,6 +114,9 @@ extern void rb_mjit_tracing_invalidate_all(rb_event_flag_t new_iseq_events);
|
|||
|
||||
void mjit_child_after_fork(void);
|
||||
|
||||
extern void rb_mjit_bop_redefined(int redefined_flag, enum ruby_basic_operators bop);
|
||||
extern void rb_mjit_before_ractor_spawn(void);
|
||||
|
||||
# ifdef MJIT_HEADER
|
||||
#define mjit_enabled true
|
||||
# else // MJIT_HEADER
|
||||
|
@ -143,5 +146,8 @@ static inline VALUE mjit_pause(bool wait_p){ return Qnil; } // unreachable
|
|||
static inline VALUE mjit_resume(void){ return Qnil; } // unreachable
|
||||
static inline void mjit_finish(bool close_handle_p){}
|
||||
|
||||
static inline void rb_mjit_bop_redefined(int redefined_flag, enum ruby_basic_operators bop) {}
|
||||
static inline void rb_mjit_before_ractor_spawn(void) {}
|
||||
|
||||
# endif // USE_MJIT
|
||||
#endif // RUBY_MJIT_H
|
||||
|
|
Загрузка…
Ссылка в новой задаче