diff options
Diffstat (limited to 'mjit_compile.c')
-rw-r--r-- | mjit_compile.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/mjit_compile.c b/mjit_compile.c index 5eafd72329..1f92834853 100644 --- a/mjit_compile.c +++ b/mjit_compile.c @@ -24,9 +24,6 @@ struct compile_status { int success; /* has TRUE if compilation has had no issue */ int *stack_size_for_pos; /* stack_size_for_pos[pos] has stack size for the position (otherwise -1) */ - /* If TRUE, JIT-ed code will use local variables to store pushed values instead of - using VM's stack and moving stack pointer. */ - int local_stack_p; }; /* Storage to keep data which is consistent in each conditional branch. @@ -175,13 +172,7 @@ compile_insns(FILE *f, const struct rb_iseq_constant_body *body, unsigned int st static void compile_cancel_handler(FILE *f, const struct rb_iseq_constant_body *body, struct compile_status *status) { - unsigned int i; fprintf(f, "\ncancel:\n"); - if (status->local_stack_p) { - for (i = 0; i < body->stack_max; i++) { - fprintf(f, " *((VALUE *)reg_cfp->bp + %d) = stack[%d];\n", i + 1, i); - } - } fprintf(f, " return Qundef;\n"); } @@ -191,7 +182,6 @@ mjit_compile(FILE *f, const struct rb_iseq_constant_body *body, const char *func { struct compile_status status; status.success = TRUE; - status.local_stack_p = !body->catch_except_p; status.stack_size_for_pos = ALLOC_N(int, body->iseq_size); memset(status.stack_size_for_pos, NOT_COMPILED_STACK_SIZE, sizeof(int) * body->iseq_size); @@ -205,12 +195,7 @@ mjit_compile(FILE *f, const struct rb_iseq_constant_body *body, const char *func fprintf(f, "__declspec(dllexport)\n"); #endif fprintf(f, "VALUE\n%s(rb_execution_context_t *ec, rb_control_frame_t *reg_cfp)\n{\n", funcname); - if (status.local_stack_p) { - fprintf(f, " VALUE stack[%d];\n", body->stack_max); - } - else { - fprintf(f, " VALUE *stack = reg_cfp->sp;\n"); - } + fprintf(f, " VALUE *stack = reg_cfp->sp;\n"); fprintf(f, " static const VALUE *const original_body_iseq = (VALUE *)0x%"PRIxVALUE";\n", (VALUE)body->iseq_encoded); |