130 Commits

Author SHA1 Message Date
Paweł Bylica
3ddd4fdc18 Add payload to evm_result (stupid name) 2017-05-11 15:28:57 +02:00
Paweł Bylica
d51700afa7 Merge pull request #112 from ethereum/evmc-v3
EVM-C v3
2017-05-11 00:15:22 +02:00
Paweł Bylica
a77c7a8f9c EVM-C: Update docs 2017-05-08 14:55:04 +02:00
Paweł Bylica
a8083aedf4 EVM-C: Update docs 2017-05-08 10:03:48 +02:00
Paweł Bylica
5fd3350b42 EVM-C: Add storage update example 2017-05-04 17:31:30 +01: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
da456c0ae6 EVM-C: Remove transaction context items from query key 2017-05-04 17:31:30 +01:00
Paweł Bylica
fc096859b9 EVM-C: Query function for transaction context 2017-05-04 17:31:30 +01:00
Paweł Bylica
352942c940 EVM-C: transaction context struct 2017-05-04 17:31:30 +01:00
Paweł Bylica
364bbcd69e EVM-C: clean up evm_query_key
Remove items from evm_query already available in evm_message
2017-05-04 17:31:30 +01:00
Paweł Bylica
a5625ee80a EVM-C: Introduce evm_message 2017-05-04 17:31:30 +01:00
Alex Beregszaszi
d6c5935cb4 Merge pull request #116 from ethereum/evmc-result
EVM-C: Simplify and clarify docs of evm_result
2017-04-25 18:18:32 +01:00
Paweł Bylica
6b94734d1a EVM-C: Clarify docs about result context and releasing 2017-04-25 19:05:49 +02:00
Paweł Bylica
7c79af5d59 EVM-C: fix typo in comments 2017-04-25 17:02:49 +02:00
Paweł Bylica
5bab6b8d7e EVM-C: Fix some issues in the example 2017-04-25 17:01:46 +02:00
Paweł Bylica
71dd92123c EVM-C: Clarify UTF-8 encoding of error messages 2017-04-24 18:23:19 +02:00
Paweł Bylica
c584b84af9 EVM-C: clarify that evm_result::release can be NULL 2017-04-24 18:10:30 +02:00
Paweł Bylica
beac0977f8 EVM-C: Add examples of evm_result usages 2017-04-24 17:32:28 +02:00
Paweł Bylica
1fe60a02ba EVM-C: Simplify and clarify docs of evm_result 2017-04-24 14:00:27 +02:00
Paweł Bylica
2abf3e9d5e Merge pull request #115 from ethereum/revert
REVERT support
2017-04-04 13:37:05 +02:00
Paweł Bylica
d3001b92fd Add REVERT opcode support 2017-04-03 18:00:26 +02:00
Paweł Bylica
dcf9662874 Add support for Metropolis compatibility mode 2017-04-03 16:13:18 +02:00
Paweł Bylica
4ee5aff2d4 Merge pull request #108 from ethereum/evmc
EVM-C update
2017-01-20 14:24:27 +01:00
Paweł Bylica
67ed0d9bf9 Fix EVM_CALL_FAILURE definition on Windows 2017-01-19 14:32:22 +01:00
Paweł Bylica
faa1aab946 Always build examples if included 2017-01-19 14:32:22 +01:00
Paweł Bylica
96a1a9020b EVM-C: Use enums to represent constants 2017-01-19 14:32:22 +01: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
bfd39abfb2 EVM-C: Drop address field from evm_result
The evm_result was planned to be used as the return struct of the call callback. The address was added to support CREATE, but it is never used and the union here confuses many languages like Go and Python.
2017-01-19 14:32:21 +01:00
Paweł Bylica
5967bf4707 Merge pull request #107 from ethereum/extcodesize
EVM-C: separate EXTCODESIZE from EXTCODE(COPY)
2016-12-06 19:00:42 +01:00
Paweł Bylica
04cb34fb7d EVM-C: separate EXTCODESIZE from EXTCODE(COPY) 2016-12-06 13:47:57 +01:00
Paweł Bylica
915da0b984 Merge pull request #106 from ethereum/antidos
Support for Anti DoS hard forks
2016-11-24 16:28:01 +01:00
Paweł Bylica
a4a6b9f60b EVM-C add modes for recent hard forks 2016-11-22 17:39:15 +01:00
Paweł Bylica
f26d533abc Merge pull request #102: Fix evmjit-standalone 2016-09-28 10:25:42 -05:00
Paweł Bylica
d1d3ed03ae Fix example 2016-09-28 16:50:13 +02:00
Paweł Bylica
bdbfe79001 Merge pull request #101 from ethereum/evmc
EVM-C: Attach result_release function to the result itself
2016-09-28 06:56:51 -05:00
Paweł Bylica
aceb7af658 EVM-C: reorder and add create_address to evm_result 2016-09-28 13:19:02 +02:00
Paweł Bylica
8b9867c971 EVM-C: Attach result_release function to the result itself 2016-09-27 17:14:19 +02:00
Paweł Bylica
6f88571130 Merge pull request #100: Move CALL cost calculations to VM 2016-09-27 08:52:59 -05:00
Paweł Bylica
9c2ef341a7 EVM-C: add call depth query 2016-09-26 16:28:12 +02:00
Paweł Bylica
344552bbe1 Move CALL cost calculations to VM
Delegating CALL cost calculations to Env is bad idea and has bugs.
2016-09-14 13:50:45 +02:00
Paweł Bylica
1b19ee8c27 Merge pull request #93: Install 2016-09-01 10:26:24 +02:00
Paweł Bylica
81b8a6bb06 Merge pull request #87: EVM-C: documentation updates for the query/update 2016-09-01 10:25:44 +02:00
Alex Beregszaszi
ce780dd595 EVM-C: use new format for evm_query descriptions 2016-09-01 03:22:23 +01:00