Bhargava Shastry
5c6e12b2c0
Update existing and add new test cases.
2023-02-02 11:40:39 +01:00
Bhargava Shastry
f8880cad82
Yul grammar generator: Bound memory accesses.
2023-02-02 08:10:53 +01:00
Rodrigo Q. Saramago
ef6ff2f055
Adds support for the EVM version "Paris".
...
Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399 ).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-01-23 18:50:36 +00:00
Bhargava Shastry
2c27405cbb
Fix zero size memory expansion semantics in the yul interpreter.
2022-11-21 11:53:42 +01:00
Marenz
d10d967008
yulRun: Fix unexpected return value for call* instructions and add tests
2022-09-14 11:40:08 +02:00
Bhargava Shastry
69d9869d21
Fix create2 memory access in yul interpreter.
2022-09-12 09:53:31 +02:00
chriseth
f04adde664
Allow hex string literals in Yul.
2021-04-08 15:03:33 +02:00
Bhargava Shastry
32fd692c51
Yul interpreter: Introduce expression evaluation maximum nesting depth
2020-12-04 17:27:03 +01:00
Bhargava Shastry
e1b44500dd
Yul interpreter: Smaller execution timeout for tests and additional test cases
2020-12-03 10:08:41 +01:00
chriseth
0226d104b7
Fix literal arguments in interpreter.
2020-08-06 14:16:59 +02:00
Bhargava Shastry
5100effeec
yul: Set non movable flag to true in simplification rule for byte of right-shifted expression
2020-08-03 17:30:52 +02:00
Bhargava Shastry
deffb7ffc8
Yul interpreter: Return addresses of type u160 for create and create2 calls
2020-07-20 11:26:47 +02:00
Bhargava Shastry
d0ea1f97fd
Yul interpreter: Return selfbalance constant for the expression
...
balance(address()) and balance constant otherwise.
2020-06-30 16:59:13 +02:00
Christian Parpart
b7fa5d5040
Mark EVM instruction pc()
as deprecated when used in inline assembly.
2020-05-27 12:07:23 +02:00
chriseth
499fe57d33
Tests
2019-10-29 14:32:16 +01:00
chriseth
5b4b4011c7
Extend memory beyond 32 byte addresses in interpreter.
2019-09-04 20:10:42 +02:00
chriseth
01e0a12c3b
Fix handling of scopes in Yul Interpreter.
2019-09-02 10:41:26 +02:00
Mathias Baumann
ccfcee5b80
YulInterpreter: Fix wrong context passed to called function
2019-08-12 17:12:53 +02:00
chriseth
3c548a1d76
Update tests.
2019-05-23 13:17:27 +02:00
chriseth
91312e657b
Skip empty entries in memory and storage dump.
2019-05-23 12:27:56 +02:00
chriseth
18bc82e6fd
Fix interpreter exp bug.
2019-05-07 11:40:33 +02:00
chriseth
f113f8e4a0
Implement datasize, dataoffset and datacopy for yul interpreter.
2019-05-06 16:59:47 +02:00
Bhargava Shastry
2d1faf53be
Reset loop state (to default) before interpreting for-loop post block
2019-05-02 22:22:19 +02:00
chriseth
5eb155b894
Interpreter tests.
2019-02-25 11:58:36 +01:00