Update pre_and_post_stack_effect
Closed this issue · 1 comments
MatthieuDartiailh commented
It appears that a number of new (some old) opcodes have not been included in the calculations of pre_and_post_stack_effect which weakens the guarantee we make on the absence of segfault from recompiled bytecode. The relevant opcodes are:
- DUP_TOP_TWO (covered with DUP_TOP)
- WITH_EXCEPT_START
- COPY_DICT_WITHOUT_KEYS
- MATCH_*
Handled as push back opcodes
- LIST_TO_TUPLE (done as a push back opcode)
- LIST_EXTEND
- SET_UPDATE
- DICT_UPDATE
- DICT_MERGE
- IS_OP
- CONTAINS_OP
Ideally we should try to come up with a way to test for this but I am not sure it is possible. Help is welcome.
MatthieuDartiailh commented
Handled in #106