perf: only do exit check for instructions that can exit#2126
Merged
Conversation
da7f60f to
b372e35
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
0766db0 to
f7526d7
Compare
This comment has been minimized.
This comment has been minimized.
75148ad to
4124219
Compare
f7526d7 to
71de2f3
Compare
This comment has been minimized.
This comment has been minimized.
71de2f3 to
8b49167
Compare
This comment has been minimized.
This comment has been minimized.
8b49167 to
b775cb8
Compare
This comment has been minimized.
This comment has been minimized.
Contributor
There was a problem hiding this comment.
The macro change LGTM.
But how can we statically / non-manually ensure that the e1/2_impl never creates an error? The current way where I assume you manually checked each function for whether it can error or not doesn't seem very good/maintanable. I think I'd prefer if we actually had a different function signature for those functions and the derive macro used the function signature accordingly.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Contributor
There was a problem hiding this comment.
macros for everyone!
jonathanpwang
approved these changes
Sep 11, 2025
jonathanpwang
left a comment
Contributor
There was a problem hiding this comment.
LGTM except #exit_check seems unused/empty?
I confirmed that the exit code is never set directly in an *_impl and now always returned in the Result.
Commit: 0e94729 |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
create_tco_handlermacro tocreate_handlerwhich now automatically setsexit_codebased on whether the execute impl returnsResult::Err. it acts as a simple wrapper for execute impls that don't return aResultResult#[cfg(not(feature = "tco"))]benchmark comparison
Towards INT-4921