bpo-36030: Remove _PyStack_AsTuple() and _PyStack_AsTupleSlice() (GH-12032)
diff --git a/Objects/call.c b/Objects/call.c
index 3250f8a..d52e7e2 100644
--- a/Objects/call.c
+++ b/Objects/call.c
@@ -114,7 +114,7 @@
return NULL;
}
- argstuple = _PyStack_AsTuple(args, nargs);
+ argstuple = _PyTuple_FromArray(args, nargs);
if (argstuple == NULL) {
return NULL;
}
@@ -176,7 +176,7 @@
return NULL;
}
- argstuple = _PyStack_AsTuple(stack, nargs);
+ argstuple = _PyTuple_FromArray(stack, nargs);
if (argstuple == NULL) {
return NULL;
}
@@ -508,7 +508,7 @@
case METH_VARARGS | METH_KEYWORDS:
{
/* Slow-path: create a temporary tuple for positional arguments */
- PyObject *argstuple = _PyStack_AsTuple(args, nargs);
+ PyObject *argstuple = _PyTuple_FromArray(args, nargs);
if (argstuple == NULL) {
goto exit;
}
@@ -670,7 +670,7 @@
and a temporary dict for keyword arguments */
PyObject *argtuple;
- argtuple = _PyStack_AsTuple(args, nargs);
+ argtuple = _PyTuple_FromArray(args, nargs);
if (argtuple == NULL) {
goto exit;
}
@@ -1271,27 +1271,6 @@
/* --- PyStack functions ------------------------------------------ */
-/* Issue #29234: Inlining _PyStack_AsTuple() into callers increases their
- stack consumption, Disable inlining to optimize the stack consumption. */
-_Py_NO_INLINE PyObject *
-_PyStack_AsTuple(PyObject *const *stack, Py_ssize_t nargs)
-{
- return _PyTuple_FromArray(stack, nargs);
-}
-
-
-PyObject*
-_PyStack_AsTupleSlice(PyObject *const *stack, Py_ssize_t nargs,
- Py_ssize_t start, Py_ssize_t end)
-{
- assert(0 <= start);
- assert(end <= nargs);
- assert(start <= end);
-
- return _PyTuple_FromArray(stack + start, end - start);
-}
-
-
PyObject *
_PyStack_AsDict(PyObject *const *values, PyObject *kwnames)
{