Skip to content

Commit 5fbe7b0

Browse files
committed
STORE_SLICE
1 parent 62c67b0 commit 5fbe7b0

File tree

2 files changed

+18
-24
lines changed

2 files changed

+18
-24
lines changed

Python/bytecodes.c

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -345,25 +345,19 @@ dummy_func(
345345
ERROR_IF(res == NULL, error);
346346
}
347347

348-
// stack effect: (__0, __1, __2, __3 -- )
349-
inst(STORE_SLICE) {
350-
PyObject *stop = POP();
351-
PyObject *start = POP();
352-
PyObject *container = TOP();
353-
PyObject *v = SECOND();
354-
348+
inst(STORE_SLICE, (v, container, start, stop -- )) {
355349
PyObject *slice = _PyBuildSlice_ConsumeRefs(start, stop);
350+
int err;
356351
if (slice == NULL) {
357-
goto error;
352+
err = 1;
358353
}
359-
int err = PyObject_SetItem(container, slice, v);
360-
Py_DECREF(slice);
361-
if (err) {
362-
goto error;
354+
else {
355+
err = PyObject_SetItem(container, slice, v);
356+
Py_DECREF(slice);
363357
}
364-
STACK_SHRINK(2);
365358
Py_DECREF(v);
366359
Py_DECREF(container);
360+
ERROR_IF(err, error);
367361
}
368362

369363
// stack effect: (__0 -- )

Python/generated_cases.c.h

Lines changed: 11 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)