Barretenberg
The ZK-SNARK library at the core of Aztec
Loading...
Searching...
No Matches
execution_trace.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4#include <optional>
5
11
12namespace bb::avm2::tracegen {
13
15 public:
18
19 // Public for testing.
21 void process_execution_spec(const simulation::ExecutionEvent& ex_event, TraceContainer& trace, uint32_t row);
23 ExecutionOpCode exec_opcode,
25 uint32_t row);
29 uint32_t row);
30 // Sets global register information and reads.
31 void process_registers(ExecutionOpCode exec_opcode,
32 const std::vector<TaggedValue>& inputs,
33 const TaggedValue& output,
36 uint32_t row);
37 // Sets the writes.
38 void process_registers_write(ExecutionOpCode exec_opcode, TraceContainer& trace, uint32_t row);
39 void process_get_env_var_opcode(TaggedValue envvar_enum, TaggedValue output, TraceContainer& trace, uint32_t row);
40
42};
43
44} // namespace bb::avm2::tracegen
void process_get_env_var_opcode(TaggedValue envvar_enum, TaggedValue output, TraceContainer &trace, uint32_t row)
void process_execution_spec(const simulation::ExecutionEvent &ex_event, TraceContainer &trace, uint32_t row)
void process_instr_fetching(const simulation::Instruction &instruction, TraceContainer &trace, uint32_t row)
static const InteractionDefinition interactions
void process_registers_write(ExecutionOpCode exec_opcode, TraceContainer &trace, uint32_t row)
void process_gas(const simulation::GasEvent &gas_event, ExecutionOpCode exec_opcode, TraceContainer &trace, uint32_t row)
void process(const simulation::EventEmitterInterface< simulation::ExecutionEvent >::Container &ex_events, TraceContainer &trace)
void process_registers(ExecutionOpCode exec_opcode, const std::vector< TaggedValue > &inputs, const TaggedValue &output, std::span< TaggedValue > registers, TraceContainer &trace, uint32_t row)
void process_addressing(const simulation::AddressingEvent &addr_event, const simulation::Instruction &instruction, TraceContainer &trace, uint32_t row)
TestTraceContainer trace
GasEvent gas_event
Instruction instruction
constexpr decltype(auto) get(::tuplet::tuple< T... > &&t) noexcept
Definition tuple.hpp:13