1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

mjit.c: clean up unit link from iseq

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
k0kubun 2018-07-27 22:27:04 +00:00
parent efee3033b5
commit 297ae3437e

4
mjit.c
View file

@ -562,8 +562,10 @@ clean_object_files(struct rb_mjit_unit *unit)
static void static void
free_unit(struct rb_mjit_unit *unit) free_unit(struct rb_mjit_unit *unit)
{ {
if (unit->iseq) /* ISeq is not GCed */ if (unit->iseq) { /* ISeq is not GCed */
unit->iseq->body->jit_func = (mjit_func_t)NOT_COMPILED_JIT_ISEQ_FUNC; unit->iseq->body->jit_func = (mjit_func_t)NOT_COMPILED_JIT_ISEQ_FUNC;
unit->iseq->body->jit_unit = NULL;
}
if (unit->handle) /* handle is NULL if it's in queue */ if (unit->handle) /* handle is NULL if it's in queue */
dlclose(unit->handle); dlclose(unit->handle);
clean_object_files(unit); clean_object_files(unit);