263 Commits
Author SHA1 Message Date
chriseth 301215f186 Merge pull request #7461 from sifmelcara/licm
[YulOpt] Implement loop-invariant code motion
2019-11-28 12:00:19 +01:00
mingchuan db60d123d0 [YulOpt] Implement loop-invariant code motion 2019-11-28 11:59:29 +01:00
Paweł Bylica 38a20190f4 test: Use evmc::VM directly
The evmc::VM works as a RAII wrapper similarly to unique_ptr, so there is no point in using additional unique_ptr.
2019-11-27 18:53:02 +01:00
Bhargava Shastry ea9e849ee4 Use pointer to string for efficiency 2019-11-26 17:12:56 +01:00
Bhargava Shastry 41bdc9b673 yul proto fuzzer: Generalize variable references 2019-11-26 17:12:56 +01:00
chriseth d4d0df021d EWasm translation tests. 2019-11-26 15:46:33 +01:00
chriseth 6625f634fc Wasm Interpreter 2019-11-26 15:46:33 +01:00
chriseth a26dd5a428 Remove trailing spaces in output. 2019-11-21 20:09:03 +01:00
chriseth 5deaac0849 Merge pull request #7740 from ethereum/istanbul
Enable support for Istanbul
2019-11-20 10:49:27 +01:00
chriseth 32f321e416 Merge pull request #7751 from ethereum/replace_boost_variant_std
Replace boost::variant by std::variant in libyul
2019-11-19 19:40:39 +01:00
Leonardo Alt be849b3c47 Replace boost::variant by std::variant in libyul 2019-11-19 17:23:18 +01:00
Alex Beregszaszi 71a310a2ea Run fuzzer for istanbul 2019-11-19 17:09:18 +01:00
Alex Beregszaszi 1432f0ad28 Adapt EVMHost for EVMC7 2019-11-19 12:21:03 +01:00
Bhargava Shastry 62ae015552 docker: Add versioning and edit naming scheme 2019-11-18 15:16:53 +01:00
Bhargava Shastry a8a50c4e0e Upgrade evmone to v0.2.0 and adapt fuzzer build 2019-11-18 15:16:53 +01:00
Bhargava Shastry 505b5deaf9 Add chainid and selfbalance opcodes to yul proto converter and enable it
in the yul proto differential fuzzer.
2019-11-18 09:26:00 +01:00
Bhargava Shastry 9772cc44a0 abiv2 proto fuzzer: Fuzz return data coding 2019-11-06 23:42:10 +01:00
Bhargava Shastry 6a55949c04 yul proto fuzzer: Increase step limit upper bound for optimized code 2019-11-04 18:38:56 +01:00
Bhargava Shastry 04becb9458 Minor refactoring 2019-11-04 15:47:04 +01:00
Bhargava Shastry 12ed08eddb Place upper bound number on number of array dimensions 2019-11-04 15:47:04 +01:00
Bhargava Shastry 3cfeca33c1 Abiv2 proto fuzzer: Refactor and add support for structs 2019-11-04 15:47:04 +01:00
chriseth 08cf616157 Merge pull request #7609 from ethereum/fix-7608
yul proto fuzzer: Catch exception early and propagate termination reason
2019-11-04 13:29:50 +01:00
chriseth 5d6e983be3 Conditional simplifier. 2019-11-01 14:01:56 +01:00
Bhargava Shastry e4ba1c02e8 yul proto fuzzer: Catch exception early and propagate termination reason to harness 2019-11-01 12:26:35 +01:00
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