mirror of
https://github.com/ruby/ruby.git
synced 2025-08-15 13:39:04 +02:00
YJIT: Add --yjit-pause
and RubyVM::YJIT.resume
(#7609)
* YJIT: Add --yjit-pause and RubyVM::YJIT.resume This allows booting YJIT in a suspended state. We chose to add a new command line option as opposed to simply allowing YJIT.resume to work without any command line option because it allows for combining with YJIT tuning command line options. It also simpifies implementation. Paired with Kokubun and Maxime. * Update yjit.rb Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> --------- Co-authored-by: Alan Wu <XrXr@users.noreply.github.com> Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
This commit is contained in:
parent
2f8a598dc5
commit
39a34694a0
Notes:
git
2023-03-28 19:21:41 +00:00
Merged-By: maximecb <maximecb@ruby-lang.org>
7 changed files with 60 additions and 1 deletions
2
yjit.h
2
yjit.h
|
@ -26,6 +26,7 @@
|
|||
|
||||
// Expose these as declarations since we are building YJIT.
|
||||
bool rb_yjit_enabled_p(void);
|
||||
bool rb_yjit_compile_new_iseqs(void);
|
||||
unsigned rb_yjit_call_threshold(void);
|
||||
void rb_yjit_invalidate_all_method_lookup_assumptions(void);
|
||||
void rb_yjit_cme_invalidate(rb_callable_method_entry_t *cme);
|
||||
|
@ -48,6 +49,7 @@ void rb_yjit_tracing_invalidate_all(void);
|
|||
// In these builds, YJIT could never be turned on. Provide dummy implementations.
|
||||
|
||||
static inline bool rb_yjit_enabled_p(void) { return false; }
|
||||
static inline bool rb_yjit_compile_new_iseqs(void) { return false; }
|
||||
static inline unsigned rb_yjit_call_threshold(void) { return UINT_MAX; }
|
||||
static inline void rb_yjit_invalidate_all_method_lookup_assumptions(void) {}
|
||||
static inline void rb_yjit_cme_invalidate(rb_callable_method_entry_t *cme) {}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue