summaryrefslogtreecommitdiff
path: root/mjit.c
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2022-09-05 08:37:07 -0700
committerTakashi Kokubun <takashikkbn@gmail.com>2022-09-05 08:39:37 -0700
commit63ed61e322178eebb425b7a9ad7f84dc52ef6c6f (patch)
treecff3ee7e03bf4bc8f17e05948ce64d15c5744f8a /mjit.c
parentca172540d0659f3efd8c6270e5207d8bbec81ef2 (diff)
Deal with MJIT_FORCE_ENABLE miniruby
http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/4225469
Diffstat (limited to 'mjit.c')
-rw-r--r--mjit.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/mjit.c b/mjit.c
index 9687f759cf..4895e42d7d 100644
--- a/mjit.c
+++ b/mjit.c
@@ -1806,6 +1806,15 @@ mjit_init(const struct mjit_options *opts)
{
VM_ASSERT(mjit_enabled);
mjit_opts = *opts;
+
+ // MJIT doesn't support miniruby, but it might reach here by MJIT_FORCE_ENABLE.
+ VALUE rb_mMJIT = rb_const_get(rb_cRubyVM, rb_intern("MJIT"));
+ if (!rb_const_defined(rb_mMJIT, rb_intern("Compiler"))) {
+ verbose(1, "Disabling MJIT because RubyVM::MJIT::Compiler is not defined");
+ mjit_enabled = false;
+ return;
+ }
+
mjit_call_p = true;
mjit_pid = getpid();