Paweł Bylica
36b7976121
Merge pull request #68 from ethereum/abi-version-helper
...
Add evmc_is_abi_compatible helper
2018-08-20 16:23:29 +02:00
Alex Beregszaszi
3fe4f28867
Add evmc_is_abi_compatible helper
2018-08-20 15:05:41 +01:00
Alex Beregszaszi
f014e4fc77
Add evmc_execute helper
2018-08-20 14:59:52 +01:00
Alex Beregszaszi
afed355232
examples: use evmc helpers
2018-08-20 05:24:21 +01:00
Alex Beregszaszi
4e513a6541
examples: use vm instead of jit in capi
2018-08-20 05:23:01 +01:00
Paweł Bylica
e16f19e38d
examples: Rename evm_log() to emit_log()
2018-08-08 15:39:40 +02:00
Paweł Bylica
8cf24c7dd9
Extend set_storage() by reporting the storage status
2018-08-08 15:39:04 +02:00
Andrei Maiboroda
2e25d34c11
Support for EXTCODEHASH
2018-07-31 14:42:13 +02:00
Paweł Bylica
cdd53518b6
Fix building with Visual Studio
2018-06-25 13:20:18 +02:00
Paweł Bylica
4ca2d9c66b
Reformat files
2018-05-11 13:26:58 +02:00
Paweł Bylica
262211ab68
Move evmc.h to include/evmc dir
2018-04-19 09:41:48 +02:00
Paweł Bylica
c5c34599b9
Change naming convention for "create" function
...
Now should be prefixed with "evmc_create_".
2018-04-17 11:11:31 +02:00
Alex Beregszaszi
2ec50258cd
Rename evm.h to evmc.h
2018-03-28 14:40:18 +01:00
Alex Beregszaszi
19ce0eb4ab
Rename evm_/EVM_ to evmc_/EVMC_
2018-03-28 14:39:38 +01:00
Paweł Bylica
ccc3106233
EVM-C: Change get_code() to copy_code()
2018-03-27 12:45:22 +02:00
Paweł Bylica
82f1936fa2
EVM-C: Add get_code_size() callback function
2018-03-26 15:08:10 +02:00
Alex Beregszaszi
0877e9d9bd
Do not pollute the header with examplevm_create()
2018-01-24 22:38:17 +00:00
Dmitri Makarov
a154b61c51
Prepare for LLVM 5.0 upgrade, but still compatible with LLVM 3.9
2017-12-11 20:13:49 +01:00
Paweł Bylica
2e92618966
Fix example
2017-10-24 13:50:35 +02:00
Paweł Bylica
52d6cc55a9
EVM-C: Rename evm_uint160be -> evm_address
2017-09-26 16:51:34 +02:00
Paweł Bylica
7448400879
EVM-C: Rename evm_result::code -> evm_result::status_code
2017-09-26 16:51:34 +02:00
Paweł Bylica
431c9d2def
EVM-C: Rename evm_result_code -> evm_status_code
2017-09-26 14:04:21 +02:00
Paweł Bylica
5ff2b98c14
EVM-C: Remove factory
2017-09-22 19:16:52 +02:00
Paweł Bylica
61d533aad7
EVM-C: Move ABI version from factory to instance
2017-09-22 18:50:20 +02:00
Paweł Bylica
581ba3ef2e
EVM-C: Improve execution context opaque struct
2017-08-18 18:29:22 +02:00
Paweł Bylica
9503ac90c2
EVM-C: Improve example
2017-08-18 13:40:25 +02:00
Paweł Bylica
182d7f3876
EVM-C: Reduce query_fn to account_exists_fn
2017-08-08 10:26:52 +02:00
Paweł Bylica
2d2adcb868
EVM-C: Move code query to separated callback function
2017-08-08 10:11:53 +02:00
Paweł Bylica
2aa1623203
EVM-C: Move balance query to separated callback function
2017-08-07 18:45:26 +02:00
Paweł Bylica
d6224857c4
EVM-C: Collect callbacks in evm_host struct
2017-08-01 15:59:40 +02:00
Paweł Bylica
1bbdc0c0c9
EVM-C: Split get_storage from query callback
2017-06-09 16:16:17 +02:00
Paweł Bylica
34113af8b3
EVM-C: Fix constness, extend examples
2017-06-08 14:48:09 +02:00
Paweł Bylica
06b25bf87d
EVM-C: Simplify set_storage callback
2017-06-08 12:00:04 +02:00
Paweł Bylica
cde8027511
EVM-C: Separate selfdestruct function from state_update one
2017-06-08 11:38:08 +02:00
Paweł Bylica
f7e53a12d0
EVM-C: Separate log function from state_update one
2017-06-08 11:07:03 +02:00
Paweł Bylica
cb90d9f35c
EVM-C: change call callback to operate on evm_result type
2017-05-22 16:07:29 +02:00
Paweł Bylica
27f3955f8b
EVM-C: Add call kind to evm_message
2017-05-04 17:31:30 +01:00
Paweł Bylica
6d6b2c1928
EVM-C: Include code hash in the message
2017-05-04 17:31:30 +01:00
Paweł Bylica
cc35c5d169
EVM-C: Improve update state callback function
2017-05-04 17:31:30 +01:00
Paweł Bylica
104a4a12c3
EVM-C: Improve query state callback function
2017-05-04 17:31:30 +01:00
Paweł Bylica
58ad722339
EVM-C: Move blockhash query to own function
2017-05-04 17:31:30 +01:00
Paweł Bylica
25a5fe0ceb
EVM-C: Fix C examples
2017-05-04 17:31:30 +01:00
Paweł Bylica
a5625ee80a
EVM-C: Introduce evm_message
2017-05-04 17:31:30 +01:00
Paweł Bylica
c584b84af9
EVM-C: clarify that evm_result::release can be NULL
2017-04-24 18:10:30 +02:00
Paweł Bylica
66b2ae9663
EVM-C: return by explicit output param
...
In evm_query_fn, return result by explicit output parameter to avoid C ABI issues and inrease portability. C compiler would do the same implicitly.
2017-01-19 14:32:22 +01:00
Paweł Bylica
575337b449
EVM-C: pass callback argument explicitly by pointer
...
We try to avoid C ABI complex rules like passing structs by value to increase portability.
2017-01-19 14:32:22 +01:00
Paweł Bylica
3d2e365661
EVM-C: introduce factory -- simpler interface
...
Replace evm_interface with evm_factory. The factory provides ABI protection and the function for creating EVM instances. After the instance is create you can discard the factory as it is no longer needed.
2017-01-19 14:32:22 +01:00
Paweł Bylica
8b9867c971
EVM-C: Attach result_release function to the result itself
2016-09-27 17:14:19 +02:00
Paweł Bylica
2a99b13573
EVM-C: Replace evm_{uint|hash}256 with single evm_uint256be
...
All values transfered to/from a VM must be passed as big-endian integers.
2016-08-31 11:40:02 +02:00
Paweł Bylica
0b9b01e05c
EVM-C: Simplify evm_hash256 struct
2016-08-28 20:40:20 +02:00