├── .circleci └── config.yml ├── .dialyzer.ignore-warnings ├── .formatter.exs ├── .gitignore ├── .gitmodules ├── CHANGELOG.md ├── LICENSE.md ├── README.md ├── config └── config.exs ├── lib ├── block │ └── header.ex ├── evm.ex ├── evm │ ├── address.ex │ ├── application.ex │ ├── builtin.ex │ ├── debugger.ex │ ├── debugger │ │ ├── breakpoint.ex │ │ └── command.ex │ ├── exec_env.ex │ ├── functions.ex │ ├── gas.ex │ ├── interface │ │ ├── account_interface.ex │ │ ├── block_interface.ex │ │ └── mock │ │ │ ├── mock_account_interface.ex │ │ │ └── mock_block_interface.ex │ ├── log_entry.ex │ ├── machine_code.ex │ ├── machine_state.ex │ ├── memory.ex │ ├── operation.ex │ ├── operation │ │ ├── block_information.ex │ │ ├── comparison_and_bitwise_logic.ex │ │ ├── duplication.ex │ │ ├── environmental_information.ex │ │ ├── exchange.ex │ │ ├── logging.ex │ │ ├── metadata.ex │ │ ├── metadata │ │ │ ├── block_information.ex │ │ │ ├── comparison_and_bitwise_logic.ex │ │ │ ├── duplication.ex │ │ │ ├── environmental_information.ex │ │ │ ├── exchange.ex │ │ │ ├── logging.ex │ │ │ ├── push.ex │ │ │ ├── sha3.ex │ │ │ ├── stack_memory_storage_and_flow.ex │ │ │ ├── stop_and_arithmetic.ex │ │ │ └── system.ex │ │ ├── push.ex │ │ ├── sha3.ex │ │ ├── stack_memory_storage_and_flow.ex │ │ ├── stop_and_arithmetic.ex │ │ └── system.ex │ ├── program_counter.ex │ ├── stack.ex │ ├── sub_state.ex │ ├── vm.ex │ └── wei.ex ├── helpers.ex └── math_helper.ex ├── mix.exs ├── mix.lock └── test ├── block └── header_test.exs ├── evm ├── breakpoint │ └── breakpoint_test.exs ├── debugger_test.exs ├── exec_env_test.exs ├── functions_test.exs ├── gas_test.exs ├── interface │ └── mock │ │ ├── mock_account_interface_test.exs │ │ └── mock_block_interface_test.exs ├── log_entry_test.exs ├── machine_code_test.exs ├── machine_state_test.exs ├── memory_test.exs ├── operation │ ├── block_information_test.exs │ ├── comparison_and_bitwise_logic_test.exs │ ├── duplication_test.exs │ ├── environmental_information_test.exs │ ├── exchange_test.exs │ ├── logging_test.exs │ ├── metadata_test.exs │ ├── push_test.exs │ ├── sha3_test.exs │ ├── stack_memory_storage_and_flow_test.exs │ ├── stop_and_arithmetic_test.exs │ └── system_test.exs ├── operation_test.exs ├── program_counter_test.exs ├── stack_test.exs ├── sub_state_test.exs ├── vm_test.exs └── wei_test.exs ├── evm_test.exs ├── helpers_test.exs ├── math_helper_test.exs └── test_helper.exs /.circleci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/.circleci/config.yml -------------------------------------------------------------------------------- /.dialyzer.ignore-warnings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/.dialyzer.ignore-warnings -------------------------------------------------------------------------------- /.formatter.exs: -------------------------------------------------------------------------------- 1 | [ 2 | inputs: ["mix.exs", "{config,lib,test}/**/*.{ex,exs}"] 3 | ] 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/.gitignore -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/.gitmodules -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/LICENSE.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/README.md -------------------------------------------------------------------------------- /config/config.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/config/config.exs -------------------------------------------------------------------------------- /lib/block/header.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/block/header.ex -------------------------------------------------------------------------------- /lib/evm.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm.ex -------------------------------------------------------------------------------- /lib/evm/address.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/address.ex -------------------------------------------------------------------------------- /lib/evm/application.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/application.ex -------------------------------------------------------------------------------- /lib/evm/builtin.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/builtin.ex -------------------------------------------------------------------------------- /lib/evm/debugger.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/debugger.ex -------------------------------------------------------------------------------- /lib/evm/debugger/breakpoint.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/debugger/breakpoint.ex -------------------------------------------------------------------------------- /lib/evm/debugger/command.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/debugger/command.ex -------------------------------------------------------------------------------- /lib/evm/exec_env.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/exec_env.ex -------------------------------------------------------------------------------- /lib/evm/functions.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/functions.ex -------------------------------------------------------------------------------- /lib/evm/gas.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/gas.ex -------------------------------------------------------------------------------- /lib/evm/interface/account_interface.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/interface/account_interface.ex -------------------------------------------------------------------------------- /lib/evm/interface/block_interface.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/interface/block_interface.ex -------------------------------------------------------------------------------- /lib/evm/interface/mock/mock_account_interface.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/interface/mock/mock_account_interface.ex -------------------------------------------------------------------------------- /lib/evm/interface/mock/mock_block_interface.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/interface/mock/mock_block_interface.ex -------------------------------------------------------------------------------- /lib/evm/log_entry.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/log_entry.ex -------------------------------------------------------------------------------- /lib/evm/machine_code.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/machine_code.ex -------------------------------------------------------------------------------- /lib/evm/machine_state.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/machine_state.ex -------------------------------------------------------------------------------- /lib/evm/memory.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/memory.ex -------------------------------------------------------------------------------- /lib/evm/operation.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation.ex -------------------------------------------------------------------------------- /lib/evm/operation/block_information.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/block_information.ex -------------------------------------------------------------------------------- /lib/evm/operation/comparison_and_bitwise_logic.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/comparison_and_bitwise_logic.ex -------------------------------------------------------------------------------- /lib/evm/operation/duplication.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/duplication.ex -------------------------------------------------------------------------------- /lib/evm/operation/environmental_information.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/environmental_information.ex -------------------------------------------------------------------------------- /lib/evm/operation/exchange.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/exchange.ex -------------------------------------------------------------------------------- /lib/evm/operation/logging.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/logging.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/block_information.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/block_information.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/comparison_and_bitwise_logic.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/comparison_and_bitwise_logic.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/duplication.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/duplication.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/environmental_information.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/environmental_information.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/exchange.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/exchange.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/logging.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/logging.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/push.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/push.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/sha3.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/sha3.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/stack_memory_storage_and_flow.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/stack_memory_storage_and_flow.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/stop_and_arithmetic.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/stop_and_arithmetic.ex -------------------------------------------------------------------------------- /lib/evm/operation/metadata/system.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/metadata/system.ex -------------------------------------------------------------------------------- /lib/evm/operation/push.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/push.ex -------------------------------------------------------------------------------- /lib/evm/operation/sha3.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/sha3.ex -------------------------------------------------------------------------------- /lib/evm/operation/stack_memory_storage_and_flow.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/stack_memory_storage_and_flow.ex -------------------------------------------------------------------------------- /lib/evm/operation/stop_and_arithmetic.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/stop_and_arithmetic.ex -------------------------------------------------------------------------------- /lib/evm/operation/system.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/operation/system.ex -------------------------------------------------------------------------------- /lib/evm/program_counter.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/program_counter.ex -------------------------------------------------------------------------------- /lib/evm/stack.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/stack.ex -------------------------------------------------------------------------------- /lib/evm/sub_state.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/sub_state.ex -------------------------------------------------------------------------------- /lib/evm/vm.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/vm.ex -------------------------------------------------------------------------------- /lib/evm/wei.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/evm/wei.ex -------------------------------------------------------------------------------- /lib/helpers.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/helpers.ex -------------------------------------------------------------------------------- /lib/math_helper.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/lib/math_helper.ex -------------------------------------------------------------------------------- /mix.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/mix.exs -------------------------------------------------------------------------------- /mix.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/mix.lock -------------------------------------------------------------------------------- /test/block/header_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/block/header_test.exs -------------------------------------------------------------------------------- /test/evm/breakpoint/breakpoint_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/breakpoint/breakpoint_test.exs -------------------------------------------------------------------------------- /test/evm/debugger_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/debugger_test.exs -------------------------------------------------------------------------------- /test/evm/exec_env_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/exec_env_test.exs -------------------------------------------------------------------------------- /test/evm/functions_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/functions_test.exs -------------------------------------------------------------------------------- /test/evm/gas_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/gas_test.exs -------------------------------------------------------------------------------- /test/evm/interface/mock/mock_account_interface_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/interface/mock/mock_account_interface_test.exs -------------------------------------------------------------------------------- /test/evm/interface/mock/mock_block_interface_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/interface/mock/mock_block_interface_test.exs -------------------------------------------------------------------------------- /test/evm/log_entry_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/log_entry_test.exs -------------------------------------------------------------------------------- /test/evm/machine_code_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/machine_code_test.exs -------------------------------------------------------------------------------- /test/evm/machine_state_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/machine_state_test.exs -------------------------------------------------------------------------------- /test/evm/memory_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/memory_test.exs -------------------------------------------------------------------------------- /test/evm/operation/block_information_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/block_information_test.exs -------------------------------------------------------------------------------- /test/evm/operation/comparison_and_bitwise_logic_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/comparison_and_bitwise_logic_test.exs -------------------------------------------------------------------------------- /test/evm/operation/duplication_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/duplication_test.exs -------------------------------------------------------------------------------- /test/evm/operation/environmental_information_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/environmental_information_test.exs -------------------------------------------------------------------------------- /test/evm/operation/exchange_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/exchange_test.exs -------------------------------------------------------------------------------- /test/evm/operation/logging_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/logging_test.exs -------------------------------------------------------------------------------- /test/evm/operation/metadata_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/metadata_test.exs -------------------------------------------------------------------------------- /test/evm/operation/push_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/push_test.exs -------------------------------------------------------------------------------- /test/evm/operation/sha3_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/sha3_test.exs -------------------------------------------------------------------------------- /test/evm/operation/stack_memory_storage_and_flow_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/stack_memory_storage_and_flow_test.exs -------------------------------------------------------------------------------- /test/evm/operation/stop_and_arithmetic_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/stop_and_arithmetic_test.exs -------------------------------------------------------------------------------- /test/evm/operation/system_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation/system_test.exs -------------------------------------------------------------------------------- /test/evm/operation_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/operation_test.exs -------------------------------------------------------------------------------- /test/evm/program_counter_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/program_counter_test.exs -------------------------------------------------------------------------------- /test/evm/stack_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/stack_test.exs -------------------------------------------------------------------------------- /test/evm/sub_state_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/sub_state_test.exs -------------------------------------------------------------------------------- /test/evm/vm_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/vm_test.exs -------------------------------------------------------------------------------- /test/evm/wei_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm/wei_test.exs -------------------------------------------------------------------------------- /test/evm_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/evm_test.exs -------------------------------------------------------------------------------- /test/helpers_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/helpers_test.exs -------------------------------------------------------------------------------- /test/math_helper_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/exthereum/evm/HEAD/test/math_helper_test.exs -------------------------------------------------------------------------------- /test/test_helper.exs: -------------------------------------------------------------------------------- 1 | ExUnit.start() 2 | --------------------------------------------------------------------------------