-
-
Notifications
You must be signed in to change notification settings - Fork 32k
gh-98831: Modernize CALL and family #101508
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
Merged
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit
Hold shift + click to select a range
234b876
Special-case CHECK_EVAL_BREAKER()
gvanrossum a6d0227
Improve DECREF_INPUTS()
gvanrossum bd63af8
Preliminaries
gvanrossum b6ec372
Modernize CALL_BOUND_METHOD_EXACT_ARGS
gvanrossum be49e61
Modernize CALL_PY_EXACT_ARGS
gvanrossum 18cacf5
Modernize CALL (not too happy with it)
gvanrossum d69ca8e
Modernize CALL_PY_WITH_DEFAULTS
gvanrossum 09701cf
Modernize CALL_NO_KW_TYPE_1
gvanrossum 389601d
Modernize CALL_NO_KW_STR_1
gvanrossum 9a7b75a
Modernize CALL_NO_KW_TUPLE_1
gvanrossum af19fa6
Modernize CALL_BUILTIN_CLASS (a different way)
gvanrossum 05e4ea8
Modernize CALL_NO_KW_BUILTIN_O
gvanrossum 491de28
Modernize CALL_NO_KW_BUILTIN_FAST
gvanrossum 25bc08a
Modernize CALL_BUILTIN_FAST_WITH_KEYWORDS
gvanrossum be8ec59
Modernize CALL_NO_KW_LEN
gvanrossum 4397083
Modernize CALL_NO_KW_ISINSTANCE
gvanrossum 8de5968
Modernize CALL_NO_KW_LIST_APPEND
gvanrossum 05b3fc7
Modernize CALL_NO_KW_METHOD_DESCRIPTOR_O
gvanrossum b834ab2
Modernize CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
gvanrossum d2c72d1
Modernize CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS
gvanrossum cbd3fe9
Modernize CALL_NO_KW_METHOD_DESCRIPTOR_FAST
gvanrossum c1d2475
Merge remote-tracking branch 'origin' into call-family
gvanrossum fc0f724
Merge remote-tracking branch 'origin/main' into call-family
gvanrossum ff6666f
Brandt's first review
gvanrossum b9dd29e
Remove unused is_method() macro
gvanrossum 6830fd8
Regenerate code
gvanrossum 448776b
Use Py_DECREF(&PyType_Type) after all
gvanrossum b29fdc0
Cleanup CALL_NO_KW_BUILTIN_O
gvanrossum b662db7
Cleanup CALL_NO_KW_BUILTIN_FAST
gvanrossum a968545
Cleanup CALL_BUILTIN_FAST_WITH_KEYWORDS
gvanrossum 1de410f
Cleanup CALL_NO_KW_LEN
gvanrossum 390a9b4
Move KWNAMES_LEN() to ceval_macros.h
gvanrossum 4250420
Cleanup CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
gvanrossum 5ca2b95
Cleanup CALL_NO_KW_METHOD_DESCRIPTOR_NOARGS
gvanrossum 9c41712
Cleanup CALL_NO_KW_METHOD_DESCRIPTOR_FAST
gvanrossum b7281a9
Cleanup CALL_PY_WITH_DEFAULTS
gvanrossum e140879
Cleanup CALL_PY_EXACT_ARGS
gvanrossum 6407369
Cleanup CALL_BOUND_METHOD_EXACT_ARGS
gvanrossum b9432ba
Cleanup CALL
gvanrossum 9595e01
Merge remote-tracking branch 'origin/main' into call-family
gvanrossum d84c30f
Remove support for legacy instructions
gvanrossum cd69634
Restore support for legacy instructions
gvanrossum 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
Modernize CALL_NO_KW_BUILTIN_O
- Loading branch information
commit 05e4ea8b5753f9eb0486b8101caf2ec386f68823
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
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
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
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.
Maybe do something like
args--; total_args++;
to avoid the awkwardis_meth
subtractions elsewhere when indexing intoargs
(this applies to other instructions, too, below).I like the pattern you used in
CALL_BUILTIN_CLASS
, and there's probably value in just using that same pattern everywhere.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.
Yeah, in the end that's the one I like best.