summaryrefslogtreecommitdiff
path: root/yjit.rb
diff options
context:
space:
mode:
authorMaxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>2023-03-28 15:21:19 -0400
committerGitHub <noreply@github.com>2023-03-28 15:21:19 -0400
commit39a34694a0e33e18b4ac6e43cb8042e2d818ecd4 (patch)
tree3d70bdeb6fdf015b95d3306130eb52bbff0802a0 /yjit.rb
parent2f8a598dc598b4faaab5d8fd4740811d52fece96 (diff)
downloadruby-39a34694a0e33e18b4ac6e43cb8042e2d818ecd4.tar.gz
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>
Diffstat (limited to 'yjit.rb')
-rw-r--r--yjit.rb5
1 files changed, 5 insertions, 0 deletions
diff --git a/yjit.rb b/yjit.rb
index 7d56bf0517..343f5f0ed8 100644
--- a/yjit.rb
+++ b/yjit.rb
@@ -29,6 +29,11 @@ module RubyVM::YJIT
Primitive.rb_yjit_reset_stats_bang
end
+ # Resume YJIT compilation after paused on startup with --yjit-pause
+ def self.resume
+ Primitive.rb_yjit_resume
+ end
+
# If --yjit-trace-exits is enabled parse the hashes from
# Primitive.rb_yjit_get_exit_locations into a format readable
# by Stackprof. This will allow us to find the exact location of a