summaryrefslogtreecommitdiff
path: root/mjit_compile.c
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2020-12-16 06:24:07 -0800
committerGitHub <noreply@github.com>2020-12-16 06:24:07 -0800
commit53babf35ef5b643774636550ea23851e2607e076 (patch)
treea18e660dd7f39718188fb161fd453c6c39097a14 /mjit_compile.c
parentbfb374be2342d7822cd37a1b100cb1715f85ca74 (diff)
Inline getconstant on JIT (#3906)
* Inline getconstant on JIT * Support USE_MJIT=0
Notes
Notes: Merged-By: k0kubun <takashikkbn@gmail.com>
Diffstat (limited to 'mjit_compile.c')
-rw-r--r--mjit_compile.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/mjit_compile.c b/mjit_compile.c
index 8591b5c5d6..7e715b7e10 100644
--- a/mjit_compile.c
+++ b/mjit_compile.c
@@ -307,6 +307,10 @@ compile_cancel_handler(FILE *f, const struct rb_iseq_constant_body *body, struct
fprintf(f, " rb_mjit_recompile_exivar(original_iseq);\n");
fprintf(f, " goto cancel;\n");
+ fprintf(f, "\nconst_cancel:\n");
+ fprintf(f, " rb_mjit_recompile_const(original_iseq);\n");
+ fprintf(f, " goto cancel;\n");
+
fprintf(f, "\ncancel:\n");
fprintf(f, " RB_DEBUG_COUNTER_INC(mjit_cancel);\n");
if (status->local_stack_p) {