andri lim
d29c9fae17
Update t8n test vectors after EIP-7610 update ( #2169 )
...
* Skip call family gas cost overflow check if refund is negative
* Update t8n test vectors after EIP-7610 update
2024-05-08 09:27:37 +07:00
andri lim
be74ea83f9
Bump nim-evmc to 86d22a026b0aa07c07b3afd7d91ca475e0eae12a ( #2113 )
2024-03-28 13:47:02 +07:00
andri lim
b09fba0b49
Refactor EVM raises to reduce compiler warnings ( #2040 )
...
* Fix style check when EVMC enabled
* Refactor EVM raises to reduce compiler warnings
* Fix EVM handler raises when EVMC enabled
* Workaround stupid style checker false complaints
* Fix Windows/clang linking error due to function pointer incompatibility
2024-02-20 14:16:12 +07:00
jangko
283271a6e3
Fix unhandled overflow exception in gasCall
2023-12-04 14:10:56 +07:00
andri lim
b7365085ae
Implement EIP-7516: BLOBBASEFEE opcode ( #1791 )
...
* Implement EIP-7516: BLOBBASEFEE opcode
2023-10-01 14:24:15 +07:00
jangko
0b0d478966
Allow EVM dispatcher to use different GasCostKind for each fork
...
Why?
Some opcodes such as labeled EIP-2929 changed their behavior from fixed
gas cost to dynamic gas cost.
This changes together with #1715 and #1717 will make the new EVM tracer
to produce trace result identical to geth.
2023-08-30 21:08:35 +07:00
jangko
80aec9ccd9
Fix EVM tracer: capture exception properly
...
Also fix EVM to support new tracer
2023-08-28 14:26:43 +07:00
jangko
e121cf3864
EIP-5656: MCOPY instruction
2023-06-26 16:58:59 +07:00
jangko
ab4a1a141b
EIP-1153 spec update: change opcode value
2023-06-25 13:52:31 +07:00
andri lim
26a8759c34
implementation of EIP-4844: Shard Blob Transactions ( #1440 )
...
* EIP-4844: add pointEvaluation precompiled contract
* EIP-4844: validate transaction and block header
* EIP-4844: implement DataHash Op Code
* EIP-4844: txPool support excessDataGas calculation
* EIP-4844: make sure tx produce correct txHash
* EIP-4844: node should not automatically broadcast blob tx to it's peers
* EIP-4844: add test cases
* EIP-4844: add EIP-4844 support to t8n tool
* EIP-4844: update nim-eth to branch eip-4844
* fix t8n transaction decoding
* add t8n test data
* EIP-4844: fix blobHash opcode
* disable blobHash test when evmc_enable
2023-06-24 20:56:44 +07:00
jangko
6544adf360
implement EIP-1153: Transient storage
...
new EVM opcodes:
- TLOAD 0xb3
- TSTORE 0xb4
2023-06-23 14:04:36 +07:00
jangko
4e332868b7
reduce compiler warnings
2023-05-16 11:15:10 +07:00
Jordan Hrycaj
7490f23124
Silence some compiler gossip -- part 6, evm ( #1462 )
...
* Silence some compiler gossip -- part 6, evm
details:
Adding some missing exception annotation
* Update evmc cases
why:
were previously missing
* Increase Windows stack needed to run EVMC unit tests
why:
After annotating functions to trace exceptions some unit tests started
to fail on Windows without clear error report.
EVMC works recursively and now there seems to be a stack problem
reported by the nim compiler. Increasing the NIM stack ass sugessted by
NIM (using -d:nimCallDepthLimit=###) had some effect but no clear
solution.
Note that this patch set unrolls some NIM compiler settings
2023-02-14 14:37:21 +00:00
Adam Spitz
4bf4aeba94
Some of Shanghai: EIP-3651, EIP-3855, EIP-3860 ( #1406 )
...
* EIP-3651: Warm COINBASE
* EIP-3855: PUSH0 instruction
* EIP-3860: Limit and meter initcode
2023-01-04 08:11:33 -05:00
jangko
ac2cb82a2b
saner source code grouping
2022-12-02 13:51:42 +07:00