]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-129819: Allow tier2/JIT and tailcall (GH-129820)
authorKen Jin <kenjin@python.org>
Wed, 12 Feb 2025 18:18:36 +0000 (02:18 +0800)
committerGitHub <noreply@github.com>
Wed, 12 Feb 2025 18:18:36 +0000 (02:18 +0800)
Misc/NEWS.d/next/Build/2025-02-11-08-06-44.gh-issue-129819.7rn4dY.rst [new file with mode: 0644]
Python/ceval_macros.h
configure
configure.ac
pyconfig.h.in

diff --git a/Misc/NEWS.d/next/Build/2025-02-11-08-06-44.gh-issue-129819.7rn4dY.rst b/Misc/NEWS.d/next/Build/2025-02-11-08-06-44.gh-issue-129819.7rn4dY.rst
new file mode 100644 (file)
index 0000000..2463e4d
--- /dev/null
@@ -0,0 +1 @@
+Allow building the JIT with the tailcall interpreter.
index 50e940c19732add836ab2ccd4a5f3b1c8660b43d..2cb78fa80b4658bec82e45d330ae7d12f449a956 100644 (file)
@@ -397,7 +397,7 @@ do {                                                   \
     stack_pointer = _PyFrame_GetStackPointer(frame);   \
     if (next_instr == NULL) {                          \
         next_instr = frame->instr_ptr;                 \
-        goto error;                                    \
+        JUMP_TO_LABEL(error);                          \
     }                                                  \
     DISPATCH();                                        \
 } while (0)
index d46bc563a6724546e8b859c0b2644851f1dfc46c..453b0123ded0a4fced492e20b16624c8484bf699 100755 (executable)
--- a/configure
+++ b/configure
@@ -29284,18 +29284,6 @@ esac
 fi
 
 
-# Do not enable tail-calling interpreter if tier 2 is enabled.
-if ${tier2_flags:+false} :
-then :
-
-    case "$ac_cv_tail_call" in yes*)
-
-printf "%s\n" "#define Py_TAIL_CALL_INTERP 1" >>confdefs.h
-
-    esac
-
-fi
-
 
 case $ac_sys_system in
 AIX*)
index faa8909530389d3f6ca9f1d35b66a98d1d77cc2a..234ae90616af623304d273b9f259089f71af8478 100644 (file)
@@ -7033,19 +7033,6 @@ fi
 ],
 [AC_MSG_RESULT([no value specified])])
 
-# Do not enable tail-calling interpreter if tier 2 is enabled.
-AS_VAR_IF(
-  [tier2_flags],
-  [],
-  [
-    case "$ac_cv_tail_call" in yes*)
-      AC_DEFINE([Py_TAIL_CALL_INTERP], [1],
-      [Define if the C compiler supports efficient proper tail calls.])
-    esac
-  ],
-  []
-)
-
 
 case $ac_sys_system in
 AIX*)
index 9ea01ad3fc0a3163ecaf8b0b8749a6b81c75add6..4295b4f5ea5fbd11960255fec2823c92d0827c57 100644 (file)
 /* The version of SunOS/Solaris as reported by `uname -r' without the dot. */
 #undef Py_SUNOS_VERSION
 
-/* Define if the C compiler supports efficient proper tail calls. */
+/* Define if you want to use tail-calling interpreters in CPython. */
 #undef Py_TAIL_CALL_INTERP
 
 /* Define if you want to enable tracing references for debugging purpose */