Assert unit->iseq null out happens under the JIT/GC guard

This commit is contained in:
Takashi Kokubun 2020-12-03 00:01:10 -08:00
Родитель 58c3c75fee
Коммит 541e4340dd
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 6FFC433B12EE23DD
1 изменённых файлов: 2 добавлений и 0 удалений

2
mjit.c
Просмотреть файл

@ -119,6 +119,8 @@ mjit_free_iseq(const rb_iseq_t *iseq)
return;
CRITICAL_SECTION_START(4, "mjit_free_iseq");
RUBY_ASSERT_ALWAYS(in_gc);
RUBY_ASSERT_ALWAYS(!in_jit);
if (iseq->body->jit_unit) {
// jit_unit is not freed here because it may be referred by multiple
// lists of units. `get_from_list` and `mjit_finish` do the job.