From eaccdc1941304d6273397b21c25213174d892185 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Mon, 6 Mar 2023 22:35:38 -0800 Subject: Rename MJIT filenames to RJIT --- rjit.rb | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 rjit.rb (limited to 'rjit.rb') diff --git a/rjit.rb b/rjit.rb new file mode 100644 index 0000000000..f9679e9164 --- /dev/null +++ b/rjit.rb @@ -0,0 +1,37 @@ +module RubyVM::MJIT + # Return true if MJIT is enabled. + def self.enabled? + Primitive.cexpr! 'RBOOL(mjit_enabled)' + end + + # Stop generating JITed code. + def self.pause(wait: true) + Primitive.cexpr! 'mjit_pause(RTEST(wait))' + end + + # Start generating JITed code again after pause. + def self.resume + Primitive.cexpr! 'mjit_resume()' + end + + if Primitive.mjit_stats_enabled_p + at_exit do + Primitive.mjit_stop_stats + print_stats + end + end +end + +if RubyVM::MJIT.enabled? + begin + require 'fiddle' + require 'fiddle/import' + rescue LoadError + return # miniruby doesn't support MJIT + end + + require 'ruby_vm/mjit/c_type' + require 'ruby_vm/mjit/compiler' + require 'ruby_vm/mjit/hooks' + require 'ruby_vm/mjit/stats' +end -- cgit v1.2.1