Commit Graph

944 Commits

Author SHA1 Message Date
Paweł Bylica fece3b066c
cmake: Include EVMC.cmake module in the package 2019-07-17 14:17:41 +02:00
Paweł Bylica fc6b80b7c4
cmake: Add helper for adding vmtester based VM test 2019-07-17 14:17:41 +02:00
Alex Beregszaszi 22ed657d0c
Merge pull request #353 from ethereum/rust-message
rust: pass ExecutionMessage directly to EvmcVm.execute()
2019-07-15 11:28:13 +01:00
Alex Beregszaszi 3d47d3802e rust: pass ExecutionMessage directly to EvmcVm.execute() 2019-07-15 11:22:05 +01:00
Alex Beregszaszi 683640bcfb
Merge pull request #349 from ethereum/rust-container-test
rust: add more tests to EvmcContainer
2019-07-08 15:53:44 +01:00
Alex Beregszaszi 2cba139f15 rust: add more tests to EvmcContainer 2019-07-04 20:48:18 +01:00
Alex Beregszaszi fb535792a9
Merge pull request #331 from ethereum/rust-message-call
rust: add type aliases for Address, Bytes32, Uint256
2019-07-04 20:19:26 +01:00
Alex Beregszaszi ff3a619b01 rust: add test for ExecutionContext.call() 2019-07-04 20:13:30 +01:00
Alex Beregszaszi 5d72543ac3 rust: make input a slice reference to ExecutionMessage 2019-07-04 20:13:28 +01:00
Alex Beregszaszi 4382bd3662 rust: implement call() 2019-07-04 20:13:00 +01:00
Alex Beregszaszi f827e174a7 rust: use ExecutionMessage in ExecutionContext.call() 2019-07-04 20:12:57 +01:00
Alex Beregszaszi 2f7a083e24
Merge pull request #343 from ethereum/rust-types
rust: add type aliases for Address, Bytes32, Uint256
2019-07-04 20:04:33 +01:00
Alex Beregszaszi d83c19319a rust: use type aliases 2019-07-04 20:01:00 +01:00
Alex Beregszaszi c9ce3a10d4 rust: add type aliases for certain ffi types 2019-07-04 20:00:34 +01:00
Alex Beregszaszi 48f1903d9c rust: fix type typo in get_balance() 2019-07-04 20:00:22 +01:00
Alex Beregszaszi 2a5c280206
Merge pull request #348 from ethereum/rust-container
rust: add tests for EvmcContainer
2019-07-04 18:26:41 +01:00
Alex Beregszaszi 6391748c9c rust: add tests for EvmcContainer 2019-07-04 18:09:04 +01:00
Alex Beregszaszi cab1073407
Merge pull request #346 from ethereum/rust-declare
rust: allow empty code in evmc_execute()
2019-07-04 18:08:53 +01:00
Alex Beregszaszi ddcdbfe944 rust: allow empty code in evmc_execute() 2019-07-04 17:23:33 +01:00
Alex Beregszaszi 877440a499
Merge pull request #347 from ethereum/rust-test-message
rust: add two test cases to cover ExecutionMessage
2019-07-04 16:57:50 +01:00
Alex Beregszaszi 568b11d71e rust: add two test cases to cover ExecutionMessage 2019-07-04 16:54:10 +01:00
Alex Beregszaszi 96a0dd224e rust: rename some test cases for clarity 2019-07-04 16:36:25 +01:00
Paweł Bylica 6bc52edf25
Merge pull request #345 from ethereum/execute_params_docs
docs: Clarify if execute() arguments can be NULLs
2019-07-04 13:21:34 +02:00
Paweł Bylica 9792aea161
docs: Clarify if execute() arguments can be NULLs 2019-07-04 12:57:44 +02:00
Paweł Bylica f6d3f97e13
Merge pull request #341 from ethereum/cpp
cpp: Extend API to allow moving evmc::vm objects
2019-07-03 19:44:34 +02:00
Paweł Bylica 64830936e0
changelog: Add entry about moving API for evmc::vm 2019-07-03 19:37:17 +02:00
Paweł Bylica e1ff8cb007
cpp: Add unit test for evmc::vm move to itself 2019-07-03 19:37:17 +02:00
Paweł Bylica 1f3243a55e
cpp: Allow checking if evmc::vm is valid 2019-07-03 19:37:16 +02:00
Paweł Bylica fff439a53b
cpp: Allow moving evmc::vm 2019-07-03 19:37:16 +02:00
Alex Beregszaszi bc551318e0
Merge pull request #342 from ethereum/rust-bindgen
rust: support ParitalEq, Default, Hash on certain ffi types
2019-07-03 18:29:04 +01:00
Alex Beregszaszi 98ad72ecd9 rust: implement Default for evmc_address/evmc_bytes32
Same as with PartialEq: this may be done via bindgen in the future.
2019-07-03 18:07:22 +01:00
Alex Beregszaszi b52a3dc81b rust: derive Hash trait for ffi data types 2019-07-03 18:07:22 +01:00
Alex Beregszaszi c1e8a897b6 rust: implement PartialEq for evmc_address/evmc_bytes32
Could also force deriving in bindgen with (derive_partialeq(true)),
but that would insert it for complex structures we don't want it for,
such evmc_message and blacklisthing those is tedious and error prone
in case EVMC introduces new structures.
2019-07-03 18:07:16 +01:00
Alex Beregszaszi 50821813cb
Merge pull request #340 from ethereum/rust-result-ref
rust: pass output as slice reference in ExecutionResult
2019-07-03 16:02:26 +01:00
Alex Beregszaszi 593ef3b6ac rust: expect output as slice in ExecutionResult 2019-07-03 15:56:40 +01:00
Alex Beregszaszi 87ad703e62 rust: pass output as reference in ExecutionResult 2019-07-03 15:56:32 +01:00
Alex Beregszaszi 32ceee35dd
Merge pull request #339 from ethereum/rust-ref
rust: make allocate_output_data operate on references
2019-07-03 12:19:46 +01:00
Alex Beregszaszi b4c585f9bd rust: make allocate_output_data operate on references 2019-07-03 12:16:04 +01:00
Alex Beregszaszi 9794d7c2f7
Merge pull request #337 from ethereum/circleci-rust
circleci: remove duplicated tasks from ASan in Rust
2019-06-27 13:24:11 +01:00
Alex Beregszaszi 17d92d4347 circleci: remove duplicated tasks from ASan in Rust 2019-06-27 13:20:18 +01:00
Paweł Bylica f905aa8f98
Merge pull request #327 from ethereum/32-bit
Add support for 32-bit architectures
2019-06-27 14:14:49 +02:00
Paweł Bylica 4a8de9e117
changelog: Add entry about added 32-bit architecture support 2019-06-27 14:02:35 +02:00
Paweł Bylica 5af66f2b4d
ci: Add 32-bit build on linux 2019-06-27 14:02:07 +02:00
Paweł Bylica 10a7e30c57
ci: Add 32-bit build with Visual Studio 2019-06-27 14:02:06 +02:00
Paweł Bylica 4381f339d4
test: Rework tests for 32-bit architectures support 2019-06-27 14:02:06 +02:00
Paweł Bylica 52689e049e
helpers: Extend fnv1a implementation to support 32-bit architectures 2019-06-27 14:02:05 +02:00
Paweł Bylica a6a98d19b1
Merge pull request #313 from ethereum/loader_config
loader: Standarize EVMC module config
2019-06-27 14:00:11 +02:00
Paweł Bylica 7e81a13161
changelog: Add entry about evmc_load_and_configure() 2019-06-27 13:52:29 +02:00
Paweł Bylica fb471ef3e7
loader: Standardize configuration syntax and add evmc_load_and_configure() 2019-06-27 13:43:51 +02:00
Paweł Bylica 45da8cfce8
loader: Use strcpy_sx() everywhere
Previously we used strcpy_s() standard library function on Windows, but it triggers some additional handlers in some cases. To have the same behavior use strcpy_sx() everywhere.
2019-06-27 13:39:43 +02:00