Skip to content

Commit 5b06484

Browse files
committed
Spill before escaping calls. Initial attempt
1 parent ca2f457 commit 5b06484

File tree

10 files changed

+341
-281
lines changed

10 files changed

+341
-281
lines changed

Include/internal/pycore_opcode_metadata.h

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

Include/internal/pycore_uop_metadata.h

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

Python/bytecodes.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3214,10 +3214,10 @@ dummy_func(
32143214
op(_MAYBE_EXPAND_METHOD, (callable, self_or_null, args[oparg] -- func, maybe_self, args[oparg])) {
32153215
if (PyStackRef_TYPE(callable) == &PyMethod_Type && PyStackRef_IsNull(self_or_null)) {
32163216
PyObject *callable_o = PyStackRef_AsPyObjectBorrow(callable);
3217-
PyObject *self = ((PyMethodObject *)callable_o)->im_self;
3218-
maybe_self = PyStackRef_FromPyObjectNew(self);
32193217
PyObject *method = ((PyMethodObject *)callable_o)->im_func;
32203218
func = PyStackRef_FromPyObjectNew(method);
3219+
PyObject *self = ((PyMethodObject *)callable_o)->im_self;
3220+
maybe_self = PyStackRef_FromPyObjectNew(self);
32213221
/* Make sure that callable and all args are in memory */
32223222
args[-2] = func;
32233223
args[-1] = maybe_self;

Python/executor_cases.c.h

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

0 commit comments

Comments
 (0)