-
Notifications
You must be signed in to change notification settings - Fork 219
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
chore: builtin wrapping shift left #3270
Merged
Merged
Conversation
This file contains 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
kevaundray
reviewed
Oct 24, 2023
Co-authored-by: jfecher <jfecher11@gmail.com>
Co-authored-by: kevaundray <kevtheappdev@gmail.com>
…r-examples (#3266) Co-authored-by: josh crites <jc@joshcrites.com>
Co-authored-by: kevaundray <kevtheappdev@gmail.com>
Co-authored-by: kevaundray <kevtheappdev@gmail.com> Co-authored-by: github-merge-queue[bot] <github-merge-queue[bot]@users.noreply.github.com> Co-authored-by: Tom French <15848336+TomAFrench@users.noreply.github.com> Co-authored-by: kek kek kek <andriy.n@obox.systems> Co-authored-by: Martin Verzilli <martin.verzilli@gmail.com> Co-authored-by: Savio <72797635+Savio-Sou@users.noreply.github.com> Co-authored-by: Alex Gherghisan <alexghr@users.noreply.github.com> Co-authored-by: vezenovm <mvezenov@gmail.com>
Co-authored-by: Tom French <tom@tomfren.ch>
kevaundray
reviewed
Oct 26, 2023
jfecher
reviewed
Oct 26, 2023
jfecher
reviewed
Oct 26, 2023
jfecher
approved these changes
Oct 27, 2023
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.
Thanks!
TomAFrench
added a commit
that referenced
this pull request
Oct 30, 2023
* master: (242 commits) chore(docs): Update Windows installation (#3326) chore!: change stdlib function `pedersen` to `pedersen_commitment` (#3341) chore: add back algolia recrawler (#3332) chore: comment out algolia recrawler workflow as its failing master (#3331) chore: Modify single line if-else expression width threshold (#3329) feat: Expand trait impl overlap check to cover generic types (#3320) feat: Implement where clauses on impls (#3324) chore: builtin wrapping shift left (#3270) chore: format integration tests (#3257) fix(3300): cache warnings into debug artefacts (#3313) fix(3275): activate brillig modulo test with negative integers (#3318) feat: Add check for overlapping generic traits (#3307) feat: Refactor debugger and separate core from UI (#3308) chore: recrawl docs on merge (#3306) chore: add bn254 attribute when needed in the stdlib (#3208) feat: add exports of JS black box solvers to noirJS (#3295) chore: upload acir artifacts as a github artifact (#3288) chore: bump bb version to 0.12.0 (#3304) chore(docs): Supplement descriptions for defaulting loop indices to be `u64` (#3237) chore: create publish-docs.yml (#3298) ...
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.
Description
Adds a builtin for doing wrapping shift-left and use it in sha256.
Wrapping shift-left means the shift-left can overflow the type and we compute the result modulo the bit size.
Problem*
Wrapping (i.e computing the result modulo the bit size) is the default mode for noir but we want to change this and rather issue an error in case of overflow. However sha256 relies on wrapping so in order to smoothly transition from wrapping to overflow-check, we must first modify sha256 so that it does not use the default shift-left.
Resolves
Summary*
Documentation
This PR requires documentation updates when merged.
Additional Context
PR Checklist*
cargo fmt
on default settings.