From 19069c0b63a25273b1cc9bf6a2ec34def6681393 Mon Sep 17 00:00:00 2001 From: Joran Honig Date: Thu, 16 Jul 2020 12:32:28 +0200 Subject: [PATCH] maintain record of execution info in Mythril --- mythril/laser/ethereum/svm.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mythril/laser/ethereum/svm.py b/mythril/laser/ethereum/svm.py index a042ef02..97f5712f 100644 --- a/mythril/laser/ethereum/svm.py +++ b/mythril/laser/ethereum/svm.py @@ -7,6 +7,7 @@ from typing import Callable, Dict, DefaultDict, List, Tuple, Optional from mythril.support.opcodes import opcodes as OPCODES from mythril.analysis.potential_issues import check_potential_issues +from mythril.laser.execution_info import ExecutionInfo from mythril.laser.ethereum.cfg import NodeFlags, Node, Edge, JumpType from mythril.laser.ethereum.evm_exceptions import StackUnderflowException from mythril.laser.ethereum.evm_exceptions import VmException @@ -72,8 +73,9 @@ class LaserEVM: :param requires_statespace: Variable indicating whether the statespace should be recorded :param iprof: Instruction Profiler """ - self.open_states = [] # type: List[WorldState] + self.execution_info = [] # type: List[ExecutionInfo] + self.open_states = [] # type: List[WorldState] self.total_states = 0 self.dynamic_loader = dynamic_loader