172 Commits

Author SHA1 Message Date
Jordan Hrycaj
cf3a356d76
provide vm_computation as import/export wrapper
details:
  moved original vm/computation.nim => vm/nvm_computation.nim
2021-03-31 16:38:10 +01:00
Jordan Hrycaj
689458a346
provide vm_gas_costs as import/export wrapper
details:
  moved original vm/interpreter/vm_gas_costs.nim => vm/interpreter/nvm_gas_costs.nim
2021-03-31 16:03:51 +01:00
Jordan Hrycaj
3a3e4d5707
provide vm_forks as import/export wrapper
details:
  moved original vm/interpreter/vm_forks.nim => vm/interpreter/nvm_forks.nim
2021-03-31 16:03:34 +01:00
Jordan Hrycaj
eda1290c25
isolate vm_state as import/export wrapper
details:
  moved original vm_state.nim => vm/nvm_state.nim
2021-03-31 09:58:26 +01:00
Jordan Hrycaj
ed59f602d5
isolate vm_types as import/export wrapper
details:
  moved original vm_types.nim => vm/nvm_types.nim
2021-03-31 09:48:50 +01:00
Jordan Hrycaj
a3db0f41d8
remove relative paths ./ and ../ from import section
why:
  relative paths make sources inherently non-relocatable

details:
  import base is set to the nimbus directoy, so importing ./stack
  from file interpreter.nim becomes vm/stack etc.

caveat:
   a file named nimbus/strformat.nim would clash with strformat (but
   not with std/strformat)
2021-03-30 17:20:43 +01:00
jangko
b6ad47f3a4 fixes evmc bug and add github action job to test evmc 2021-01-20 11:50:07 +07:00
jangko
ad284e3d25 fixes EIP2929 SLOAD 2021-01-14 23:22:28 +07:00
jangko
f6c44ffcc0 fixes EIP2929 CALL opCode 2021-01-14 23:22:28 +07:00
jangko
f906d177f4
add comments about disabled EIPs 2021-01-11 15:33:30 +07:00
jangko
01dec1d359
fixes EIP2929 opcodes impl 2021-01-11 14:57:40 +07:00
jangko
3db535aa39
EIP2929 implementation 2021-01-11 14:56:42 +07:00
jangko
ab314c1e04
temporary disable EIP2046 and EIP2565 2021-01-11 14:53:51 +07:00
jangko
56bc1205e5
returnStack: use seq[int] instead of Uint256 Stack 2020-11-25 19:09:16 +07:00
jangko
a263e6b1a6
implement EIP2315 tests 2020-11-25 18:23:02 +07:00
jangko
a38882a9a0
implement EIP 2315 opcodes 2020-11-25 17:09:10 +07:00
jangko
5a78b8a5a7
stubbing berlin opcodes 2020-11-25 16:43:34 +07:00
jangko
97f73fd03d
implement EIP 2046 2020-11-19 14:23:07 +07:00
jangko
6ffb33ccac
cleanup sstore gasCost 2020-07-21 20:13:58 +07:00
jangko
165f9fea2e
reduce warnings 2020-07-21 13:15:06 +07:00
jangko
71514a0a66
replace state_db with accounts_cache 2020-05-30 10:14:59 +07:00
Jacek Sieka
4ade5797ee
rlp: don't use ranges / experimental features (#495) 2020-04-20 20:12:44 +02:00
andri lim
af02a3b1b2
reduce unused import warnings 2020-04-15 19:05:57 +07:00
jangko
b5850ca748
fix evmc compilation issue 2020-03-24 17:21:18 +07:00
andri lim
266e0ddb1e
room for EIP-1283 2020-03-24 17:21:13 +07:00
andri lim
deb09f40f0 less explicit 'copyMem' 2020-02-12 17:53:26 +02:00
andri lim
7c9f6b48d6 unify Nimbus 'call' and EVMC 'call' 2020-02-12 17:53:26 +02:00
andri lim
3ef2969583 clear picture on EIP 716 issue 2020-02-12 17:53:26 +02:00
andri lim
dc3a897851 implement evmc call 2020-02-12 17:53:26 +02:00
andri lim
9477990897 simplify CALL family impl 2020-02-12 17:53:26 +02:00
andri lim
fff35ab01d implement evmc create/create2 2020-02-12 17:53:26 +02:00
andri lim
109f841a9e simplify returnData logic 2020-02-12 17:53:26 +02:00
andri lim
f850c4a37b put 'sstoreEvmc' behind 'when evmc_enabled' 2020-02-12 17:53:26 +02:00
andri lim
933b2dad78 remove code from EVM Message and load code in 'Computation' 2020-01-23 18:07:44 +02:00
andri lim
83e9debb62 move contract address creation to 'Computation' 2020-01-23 18:07:44 +02:00
andri lim
ea4f851f80 move create contract incNonce to 'applyMessage' 2020-01-23 18:07:44 +02:00
andri lim
c459879647 only import evmc files when 'evmc_enabled' defined 2020-01-23 18:07:44 +02:00
andri lim
4aa209113a integrate evmc 'setStorage' 2020-01-23 18:07:44 +02:00
andri lim
bf7b4c7273 fixes evmc 'selfDestruct' definition 2020-01-23 18:07:44 +02:00
andri lim
3e384f764d fixes evmc 'accountExists' definition 2020-01-23 18:07:44 +02:00
andri lim
295d2c180b integrate evmc 'selfDestruct' and 'copyCode' 2020-01-23 18:07:44 +02:00
andri lim
8a9d9114e7 integrate evmc 'getCodeHash' 2020-01-23 18:07:44 +02:00
andri lim
5507e80b63 integrate evmc 'getCodeSize' 2020-01-23 18:07:44 +02:00
andri lim
8c53371c49 integrate evmc 'getBalance' 2020-01-23 18:07:44 +02:00
andri lim
fdbc888840 integrate evmc 'getStorage' 2020-01-23 18:07:44 +02:00
andri lim
a4a1148a45 integrate evmc 'accountExists' 2020-01-23 18:07:44 +02:00
andri lim
319e5d8ae9 integrate evmc 'getTxContext' 2020-01-23 18:07:44 +02:00
andri lim
c1ef8632b2 move fork and gasCosts from Computation to vmState 2020-01-20 18:36:58 +02:00
andri lim
bab359cabf move origin and gasPrice from Message to vmState 2020-01-20 18:36:58 +02:00
andri lim
d300bc352d fixes balance transfer for CALL and CALLCODE 2020-01-20 18:36:58 +02:00