Alexander Arlt
c5673278a7
Remove EWASM backend.
2023-05-11 10:56:55 -05: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
Daniel
bbaf8a4eb4
Merge pull request #13283 from ethereum/yulDebugger
...
Yul Debugger
2022-11-01 14:04:56 +01:00
Alex Beregszaszi
0f484ec93b
Replace use of boost::algorithm::all_of with ranges::all_of
2022-09-27 03:33:13 +02:00
Marenz
692a99f891
yulRun: Add recursion protection
2022-09-14 11:40:23 +02:00
Marenz
d10d967008
yulRun: Fix unexpected return value for call* instructions and add tests
2022-09-14 11:40:08 +02:00
Marenz
b8699e7687
YulRunner: Add support for interactive inspection of the state
2022-09-14 11:40:02 +02:00
Marenz
4b69b5fdc1
YulRunner: Add support for external calls to the same contract
2022-09-14 11:40:02 +02:00
Marenz
53b67334c5
YulRunner: Add support for memoryguard() and literal parameters
2022-09-14 11:40:02 +02:00
Bhargava Shastry
b8ad2b2718
Yul interpreter: Add flag to disable memory tracing and dump for fuzzing.
...
Model revert in yul interpreter.
Add logTrace for a few more instructions and clear trace on revert.
2022-01-04 11:56:27 +01:00
Bhargava Shastry
033ee0e2bc
Permit Yul interpreter vs Evmone storage comparison.
2021-04-12 10:39:23 +02:00
anurag4u80
bbcdddeed9
Replaced keys, values and reverse with ranges
2021-03-31 23:33:04 +05:30
Alexander Arlt
c44bb7e7ef
Replace raw throw with BOOST_THROW_EXCEPTION.
2021-02-18 20:23:59 -05:00
Bhargava Shastry
32fd692c51
Yul interpreter: Introduce expression evaluation maximum nesting depth
2020-12-04 17:27:03 +01:00
Alex Beregszaszi
a22077f736
Rename AsmData -> AST
...
Also attempt to only include ASTForward where appropriate.
2020-11-25 17:58:02 +00:00
chriseth
0226d104b7
Fix literal arguments in interpreter.
2020-08-06 14:16:59 +02:00
Bhargava Shastry
18fbbfa5ca
Fuzzer: Count step by number of interpreted statements
...
Co-authored-by: chriseth <chris@ethereum.org>
2020-07-21 15:38:02 +02:00
Sachin Grover
b7adb2aa42
Add SPDX license identifier if not present already in source file
...
Fixes : #9220
2020-07-17 20:24:12 +05:30
chriseth
ec2393d3b6
Refactor interpreter.
2020-07-09 15:00:13 +02:00
Djordje Mijovic
1ee6c49028
Adding fixes for signedness warnings in test/tools/yulInterpreter
2020-06-02 16:35:41 +02:00
Alexander Arlt
90bb1d8a7c
Apply modernize-use-emplace.
2020-04-02 17:35:48 -05:00
Alex Beregszaszi
3c88d295b3
Remove FixedHash(unsigned) constructor
2020-01-16 16:18:08 +00:00
Christian Parpart
345f9928ab
Library libdevcore renamed to libsolutil.
2020-01-07 15:51:50 +01:00
Christian Parpart
ed45b000d1
Adapt tests directory to C++ namespace changes.
2020-01-07 15:51:50 +01:00
Alex Beregszaszi
9c27e98b83
Rename EWasmBuiltinInterpreter to EwasmBuiltinInterpreter
2019-12-19 11:36:08 +00:00
chriseth
b0db64ff5b
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-26 16:19:35 +01:00
chriseth
6625f634fc
Wasm Interpreter
2019-11-26 15:46:33 +01:00
Leonardo Alt
389da5228e
Merge remote-tracking branch 'origin/develop' into merge_develop_060
2019-11-20 12:27:40 +01:00
Leonardo Alt
be849b3c47
Replace boost::variant by std::variant in libyul
2019-11-19 17:23:18 +01:00
Christian Parpart
f15d47f165
Yul: Remove obsoleted FunctionalInstruction.
2019-11-11 16:04:39 +01:00
chriseth
42b8c98567
Merge remote-tracking branch 'origin/develop' into develop_060
2019-10-31 18:03:25 +01:00
chriseth
ceb8ee9124
[Yul] leave statement.
2019-10-29 14:32:16 +01:00
Mathias Baumann
b3a5c9c9c0
Fix failing tests on ArchLinux and potentially MacOS
2019-10-29 12:02:50 +01:00
chriseth
bdf29277a2
Change interpreter memory to be non-contiguous.
2019-09-02 13:51:47 +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
91312e657b
Skip empty entries in memory and storage dump.
2019-05-23 12:27:56 +02:00
chriseth
1dc15d5864
Modify parser and optimizer.
2019-05-20 17:32:56 +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
Bhargava Shastry
f15cedad7a
yulInterpreter: More fine-grained exception handling
2019-04-04 13:02:55 +02:00
Bhargava Shastry
10c3b31fa4
yulInterpreter: Add timeout based on the number of interpreted statements.
2019-03-27 12:06:02 +01:00
Christian Parpart
05e2d362c8
[Yul] Adds break/continue statements and some general tests for for-loop syntax.
2019-03-11 15:05:05 +01:00
Mathias Baumann
921d52bfcd
Move Literal to u256 conversions to extra functions
...
That way we can reuse them at different places
2019-03-05 18:39:27 +01:00
chriseth
0c432a861c
Yul interpreter.
2019-02-25 11:57:48 +01:00