Commit Graph

230 Commits

Author SHA1 Message Date
Bhargava Shastry
4e171a8b61 Potential fixes to memory leaks 2021-06-09 18:38:44 +02:00
Bhargava Shastry
248cef01e7 Introduce typed expressions. 2021-06-09 18:38:39 +02:00
Bhargava Shastry
23e76926ea Introduce contract inheritance 2021-06-09 18:38:34 +02:00
Bhargava Shastry
d56dfcf750 Introduce assignment operations. 2021-06-09 18:38:30 +02:00
Bhargava Shastry
7394c60dd5 Destroy state properly 2021-06-09 18:38:25 +02:00
Bhargava Shastry
1d6d8e68f8 Do not apply mutation if it is too large. 2021-06-09 18:38:25 +02:00
Bhargava Shastry
a0197138d9 Fix bug in call statement generator 2021-06-09 18:38:25 +02:00
Bhargava Shastry
954bcf95ea Add scoped variables 2021-06-09 18:38:25 +02:00
Bhargava Shastry
895e48a823 Introduce function call statements. 2021-06-09 18:38:25 +02:00
Bhargava Shastry
fd211d2631 Do not generate nested unchecked blocks; add typed literals. 2021-06-09 18:38:20 +02:00
Bhargava Shastry
52f227e40a Introduce unchecked basic blocks. 2021-06-09 18:38:20 +02:00
Bhargava Shastry
1c43ecf9c8 Implement block nesting depth properly 2021-06-09 18:38:20 +02:00
Bhargava Shastry
638ab0bb68 Add assignment statement 2021-06-09 18:38:20 +02:00
Bhargava Shastry
3d6c5e8335 Add assignment statement. 2021-06-09 18:38:20 +02:00
Bhargava Shastry
986f65c219 Remove deprecated SMTChecker pragma. 2021-06-09 18:38:15 +02:00
Bhargava Shastry
ca209c2f09 Add block statement 2021-06-09 18:38:10 +02:00
Bhargava Shastry
b79ddb34c7 Fix bug in function output params 2021-06-09 18:38:05 +02:00
Bhargava Shastry
9d5c208493 Add function output params 2021-06-09 18:38:05 +02:00
Bhargava Shastry
4f6678b134 Make contract function types external 2021-06-09 18:38:05 +02:00
Bhargava Shastry
0f31604a1e Add function I/O params. 2021-06-09 18:38:05 +02:00
Bhargava Shastry
093b619722 Add types. 2021-06-09 18:38:00 +02:00
Bhargava Shastry
99adff305c Resolve imported symbols 2021-06-09 18:37:55 +02:00
Bhargava Shastry
bc53705e06 Add exports 2021-06-09 18:37:55 +02:00
Bhargava Shastry
e4aa3bab39 Add function 2021-06-09 18:37:51 +02:00
Bhargava Shastry
18b0c021bc Contract changes 2021-06-09 18:37:46 +02:00
Bhargava Shastry
25ef4e0e8e Add contract 2021-06-09 18:37:46 +02:00
Bhargava Shastry
fa9328cb0e Solidity fuzzer: Add simple import statements and test/source state. 2021-06-09 18:37:42 +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
Bhargava Shastry
758d159d87 yul proto mutator: Add control flow to block statements. 2021-02-22 15:10:41 +01:00
Bhargava Shastry
febccdd96a Fuzzer: Refactor utility methods shared by proto fuzzers.
Co-authored-by: Leonardo <leo@ethereum.org>
Co-authored-by: Daniel Kirchner <daniel@ekpyron.org>
2021-02-10 11:43:57 +01:00
Bhargava Shastry
75e7e1bee7 Consistent use of returns documentation tag. 2021-02-09 12:51:36 +01:00