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: simplify simple conditionals for brillig #7205

Merged
merged 43 commits into from
Feb 27, 2025
Merged

Conversation

guipublic
Copy link
Contributor

@guipublic guipublic commented Jan 28, 2025

Description

Problem*

Resolves #6394

Summary*

Add a pass which simplify simple if statements in brillig functions

Additional Context

The PR is working fine now, the memory consumption alert does not seem to be up-to-date.
The report from the last commit is correct: https://github.com/noir-lang/noir/actions/runs/13119725684/artifacts/2528887358

Documentation*

Check one:

  • No documentation needed.
  • Documentation included in this PR.
  • [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt on default settings.

github-actions[bot]

This comment was marked as duplicate.

github-actions[bot]

This comment was marked as off-topic.

Copy link
Contributor

github-actions bot commented Jan 31, 2025

Changes to number of Brillig opcodes executed

Generated at commit: 80b11a0da6c8dc0cf48e765b334c83e117d2075b, compared to commit: b7c86f4535a3617d8aaf892140ed1d412bf30287

🧾 Summary (10% most significant diffs)

Program Brillig opcodes (+/-) %
brillig_conditional_inliner_max +4 ❌ +14.81%
brillig_conditional_inliner_zero +4 ❌ +14.81%
binary_operator_overloading_inliner_max +26 ❌ +13.98%
brillig_block_parameter_liveness_inliner_max -1,983 ✅ -68.17%
brillig_block_parameter_liveness_inliner_min -1,983 ✅ -68.17%
brillig_block_parameter_liveness_inliner_zero -1,983 ✅ -68.17%

Full diff report 👇
Program Brillig opcodes (+/-) %
brillig_conditional_inliner_max 31 (+4) +14.81%
brillig_conditional_inliner_zero 31 (+4) +14.81%
binary_operator_overloading_inliner_max 212 (+26) +13.98%
brillig_conditional_inliner_min 44 (+3) +7.32%
trait_impl_base_type_inliner_zero 71 (+3) +4.41%
u128_inliner_max 24,534 (+908) +3.84%
trait_impl_base_type_inliner_min 256 (+9) +3.64%
slice_regex_inliner_max 3,340 (+108) +3.34%
slice_regex_inliner_zero 4,052 (+108) +2.74%
embedded_curve_ops_inliner_zero 397 (+10) +2.58%
inline_decompose_hint_brillig_call_inliner_min 259 (+6) +2.37%
embedded_curve_ops_inliner_min 623 (+14) +2.30%
slices_inliner_max 3,140 (+66) +2.15%
u128_inliner_zero 40,198 (+724) +1.83%
u128_inliner_min 47,702 (+724) +1.54%
binary_operator_overloading_inliner_zero 228 (+3) +1.33%
slice_regex_inliner_min 8,519 (+108) +1.28%
binary_operator_overloading_inliner_min 400 (+3) +0.76%
derive_inliner_zero 329 (+2) +0.61%
derive_inliner_min 598 (+2) +0.34%
array_sort_inliner_min 670 (+2) +0.30%
sha256_var_witness_const_regression_inliner_zero 6,888 (+6) +0.09%
sha256_inliner_zero 11,192 (+9) +0.08%
6_inliner_zero 4,405 (+3) +0.07%
conditional_regression_short_circuit_inliner_zero 4,482 (+3) +0.07%
sha256_var_witness_const_regression_inliner_max 6,371 (+3) +0.05%
sha256_inliner_max 13,522 (+3) +0.02%
sha256_var_size_regression_inliner_max 16,613 (+2) +0.01%
array_dynamic_blackbox_input_inliner_min 22,543 (-4) -0.02%
array_dynamic_blackbox_input_inliner_zero 21,497 (-4) -0.02%
array_dynamic_blackbox_input_inliner_max 17,199 (-4) -0.02%
poseidon_bn254_hash_inliner_zero 182,960 (-285) -0.16%
poseidon_bn254_hash_width_3_inliner_zero 182,960 (-285) -0.16%
poseidon_bn254_hash_inliner_max 152,443 (-285) -0.19%
poseidon_bn254_hash_width_3_inliner_max 152,443 (-285) -0.19%
6_array_inliner_min 2,548 (-9) -0.35%
6_array_inliner_zero 2,478 (-9) -0.36%
6_array_inliner_max 1,524 (-9) -0.59%
main_bool_arg_inliner_max 66 (-2) -2.94%
main_bool_arg_inliner_min 66 (-2) -2.94%
main_bool_arg_inliner_zero 66 (-2) -2.94%
dont_deduplicate_call_inliner_max 21 (-2) -8.70%
dont_deduplicate_call_inliner_min 21 (-2) -8.70%
dont_deduplicate_call_inliner_zero 21 (-2) -8.70%
brillig_block_parameter_liveness_inliner_max 926 (-1,983) -68.17%
brillig_block_parameter_liveness_inliner_min 926 (-1,983) -68.17%
brillig_block_parameter_liveness_inliner_zero 926 (-1,983) -68.17%

Copy link
Contributor

github-actions bot commented Jan 31, 2025

Changes to Brillig bytecode sizes

Generated at commit: 80b11a0da6c8dc0cf48e765b334c83e117d2075b, compared to commit: b7c86f4535a3617d8aaf892140ed1d412bf30287

🧾 Summary (10% most significant diffs)

Program Brillig opcodes (+/-) %
regression_5435_inliner_max -9 ✅ -21.95%
regression_5435_inliner_min -9 ✅ -21.95%
regression_5435_inliner_zero -9 ✅ -21.95%
brillig_block_parameter_liveness_inliner_max -3,996 ✅ -81.65%
brillig_block_parameter_liveness_inliner_min -3,996 ✅ -81.65%
brillig_block_parameter_liveness_inliner_zero -3,996 ✅ -81.65%

Full diff report 👇
Program Brillig opcodes (+/-) %
slice_regex_inliner_zero 1,695 (+26) +1.56%
slices_inliner_max 1,957 (+28) +1.45%
slice_regex_inliner_min 2,097 (+26) +1.26%
slice_regex_inliner_max 2,324 (+26) +1.13%
regression_5045_inliner_min 214 (+2) +0.94%
inline_decompose_hint_brillig_call_inliner_min 232 (+2) +0.87%
embedded_curve_ops_inliner_min 484 (+2) +0.41%
u128_inliner_min 2,160 (-2) -0.09%
u128_inliner_zero 1,889 (-2) -0.11%
poseidon_bn254_hash_width_3_inliner_max 5,244 (-6) -0.11%
poseidon_bn254_hash_inliner_max 5,244 (-6) -0.11%
poseidon_bn254_hash_inliner_zero 4,658 (-6) -0.13%
poseidon_bn254_hash_width_3_inliner_zero 4,658 (-6) -0.13%
binary_operator_overloading_inliner_min 354 (-1) -0.28%
derive_inliner_zero 312 (-1) -0.32%
derive_inliner_min 554 (-2) -0.36%
u128_inliner_max 2,634 (-10) -0.38%
trait_impl_base_type_inliner_min 233 (-1) -0.43%
binary_operator_overloading_inliner_zero 224 (-1) -0.44%
array_dynamic_blackbox_input_inliner_min 1,232 (-7) -0.56%
array_sort_inliner_min 346 (-2) -0.57%
array_sort_inliner_max 286 (-2) -0.69%
array_sort_inliner_zero 286 (-2) -0.69%
array_dynamic_blackbox_input_inliner_zero 998 (-7) -0.70%
array_dynamic_blackbox_input_inliner_max 805 (-7) -0.86%
trait_impl_base_type_inliner_zero 63 (-1) -1.56%
brillig_conditional_inliner_min 44 (-1) -2.22%
6_array_inliner_min 440 (-11) -2.44%
6_array_inliner_zero 430 (-11) -2.49%
6_array_inliner_max 371 (-11) -2.88%
binary_operator_overloading_inliner_max 383 (-15) -3.77%
main_bool_arg_inliner_max 63 (-3) -4.55%
main_bool_arg_inliner_min 63 (-3) -4.55%
main_bool_arg_inliner_zero 63 (-3) -4.55%
dont_deduplicate_call_inliner_max 23 (-3) -11.54%
dont_deduplicate_call_inliner_min 23 (-3) -11.54%
dont_deduplicate_call_inliner_zero 23 (-3) -11.54%
regression_5435_inliner_max 32 (-9) -21.95%
regression_5435_inliner_min 32 (-9) -21.95%
regression_5435_inliner_zero 32 (-9) -21.95%
brillig_block_parameter_liveness_inliner_max 898 (-3,996) -81.65%
brillig_block_parameter_liveness_inliner_min 898 (-3,996) -81.65%
brillig_block_parameter_liveness_inliner_zero 898 (-3,996) -81.65%

@guipublic guipublic marked this pull request as ready for review January 31, 2025 17:11
Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Execution Time'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: 06d26db Previous: a9e9850 Ratio
global_var_regression_entry_points 0.009 s 0.007 s 1.29

This comment was automatically generated by workflow using github-action-benchmark.

CC: @TomAFrench

@guipublic guipublic requested a review from a team February 4, 2025 10:15
Copy link
Contributor

@vezenovm vezenovm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You had added some unit tests in this commit f5b4076. I don't see those tests anymore? Looks like they may have been reverted.

EDIT: I was looking at an out of date diff ignore my comments about seemingly reverted code.

Copy link
Contributor

@vezenovm vezenovm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have some nits, but they are all non-blocking so I am approving. Let's just make sure to capture an issue for improving the instruction cost estimates.

@guipublic guipublic enabled auto-merge February 27, 2025 11:49
@guipublic guipublic added this pull request to the merge queue Feb 27, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Feb 27, 2025
@guipublic guipublic added this pull request to the merge queue Feb 27, 2025
@guipublic guipublic removed this pull request from the merge queue due to a manual request Feb 27, 2025
@guipublic guipublic added this pull request to the merge queue Feb 27, 2025
Merged via the queue into master with commit 9056d74 Feb 27, 2025
102 checks passed
@guipublic guipublic deleted the gd/issue_6394 branch February 27, 2025 12:28
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 4, 2025
…r-lang/noir#7477)

fix(frontend)!: Restrict capturing mutable variable in lambdas (noir-lang/noir#7488)
feat: perform constant sha256 compressions at compile-time (noir-lang/noir#7566)
chore: bump external pinned commits (noir-lang/noir#7565)
chore(ssa): Turn the Brillig constraints check back on by default (noir-lang/noir#7404)
chore: bump external pinned commits (noir-lang/noir#7561)
chore: address some frontend tests TODOs (noir-lang/noir#7554)
fix: shift right overflow in ACIR with unknown var now returns zero (noir-lang/noir#7509)
chore(cli): Forward `nargo execute` to `noir_artifact_cli` (noir-lang/noir#7406)
feat: Support `<Type as Trait>::method` in expressions (noir-lang/noir#7551)
chore: remove FileDiagnostic (noir-lang/noir#7546)
chore: add some extra tests (noir-lang/noir#7544)
fix: fix a few cases where safety comment wasn't correctly identified (noir-lang/noir#7548)
chore!: remove U128 struct from stdlib (noir-lang/noir#7529)
feat: simplify simple conditionals for brillig (noir-lang/noir#7205)
chore: put RcTracker as part of the DIE context (noir-lang/noir#7309)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 5, 2025
chore!: remove deprecated hash functions from stdlib (noir-lang/noir#7477)
fix(frontend)!: Restrict capturing mutable variable in lambdas (noir-lang/noir#7488)
feat: perform constant sha256 compressions at compile-time (noir-lang/noir#7566)
chore: bump external pinned commits (noir-lang/noir#7565)
chore(ssa): Turn the Brillig constraints check back on by default (noir-lang/noir#7404)
chore: bump external pinned commits (noir-lang/noir#7561)
chore: address some frontend tests TODOs (noir-lang/noir#7554)
fix: shift right overflow in ACIR with unknown var now returns zero (noir-lang/noir#7509)
chore(cli): Forward `nargo execute` to `noir_artifact_cli` (noir-lang/noir#7406)
feat: Support `<Type as Trait>::method` in expressions (noir-lang/noir#7551)
chore: remove FileDiagnostic (noir-lang/noir#7546)
chore: add some extra tests (noir-lang/noir#7544)
fix: fix a few cases where safety comment wasn't correctly identified (noir-lang/noir#7548)
chore!: remove U128 struct from stdlib (noir-lang/noir#7529)
feat: simplify simple conditionals for brillig (noir-lang/noir#7205)
chore: put RcTracker as part of the DIE context (noir-lang/noir#7309)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 5, 2025
chore!: remove deprecated hash functions from stdlib (noir-lang/noir#7477)
fix(frontend)!: Restrict capturing mutable variable in lambdas (noir-lang/noir#7488)
feat: perform constant sha256 compressions at compile-time (noir-lang/noir#7566)
chore: bump external pinned commits (noir-lang/noir#7565)
chore(ssa): Turn the Brillig constraints check back on by default (noir-lang/noir#7404)
chore: bump external pinned commits (noir-lang/noir#7561)
chore: address some frontend tests TODOs (noir-lang/noir#7554)
fix: shift right overflow in ACIR with unknown var now returns zero (noir-lang/noir#7509)
chore(cli): Forward `nargo execute` to `noir_artifact_cli` (noir-lang/noir#7406)
feat: Support `<Type as Trait>::method` in expressions (noir-lang/noir#7551)
chore: remove FileDiagnostic (noir-lang/noir#7546)
chore: add some extra tests (noir-lang/noir#7544)
fix: fix a few cases where safety comment wasn't correctly identified (noir-lang/noir#7548)
chore!: remove U128 struct from stdlib (noir-lang/noir#7529)
feat: simplify simple conditionals for brillig (noir-lang/noir#7205)
chore: put RcTracker as part of the DIE context (noir-lang/noir#7309)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 6, 2025
chore!: bump bb version to v0.77.0 (noir-lang/noir#7599)
chore: bump external pinned commits (noir-lang/noir#7601)
feat(cli): Log and replay oracle transcript (noir-lang/noir#7417)
chore: some SSA improvements (noir-lang/noir#7588)
chore(profiler): Add option to only get the total sample count for the `execution-opcodes` command (noir-lang/noir#7578)
feat(experimental): Issue errors for unreachable match branches (noir-lang/noir#7556)
fix: Log to `stderr` (noir-lang/noir#7585)
chore!: remove merkle module from stdlib (noir-lang/noir#7582)
fix: Display causes but not stack trace in CLI error report (noir-lang/noir#7584)
chore: bump `light-poseidon` (noir-lang/noir#7568)
chore: bump external pinned commits (noir-lang/noir#7581)
chore!: remove deprecated hash functions from stdlib (noir-lang/noir#7477)
fix(frontend)!: Restrict capturing mutable variable in lambdas (noir-lang/noir#7488)
feat: perform constant sha256 compressions at compile-time (noir-lang/noir#7566)
chore: bump external pinned commits (noir-lang/noir#7565)
chore(ssa): Turn the Brillig constraints check back on by default (noir-lang/noir#7404)
chore: bump external pinned commits (noir-lang/noir#7561)
chore: address some frontend tests TODOs (noir-lang/noir#7554)
fix: shift right overflow in ACIR with unknown var now returns zero (noir-lang/noir#7509)
chore(cli): Forward `nargo execute` to `noir_artifact_cli` (noir-lang/noir#7406)
feat: Support `<Type as Trait>::method` in expressions (noir-lang/noir#7551)
chore: remove FileDiagnostic (noir-lang/noir#7546)
chore: add some extra tests (noir-lang/noir#7544)
fix: fix a few cases where safety comment wasn't correctly identified (noir-lang/noir#7548)
chore!: remove U128 struct from stdlib (noir-lang/noir#7529)
feat: simplify simple conditionals for brillig (noir-lang/noir#7205)
chore: put RcTracker as part of the DIE context (noir-lang/noir#7309)
AztecBot added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 6, 2025
chore!: bump bb version to v0.77.0 (noir-lang/noir#7599)
chore: bump external pinned commits (noir-lang/noir#7601)
feat(cli): Log and replay oracle transcript (noir-lang/noir#7417)
chore: some SSA improvements (noir-lang/noir#7588)
chore(profiler): Add option to only get the total sample count for the `execution-opcodes` command (noir-lang/noir#7578)
feat(experimental): Issue errors for unreachable match branches (noir-lang/noir#7556)
fix: Log to `stderr` (noir-lang/noir#7585)
chore!: remove merkle module from stdlib (noir-lang/noir#7582)
fix: Display causes but not stack trace in CLI error report (noir-lang/noir#7584)
chore: bump `light-poseidon` (noir-lang/noir#7568)
chore: bump external pinned commits (noir-lang/noir#7581)
chore!: remove deprecated hash functions from stdlib (noir-lang/noir#7477)
fix(frontend)!: Restrict capturing mutable variable in lambdas (noir-lang/noir#7488)
feat: perform constant sha256 compressions at compile-time (noir-lang/noir#7566)
chore: bump external pinned commits (noir-lang/noir#7565)
chore(ssa): Turn the Brillig constraints check back on by default (noir-lang/noir#7404)
chore: bump external pinned commits (noir-lang/noir#7561)
chore: address some frontend tests TODOs (noir-lang/noir#7554)
fix: shift right overflow in ACIR with unknown var now returns zero (noir-lang/noir#7509)
chore(cli): Forward `nargo execute` to `noir_artifact_cli` (noir-lang/noir#7406)
feat: Support `<Type as Trait>::method` in expressions (noir-lang/noir#7551)
chore: remove FileDiagnostic (noir-lang/noir#7546)
chore: add some extra tests (noir-lang/noir#7544)
fix: fix a few cases where safety comment wasn't correctly identified (noir-lang/noir#7548)
chore!: remove U128 struct from stdlib (noir-lang/noir#7529)
feat: simplify simple conditionals for brillig (noir-lang/noir#7205)
chore: put RcTracker as part of the DIE context (noir-lang/noir#7309)
TomAFrench added a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 6, 2025
Automated pull of development from the
[noir](https://github.com/noir-lang/noir) programming language, a
dependency of Aztec.
BEGIN_COMMIT_OVERRIDE
chore!: remove deprecated hash functions from stdlib
(noir-lang/noir#7477)
fix(frontend)!: Restrict capturing mutable variable in lambdas
(noir-lang/noir#7488)
feat: perform constant sha256 compressions at compile-time
(noir-lang/noir#7566)
chore: bump external pinned commits
(noir-lang/noir#7565)
chore(ssa): Turn the Brillig constraints check back on by default
(noir-lang/noir#7404)
chore: bump external pinned commits
(noir-lang/noir#7561)
chore: address some frontend tests TODOs
(noir-lang/noir#7554)
fix: shift right overflow in ACIR with unknown var now returns zero
(noir-lang/noir#7509)
chore(cli): Forward `nargo execute` to `noir_artifact_cli`
(noir-lang/noir#7406)
feat: Support `<Type as Trait>::method` in expressions
(noir-lang/noir#7551)
chore: remove FileDiagnostic
(noir-lang/noir#7546)
chore: add some extra tests
(noir-lang/noir#7544)
fix: fix a few cases where safety comment wasn't correctly identified
(noir-lang/noir#7548)
chore!: remove U128 struct from stdlib
(noir-lang/noir#7529)
feat: simplify simple conditionals for brillig
(noir-lang/noir#7205)
chore: put RcTracker as part of the DIE context
(noir-lang/noir#7309)
END_COMMIT_OVERRIDE

---------

Co-authored-by: Tom French <tom@tomfren.ch>
rahul-kothari pushed a commit to AztecProtocol/aztec-packages that referenced this pull request Mar 7, 2025
🤖 I have created a new Aztec Packages release
---


##
[0.78.0](v0.77.1...v0.78.0)
(2025-03-07)


### ⚠ BREAKING CHANGES

* convert `TraitMethodNotInScope` to error
(noir-lang/noir#7427)
* bump bb version to v0.77.0
(noir-lang/noir#7599)
* remove merkle module from stdlib
(noir-lang/noir#7582)
* remove deprecated hash functions from stdlib
(noir-lang/noir#7477)
* **frontend:** Restrict capturing mutable variable in lambdas
(noir-lang/noir#7488)
* remove U128 struct from stdlib
(noir-lang/noir#7529)

### Features

* **barretenberg:** Graph methods for circuit analysis (part 2)
([#12130](#12130))
([ec4c0c4](ec4c0c4))
* **cli:** Log and replay oracle transcript
(noir-lang/noir#7417)
([f13b729](f13b729))
* Compare bincode to CBOR, FlexBuffers and Protobuf - implement best
(noir-lang/noir#7513)
([8eb727c](8eb727c))
* **experimental:** Enable ownership syntax
(noir-lang/noir#7603)
([1a3c112](1a3c112))
* **experimental:** Issue errors for unreachable match branches
(noir-lang/noir#7556)
([f13b729](f13b729))
* nullify just-added notes
([#12552](#12552))
([dcba7a4](dcba7a4))
* perform constant sha256 compressions at compile-time
(noir-lang/noir#7566)
([f13b729](f13b729))
* relate errors to macro built-ins errors
(noir-lang/noir#7609)
([fbaa634](fbaa634))
* simplify simple conditionals for brillig
(noir-lang/noir#7205)
([f13b729](f13b729))
* Support `&lt;Type as Trait&gt;::method` in expressions
(noir-lang/noir#7551)
([f13b729](f13b729))
* Sync from aztec-packages (noir-lang/noir#7606)
([8eb727c](8eb727c))
* teardown in call interface
([#12499](#12499))
([062df02](062df02))
* translation evaluations with zk
([#12222](#12222))
([568982d](568982d))


### Bug Fixes

* **avm:** use the correct number of rows in check_interaction
([#12519](#12519))
([b1284ef](b1284ef))
* aztec-up
([#12509](#12509))
([3ddb6de](3ddb6de))
* bbup
([#12555](#12555))
([e7b5353](e7b5353))
* Bitwise lookup
([#12471](#12471))
([a38f353](a38f353))
* **ci:** remove regex - transfer explicitly
([#12525](#12525))
([352bb1d](352bb1d))
* Cl/fix arm anvil
([#12565](#12565))
([e4bfbd1](e4bfbd1))
* compare Quoted by expanding interned values
(noir-lang/noir#7602)
([1a3c112](1a3c112))
* Display causes but not stack trace in CLI error report
(noir-lang/noir#7584)
([f13b729](f13b729))
* **experimental:** Fix execution of match expressions with multiple
branches (noir-lang/noir#7570)
([1a3c112](1a3c112))
* fix a few cases where safety comment wasn't correctly identified
(noir-lang/noir#7548)
([f13b729](f13b729))
* fix bbup and add CI
([#12541](#12541))
([1b2604c](1b2604c))
* Fix the config
([#12513](#12513))
([fb9fac6](fb9fac6))
* **frontend:** Restrict capturing mutable variable in lambdas
(noir-lang/noir#7488)
([f13b729](f13b729))
* FunctionDefinition::as_typed_expr didn't work well for trait imp…
(noir-lang/noir#7611)
([1a3c112](1a3c112))
* Log to `stderr` (noir-lang/noir#7585)
([f13b729](f13b729))
* **LSP:** references/rename only when underlying span has the correct…
(noir-lang/noir#7598)
([8eb727c](8eb727c))
* make vk metadata actual witnesses
([#12459](#12459))
([dada06f](dada06f))
* no fast deployments when the boot node needs to restart.
([#12557](#12557))
([866582e](866582e))
* **node:** drop log level of handler not registered
([#12523](#12523))
([cb7e42d](cb7e42d))
* override bb path in cli-wallet PXE config
([#12511](#12511))
([0c3024e](0c3024e))
* publish-bb-mac.yml version replace
([#12554](#12554))
([7e89dfb](7e89dfb))
* release bb-mac
([fac5fb5](fac5fb5))
* Revert "make vk metadata actual witnesses"
([#12534](#12534))
([ed46a3c](ed46a3c))
* shift right overflow in ACIR with unknown var now returns zero
(noir-lang/noir#7509)
([f13b729](f13b729))
* TokensPrettyPrinter was missing some spaces between tokens
(noir-lang/noir#7607)
([1a3c112](1a3c112))
* yarn-project e2e bench
([#12547](#12547))
([b40b904](b40b904))


### Miscellaneous

* add some extra tests (noir-lang/noir#7544)
([f13b729](f13b729))
* add underscore parameter documentation
(noir-lang/noir#7562)
([1a3c112](1a3c112))
* add yaml aliases in .test_patterns.yml
([#12516](#12516))
([3ee8d51](3ee8d51))
* address some frontend tests TODOs
(noir-lang/noir#7554)
([f13b729](f13b729))
* addressing remaining feedback in PR 12182
([#12494](#12494))
([f733879](f733879)),
closes
[#12193](#12193)
* bump `light-poseidon` (noir-lang/noir#7568)
([f13b729](f13b729))
* bump bb version to v0.77.0
(noir-lang/noir#7599)
([f13b729](f13b729))
* bump external pinned commits
(noir-lang/noir#7561)
([f13b729](f13b729))
* bump external pinned commits
(noir-lang/noir#7565)
([f13b729](f13b729))
* bump external pinned commits
(noir-lang/noir#7581)
([f13b729](f13b729))
* bump external pinned commits
(noir-lang/noir#7601)
([f13b729](f13b729))
* bump external pinned commits
(noir-lang/noir#7618)
([fbaa634](fbaa634))
* bump ring to address advisory
(noir-lang/noir#7619)
([fbaa634](fbaa634))
* Cleaner PXE
([#12515](#12515))
([a69f416](a69f416))
* cleanup committing and masking utility
([#12514](#12514))
([9f57048](9f57048))
* **cli:** exclude kind smoke test from flake list
([#12518](#12518))
([778bfa6](778bfa6))
* **cli:** Forward `nargo execute` to `noir_artifact_cli`
(noir-lang/noir#7406)
([f13b729](f13b729))
* convert `TraitMethodNotInScope` to error
(noir-lang/noir#7427)
([fbaa634](fbaa634))
* explode aliases when looking up owners in `.test_patterns.yml`
([#12526](#12526))
([2e0d791](2e0d791))
* fix trait import issues
([#12500](#12500))
([fd9f145](fd9f145))
* Fix yarn install immutable issues
([#12539](#12539))
([fb9ada3](fb9ada3)),
closes
[#12538](#12538)
* More config defaults and forward p2p ports
([#12529](#12529))
([2c45fb9](2c45fb9))
* **node:** return correct node version
([#12520](#12520))
([5502901](5502901))
* **profiler:** Add option to only get the total sample count for the
`execution-opcodes` command
(noir-lang/noir#7578)
([f13b729](f13b729))
* put RcTracker as part of the DIE context
(noir-lang/noir#7309)
([f13b729](f13b729))
* remove deprecated hash functions from stdlib
(noir-lang/noir#7477)
([f13b729](f13b729))
* remove FileDiagnostic (noir-lang/noir#7546)
([f13b729](f13b729))
* remove merkle module from stdlib
(noir-lang/noir#7582)
([f13b729](f13b729))
* Remove scope interpolation from env vars
([#12522](#12522))
([70942e9](70942e9))
* remove U128 struct from stdlib
(noir-lang/noir#7529)
([f13b729](f13b729))
* replace relative paths to noir-protocol-circuits
([f20c0dd](f20c0dd))
* replace relative paths to noir-protocol-circuits
([4365064](4365064))
* restore bb --version
([#12542](#12542))
([ab13d43](ab13d43))
* restore method syntax on `get_storage_slot` calls
([#12532](#12532))
([8e9f594](8e9f594))
* rm unused methods
([#12544](#12544))
([ed1dbdc](ed1dbdc))
* some SSA improvements (noir-lang/noir#7588)
([f13b729](f13b729))
* **spartan:** kind test speedup
([#12478](#12478))
([8ede7b1](8ede7b1))
* **ssa:** Turn the Brillig constraints check back on by default
(noir-lang/noir#7404)
([f13b729](f13b729))
* track more critical libraries
(noir-lang/noir#7604)
([f13b729](f13b729))
* update and lock AVM's lockfile
([#12533](#12533))
([2babc50](2babc50))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
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.

Flatten simple if-else statements in brillig to avoid unnecessary jump statements
4 participants