Crate brillig_vm

Source
Expand description

The Brillig VM is a specialized VM which allows the ACVM to perform custom non-determinism.

Brillig bytecode is distinct from regular ACIR in that it does not generate constraints.

Re-exports§

Modules§

Structs§

  • A sample for an executed opcode.
  • The VM’s memory. Memory is internally represented as a vector of values. We grow the memory when values past the end are set, extending with 0s.
  • VM encapsulates the state of the Brillig VM during execution.

Enums§

  • Represents the reason why the Brillig VM failed during execution.
  • A single typed value in the Brillig VM’s memory.
  • Represents the current execution status of the Brillig VM.

Constants§

Type Aliases§

  • All samples for each opcode that was executed.
  • The error call stack contains the opcode indexes of the call stack at the time of failure, plus the index of the opcode that failed.
  • The position of the next opcode that will be executed in the bytecode, or an id of a specific state produced by the opcode.
  • The position of an opcode that is currently being executed in the bytecode.