Commit Graph
239 Commits
Author SHA1 Message Date
chriseth 5d906cd58d Merge pull request #7568 from ethereum/fixtest
Fix failing tests on ArchLinux and potentially MacOS
2019-10-29 12:37:51 +01:00
Mathias Baumann b3a5c9c9c0 Fix failing tests on ArchLinux and potentially MacOS 2019-10-29 12:02:50 +01:00
chriseth 81e2d1ed14 Merge pull request #7528 from ethereum/fix-7434
yul interpreter: Initialize calldata with random data
2019-10-28 12:39:27 +01:00
Christian Parpart df729b3084 Make use of C++17 std::optional<> instead of boost::optional<>. 2019-10-28 11:39:30 +01:00
Bhargava Shastry 128c3c7cf6 yul interpreter: Initialize calldata with random data 2019-10-21 10:37:35 +02:00
chriseth 9ce1ca2340 Refactor Optimiser Steps Interface. 2019-09-24 14:52:01 +02:00
chriseth 5a950908b6 Merge pull request #7432 from ethereum/fix-ossfuzz-build
ossfuzz: Create a separate cmake toolchain file for ossfuzz
2019-09-17 15:24:50 +02:00
Bhargava Shastry 9b31d72f43 solc fuzzer: Use randomly chosen evm version 2019-09-17 13:43:22 +02:00
chriseth 7a79742f3d Out of body again. 2019-09-17 12:30:15 +02:00
Bhargava Shastry 48da5f07a5 ossfuzz: Create a separate cmake toolchain file for ossfuzz so that multiple fuzzing backends may be used 2019-09-16 18:35:15 +02:00
Bhargava Shastry 403fb7d88c Update logic to track dynamically encoded parameters 2019-09-16 14:25:37 +02:00
chriseth 192946c1ba Merge pull request #7413 from ethereum/ossfuzz-link-correctly
Link ossfuzz targets with -fsanitize=fuzzer instead of libFuzzingEngine
2019-09-12 20:22:53 +02:00
Bhargava Shastry a7c987d931 Link ossfuzz targets with -fsanitize=fuzzer instead of libFuzzingEngine supplied by docker image 2019-09-12 11:26:05 +02:00
chriseth 4f80117eef Use builtin iszero for for loop condition rewriting. 2019-09-12 10:26:16 +02:00
chriseth fcfe829534 Introduce LiteralRematerializer and thus simplify StructuralSimplifier. 2019-09-11 19:50:24 +02:00
chriseth a064e0fc97 Merge pull request #7236 from ethereum/proto-add-object-access
Experimental support for object access builtins
2019-09-11 18:28:10 +02:00
chriseth e9346ca38a Merge pull request #7400 from ethereum/evmoneSearch
Fix evmone filename for auto-discovery for windows and macos.
2019-09-11 17:55:12 +02:00
Daniel Kirchner 2535091168 Replace preprocessor macros with constexpr expressions. 2019-09-11 13:03:05 +02:00
Christian Parpart ccdca32f39 isoltest: Fixes matching tests on platforms that don't use forward slahes as path separators. 2019-09-11 12:53:20 +02:00
Flash Sheridan 733d40ddb5 Fix evmone filename for auto-discovery for windows and macos. 2019-09-11 12:28:05 +02:00
Bhargava Shastry 34022a2c8c Pseudo-randomly choose object/data identifier that is in scope 2019-09-11 10:57:54 +02:00
Bhargava Shastry d677a15507 Add object access builtin functions 2019-09-11 10:57:54 +02:00
Dimitry fd3ae0b24a add chainid and selfbalance to lllc 2019-09-09 23:35:36 +03:00
Bhargava Shastry e349fb1ce1 Abiv2 proto fuzzer: Crop at least 32 bytes if last dynamically encoded parameter is right padded 2019-09-09 10:07:30 +02:00
chriseth 7f797bc6ae Merge pull request #7342 from ethereum/extendedMemorySizeInterpreter
Make memory addresses wrap in interpreter.
2019-09-05 13:14:57 +02:00
Bhargava Shastry 137a898eca Yul proto fuzzer: Fix typo in low level call 2019-09-04 21:14:26 +02:00
chriseth 5b4b4011c7 Extend memory beyond 32 byte addresses in interpreter. 2019-09-04 20:10:42 +02:00
Bhargava Shastry c889e6e015 Yul proto fuzzer: Add create and call opcodes 2019-09-04 19:13:40 +02:00
Bhargava Shastry 6b27ef8fcb Yul proto fuzzer: Additional blockchain opcodes 2019-09-04 19:13:40 +02:00
Bhargava Shastry fce65ec811 Randomize calldataload and storage slots and use dictionary tokens as function argument 2019-09-04 09:54:57 +02:00
Bhargava Shastry d066ba71a4 Force call of every valid func declaration 2019-09-04 09:54:57 +02:00
Bhargava Shastry 4837ef4ada Yul proto fuzzer: Make function definition a statement 2019-09-04 09:54:36 +02:00
Leonardo Alt d131784714 Add Load Resolver to Yulopti 2019-09-03 15:51:33 +02:00
chriseth 6e4e54cbc6 Merge pull request #7309 from ethereum/yulproto-refactor
Yul proto fuzzer: Do not shadow variables
2019-09-03 12:29:13 +02:00
chriseth 029941a168 Merge pull request #7251 from ethereum/sideEffectsForUserDefinedFunctions
Side effects for user defined functions
2019-09-03 12:10:56 +02:00
Bhargava Shastry 6427ec661a Yul interpreter: Out of bounds mloads return zero 2019-09-03 09:51:15 +02:00
chriseth 127bcfc69d Take user function side-effects into account for unused pruner. 2019-09-02 17:41:51 +02:00
chriseth 1c5845e3f2 Side-effects of user-defined functions. 2019-09-02 17:41:51 +02:00
Bhargava Shastry bcf0c1810c Yul proto fuzzer: Do not reuse variable names 2019-09-02 15:23:10 +02:00
chriseth 9a6357ab09 Merge pull request #7188 from ethereum/abiv2-use-bytes-string-longer-than-32-bytes
Abiv2 use bytes string longer than 32 bytes
2019-09-02 15:05:43 +02:00
chriseth bdf29277a2 Change interpreter memory to be non-contiguous. 2019-09-02 13:51:47 +02:00
Bhargava Shastry 46a133e848 Generate bytes and string literals that are longer than 32 bytes 2019-09-02 12:43:47 +02:00
Bhargava Shastry 3963d0ca02 Create bytes/string values of shorter than 32 bytes and adjust invalid encoding length accordingly 2019-09-02 11:30:38 +02:00
chriseth 01e0a12c3b Fix handling of scopes in Yul Interpreter. 2019-09-02 10:41:26 +02:00
Bhargava Shastry 922790730c Do not create duplicate case statements 2019-08-26 12:44:06 +02:00
Bhargava Shastry 86c981d9fa proto fuzzer: Use a yul optimizer dictionary 2019-08-26 12:44:06 +02:00
chriseth 3c4f558242 Tests 2019-08-15 16:30:05 +02:00
Mathias Baumann ccfcee5b80 YulInterpreter: Fix wrong context passed to called function 2019-08-12 17:12:53 +02:00
chriseth f3f3cac864 Fix for ossfuzz. 2019-08-08 17:35:46 +02:00
chriseth c4638cc5cb Remove mention of IPC. 2019-08-08 17:35:46 +02:00