Feature or enhancement
Proposal:
_INSERT_1_LOAD_CONST_INLINE(_BORROW) and _LOAD_CONST_UNDER_INLINE(_BORROW) have identical stack effects — they're basically the same thing with different names.
|
tier2 op(_INSERT_1_LOAD_CONST_INLINE, (ptr/4, left -- res, l)) { |
|
res = PyStackRef_FromPyObjectNew(ptr); |
|
l = left; |
|
INPUTS_DEAD(); |
|
} |
|
|
|
tier2 op(_INSERT_1_LOAD_CONST_INLINE_BORROW, (ptr/4, left -- res, l)) { |
|
res = PyStackRef_FromPyObjectBorrow(ptr); |
|
l = left; |
|
INPUTS_DEAD(); |
|
} |
|
tier2 op(_LOAD_CONST_UNDER_INLINE, (ptr/4, old -- value, new)) { |
|
new = old; |
|
DEAD(old); |
|
value = PyStackRef_FromPyObjectNew(ptr); |
|
} |
|
|
|
tier2 op(_LOAD_CONST_UNDER_INLINE_BORROW, (ptr/4, old -- value, new)) { |
|
new = old; |
|
DEAD(old); |
|
value = PyStackRef_FromPyObjectBorrow(ptr); |
|
} |
_LOAD_CONST_UNDER_INLINE(_BORROW) already has entries in op_without_push, so remove_unneeded_uops can properly simplify it. However _INSERT_1 don't, thus we should rename all _INSERT_1 usages to _LOAD_CONST_UNDER and remove the duplicate definitions.
Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Links to previous discussion of this feature:
#148230 (comment)
Linked PRs
Feature or enhancement
Proposal:
_INSERT_1_LOAD_CONST_INLINE(_BORROW)and_LOAD_CONST_UNDER_INLINE(_BORROW)have identical stack effects — they're basically the same thing with different names.cpython/Python/bytecodes.c
Lines 5927 to 5937 in 0b20bff
cpython/Python/bytecodes.c
Lines 5968 to 5978 in 0b20bff
_LOAD_CONST_UNDER_INLINE(_BORROW)already has entries inop_without_push, soremove_unneeded_uopscan properly simplify it. However_INSERT_1don't, thus we should rename all_INSERT_1usages to_LOAD_CONST_UNDERand remove the duplicate definitions.Has this already been discussed elsewhere?
This is a minor feature, which does not need previous discussion elsewhere
Links to previous discussion of this feature:
#148230 (comment)
Linked PRs
_LOAD_CONST_UNDER_INLINE(_BORROW)in JIT #148236