You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Convert more uops to leave their inputs on the stack to be cleaned up by _POP_TOP #145866
We have, in the JIT, optimizations to eliminate many _POP_TOP operations. To take advantage of that we have converted many uops to leave their operands on the stack and added subsequent _POP_TOPs to remove them.
See #134584 for many examples of how to do this and why it works.
However, there are still a few uops yet to do. These are:
I thought we were putting those off as you mentioned in #142949 ?
We don't want to prevent the optimization of unpacking temporary variables, like #144300, but when the unpacking is from a local variable, then it would be good to skip the decref check.
Activity
markshannon commentedon Mar 12, 2026
A few more:
Fidget-Spinner commentedon Mar 13, 2026
I thought we were putting those off as you mentioned in #142949 ?
Sacul0457 commentedon Mar 13, 2026
Could I work on
CALL_INTRINSIC_1?Fidget-Spinner commentedon Mar 13, 2026
Sure. I'll assign you on the issue.
markshannon commentedon Mar 13, 2026
We don't want to prevent the optimization of unpacking temporary variables, like #144300, but when the unpacking is from a local variable, then it would be good to skip the decref check.
Sacul0457 commentedon Mar 15, 2026
In the meantime, would it be ok if I worked on
DICT_UPDATEandSET_UPDATE?gh-145866: Convert `CALL_INTRINSIC_1` to leave its inputs on the stac…
KevinH15291 commentedon Mar 18, 2026
I'm interested in working on
CALL_INTRINSIC_2.pythongh-145866: Remove redundant refcount for `_CALL_INTRINSIC_2`
gh-145866: Convert `SET_UPDATE` to leave its inputs on the stack to b…
38 remaining items
pythongh-145866: Convert `END_[FOR/SEND]` to leave its inputs on the …
Merge branch 'main' into pythongh-145866/end-for-end-send-macro
pythongh-145866: Convert `END_SEND` to leave its inputs on the stack …
pythongh-145866: Convert `DICT_MERGE` to leave its inputs on the stac…
pythongh-145866: Convert `_CALL_INTRINSIC_2` to leave its inputs on t…
pythongh-145866: Convert `DICT_UPDATE` to leave its inputs on the sta…
pythongh-145866: Convert `LIST_EXTEND` to leave its inputs on the sta…
pythongh-145866: Convert `CALL_INTRINSIC_1` to leave its inputs on th…
pythongh-145866: Convert `SET_UPDATE` to leave its inputs on the stac…
pythongh-145866 : Update JIT contributor list (pythonGH-146170)
pythongh-145866: Convert `DICT_MERGE` to leave its inputs on the stac…
pythongh-145866: Convert `_CALL_INTRINSIC_2` to leave its inputs on t…
pythongh-145866: Convert `DICT_UPDATE` to leave its inputs on the sta…
pythongh-145866: Convert `LIST_EXTEND` to leave its inputs on the sta…
pythongh-145866: Convert `_CALL_METHOD_DESCRIPTOR_NOARGS` to leave it…