You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After #4428 we can expect circuits with calls to functions marked with #[fold] to have multiple circuits. We should be able to get info on each individual circuit in a program as they will all be processed in execution and proving.
Expected Behavior
We should at a minimum be able to see the circuit sizes of each individual circuit. Not only this, but we should we be able to see each circuit function's count, but ideally we should see the total program circuit count given the call's to ACIR functions specified by the program.
Bug
nargo info currently just returns the info for the main entry point circuit.
To Reproduce
Run nargo info on any circuit with calls to a function marked with #[fold]
You will see only a single info report gets printed which is for the main function.
Project Impact
None
Impact Context
No response
Workaround
None
Workaround Description
No response
Additional Context
No response
Installation Method
None
Nargo Version
No response
NoirJS Version
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response
The text was updated successfully, but these errors were encountered:
# Description
## Problem\*
Resolves#4697
## Summary\*
The `nargo info` command previously assumed that we only had a single
circuit. In order to display accurate circuits sizes we should display
the circuit size of each individual circuit entry part which is part of
an entire `Program`.
For improved debugging I also had to exposed names in the
`GeneratedAcir`. This prompted also refactoring the context that we pass
around in `ssa.rs` when creating a circuit and a program. Two new
structs,`SsaProgramArtifact` and `SsaCircuitArtifact`, have been created
to clean this up.
Example output from `nargo info` on `fold_basic_nested_call`:
<img width="847" alt="Screenshot 2024-04-04 at 3 54 46 PM"
src="https://github.com/noir-lang/noir/assets/43554004/95a827c4-766c-4d7d-b03e-fb9428cfdb2a">
## Additional Context
It isn't necessarily obvious how we should display foldable circuits for
contracts which already have multiple entry points. I have left this for
follow-up work: #4720
## Documentation\*
Check one:
- [ ] No documentation needed.
- [ ] Documentation included in this PR.
- [X] **[For Experimental Features]** Documentation to be submitted in a
separate PR.
# PR Checklist\*
- [X] I have tested the changes locally.
- [X] I have formatted the changes with [Prettier](https://prettier.io/)
and/or `cargo fmt` on default settings.
Aim
After #4428 we can expect circuits with calls to functions marked with
#[fold]
to have multiple circuits. We should be able to get info on each individual circuit in a program as they will all be processed in execution and proving.Expected Behavior
We should at a minimum be able to see the circuit sizes of each individual circuit. Not only this, but we should we be able to see each circuit function's count, but ideally we should see the total program circuit count given the call's to ACIR functions specified by the program.
Bug
nargo info
currently just returns the info for the main entry point circuit.To Reproduce
nargo info
on any circuit with calls to a function marked with#[fold]
You will see only a single info report gets printed which is for the main function.
Project Impact
None
Impact Context
No response
Workaround
None
Workaround Description
No response
Additional Context
No response
Installation Method
None
Nargo Version
No response
NoirJS Version
No response
Would you like to submit a PR for this Issue?
None
Support Needs
No response
The text was updated successfully, but these errors were encountered: