-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Align bytecode CFG cleanup with CPython #7781
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
youknowone
wants to merge
75
commits into
RustPython:main
Choose a base branch
from
youknowone:bytecode-parity
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
75 commits
Select commit
Hold shift + click to select a range
c09c475
Align CFG cleanup bytecode with CPython
youknowone fe64200
remove test
youknowone 94e2ae3
Align bytecode CFG cleanup with CPython
youknowone a743ffc
fix
youknowone c998628
Align named-except borrow deopts with CPython
youknowone 68610b9
Remove duplicated Lib test codegen cases
youknowone c82c43f
Cache CFG layout predecessors during NOP cleanup
youknowone cd9a711
Address bytecode parity review feedback
youknowone 15a88df
Align nested with cleanup bytecode
youknowone 4bd27be
Align conditional raise loop backedge ordering
youknowone 9b257b1
Align percent format optimization with CPython preprocess
youknowone 8fbe367
Preserve shared finally reraises in CFG cleanup
youknowone 3ccda96
Align CFG cleanup with CPython finally layout
youknowone 2aa954f
Align loop CFG anchors with CPython
youknowone 742ff9b
Preserve loop false-path CFG bodies
youknowone 6cfa6f2
Align protected store-subscript CFG bytecode
youknowone cc59c46
Align borrow deopts with CPython CFG
youknowone 891e972
Align delete-loop CFG with CPython
youknowone 19b7427
Align CFG inlining with CPython jumps
youknowone d734c06
Align protected CFG jump threading
youknowone 0e2b226
Narrow handler resume borrow deopt
youknowone 3bb0430
Preserve branch-local implicit continue targets
youknowone 55ec30d
Avoid duplicating boolop continue backedges
youknowone 95c4492
Preserve same-line assert message borrows
youknowone 8ce6677
Handle nested handler update tail borrows
youknowone d37b510
Align terminal handler borrow deopts with CPython CFG
youknowone ac086bf
Refine borrow deopts for reraise handler continuations
youknowone 644d3e3
Refine try-else terminal handler borrow deopts
youknowone 7adc9f4
Refine protected tail borrow parity
youknowone 33ec4a6
Refine exception borrow deopt parity
youknowone de00801
Align while loop CFG layout with CPython
youknowone 309b936
Align loop backedge CFG with CPython
youknowone f3b8ba1
Handle multi-block scope-exit CFG segments
youknowone aa2ca06
Preserve CPython-normalized call-body CFG
youknowone cea61f2
Preserve CPython empty if-end return anchor
youknowone 8be2a54
Match CPython borrow CFG boundaries
youknowone f155436
Match CPython tuple unpack constant folding
youknowone 85c3367
Match CPython implicit continue CFG layout
youknowone bb7be66
Keep implicit continue CFG targets in layout
youknowone 058bc6d
Align try-except end label location with CPython
youknowone e4eb97c
Remove folded operand NOPs before line propagation
youknowone b022111
Align no-location return exit handling
youknowone 5e4c096
Align nested protected import bytecode
youknowone f7d8240
Align conditional loop backedge layout
youknowone 5001df7
Align protected loop exit duplication
youknowone 6b604df
Preserve protected jump-back duplicates
youknowone 83f109e
Align loop call-body backedge layout
youknowone 3e11e1f
Align future annotation setup ordering
youknowone 88ec625
Align named-except cleanup and borrow parity
youknowone e24a9b7
Align redundant jump removal with CPython
youknowone 7f1376b
Preserve finally cleanup jump NOPs
youknowone 6f95452
Align finally cleanup CFG with CPython
youknowone 1d078e3
Fix finally cleanup CFG regression
youknowone 85c70ca
Align async cleanup CFG marker handling
youknowone 606e816
Preserve CPython continue CFG layout before conditional bodies
youknowone b340ca8
Refine protected CFG bytecode parity
youknowone 330c44c
Align protected CFG cleanup layout
youknowone 9c737eb
Align CFG cleanup and peephole parity
youknowone d35c13d
Align nested loop conditional CFG layout
youknowone bba340b
Align named expression comprehension scope
youknowone ea757cf
Align CFG cleanup with CPython line markers
youknowone 555e8fc
Align CFG line marker cleanup with CPython
youknowone 8abe32a
Align loop CFG fallthrough with CPython
youknowone 05d96e4
Align conditional CFG fallthrough cases with CPython
youknowone a891818
Align protected CFG layout with CPython
youknowone 24dde16
Align CFG cleanup and type-param calls with CPython
youknowone 93e8bc4
Align annotation and super call bytecode parity
youknowone 1b414fe
Align finally reraise tail inlining
youknowone 7268983
Align protected loop CFG cleanup
youknowone a24a791
Align loop CFG bytecode layout with CPython
youknowone 0941b7a
Align nested loop jump-back layout
youknowone 448e1f2
Align conditional jump threading with CPython
youknowone a448fb6
fix
youknowone b3b8329
Skip test_stack_overflow under -u cpu
youknowone 7790e54
Fix CI lint and clippy errors
youknowone File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
must be investigated