Commit Graph

233 Commits

Author SHA1 Message Date
Bhargava Shastry
c007e16ee5 Introduce expression statement. 2021-06-14 13:28:26 +02:00
Bhargava Shastry
c5f92c6bdc Remove circular deps 2021-06-14 13:28:21 +02:00
Bhargava Shastry
f234c8e53f Use shared_ptr refs where possible. 2021-06-14 13:28:21 +02:00
Bhargava Shastry
914fcedb77 Potential fixes to memory leaks 2021-06-14 13:28:21 +02:00
Bhargava Shastry
07fdbb309b Introduce typed expressions. 2021-06-14 13:28:17 +02:00
Bhargava Shastry
23edc14398 Introduce contract inheritance 2021-06-14 13:28:12 +02:00
Bhargava Shastry
ac6753a46e Introduce assignment operations. 2021-06-14 13:28:08 +02:00
Bhargava Shastry
f76157bc20 Destroy state properly 2021-06-14 13:28:03 +02:00
Bhargava Shastry
eb83ebf1bd Do not apply mutation if it is too large. 2021-06-14 13:28:03 +02:00
Bhargava Shastry
542395289c Fix bug in call statement generator 2021-06-14 13:28:03 +02:00
Bhargava Shastry
a9a80213b3 Add scoped variables 2021-06-14 13:28:03 +02:00
Bhargava Shastry
0e15a794d8 Introduce function call statements. 2021-06-14 13:28:03 +02:00
Bhargava Shastry
0000bb0eea Do not generate nested unchecked blocks; add typed literals. 2021-06-14 13:27:58 +02:00
Bhargava Shastry
fdb1bc0b3d Introduce unchecked basic blocks. 2021-06-14 13:27:58 +02:00
Bhargava Shastry
86fec73a8c Implement block nesting depth properly 2021-06-14 13:27:58 +02:00
Bhargava Shastry
c87d788f78 Add assignment statement 2021-06-14 13:27:58 +02:00
Bhargava Shastry
f6242ef6b7 Add assignment statement. 2021-06-14 13:27:58 +02:00
Bhargava Shastry
4b40b40bb6 Remove deprecated SMTChecker pragma. 2021-06-14 13:27:54 +02:00
Bhargava Shastry
a115e61be6 Add block statement 2021-06-14 13:27:50 +02:00
Bhargava Shastry
46bac2377f Fix bug in function output params 2021-06-14 13:27:45 +02:00
Bhargava Shastry
ef29a5e287 Add function output params 2021-06-14 13:27:45 +02:00
Bhargava Shastry
49bdc1571e Make contract function types external 2021-06-14 13:27:45 +02:00
Bhargava Shastry
bbd451dd16 Add function I/O params. 2021-06-14 13:27:45 +02:00
Bhargava Shastry
31ec048f76 Add types. 2021-06-14 13:27:41 +02:00
Bhargava Shastry
abb931b186 Resolve imported symbols 2021-06-14 13:27:37 +02:00
Bhargava Shastry
a4504b286d Add exports 2021-06-14 13:27:37 +02:00
Bhargava Shastry
6d2c990117 Add function 2021-06-14 13:27:32 +02:00
Bhargava Shastry
10a416c4a8 Contract changes 2021-06-14 13:27:28 +02:00
Bhargava Shastry
b3b72a2b91 Add contract 2021-06-14 13:27:28 +02:00
Bhargava Shastry
d86136679a Solidity fuzzer: Add simple import statements and test/source state. 2021-06-14 13:27:24 +02:00
Djordje Mijovic
e404b6e7a6 Refactoring yul source locations. 2021-05-04 16:05:23 +02:00
anurag4u80
c4cf412fed Replaced boost remove_erase and remove_erase_if 2021-04-24 08:10:41 +05:30
Bhargava Shastry
69dd1771b7 Remove as many boost usages as possible in protoToYul.cpp 2021-04-20 18:46:19 +02:00
Bhargava Shastry
14d2170b46
Merge pull request #11238 from ethereum/yul-interpreter-storage-state
Permit Yul interpreter vs Evmone storage comparison.
2021-04-19 12:22:59 +02:00
Bhargava Shastry
6941143613
Merge pull request #11216 from ethereum/fix-abiv2-fuzzer-bug
Fix use of const ref in Abiv2 and other proto fuzzers.
2021-04-14 15:03:57 +02:00
Bhargava Shastry
15bf6af77a Remove output parameters from function call since they are generated on the fly in the converter. 2021-04-14 13:53:37 +02:00
Bhargava Shastry
7c806217fb Changes to yul proto mutator. 2021-04-14 13:53:37 +02:00
Bhargava Shastry
cf08c9b255 Correct use of emplace_back 2021-04-14 13:53:37 +02:00
Bhargava Shastry
1709b2924b Changes to how function calls are generated. 2021-04-14 13:53:37 +02:00
Bhargava Shastry
b1392ac988 Fix use of const ref in Abiv2 and other proto fuzzers. 2021-04-13 19:38:43 +02:00
Bhargava Shastry
033ee0e2bc Permit Yul interpreter vs Evmone storage comparison. 2021-04-12 10:39:23 +02:00
Bhargava Shastry
6f3095a199
Merge pull request #11141 from ethereum/compilation-framework-fuzzer
Enable multi-source fuzzing.
2021-04-06 14:00:11 +02:00
Bhargava Shastry
f3f1ccc34f Fix false positive caused by early termination due to nested expressions. 2021-03-26 13:35:57 +01:00
Bhargava Shastry
f9182e9f88 Minor changes to Solidity compilation framework fuzzer. 2021-03-23 13:17:41 +01:00
Bhargava Shastry
8023fdb537 Extract state printing to a separate class. 2021-03-10 17:41:03 +01:00
Bhargava Shastry
24f42c5541 Filter false positives due to EVM errors.
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2021-03-10 17:41:03 +01:00
Bhargava Shastry
34c08ea2c6 EVMHost: Add tracing features needed for fuzzing. 2021-03-10 17:41:03 +01:00
Daniel Kirchner
acd3084076 Fuzzer for stack optimiser/code generator. 2021-03-04 17:35:56 +01:00
Bhargava Shastry
a34308e4cb Proto yul converter: Provide a flag to filter stateful instructions. 2021-03-04 15:20:19 +01:00
Bhargava Shastry
069ac9c9a9
Merge pull request #10878 from ethereum/refactor-solProtoFuzzer
Fuzzer: Refactor utility methods shared by proto fuzzers.
2021-03-01 19:56:10 +01:00