|
| AddressingMode | generate_addressing_mode (std::mt19937_64 &rng) |
| |
| VariableRef | generate_variable_ref (std::mt19937_64 &rng) |
| |
| AddressRef | generate_address_ref (std::mt19937_64 &rng, uint32_t max_operand_value) |
| |
| std::vector< FuzzInstruction > | generate_ecadd_instruction (std::mt19937_64 &rng) |
| |
| FuzzInstruction | generate_set_for_tag (bb::avm2::MemoryTag tag, AddressRef addr, std::mt19937_64 &rng) |
| |
| template<typename InstructionType > |
| std::vector< FuzzInstruction > | generate_alu_with_matching_tags (std::mt19937_64 &rng, uint32_t max_operand) |
| |
| template<typename InstructionType > |
| std::vector< FuzzInstruction > | generate_alu_with_matching_tags_not_ff (std::mt19937_64 &rng, uint32_t max_operand) |
| |
| std::vector< FuzzInstruction > | generate_fdiv_instruction (std::mt19937_64 &rng, uint32_t max_operand) |
| |
| std::vector< FuzzInstruction > | generate_keccakf_instruction (std::mt19937_64 &rng) |
| |
| std::vector< FuzzInstruction > | generate_sha256compression_instruction (std::mt19937_64 &rng) |
| |
| std::vector< FuzzInstruction > | generate_toradixbe_instruction (std::mt19937_64 &rng) |
| |
| std::vector< FuzzInstruction > | generate_sload_instruction (std::mt19937_64 &rng) |
| |
| std::vector< FuzzInstruction > | generate_emitunencryptedlog_instruction (std::mt19937_64 &rng) |
| |
| std::vector< FuzzInstruction > | generate_call_instruction (std::mt19937_64 &rng, const bb::avm2::fuzzer::FuzzerContext &context) |
| |
| std::vector< FuzzInstruction > | generate_getcontractinstance_instruction (std::mt19937_64 &rng, const bb::avm2::fuzzer::FuzzerContext &context) |
| |
| std::vector< FuzzInstruction > | bb::avm2::fuzzer::generate_instruction (std::mt19937_64 &rng, const FuzzerContext &context) |
| | Generate one instruction and optionally backfill.
|
| |
| void | bb::avm2::fuzzer::mutate_variable_ref (VariableRef &variable, std::mt19937_64 &rng, std::optional< MemoryTag > default_tag) |
| | Most of the tags will be equal to the default tag.
|
| |
| void | bb::avm2::fuzzer::mutate_address_ref (AddressRef &address, std::mt19937_64 &rng, uint32_t max_operand_value) |
| |
| void | bb::avm2::fuzzer::mutate_param_ref (ParamRef ¶m, std::mt19937_64 &rng, std::optional< MemoryTag > default_tag, uint32_t max_operand_value) |
| |
| std::optional< MemoryTag > | bb::avm2::fuzzer::get_param_ref_tag (const ParamRef ¶m) |
| |
| template<typename BinaryInstructionType > |
| void | bb::avm2::fuzzer::mutate_binary_instruction_8 (BinaryInstructionType &instruction, std::mt19937_64 &rng) |
| |
| template<typename BinaryInstructionType > |
| void | bb::avm2::fuzzer::mutate_binary_instruction_16 (BinaryInstructionType &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_not_8_instruction (NOT_8_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_set_8_instruction (SET_8_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_set_16_instruction (SET_16_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_set_32_instruction (SET_32_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_set_64_instruction (SET_64_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_set_128_instruction (SET_128_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_set_ff_instruction (SET_FF_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_mov_8_instruction (MOV_8_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_mov_16_instruction (MOV_16_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_not_16_instruction (NOT_16_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_cast_8_instruction (CAST_8_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_cast_16_instruction (CAST_16_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_sstore_instruction (SSTORE_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_sload_instruction (SLOAD_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_getenvvar_instruction (GETENVVAR_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_emit_nullifier_instruction (EMITNULLIFIER_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_nullifier_exists_instruction (NULLIFIEREXISTS_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_l1tol2msgexists_instruction (L1TOL2MSGEXISTS_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_emit_note_hash_instruction (EMITNOTEHASH_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_note_hash_exists_instruction (NOTEHASHEXISTS_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_calldatacopy_instruction (CALLDATACOPY_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_sendl2tol1msg_instruction (SENDL2TOL1MSG_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_emitunencryptedlog_instruction (EMITUNENCRYPTEDLOG_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_call_instruction (CALL_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_returndatasize_with_returndatacopy_instruction (RETURNDATASIZE_WITH_RETURNDATACOPY_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_getcontractinstance_instruction (GETCONTRACTINSTANCE_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_successcopy_instruction (SUCCESSCOPY_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_ecadd_instruction (ECADD_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_poseidon2perm_instruction (POSEIDON2PERM_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_keccakf1600_instruction (KECCAKF1600_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_sha256compression_instruction (SHA256COMPRESSION_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_toradixbe_instruction (TORADIXBE_Instruction &instruction, std::mt19937_64 &rng) |
| |
| void | bb::avm2::fuzzer::mutate_instruction (FuzzInstruction &instruction, std::mt19937_64 &rng, const FuzzerContext &context) |
| |