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(bb): iterative constexpr_for #8502

Merged
merged 1 commit into from
Sep 11, 2024
Merged

Conversation

fcarreiro
Copy link
Contributor

Replaces the custom made solution. Needed for stack not to blow up in a few places.

Copy link
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @fcarreiro and the rest of your teammates on Graphite Graphite

@fcarreiro fcarreiro requested a review from ludamad September 11, 2024 17:22
Copy link
Collaborator

@ludamad ludamad left a comment

Choose a reason for hiding this comment

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

lgtm with one comment

@fcarreiro fcarreiro force-pushed the fc/bb-constexpr-for-iterative branch from 46a8fc5 to 9cbf0b1 Compare September 11, 2024 17:30
@fcarreiro fcarreiro merged commit 02c3330 into master Sep 11, 2024
37 checks passed
Copy link
Contributor Author

Merge activity

@fcarreiro fcarreiro deleted the fc/bb-constexpr-for-iterative branch September 11, 2024 18:08
TomAFrench pushed a commit that referenced this pull request Sep 13, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.55.0</summary>

##
[0.55.0](aztec-package-v0.54.0...aztec-package-v0.55.0)
(2024-09-13)


### Bug Fixes

* Load prover node config from env
([#8525](#8525))
([7065962](7065962))


### Miscellaneous

* Remove unneeded propose and da oracle
([#8474](#8474))
([274a6b7](274a6b7))
</details>

<details><summary>barretenberg.js: 0.55.0</summary>

##
[0.55.0](barretenberg.js-v0.54.0...barretenberg.js-v0.55.0)
(2024-09-13)


### Features

* New test programs for wasm benchmarking
([#8389](#8389))
([0b46e96](0b46e96))
</details>

<details><summary>aztec-packages: 0.55.0</summary>

##
[0.55.0](aztec-packages-v0.54.0...aztec-packages-v0.55.0)
(2024-09-13)


### ⚠ BREAKING CHANGES

* Add Not instruction in brillig
([#8488](#8488))
* refactor NoteGetterOptions::select API
([#8504](#8504))
* **avm:** variants for CAST/NOT opcode
([#8497](#8497))
* **avm:** variants for REVERT opcode
([#8487](#8487))

### Features

* (bb) remove redundant constraints on field/group elements when using
goblin plonk
([#8409](#8409))
([12a093d](12a093d))
* Add `Module::structs` (noir-lang/noir#6017)
([cb20e07](cb20e07))
* Add `TypedExpr::get_type`
(noir-lang/noir#5992)
([875cfe6](875cfe6))
* Add assertions for ACVM `FunctionInput` `bit_size`
(noir-lang/noir#5864)
([20d7576](20d7576))
* Add Not instruction in brillig
([#8488](#8488))
([ceda361](ceda361))
* Add timeouts for request / response stream connections
([#8434](#8434))
([190c27f](190c27f))
* **avm:** Parallelize polynomial alloc and set
([#8520](#8520))
([7e73531](7e73531))
* **avm:** Variants for CAST/NOT opcode
([#8497](#8497))
([bc609fa](bc609fa))
* **avm:** Variants for REVERT opcode
([#8487](#8487))
([a0c8915](a0c8915))
* **bb:** Iterative constexpr_for
([#8502](#8502))
([02c3330](02c3330))
* Better error message for misplaced doc comments
(noir-lang/noir#5990)
([875cfe6](875cfe6))
* Change the layout of arrays and vectors to be a single pointer
([#8448](#8448))
([3ad624c](3ad624c))
* Checking finalized sizes + a test of two folding verifiers
([#8503](#8503))
([d9e3f4d](d9e3f4d))
* Extract brillig slice ops to reusable procedures
(noir-lang/noir#6002)
([20d7576](20d7576))
* Format trait impl functions
(noir-lang/noir#6016)
([cb20e07](cb20e07))
* Impl Hash and Eq on more comptime types
(noir-lang/noir#6022)
([cb20e07](cb20e07))
* Implement LSP code action "Implement missing members"
(noir-lang/noir#6020)
([cb20e07](cb20e07))
* Let `has_named_attribute` work for built-in attributes
(noir-lang/noir#6024)
([cb20e07](cb20e07))
* LSP completion function detail
(noir-lang/noir#5993)
([875cfe6](875cfe6))
* Native world state
([#7516](#7516))
([c1aa6f7](c1aa6f7))
* New test programs for wasm benchmarking
([#8389](#8389))
([0b46e96](0b46e96))
* Output timestamps in prover-stats raw logs
([#8476](#8476))
([aa67a14](aa67a14))
* Rate limit peers in request response p2p interactions
([#8498](#8498))
([00146fa](00146fa))
* Refactor NoteGetterOptions::select API
([#8504](#8504))
([e527992](e527992))
* Sync from aztec-packages (noir-lang/noir#5971)
([875cfe6](875cfe6))
* Sync from aztec-packages (noir-lang/noir#6001)
([20d7576](20d7576))
* Use Zac's quicksort algorithm in stdlib sorting
(noir-lang/noir#5940)
([20d7576](20d7576))
* Validators ensure transactions live in their p2p pool before attesting
([#8410](#8410))
([bce1eea](bce1eea))
* Verification key stuff
([#8431](#8431))
([11dc8ff](11dc8ff))


### Bug Fixes

* Correctly print string tokens
(noir-lang/noir#6021)
([cb20e07](cb20e07))
* Enable verifier when deploying the networks
([#8500](#8500))
([f6d31f1](f6d31f1))
* Error when comptime types are used in runtime code
(noir-lang/noir#5987)
([875cfe6](875cfe6))
* Error when mutating comptime variables in non-comptime code
(noir-lang/noir#6003)
([20d7576](20d7576))
* Fix some mistakes in arithmetic generics docs
(noir-lang/noir#5999)
([20d7576](20d7576))
* Fix using lazily elaborated comptime globals
(noir-lang/noir#5995)
([20d7576](20d7576))
* Help link was outdated (noir-lang/noir#6004)
([20d7576](20d7576))
* Load prover node config from env
([#8525](#8525))
([7065962](7065962))
* Remove claim_public from fee juice
([#8337](#8337))
([dca74ae](dca74ae))
* Try to move constant terms to one side for arithmetic generics
(noir-lang/noir#6008)
([cb20e07](cb20e07))
* Use module name as line after which we'll insert auto-import
(noir-lang/noir#6025)
([cb20e07](cb20e07))


### Miscellaneous

* Add some `pub use` and remove unused imports
([#8521](#8521))
([8bd0755](8bd0755))
* **bb:** Fix mac build
([#8505](#8505))
([32fd347](32fd347)),
closes
[#8499](#8499)
* **bb:** Fix mac build
([#8522](#8522))
([986e703](986e703))
* **ci:** Fix bb publishing
([#8486](#8486))
([c210c36](c210c36))
* Fix a load of warnings in aztec-nr
([#8501](#8501))
([35dc1e1](35dc1e1))
* Protogalaxy verifier matches prover 1
([#8414](#8414))
([5a76ec6](5a76ec6))
* Remove RC tracking in mem2reg
(noir-lang/noir#6019)
([cb20e07](cb20e07))
* Remove unneeded propose and da oracle
([#8474](#8474))
([274a6b7](274a6b7))
* Replace relative paths to noir-protocol-circuits
([b179c6b](b179c6b))
* Replace relative paths to noir-protocol-circuits
([1c042be](1c042be))
* Replace relative paths to noir-protocol-circuits
([1c8409f](1c8409f))
* Run mac builds on master
([#8519](#8519))
([c458a79](c458a79))
* Single install script for cargo-binstall
(noir-lang/noir#5998)
([20d7576](20d7576))
* Use uint32_t instead of size_t for databus data
([#8479](#8479))
([79995c8](79995c8))
</details>

<details><summary>barretenberg: 0.55.0</summary>

##
[0.55.0](barretenberg-v0.54.0...barretenberg-v0.55.0)
(2024-09-13)


### ⚠ BREAKING CHANGES

* Add Not instruction in brillig
([#8488](#8488))
* **avm:** variants for CAST/NOT opcode
([#8497](#8497))
* **avm:** variants for REVERT opcode
([#8487](#8487))

### Features

* (bb) remove redundant constraints on field/group elements when using
goblin plonk
([#8409](#8409))
([12a093d](12a093d))
* Add Not instruction in brillig
([#8488](#8488))
([ceda361](ceda361))
* **avm:** Parallelize polynomial alloc and set
([#8520](#8520))
([7e73531](7e73531))
* **avm:** Variants for CAST/NOT opcode
([#8497](#8497))
([bc609fa](bc609fa))
* **avm:** Variants for REVERT opcode
([#8487](#8487))
([a0c8915](a0c8915))
* **bb:** Iterative constexpr_for
([#8502](#8502))
([02c3330](02c3330))
* Checking finalized sizes + a test of two folding verifiers
([#8503](#8503))
([d9e3f4d](d9e3f4d))
* Native world state
([#7516](#7516))
([c1aa6f7](c1aa6f7))
* New test programs for wasm benchmarking
([#8389](#8389))
([0b46e96](0b46e96))
* Verification key stuff
([#8431](#8431))
([11dc8ff](11dc8ff))


### Miscellaneous

* **bb:** Fix mac build
([#8505](#8505))
([32fd347](32fd347)),
closes
[#8499](#8499)
* **bb:** Fix mac build
([#8522](#8522))
([986e703](986e703))
* Protogalaxy verifier matches prover 1
([#8414](#8414))
([5a76ec6](5a76ec6))
* Use uint32_t instead of size_t for databus data
([#8479](#8479))
([79995c8](79995c8))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
AztecBot added a commit to AztecProtocol/barretenberg that referenced this pull request Sep 14, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>aztec-package: 0.55.0</summary>

##
[0.55.0](AztecProtocol/aztec-packages@aztec-package-v0.54.0...aztec-package-v0.55.0)
(2024-09-13)


### Bug Fixes

* Load prover node config from env
([#8525](AztecProtocol/aztec-packages#8525))
([7065962](AztecProtocol/aztec-packages@7065962))


### Miscellaneous

* Remove unneeded propose and da oracle
([#8474](AztecProtocol/aztec-packages#8474))
([274a6b7](AztecProtocol/aztec-packages@274a6b7))
</details>

<details><summary>barretenberg.js: 0.55.0</summary>

##
[0.55.0](AztecProtocol/aztec-packages@barretenberg.js-v0.54.0...barretenberg.js-v0.55.0)
(2024-09-13)


### Features

* New test programs for wasm benchmarking
([#8389](AztecProtocol/aztec-packages#8389))
([0b46e96](AztecProtocol/aztec-packages@0b46e96))
</details>

<details><summary>aztec-packages: 0.55.0</summary>

##
[0.55.0](AztecProtocol/aztec-packages@aztec-packages-v0.54.0...aztec-packages-v0.55.0)
(2024-09-13)


### ⚠ BREAKING CHANGES

* Add Not instruction in brillig
([#8488](AztecProtocol/aztec-packages#8488))
* refactor NoteGetterOptions::select API
([#8504](AztecProtocol/aztec-packages#8504))
* **avm:** variants for CAST/NOT opcode
([#8497](AztecProtocol/aztec-packages#8497))
* **avm:** variants for REVERT opcode
([#8487](AztecProtocol/aztec-packages#8487))

### Features

* (bb) remove redundant constraints on field/group elements when using
goblin plonk
([#8409](AztecProtocol/aztec-packages#8409))
([12a093d](AztecProtocol/aztec-packages@12a093d))
* Add `Module::structs` (noir-lang/noir#6017)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Add `TypedExpr::get_type`
(noir-lang/noir#5992)
([875cfe6](AztecProtocol/aztec-packages@875cfe6))
* Add assertions for ACVM `FunctionInput` `bit_size`
(noir-lang/noir#5864)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Add Not instruction in brillig
([#8488](AztecProtocol/aztec-packages#8488))
([ceda361](AztecProtocol/aztec-packages@ceda361))
* Add timeouts for request / response stream connections
([#8434](AztecProtocol/aztec-packages#8434))
([190c27f](AztecProtocol/aztec-packages@190c27f))
* **avm:** Parallelize polynomial alloc and set
([#8520](AztecProtocol/aztec-packages#8520))
([7e73531](AztecProtocol/aztec-packages@7e73531))
* **avm:** Variants for CAST/NOT opcode
([#8497](AztecProtocol/aztec-packages#8497))
([bc609fa](AztecProtocol/aztec-packages@bc609fa))
* **avm:** Variants for REVERT opcode
([#8487](AztecProtocol/aztec-packages#8487))
([a0c8915](AztecProtocol/aztec-packages@a0c8915))
* **bb:** Iterative constexpr_for
([#8502](AztecProtocol/aztec-packages#8502))
([02c3330](AztecProtocol/aztec-packages@02c3330))
* Better error message for misplaced doc comments
(noir-lang/noir#5990)
([875cfe6](AztecProtocol/aztec-packages@875cfe6))
* Change the layout of arrays and vectors to be a single pointer
([#8448](AztecProtocol/aztec-packages#8448))
([3ad624c](AztecProtocol/aztec-packages@3ad624c))
* Checking finalized sizes + a test of two folding verifiers
([#8503](AztecProtocol/aztec-packages#8503))
([d9e3f4d](AztecProtocol/aztec-packages@d9e3f4d))
* Extract brillig slice ops to reusable procedures
(noir-lang/noir#6002)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Format trait impl functions
(noir-lang/noir#6016)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Impl Hash and Eq on more comptime types
(noir-lang/noir#6022)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Implement LSP code action "Implement missing members"
(noir-lang/noir#6020)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Let `has_named_attribute` work for built-in attributes
(noir-lang/noir#6024)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* LSP completion function detail
(noir-lang/noir#5993)
([875cfe6](AztecProtocol/aztec-packages@875cfe6))
* Native world state
([#7516](AztecProtocol/aztec-packages#7516))
([c1aa6f7](AztecProtocol/aztec-packages@c1aa6f7))
* New test programs for wasm benchmarking
([#8389](AztecProtocol/aztec-packages#8389))
([0b46e96](AztecProtocol/aztec-packages@0b46e96))
* Output timestamps in prover-stats raw logs
([#8476](AztecProtocol/aztec-packages#8476))
([aa67a14](AztecProtocol/aztec-packages@aa67a14))
* Rate limit peers in request response p2p interactions
([#8498](AztecProtocol/aztec-packages#8498))
([00146fa](AztecProtocol/aztec-packages@00146fa))
* Refactor NoteGetterOptions::select API
([#8504](AztecProtocol/aztec-packages#8504))
([e527992](AztecProtocol/aztec-packages@e527992))
* Sync from aztec-packages (noir-lang/noir#5971)
([875cfe6](AztecProtocol/aztec-packages@875cfe6))
* Sync from aztec-packages (noir-lang/noir#6001)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Use Zac's quicksort algorithm in stdlib sorting
(noir-lang/noir#5940)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Validators ensure transactions live in their p2p pool before attesting
([#8410](AztecProtocol/aztec-packages#8410))
([bce1eea](AztecProtocol/aztec-packages@bce1eea))
* Verification key stuff
([#8431](AztecProtocol/aztec-packages#8431))
([11dc8ff](AztecProtocol/aztec-packages@11dc8ff))


### Bug Fixes

* Correctly print string tokens
(noir-lang/noir#6021)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Enable verifier when deploying the networks
([#8500](AztecProtocol/aztec-packages#8500))
([f6d31f1](AztecProtocol/aztec-packages@f6d31f1))
* Error when comptime types are used in runtime code
(noir-lang/noir#5987)
([875cfe6](AztecProtocol/aztec-packages@875cfe6))
* Error when mutating comptime variables in non-comptime code
(noir-lang/noir#6003)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Fix some mistakes in arithmetic generics docs
(noir-lang/noir#5999)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Fix using lazily elaborated comptime globals
(noir-lang/noir#5995)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Help link was outdated (noir-lang/noir#6004)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Load prover node config from env
([#8525](AztecProtocol/aztec-packages#8525))
([7065962](AztecProtocol/aztec-packages@7065962))
* Remove claim_public from fee juice
([#8337](AztecProtocol/aztec-packages#8337))
([dca74ae](AztecProtocol/aztec-packages@dca74ae))
* Try to move constant terms to one side for arithmetic generics
(noir-lang/noir#6008)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Use module name as line after which we'll insert auto-import
(noir-lang/noir#6025)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))


### Miscellaneous

* Add some `pub use` and remove unused imports
([#8521](AztecProtocol/aztec-packages#8521))
([8bd0755](AztecProtocol/aztec-packages@8bd0755))
* **bb:** Fix mac build
([#8505](AztecProtocol/aztec-packages#8505))
([32fd347](AztecProtocol/aztec-packages@32fd347)),
closes
[#8499](AztecProtocol/aztec-packages#8499)
* **bb:** Fix mac build
([#8522](AztecProtocol/aztec-packages#8522))
([986e703](AztecProtocol/aztec-packages@986e703))
* **ci:** Fix bb publishing
([#8486](AztecProtocol/aztec-packages#8486))
([c210c36](AztecProtocol/aztec-packages@c210c36))
* Fix a load of warnings in aztec-nr
([#8501](AztecProtocol/aztec-packages#8501))
([35dc1e1](AztecProtocol/aztec-packages@35dc1e1))
* Protogalaxy verifier matches prover 1
([#8414](AztecProtocol/aztec-packages#8414))
([5a76ec6](AztecProtocol/aztec-packages@5a76ec6))
* Remove RC tracking in mem2reg
(noir-lang/noir#6019)
([cb20e07](AztecProtocol/aztec-packages@cb20e07))
* Remove unneeded propose and da oracle
([#8474](AztecProtocol/aztec-packages#8474))
([274a6b7](AztecProtocol/aztec-packages@274a6b7))
* Replace relative paths to noir-protocol-circuits
([b179c6b](AztecProtocol/aztec-packages@b179c6b))
* Replace relative paths to noir-protocol-circuits
([1c042be](AztecProtocol/aztec-packages@1c042be))
* Replace relative paths to noir-protocol-circuits
([1c8409f](AztecProtocol/aztec-packages@1c8409f))
* Run mac builds on master
([#8519](AztecProtocol/aztec-packages#8519))
([c458a79](AztecProtocol/aztec-packages@c458a79))
* Single install script for cargo-binstall
(noir-lang/noir#5998)
([20d7576](AztecProtocol/aztec-packages@20d7576))
* Use uint32_t instead of size_t for databus data
([#8479](AztecProtocol/aztec-packages#8479))
([79995c8](AztecProtocol/aztec-packages@79995c8))
</details>

<details><summary>barretenberg: 0.55.0</summary>

##
[0.55.0](AztecProtocol/aztec-packages@barretenberg-v0.54.0...barretenberg-v0.55.0)
(2024-09-13)


### ⚠ BREAKING CHANGES

* Add Not instruction in brillig
([#8488](AztecProtocol/aztec-packages#8488))
* **avm:** variants for CAST/NOT opcode
([#8497](AztecProtocol/aztec-packages#8497))
* **avm:** variants for REVERT opcode
([#8487](AztecProtocol/aztec-packages#8487))

### Features

* (bb) remove redundant constraints on field/group elements when using
goblin plonk
([#8409](AztecProtocol/aztec-packages#8409))
([12a093d](AztecProtocol/aztec-packages@12a093d))
* Add Not instruction in brillig
([#8488](AztecProtocol/aztec-packages#8488))
([ceda361](AztecProtocol/aztec-packages@ceda361))
* **avm:** Parallelize polynomial alloc and set
([#8520](AztecProtocol/aztec-packages#8520))
([7e73531](AztecProtocol/aztec-packages@7e73531))
* **avm:** Variants for CAST/NOT opcode
([#8497](AztecProtocol/aztec-packages#8497))
([bc609fa](AztecProtocol/aztec-packages@bc609fa))
* **avm:** Variants for REVERT opcode
([#8487](AztecProtocol/aztec-packages#8487))
([a0c8915](AztecProtocol/aztec-packages@a0c8915))
* **bb:** Iterative constexpr_for
([#8502](AztecProtocol/aztec-packages#8502))
([02c3330](AztecProtocol/aztec-packages@02c3330))
* Checking finalized sizes + a test of two folding verifiers
([#8503](AztecProtocol/aztec-packages#8503))
([d9e3f4d](AztecProtocol/aztec-packages@d9e3f4d))
* Native world state
([#7516](AztecProtocol/aztec-packages#7516))
([c1aa6f7](AztecProtocol/aztec-packages@c1aa6f7))
* New test programs for wasm benchmarking
([#8389](AztecProtocol/aztec-packages#8389))
([0b46e96](AztecProtocol/aztec-packages@0b46e96))
* Verification key stuff
([#8431](AztecProtocol/aztec-packages#8431))
([11dc8ff](AztecProtocol/aztec-packages@11dc8ff))


### Miscellaneous

* **bb:** Fix mac build
([#8505](AztecProtocol/aztec-packages#8505))
([32fd347](AztecProtocol/aztec-packages@32fd347)),
closes
[#8499](AztecProtocol/aztec-packages#8499)
* **bb:** Fix mac build
([#8522](AztecProtocol/aztec-packages#8522))
([986e703](AztecProtocol/aztec-packages@986e703))
* Protogalaxy verifier matches prover 1
([#8414](AztecProtocol/aztec-packages#8414))
([5a76ec6](AztecProtocol/aztec-packages@5a76ec6))
* Use uint32_t instead of size_t for databus data
([#8479](AztecProtocol/aztec-packages#8479))
([79995c8](AztecProtocol/aztec-packages@79995c8))
</details>

---
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.

2 participants