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
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:
Feature or enhancement
Proposal:
This is a follow up to #134584
We have, in the JIT, optimizations to eliminate many
_POP_TOPoperations. 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:
In addition,
POP_ITER,END_FORandEND_SENDcan be implemented as macro ops, usingPOP_TOPto gain the benefit of the thePOP_TOPoptimization.Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Linked PRs
CALL_INTRINSIC_1to leave its inputs on the stack to be cleaned up by_POP_TOP. #145964SET_UPDATEto leave its inputs on the stack to be cleaned up by_POP_TOP#145979POP_ITERas macro op usingPOP_TOP#146185DICT_UPDATEto leave its inputs on the stack to be cleaned up by_POP_TOP#146190_CALL_INTRINSIC_2to leave its inputs on the stack to be cleaned up by_POP_TOP#146262DICT_MERGEto leave its inputs on the stack to be cleaned up by_POP_TOP#146329LIST_EXTENDto leave its inputs on the stack to be cleaned up by_POP_TOPbe cleaned up by_POP_TOP#146383_CALL_METHOD_DESCRIPTOR_NOARGSto leave its inputs on the stack to be cleaned up by _POP_TOP #148227END_[FOR/SEND]to leave its inputs on the stack to be cleaned up by_POP_TOP#148477