diff options
author | Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com> | 2023-03-28 15:21:19 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-28 15:21:19 -0400 |
commit | 39a34694a0e33e18b4ac6e43cb8042e2d818ecd4 (patch) | |
tree | 3d70bdeb6fdf015b95d3306130eb52bbff0802a0 /yjit.h | |
parent | 2f8a598dc598b4faaab5d8fd4740811d52fece96 (diff) |
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>
Notes
Notes:
Merged-By: maximecb <maximecb@ruby-lang.org>
Diffstat (limited to 'yjit.h')
-rw-r--r-- | yjit.h | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -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) {} |