-
-
Notifications
You must be signed in to change notification settings - Fork 32.1k
bpo-44187: Quickening infrastructure #26264
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
Merged
markshannon
merged 30 commits into
python:main
from
faster-cpython:quickening-infrastructure
Jun 7, 2021
Merged
Changes from 19 commits
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
7fae680
Add co_firstinstr field to code object.
markshannon c192bf2
Implement barebones quickening.
markshannon edce8de
Cleanup quickening internal API and use non-quickened bytecode when t…
markshannon 2d8b14a
Tweak internal quickening API.
markshannon af5b90e
Flesh out superinstruction insertion code a bit.
markshannon 526be3b
Add NEWS item
markshannon 6577457
Add new file to Windows build.
markshannon bc7b418
Fix up public symbol.
markshannon b54feff
Tweaks
markshannon ffd6e87
Merge branch 'main' into quickening-infrastructure
markshannon 8c12a0a
Clarify commments, fix assertions and switch sign of counter represen…
markshannon 9e1a771
Remove 'HotPy' prefixes.
markshannon f0acdf0
Add more explanatory comments and rename a few macros for clarity.
markshannon 8bd4487
Don't specialize instructions with EXTENDED_ARG.
markshannon d0ca916
Convert tracing dispatch to macro to ease keeping it in sync with nor…
markshannon ae520e5
Rename macro to avoid name clash.
markshannon e329b2e
Clarify and refactor quickening code. Account for EXTENDED_ARGs when …
markshannon 9345959
Merge branch 'main' into quickening-infrastructure
markshannon 2c06ed4
Move more heavily used fields of code object to front.
markshannon 2d4e416
Fix more typos
markshannon 39b3a93
Merge branch 'main' into quickening-infrastructure
markshannon ee2dae1
Make means of offset calculation explicit.
markshannon 12078f0
Merge branch 'main' into quickening-infrastructure
markshannon 16b985d
Add more explanatory comments.
markshannon 8ea4b85
Use index+1 for speed and initialize adaptive cache entry when perfor…
markshannon 55e673b
Add comment
markshannon b7c3995
Make sure that the uses of instruction index versus uses of nexti (in…
markshannon ecfa62b
Merge branch 'main' into quickening-infrastructure
markshannon ec50298
Merge branch 'main' into quickening-infrastructure
markshannon ab3a30b
Fix refleaks tests to account for quickened blocks
markshannon 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
3 changes: 3 additions & 0 deletions
3
Misc/NEWS.d/next/Core and Builtins/2021-05-20-12-43-04.bpo-44187.3lk0L1.rst
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
Implement quickening in the interpreter. This offers no advantages as | ||
yet, but is an enabler of future optimizations. See PEP 659 for full | ||
explanation. |
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.
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.
Uh oh!
There was an error while loading. Please reload this page.