Skip to content
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

feat: Sync from noir #9965

Open
wants to merge 11 commits into
base: master
Choose a base branch
from
Open

feat: Sync from noir #9965

wants to merge 11 commits into from

Conversation

AztecBot
Copy link
Collaborator

Automated pull of development from the noir programming language, a dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
fix: allow range checks to be performed within the comptime intepreter (noir-lang/noir#6514)
fix: disallow #[test] on associated functions (noir-lang/noir#6449)
chore(ssa): Skip array_set pass for Brillig functions (noir-lang/noir#6513)
chore: Reverse ssa parser diff order (noir-lang/noir#6511)
chore: Parse negatives in SSA parser (noir-lang/noir#6510)
feat: avoid unnecessary ssa passes while loop unrolling (noir-lang/noir#6509)
fix(tests): Use a file lock as well as a mutex to isolate tests cases (noir-lang/noir#6508)
fix: set local_module before elaborating each trait (noir-lang/noir#6506)
fix: parse Slice type in SSa (noir-lang/noir#6507)
fix: perform arithmetic simplification through CheckedCast (noir-lang/noir#6502)
feat: SSA parser (noir-lang/noir#6489)
chore(test): Run test matrix on test_programs (noir-lang/noir#6429)
chore(ci): fix cargo deny (noir-lang/noir#6501)
feat: Deduplicate instructions across blocks (noir-lang/noir#6499)
chore: move tests for arithmetic generics closer to the code (noir-lang/noir#6497)
fix(docs): Fix broken links in oracles doc (noir-lang/noir#6488)
fix: Treat all parameters as possible aliases of each other (noir-lang/noir#6477)
chore: bump rust dependencies (noir-lang/noir#6482)
feat: use a full BlackBoxFunctionSolver implementation when execution brillig during acirgen (noir-lang/noir#6481)
chore(docs): Update How to Oracles (noir-lang/noir#5675)
chore: Release Noir(0.38.0) (noir-lang/noir#6422)
fix(ssa): Change array_set to not mutate slices coming from function inputs (noir-lang/noir#6463)
chore: update example to show how to split public inputs in bash (noir-lang/noir#6472)
fix: Discard optimisation that would change execution ordering or that is related to call outputs (noir-lang/noir#6461)
chore: proptest for canonicalize on infix type expressions (noir-lang/noir#6269)
fix: let formatter respect newlines between comments (noir-lang/noir#6458)
fix: check infix expression is valid in program input (noir-lang/noir#6450)
fix: don't crash on AsTraitPath with empty path (noir-lang/noir#6454)
fix(tests): Prevent EOF error while running test programs (noir-lang/noir#6455)
fix(sea): mem2reg to treat block input references as alias (noir-lang/noir#6452)
chore: revamp attributes (noir-lang/noir#6424)
feat!: Always Check Arithmetic Generics at Monomorphization (noir-lang/noir#6329)
chore: split path and import lookups (noir-lang/noir#6430)
fix(ssa): Resolve value IDs in terminator before comparing to array (noir-lang/noir#6448)
fix: right shift is not a regular division (noir-lang/noir#6400)
END_COMMIT_OVERRIDE

AztecBot and others added 7 commits November 14, 2024 14:45
…me intepreter (noir-lang/noir#6514)

fix: disallow `#[test]` on associated functions (noir-lang/noir#6449)
chore(ssa): Skip array_set pass for Brillig functions (noir-lang/noir#6513)
chore: Reverse ssa parser diff order (noir-lang/noir#6511)
chore: Parse negatives in SSA parser (noir-lang/noir#6510)
feat: avoid unnecessary ssa passes while loop unrolling (noir-lang/noir#6509)
fix(tests): Use a file lock as well as a mutex to isolate tests cases (noir-lang/noir#6508)
fix: set local_module before elaborating each trait (noir-lang/noir#6506)
fix: parse Slice type in SSa (noir-lang/noir#6507)
fix: perform arithmetic simplification through `CheckedCast` (noir-lang/noir#6502)
feat: SSA parser (noir-lang/noir#6489)
chore(test): Run test matrix on test_programs (noir-lang/noir#6429)
chore(ci): fix cargo deny (noir-lang/noir#6501)
feat: Deduplicate instructions across blocks (noir-lang/noir#6499)
chore: move tests for arithmetic generics closer to the code (noir-lang/noir#6497)
fix(docs): Fix broken links in oracles doc (noir-lang/noir#6488)
fix: Treat all parameters as possible aliases of each other (noir-lang/noir#6477)
chore: bump rust dependencies (noir-lang/noir#6482)
feat: use a full `BlackBoxFunctionSolver` implementation when execution brillig during acirgen (noir-lang/noir#6481)
chore(docs): Update How to Oracles (noir-lang/noir#5675)
chore: Release Noir(0.38.0) (noir-lang/noir#6422)
fix(ssa): Change array_set to not mutate slices coming from function inputs (noir-lang/noir#6463)
chore: update example to show how to split public inputs in bash (noir-lang/noir#6472)
fix: Discard optimisation that would change execution ordering or that is related to call outputs (noir-lang/noir#6461)
chore: proptest for `canonicalize` on infix type expressions (noir-lang/noir#6269)
fix: let formatter respect newlines between comments (noir-lang/noir#6458)
fix: check infix expression is valid in program input (noir-lang/noir#6450)
fix: don't crash on AsTraitPath with empty path (noir-lang/noir#6454)
fix(tests): Prevent EOF error while running test programs (noir-lang/noir#6455)
fix(sea): mem2reg to treat block input references as alias (noir-lang/noir#6452)
chore: revamp attributes (noir-lang/noir#6424)
feat!: Always Check Arithmetic Generics at Monomorphization (noir-lang/noir#6329)
chore: split path and import lookups (noir-lang/noir#6430)
fix(ssa): Resolve value IDs in terminator before comparing to array (noir-lang/noir#6448)
fix: right shift is not a regular division (noir-lang/noir#6400)
* master: (245 commits)
  chore: pull signed bitshifts from sync PR (#9939)
  chore: pull frontend changes from sync PR (#9935)
  feat: separate bytecode logs from unencrypted logs (#9891)
  git subrepo push --branch=master noir-projects/aztec-nr
  git_subrepo.sh: Fix parent in .gitrepo file. [skip ci]
  chore: replace relative paths to noir-protocol-circuits
  git subrepo push --branch=master barretenberg
  fix: token naming issue (#9950)
  feat: multiplier oracle (#9902)
  refactor: token refunds cleanup (#9943)
  chore: Use stack based recursion instead of function recursion (#9947)
  feat: parallelize DIE pass (#9933)
  feat(avm): Simulator enforces integral tag for DIV and field tag for FDIV (#9944)
  chore(avm): bugfixing witness generation for add, sub, mul for FF (#9938)
  feat: Google Cloud Kubernetes cluster + AWS Firewall Rules (#9915)
  chore: nuking ancient redundant test (#9941)
  fix: include 'master' version for aztec-up scripts (#9940)
  chore: fixing test contract fixture (#9909)
  refactor: token naming cleanup (#9904)
  chore: pull SSA parser from sync PR (#9928)
  ...
Copy link
Contributor

github-actions bot commented Nov 14, 2024

Changes to public function bytecode sizes

Generated at commit: 7b88e770f68e04f09e6fb2784227d6216436a807, compared to commit: 9370c91dbc9c7b8eb38236e2fa3637e92d7f3786

🧾 Summary (100% most significant diffs)

Program Bytecode size in bytes (+/-) %
Test::create_l2_to_l1_message_public +160 ❌ +7.84%
AvmTest::pedersen_hash_with_index +160 ❌ +5.45%
AvmTest::pedersen_hash +160 ❌ +5.45%
CardGame::start_game +200 ❌ +2.87%
CardGame::public_dispatch +400 ❌ +2.46%
Test::consume_message_from_arbitrary_sender_public +160 ❌ +2.01%
CardGame::on_cards_claimed +120 ❌ +1.64%
Test::consume_mint_to_public_message +180 ❌ +1.62%
AvmTest::pedersen_commit +20 ❌ +1.62%
Test::public_dispatch +300 ❌ +1.47%
TokenBridge::claim_public +180 ❌ +1.39%
AvmTest::bulk_testing +280 ❌ +1.18%
Uniswap::swap_public +180 ❌ +1.14%
TestLog::emit_unencrypted_events +20 ❌ +1.07%
TokenBridge::exit_to_l1_public +80 ❌ +1.00%
TokenBridge::public_dispatch +220 ❌ +0.99%
CardGame::on_game_joined +40 ❌ +0.79%
AvmTest::keccak_hash +20 ❌ +0.73%
Uniswap::public_dispatch +180 ❌ +0.72%
CardGame::on_card_played +40 ❌ +0.67%
AvmTest::public_dispatch +380 ❌ +0.62%
AvmTest::sha256_hash +20 ❌ +0.51%

Full diff report 👇
Program Bytecode size in bytes (+/-) %
Test::create_l2_to_l1_message_public 2,202 (+160) +7.84%
AvmTest::pedersen_hash_with_index 3,095 (+160) +5.45%
AvmTest::pedersen_hash 3,095 (+160) +5.45%
CardGame::start_game 7,165 (+200) +2.87%
CardGame::public_dispatch 16,643 (+400) +2.46%
Test::consume_message_from_arbitrary_sender_public 8,137 (+160) +2.01%
CardGame::on_cards_claimed 7,458 (+120) +1.64%
Test::consume_mint_to_public_message 11,284 (+180) +1.62%
AvmTest::pedersen_commit 1,255 (+20) +1.62%
Test::public_dispatch 20,664 (+300) +1.47%
TokenBridge::claim_public 13,136 (+180) +1.39%
AvmTest::bulk_testing 24,075 (+280) +1.18%
Uniswap::swap_public 15,903 (+180) +1.14%
TestLog::emit_unencrypted_events 1,885 (+20) +1.07%
TokenBridge::exit_to_l1_public 8,076 (+80) +1.00%
TokenBridge::public_dispatch 22,412 (+220) +0.99%
CardGame::on_game_joined 5,086 (+40) +0.79%
AvmTest::keccak_hash 2,769 (+20) +0.73%
Uniswap::public_dispatch 25,256 (+180) +0.72%
CardGame::on_card_played 5,987 (+40) +0.67%
AvmTest::public_dispatch 61,741 (+380) +0.62%
AvmTest::sha256_hash 3,910 (+20) +0.51%

Copy link
Contributor

github-actions bot commented Nov 14, 2024

Changes to circuit sizes

Generated at commit: 7b88e770f68e04f09e6fb2784227d6216436a807, compared to commit: 9370c91dbc9c7b8eb38236e2fa3637e92d7f3786

🧾 Summary (100% most significant diffs)

Program ACIR opcodes (+/-) % Circuit size (+/-) %
rollup_base_private +176 ❌ +0.05% +176 ❌ +0.01%
rollup_base_public +176 ❌ +0.04% +176 ❌ +0.00%
rollup_root +4 ❌ +0.03% +4 ❌ +0.00%
rollup_block_merge +4 ❌ +0.03% +4 ❌ +0.00%

Full diff report 👇
Program ACIR opcodes (+/-) % Circuit size (+/-) %
rollup_base_private 335,238 (+176) +0.05% 3,409,577 (+176) +0.01%
rollup_base_public 472,505 (+176) +0.04% 3,745,930 (+176) +0.00%
rollup_root 11,993 (+4) +0.03% 1,858,510 (+4) +0.00%
rollup_block_merge 12,009 (+4) +0.03% 1,858,524 (+4) +0.00%

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants