Skip to content

Commit a77f11d

Browse files
timfelfangerer
authored andcommitted
remove PyTruffle_Tuple_Pack
1 parent 5202a4e commit a77f11d

File tree

3 files changed

+10
-14
lines changed

3 files changed

+10
-14
lines changed

graalpython/com.oracle.graal.python.cext/src/capi.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -380,7 +380,6 @@ extern PyObject* wrapped_null;
380380

381381
/* STR */
382382
__attribute__((always_inline)) PyObject* PyTruffle_Unicode_FromFormat(const char *fmt, va_list va);
383-
__attribute__((always_inline)) PyObject* PyTruffle_Tuple_Pack(int dummy, va_list va);
384383

385384
/* BYTES, BYTEARRAY */
386385
int bytes_buffer_getbuffer(PyBytesObject *self, Py_buffer *view, int flags);

graalpython/com.oracle.graal.python.cext/src/object.c

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -241,8 +241,16 @@ PyObject* PyObject_CallMethod(PyObject* object, const char* method, const char*
241241

242242
NO_INLINE
243243
PyObject* PyObject_CallMethodObjArgs(PyObject *callable, PyObject *name, ...) {
244-
PyObject* args;
245-
CallWithPolyglotArgs(args, name, PyTruffle_Tuple_Pack, 0);
244+
va_list vargs;
245+
va_start(vargs, name);
246+
int argc = polyglot_get_array_size(vargs);
247+
PyObject* args = PyTuple_New(argc);
248+
for (int i = 0; i < argc; i++) {
249+
PyObject *arg = va_arg(vargs, PyObject*);
250+
Py_INCREF(arg);
251+
PyTuple_SetItem(args, i, arg);
252+
}
253+
va_end(vargs);
246254
return UPCALL_CEXT_O(_jls_PyObject_CallMethod, native_to_java(callable), native_to_java(name), native_to_java(args));
247255
}
248256

graalpython/com.oracle.graal.python.cext/src/tupleobject.c

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -93,17 +93,6 @@ PyObject* PyTuple_Pack(Py_ssize_t n, ...) {
9393
return result;
9494
}
9595

96-
MUST_INLINE
97-
PyObject* PyTruffle_Tuple_Pack(int dummy, va_list vlist) {
98-
PyObject *result = PyTuple_New(argc);
99-
for (int i = 0; i < argc; i++) {
100-
PyObject *o = (PyObject*) argv[i];
101-
Py_XINCREF(o);
102-
PyTuple_SetItem(result, i, o);
103-
}
104-
return result;
105-
}
106-
10796
MUST_INLINE
10897
static PyObject * tuple_create(PyObject *iterable) {
10998
if (iterable == NULL) {

0 commit comments

Comments
 (0)