From: Ken Jin <28750310+Fidget-Spinner@users.noreply.github.com> Date: Mon, 27 Oct 2025 10:03:47 +0000 (+0000) Subject: fix cg builds, invalidate executors on function deallocation X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=425fd519a464496c2e375411ce9509173068dd13;p=thirdparty%2FPython%2Fcpython.git fix cg builds, invalidate executors on function deallocation --- diff --git a/Objects/funcobject.c b/Objects/funcobject.c index 2311d8ce29a9..b659ac802337 100644 --- a/Objects/funcobject.c +++ b/Objects/funcobject.c @@ -1152,6 +1152,7 @@ func_dealloc(PyObject *self) return; } #if _Py_TIER2 + _Py_Executors_InvalidateDependency(_PyInterpreterState_GET(), self, 1); _PyJit_Tracer_InvalidateDependency(_PyThreadState_GET(), self); #endif _PyObject_GC_UNTRACK(op); diff --git a/Python/opcode_targets.h b/Python/opcode_targets.h index eb43bf63804a..288e45ce8bc8 100644 --- a/Python/opcode_targets.h +++ b/Python/opcode_targets.h @@ -259,127 +259,127 @@ static void *opcode_targets_table[256] = { }; #if _Py_TIER2 static void *opcode_tracing_targets_table[256] = { - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode, @@ -387,88 +387,88 @@ static void *opcode_tracing_targets_table[256] = { &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode, @@ -493,28 +493,28 @@ static void *opcode_tracing_targets_table[256] = { &&_unknown_opcode, &&_unknown_opcode, &&_unknown_opcode, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, - &&TARGET_record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, + &&record_previous_inst, }; #endif #else /* _Py_TAIL_CALL_INTERP */ diff --git a/Tools/cases_generator/target_generator.py b/Tools/cases_generator/target_generator.py index b945c3e72033..36fa1d7fa490 100644 --- a/Tools/cases_generator/target_generator.py +++ b/Tools/cases_generator/target_generator.py @@ -34,7 +34,7 @@ def write_opcode_targets(analysis: Analysis, out: CWriter) -> None: targets = ["&&_unknown_opcode,\n"] * 256 for name, op in analysis.opmap.items(): if op < 256: - targets[op] = f"&&TARGET_record_previous_inst,\n" + targets[op] = f"&&record_previous_inst,\n" out.emit("#if _Py_TIER2\n") out.emit("static void *opcode_tracing_targets_table[256] = {\n") for target in targets: