Skip to content

feat(acir_gen): Fold attribute at compile-time and initial non inlined ACIR#5341

Merged
vezenovm merged 178 commits into
masterfrom
mv/non-inlined-acir-comptime
Mar 29, 2024
Merged

feat(acir_gen): Fold attribute at compile-time and initial non inlined ACIR#5341
vezenovm merged 178 commits into
masterfrom
mv/non-inlined-acir-comptime

Conversation

@vezenovm

@vezenovm vezenovm commented Mar 20, 2024

Copy link
Copy Markdown
Contributor

Partially resolves noir-lang/noir#4428 but not fully. Need ACVM execution work still.

This does the initial codegen work for having multiple ACIR functions.

It does a few things:

  1. Adds a new InlineType that is now part of RuntimeType::Acir. We do not care about RuntimeType::Brillig as we do not inline any of those calls.
  2. Fetch the appropriate function signatures for all possible Circuit functions inside of a Program. Previously we were just returning the main function signature. This is needed to accurately set up the private_parameters and public_parameters fields in a circuit.
  3. Iterates over all SSA functions, determines which are entry points and codegens them
  4. Codegens the newly added Call opcode from feat!: Acir call opcode #4773

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

ACIR gen / ACVM: Handle non-inlined ACIR functions

4 participants