diff options
author | Hood Chatham <roberthoodchatham@gmail.com> | 2022-11-15 17:53:39 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-15 17:53:39 (GMT) |
commit | 86a49e06733b6ae9fef8de0c7e6db93ee87a2e32 (patch) | |
tree | 2078ba68f3064b6f870d4c370e0a69e712c714c4 /Python | |
parent | 65dab1506e9c8ac40b3f9da834121d86c6417275 (diff) | |
download | cpython-86a49e06733b6ae9fef8de0c7e6db93ee87a2e32.zip cpython-86a49e06733b6ae9fef8de0c7e6db93ee87a2e32.tar.gz cpython-86a49e06733b6ae9fef8de0c7e6db93ee87a2e32.tar.bz2 |
gh-99460 Emscripten trampolines on optimized METH_O and METH_NOARGS code paths (#99461)
Diffstat (limited to 'Python')
-rw-r--r-- | Python/bytecodes.c | 6 | ||||
-rw-r--r-- | Python/generated_cases.c.h | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/Python/bytecodes.c b/Python/bytecodes.c index da3ab91..69ee741 100644 --- a/Python/bytecodes.c +++ b/Python/bytecodes.c @@ -3192,7 +3192,7 @@ dummy_func( goto error; } PyObject *arg = TOP(); - PyObject *res = cfunc(PyCFunction_GET_SELF(callable), arg); + PyObject *res = _PyCFunction_TrampolineCall(cfunc, PyCFunction_GET_SELF(callable), arg); _Py_LeaveRecursiveCallTstate(tstate); assert((res != NULL) ^ (_PyErr_Occurred(tstate) != NULL)); @@ -3393,7 +3393,7 @@ dummy_func( if (_Py_EnterRecursiveCallTstate(tstate, " while calling a Python object")) { goto error; } - PyObject *res = cfunc(self, arg); + PyObject *res = _PyCFunction_TrampolineCall(cfunc, self, arg); _Py_LeaveRecursiveCallTstate(tstate); assert((res != NULL) ^ (_PyErr_Occurred(tstate) != NULL)); Py_DECREF(self); @@ -3465,7 +3465,7 @@ dummy_func( if (_Py_EnterRecursiveCallTstate(tstate, " while calling a Python object")) { goto error; } - PyObject *res = cfunc(self, NULL); + PyObject *res = _PyCFunction_TrampolineCall(cfunc, self, NULL); _Py_LeaveRecursiveCallTstate(tstate); assert((res != NULL) ^ (_PyErr_Occurred(tstate) != NULL)); Py_DECREF(self); diff --git a/Python/generated_cases.c.h b/Python/generated_cases.c.h index 2ad7cc9..552d0e6 100644 --- a/Python/generated_cases.c.h +++ b/Python/generated_cases.c.h @@ -3201,7 +3201,7 @@ goto error; } PyObject *arg = TOP(); - PyObject *res = cfunc(PyCFunction_GET_SELF(callable), arg); + PyObject *res = _PyCFunction_TrampolineCall(cfunc, PyCFunction_GET_SELF(callable), arg); _Py_LeaveRecursiveCallTstate(tstate); assert((res != NULL) ^ (_PyErr_Occurred(tstate) != NULL)); @@ -3402,7 +3402,7 @@ if (_Py_EnterRecursiveCallTstate(tstate, " while calling a Python object")) { goto error; } - PyObject *res = cfunc(self, arg); + PyObject *res = _PyCFunction_TrampolineCall(cfunc, self, arg); _Py_LeaveRecursiveCallTstate(tstate); assert((res != NULL) ^ (_PyErr_Occurred(tstate) != NULL)); Py_DECREF(self); @@ -3474,7 +3474,7 @@ if (_Py_EnterRecursiveCallTstate(tstate, " while calling a Python object")) { goto error; } - PyObject *res = cfunc(self, NULL); + PyObject *res = _PyCFunction_TrampolineCall(cfunc, self, NULL); _Py_LeaveRecursiveCallTstate(tstate); assert((res != NULL) ^ (_PyErr_Occurred(tstate) != NULL)); Py_DECREF(self); |