4 // This file contains definitions ZJIT exposes to the CRuby codebase
8 extern bool rb_zjit_enabled_p
;
9 extern uint64_t rb_zjit_call_threshold
;
10 extern uint64_t rb_zjit_profile_threshold
;
11 void rb_zjit_compile_iseq(const rb_iseq_t
*iseq
, rb_execution_context_t
*ec
, bool jit_exception
);
12 void rb_zjit_profile_insn(enum ruby_vminsn_type insn
, rb_execution_context_t
*ec
);
13 void rb_zjit_profile_enable(const rb_iseq_t
*iseq
);
14 void rb_zjit_bop_redefined(int redefined_flag
, enum ruby_basic_operators bop
);
15 void rb_zjit_invalidate_ep_is_bp(const rb_iseq_t
*iseq
);
17 static inline void rb_zjit_compile_iseq(const rb_iseq_t
*iseq
, rb_execution_context_t
*ec
, bool jit_exception
) {}
18 static inline void rb_zjit_profile_insn(enum ruby_vminsn_type insn
, rb_execution_context_t
*ec
) {}
19 static inline void rb_zjit_profile_enable(const rb_iseq_t
*iseq
) {}
20 static inline void rb_zjit_bop_redefined(int redefined_flag
, enum ruby_basic_operators bop
) {}
21 static inline void rb_zjit_invalidate_ep_is_bp(const rb_iseq_t
*iseq
) {}
22 #endif // #if USE_YJIT
24 #endif // #ifndef ZJIT_H