Skip to content

Commit 4f9f6de

Browse files
move further up
1 parent 31ad0d9 commit 4f9f6de

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

Python/optimizer.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1205,6 +1205,10 @@ make_executor_from_uops(_PyUOpInstruction *buffer, int length, const _PyBloomFil
12051205
assert(next_exit == -1);
12061206
assert(dest == executor->trace);
12071207
assert(dest->opcode == _START_EXECUTOR);
1208+
// Note: we MUST track it here before any Py_DECREF(executor) or
1209+
// linking of executor. Otherwise, the GC tries to untrack a
1210+
// still untracked object during dealloc.
1211+
_PyObject_GC_TRACK(executor);
12081212
_Py_ExecutorInit(executor, dependencies);
12091213
#ifdef Py_DEBUG
12101214
char *python_lltrace = Py_GETENV("PYTHON_LLTRACE");
@@ -1222,10 +1226,6 @@ make_executor_from_uops(_PyUOpInstruction *buffer, int length, const _PyBloomFil
12221226
}
12231227
sanity_check(executor);
12241228
#endif
1225-
// Note: this MUST be here before any Py_DECREF(executor).
1226-
// Otherwise, the GC tries to untrack a still untracked object
1227-
// during dealloc.
1228-
_PyObject_GC_TRACK(executor);
12291229
#ifdef _Py_JIT
12301230
executor->jit_code = NULL;
12311231
executor->jit_side_entry = NULL;

0 commit comments

Comments
 (0)