Barretenberg
The ZK-SNARK library at the core of Aztec
|
#include <execution.hpp>
Protected Member Functions | |
virtual GasTrackerInterface & | get_gas_tracker () |
Private Member Functions | |
void | set_execution_result (ExecutionResult exec_result) |
ExecutionResult | get_execution_result () const |
void | dispatch_opcode (ExecutionOpCode opcode, ContextInterface &context, const std::vector< Operand > &resolved_operands) |
template<typename... Ts> | |
void | call_with_operands (void(Execution::*f)(ContextInterface &, Ts...), ContextInterface &context, const std::vector< Operand > &resolved_operands) |
std::vector< Operand > | resolve_operands (const Instruction &instruction, const ExecInstructionSpec &spec) |
void | handle_enter_call (ContextInterface &parent_context, std::unique_ptr< ContextInterface > child_context) |
void | handle_exit_call () |
void | handle_exceptional_halt (ContextInterface &context) |
void | set_and_validate_inputs (ExecutionOpCode opcode, std::vector< TaggedValue > inputs) |
void | set_output (ExecutionOpCode opcode, TaggedValue output) |
const std::vector< TaggedValue > & | get_inputs () const |
const TaggedValue & | get_output () const |
Definition at line 54 of file execution.hpp.
|
inline |
Definition at line 56 of file execution.hpp.
void bb::avm2::simulation::Execution::add | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 45 of file execution.cpp.
void bb::avm2::simulation::Execution::and_op | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 628 of file execution.cpp.
void bb::avm2::simulation::Execution::call | ( | ContextInterface & | context, |
MemoryAddress | l2_gas_offset, | ||
MemoryAddress | da_gas_offset, | ||
MemoryAddress | addr, | ||
MemoryAddress | cd_size_offset, | ||
MemoryAddress | cd_offset | ||
) |
Definition at line 345 of file execution.cpp.
|
inlineprivate |
Definition at line 1399 of file execution.cpp.
void bb::avm2::simulation::Execution::cast | ( | ContextInterface & | context, |
MemoryAddress | src_addr, | ||
MemoryAddress | dst_addr, | ||
uint8_t | dst_tag | ||
) |
Definition at line 253 of file execution.cpp.
void bb::avm2::simulation::Execution::cd_copy | ( | ContextInterface & | context, |
MemoryAddress | cd_size_offset, | ||
MemoryAddress | cd_offset, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 423 of file execution.cpp.
void bb::avm2::simulation::Execution::debug_log | ( | ContextInterface & | context, |
MemoryAddress | message_offset, | ||
MemoryAddress | fields_offset, | ||
MemoryAddress | fields_size_offset, | ||
uint16_t | message_size, | ||
bool | is_debug_logging_enabled | ||
) |
Definition at line 569 of file execution.cpp.
|
private |
Definition at line 1236 of file execution.cpp.
void bb::avm2::simulation::Execution::div | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 102 of file execution.cpp.
void bb::avm2::simulation::Execution::ecc_add | ( | ContextInterface & | context, |
MemoryAddress | p_x_addr, | ||
MemoryAddress | p_y_addr, | ||
MemoryAddress | p_inf_addr, | ||
MemoryAddress | q_x_addr, | ||
MemoryAddress | q_y_addr, | ||
MemoryAddress | q_inf_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 902 of file execution.cpp.
void bb::avm2::simulation::Execution::emit_note_hash | ( | ContextInterface & | context, |
MemoryAddress | note_hash_addr | ||
) |
Definition at line 841 of file execution.cpp.
void bb::avm2::simulation::Execution::emit_nullifier | ( | ContextInterface & | context, |
MemoryAddress | nullifier_addr | ||
) |
Definition at line 789 of file execution.cpp.
void bb::avm2::simulation::Execution::emit_unencrypted_log | ( | ContextInterface & | context, |
MemoryAddress | log_offset, | ||
MemoryAddress | log_size_offset | ||
) |
Definition at line 994 of file execution.cpp.
void bb::avm2::simulation::Execution::eq | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 140 of file execution.cpp.
|
overridevirtual |
Implements bb::avm2::simulation::ExecutionInterface.
Definition at line 1059 of file execution.cpp.
void bb::avm2::simulation::Execution::fdiv | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 121 of file execution.cpp.
void bb::avm2::simulation::Execution::get_contract_instance | ( | ContextInterface & | context, |
MemoryAddress | address_offset, | ||
MemoryAddress | dst_offset, | ||
uint8_t | member_enum | ||
) |
Definition at line 815 of file execution.cpp.
void bb::avm2::simulation::Execution::get_env_var | ( | ContextInterface & | context, |
MemoryAddress | dst_addr, | ||
uint8_t | var_enum | ||
) |
Definition at line 266 of file execution.cpp.
|
inlineprivate |
Definition at line 198 of file execution.hpp.
|
inlineprotectedvirtual |
Definition at line 194 of file execution.hpp.
|
inlineprivate |
Definition at line 216 of file execution.hpp.
|
inlineprivate |
Definition at line 217 of file execution.hpp.
|
private |
Definition at line 1159 of file execution.cpp.
|
private |
Definition at line 1223 of file execution.cpp.
|
private |
Definition at line 1181 of file execution.cpp.
void bb::avm2::simulation::Execution::internal_call | ( | ContextInterface & | context, |
uint32_t | loc | ||
) |
Definition at line 534 of file execution.cpp.
void bb::avm2::simulation::Execution::internal_return | ( | ContextInterface & | context | ) |
Definition at line 544 of file execution.cpp.
void bb::avm2::simulation::Execution::jump | ( | ContextInterface & | context, |
uint32_t | loc | ||
) |
Definition at line 512 of file execution.cpp.
void bb::avm2::simulation::Execution::jumpi | ( | ContextInterface & | context, |
MemoryAddress | cond_addr, | ||
uint32_t | loc | ||
) |
Definition at line 519 of file execution.cpp.
void bb::avm2::simulation::Execution::keccak_permutation | ( | ContextInterface & | context, |
MemoryAddress | dst_addr, | ||
MemoryAddress | src_addr | ||
) |
Definition at line 558 of file execution.cpp.
void bb::avm2::simulation::Execution::l1_to_l2_message_exists | ( | ContextInterface & | context, |
MemoryAddress | msg_hash_addr, | ||
MemoryAddress | leaf_index_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 862 of file execution.cpp.
void bb::avm2::simulation::Execution::lt | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 159 of file execution.cpp.
void bb::avm2::simulation::Execution::lte | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 178 of file execution.cpp.
void bb::avm2::simulation::Execution::mov | ( | ContextInterface & | context, |
MemoryAddress | src_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 332 of file execution.cpp.
void bb::avm2::simulation::Execution::mul | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 83 of file execution.cpp.
void bb::avm2::simulation::Execution::note_hash_exists | ( | ContextInterface & | context, |
MemoryAddress | unique_note_hash_addr, | ||
MemoryAddress | leaf_index_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 734 of file execution.cpp.
void bb::avm2::simulation::Execution::nullifier_exists | ( | ContextInterface & | context, |
MemoryAddress | nullifier_offset, | ||
MemoryAddress | address_offset, | ||
MemoryAddress | exists_offset | ||
) |
Definition at line 764 of file execution.cpp.
void bb::avm2::simulation::Execution::op_not | ( | ContextInterface & | context, |
MemoryAddress | src_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 197 of file execution.cpp.
void bb::avm2::simulation::Execution::or_op | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 649 of file execution.cpp.
void bb::avm2::simulation::Execution::poseidon2_permutation | ( | ContextInterface & | context, |
MemoryAddress | src_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 892 of file execution.cpp.
void bb::avm2::simulation::Execution::rd_copy | ( | ContextInterface & | context, |
MemoryAddress | rd_size_offset, | ||
MemoryAddress | rd_offset, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 443 of file execution.cpp.
void bb::avm2::simulation::Execution::rd_size | ( | ContextInterface & | context, |
MemoryAddress | dst_addr | ||
) |
Definition at line 463 of file execution.cpp.
|
private |
void bb::avm2::simulation::Execution::ret | ( | ContextInterface & | context, |
MemoryAddress | ret_size_offset, | ||
MemoryAddress | ret_offset | ||
) |
Definition at line 476 of file execution.cpp.
void bb::avm2::simulation::Execution::revert | ( | ContextInterface & | context, |
MemoryAddress | rev_size_offset, | ||
MemoryAddress | rev_offset | ||
) |
Definition at line 494 of file execution.cpp.
void bb::avm2::simulation::Execution::send_l2_to_l1_msg | ( | ContextInterface & | context, |
MemoryAddress | recipient_addr, | ||
MemoryAddress | content_addr | ||
) |
Definition at line 1015 of file execution.cpp.
void bb::avm2::simulation::Execution::set | ( | ContextInterface & | context, |
MemoryAddress | dst_addr, | ||
uint8_t | tag, | ||
const FF & | value | ||
) |
Definition at line 322 of file execution.cpp.
|
private |
Definition at line 1413 of file execution.cpp.
|
inlineprivate |
Definition at line 197 of file execution.hpp.
|
private |
Definition at line 1430 of file execution.cpp.
void bb::avm2::simulation::Execution::sha256_compression | ( | ContextInterface & | context, |
MemoryAddress | output_addr, | ||
MemoryAddress | state_addr, | ||
MemoryAddress | input_addr | ||
) |
Definition at line 1043 of file execution.cpp.
void bb::avm2::simulation::Execution::shl | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | c_addr | ||
) |
Definition at line 215 of file execution.cpp.
void bb::avm2::simulation::Execution::shr | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | c_addr | ||
) |
Definition at line 234 of file execution.cpp.
void bb::avm2::simulation::Execution::sload | ( | ContextInterface & | context, |
MemoryAddress | slot_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 691 of file execution.cpp.
void bb::avm2::simulation::Execution::sstore | ( | ContextInterface & | context, |
MemoryAddress | src_addr, | ||
MemoryAddress | slot_addr | ||
) |
Definition at line 708 of file execution.cpp.
void bb::avm2::simulation::Execution::static_call | ( | ContextInterface & | context, |
MemoryAddress | l2_gas_offset, | ||
MemoryAddress | da_gas_offset, | ||
MemoryAddress | addr, | ||
MemoryAddress | cd_size_offset, | ||
MemoryAddress | cd_offset | ||
) |
Definition at line 384 of file execution.cpp.
void bb::avm2::simulation::Execution::sub | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 64 of file execution.cpp.
void bb::avm2::simulation::Execution::success_copy | ( | ContextInterface & | context, |
MemoryAddress | dst_addr | ||
) |
Definition at line 616 of file execution.cpp.
void bb::avm2::simulation::Execution::to_radix_be | ( | ContextInterface & | context, |
MemoryAddress | value_addr, | ||
MemoryAddress | radix_addr, | ||
MemoryAddress | num_limbs_addr, | ||
MemoryAddress | is_output_bits_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 938 of file execution.cpp.
void bb::avm2::simulation::Execution::xor_op | ( | ContextInterface & | context, |
MemoryAddress | a_addr, | ||
MemoryAddress | b_addr, | ||
MemoryAddress | dst_addr | ||
) |
Definition at line 670 of file execution.cpp.
|
private |
Definition at line 222 of file execution.hpp.
|
private |
Definition at line 223 of file execution.hpp.
|
private |
Definition at line 228 of file execution.hpp.
|
private |
Definition at line 238 of file execution.hpp.
|
private |
Definition at line 230 of file execution.hpp.
|
private |
Definition at line 225 of file execution.hpp.
|
private |
Definition at line 234 of file execution.hpp.
|
private |
Definition at line 237 of file execution.hpp.
|
private |
Definition at line 240 of file execution.hpp.
|
private |
Definition at line 219 of file execution.hpp.
|
private |
Definition at line 229 of file execution.hpp.
|
private |
Definition at line 242 of file execution.hpp.
|
private |
Definition at line 245 of file execution.hpp.
|
private |
Definition at line 233 of file execution.hpp.
|
private |
Definition at line 232 of file execution.hpp.
|
private |
Definition at line 243 of file execution.hpp.
|
private |
Definition at line 220 of file execution.hpp.
|
private |
Definition at line 231 of file execution.hpp.
|
private |
Definition at line 235 of file execution.hpp.
|
private |
Definition at line 244 of file execution.hpp.
|
private |
Definition at line 224 of file execution.hpp.
|
private |
Definition at line 227 of file execution.hpp.
|
private |
Definition at line 226 of file execution.hpp.