bpo-33387: Simplify bytecodes for try-finally, try-except and with blocks.#6641
Conversation
|
For the record, here is the result of pyperformance. |
Sorry, something went wrong.
0dfe44c to
d8b54c9
Compare
July 8, 2018 11:55
|
@markshannon FYI, |
Sorry, something went wrong.
d8b54c9 to
3efb201
Compare
September 9, 2018 11:45
3efb201 to
b16b8e8
Compare
September 19, 2018 13:18
|
All comments addressed and rebased to fix merge conflict with ddd1949 |
Sorry, something went wrong.
b16b8e8 to
d64244b
Compare
May 6, 2019 15:14
|
Rebased again |
Sorry, something went wrong.
d64244b to
6f916e9
Compare
May 18, 2019 14:24
|
Rebased yet again. |
Sorry, something went wrong.
b9c698e to
cdb2581
Compare
June 4, 2019 14:18
|
Rebased yet again (twice) |
Sorry, something went wrong.
brettcannon
left a comment
There was a problem hiding this comment.
Mostly stylistic stuff and requests for comments to help explain the code in some spots.
Sorry, something went wrong.
|
All review comments addressed. |
Sorry, something went wrong.
|
FYI no need to wait on me on an approving review. |
Sorry, something went wrong.
db08c6d to
c611d1b
Compare
June 13, 2019 21:27
|
Rebased yet again... Time to press that merge button ⬇️ 🙂 |
Sorry, something went wrong.
|
@markshannon is there anything preventing you from doing the merge at this point? |
Sorry, something went wrong.
c611d1b to
1bd40b8
Compare
June 23, 2019 10:00
|
@brettcannon No technical obstacles, but I think that for large PRs like this one, it is best if someone other than the author does the merge. |
Sorry, something went wrong.
|
@markshannon Are you choosing to skip my doc change suggestions? (I'm asking because you said all the comments were addressed but those were left open/unresolved, so I just wanted to check the PR is in its final state sans merge conflict.) As for clicking "approved" on a review, that's as close as people typically get for approval on a core dev's PR. Historically core devs have done their own merges as they will be the ones to handle reversions, etc. IOW if you want to address my remaining doc comments and are willing to handle reversion duties, etc., then I can click the merge button for you. |
Sorry, something went wrong.
1bd40b8 to
385b2df
Compare
July 14, 2019 11:27
54f381c to
23cfe89
Compare
September 12, 2019 10:16
23cfe89 to
62a3625
Compare
October 7, 2019 11:13
62a3625 to
8457a00
Compare
November 12, 2019 09:42
…parate code for normal and exceptional paths. Remove BEGIN_FINALLY, END_FINALLY, CALL_FINALLY and POP_FINALLY bytecodes. Implement finally blocks by code duplication. Reimplement frame.lineno setter using line numbers rather than bytecode offsets.
8457a00 to
6364ee7
Compare
November 12, 2019 10:19
|
I've been holding off on this as I wanted to let the 3.8 release stabilize before changing the bytecode. @brettcannon I have addressed all your comments. |
Sorry, something went wrong.
|
@markshannon: Please replace |
Sorry, something went wrong.
…parate code for normal and exceptional paths. (python#6641) Remove BEGIN_FINALLY, END_FINALLY, CALL_FINALLY and POP_FINALLY bytecodes. Implement finally blocks by code duplication. Reimplement frame.lineno setter using line numbers rather than bytecode offsets.
…parate code for normal and exceptional paths. (python#6641) Remove BEGIN_FINALLY, END_FINALLY, CALL_FINALLY and POP_FINALLY bytecodes. Implement finally blocks by code duplication. Reimplement frame.lineno setter using line numbers rather than bytecode offsets.
Quoting the bpo issue:
The implementation of
withstatements is a bit more complex. The with statementis implemented as:
https://bugs.python.org/issue33387