-
Notifications
You must be signed in to change notification settings - Fork 62
p-token: Improve code generation #90
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
Conversation
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
2d3c09b to
ed8194b
Compare
febo
commented
Sep 11, 2025
buffalojoec
previously approved these changes
Sep 12, 2025
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.
Nice Lgtm, just a take-it-or-leave it.
joncinque
approved these changes
Sep 12, 2025
599d2b1 to
3b92f39
Compare
29573a9 to
7bb3225
Compare
3b92f39 to
20e0ffe
Compare
7bb3225 to
8a588a6
Compare
joncinque
previously approved these changes
Sep 15, 2025
20e0ffe to
4db31a0
Compare
8a588a6 to
7da8421
Compare
The base branch was changed.
7da8421 to
7002efd
Compare
joncinque
approved these changes
Sep 15, 2025
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.
Problem
As described on #248, comparing pubkeys with the equality operator (==) might result in "bloated" code, which eventually leads to an increased CU consumption.
Solution
Use the new
pubkey_eqhelper, which performs the comparison as a sequence ofu64values. This PR also includes a couple of compiler hintslikely/unlikelyto further improve CUs.These changes have a positive impact on most instructions:
transfer:79->76transfer_checked:111->105set_authority:135->123burn:133->126burn_checked:136->129Note
The baseline for the comparison above is the branch
febo/custom-entrypoint(#85).