Commit Graph

13180 Commits

Author SHA1 Message Date
Alex Beregszaszi
ea1944bb2d Removed unused isLibrary from flag addSource in CompilerStack 2019-03-20 17:41:51 +00:00
chriseth
064f73be0c
Merge pull request #6249 from ethereum/optimizerTests
Change optimizer tests so that they also always test the peephole optimizer.
2019-03-20 18:38:06 +01:00
chriseth
9aab2329ed
Merge pull request #6244 from ethereum/smt_modifiers
[SMTChecker] Support modifiers
2019-03-20 18:04:28 +01:00
chriseth
6ac0ee1751
Merge pull request #5946 from bshastry/yul_opt_ossfuzz
Adds an oss-fuzz harness to fuzz AssemblyStack API calls for parsing …
2019-03-20 16:26:56 +01:00
chriseth
d788a88873 Use "none" and "full" optimizer settings in the optimizer tests. 2019-03-20 16:11:37 +01:00
chriseth
2fd6661b09 Add tests for some optimizer rules. 2019-03-20 16:10:59 +01:00
chriseth
54e00b930d
Merge pull request #6331 from ethereum/pragma-parser-location-reporting-fix
Fixes wrong source location when reporting pragma solidity version conflicts
2019-03-20 16:07:56 +01:00
chriseth
8468dca0bb
Merge pull request #6323 from ethereum/bug-637
Fix function calls with named arguments for overloaded functions
2019-03-20 16:07:09 +01:00
Bhargava Shastry
6c1d0b62b5 Adds oss-fuzz harnesses to fuzz AssemblyStack API calls for parsing/optimizing StrictAssembly and generating EVM bytecode. 2019-03-20 16:06:45 +01:00
chriseth
e3c3b9e542
Merge pull request #6276 from ethereum/properlyDetectRemovableVariables
Properly detect removable variables
2019-03-20 16:06:19 +01:00
chriseth
57f99247c8 Update tests. 2019-03-20 15:07:05 +01:00
chriseth
8514c0bc60 Provide max iterations for stack compressor as parameter. 2019-03-20 15:07:05 +01:00
chriseth
9ac117e5b9 Changelog entry. 2019-03-20 15:07:05 +01:00
chriseth
aa9a2935ac Properly determine whether a variable can be eliminated or not. 2019-03-20 15:07:05 +01:00
chriseth
38cbf8d230 Pass "optimize stack allocation" flag down to the stack compressor. 2019-03-20 15:03:27 +01:00
Mathias Baumann
84b68006ba Fix function calls with named arguments for overloaded functions 2019-03-20 14:54:41 +01:00
Christian Parpart
bb28c8a877 Fixes wrong source location when reporting pragma solidity version conflicts. 2019-03-20 11:42:25 +01:00
Leonardo Alt
9659f40c8d [SMTChecker] Support modifiers 2019-03-20 11:32:20 +01:00
chriseth
556d11dae0
Merge pull request #6310 from ethereum/smt_callstack_model
[SMTChecker] Add callstack to model report
2019-03-20 10:51:49 +01:00
chriseth
93027c40b6
Merge pull request #6322 from ethereum/asm-datasize-exception-fix
Improve exception information in Yul function datasize(name) and dataoffset(name).
2019-03-20 10:50:49 +01:00
Leonardo Alt
3296fb3764 Add callstack to model report 2019-03-20 10:35:29 +01:00
chriseth
b021f015f9
Merge pull request #6321 from ethereum/metadata-cbor-encoder
Introduce simplfied CBOR encoding for Metadata
2019-03-20 10:10:16 +01:00
chriseth
4d89fc1644
Merge pull request #6320 from ethereum/callvalue_nonpayable
Inline Assembly: Issue error for callvalue in nonpayable function
2019-03-20 10:07:09 +01:00
chriseth
1e970ccc5b
Merge pull request #6324 from ethereum/useABICheck
Use ABI_CHECK for event data comparison.
2019-03-20 10:05:02 +01:00
Alex Beregszaszi
5245a66d91
Merge pull request #6318 from ethereum/signal-failure-and-such
Allow simplification patterns to signal failure
2019-03-20 03:38:51 +00:00
Leonardo Alt
0386d39942 Add test with internal function 2019-03-19 20:45:27 +01:00
Leonardo Alt
9acec99c31 Issue error for callvalue in nonpayable function 2019-03-19 20:45:27 +01:00
chriseth
11198cd76a
Merge pull request #6326 from ethereum/moveAppendSet
Add operator for move-append onto set.
2019-03-19 19:44:25 +01:00
chriseth
7da5e9575b
Merge pull request #6325 from ethereum/alsoOutputOptimized
Also output optimized yul code if requested.
2019-03-19 17:51:42 +01:00
chriseth
b82b970429 Add operator for move-append onto set. 2019-03-19 17:50:50 +01:00
chriseth
cf0fdfb175
Merge pull request #6319 from ethereum/operators_namespace
[RFC] Move CommonData operator functions to the global namespace
2019-03-19 17:41:08 +01:00
chriseth
7c524f794f Also output optimized yul code if requested. 2019-03-19 17:24:36 +01:00
chriseth
87ebb16890 Use ABI_CHECK for event data comparison. 2019-03-19 17:23:50 +01:00
Christian Parpart
7f7f44dd63 Improve exception information in Yul function datasize(name) and dataoffset(name).
Makes sure we properly throw a detailed exception instead of an out_of_range from std::map.
2019-03-19 17:17:32 +01:00
Alex Beregszaszi
7babe3dbba Introduce simplfied CBOR encoding for Metadata 2019-03-19 16:06:19 +00:00
chriseth
164a51eeae
Merge pull request #6313 from ethereum/yul-for-continue-tests-prerequisites
[Yul] Refactors RedundantAssignEliminator for future changes wrt. break/continue stmts.
2019-03-19 17:03:17 +01:00
Mathias Baumann
6b60e90cde Fix commented debug output code 2019-03-19 16:15:05 +01:00
Leonardo Alt
15a5b2bf65 Move CommonData operator functions to the global namespace 2019-03-19 16:06:23 +01:00
Alex Beregszaszi
f95388011b Allow simplification patterns to signal failure 2019-03-19 15:51:52 +01:00
Christian Parpart
89f1dbfbb6
[Yul] Refactors RedundantAssignEliminator for future changes wrt. break/continue statements. 2019-03-19 12:24:45 +01:00
chriseth
c7824932a4
Merge pull request #6311 from ethereum/docs-rem-heading
[DOCS] Remove random heading
2019-03-19 11:21:45 +01:00
Chris Ward
7075f158e3 Instead update heading 2019-03-18 16:30:23 +01:00
chriseth
304ef77b4a
Merge pull request #6300 from ethereum/extractedTestsEVMVersionRules
Support EVM Version rules for extracted tests.
2019-03-18 15:29:04 +01:00
Chris Ward
855555e941 Add mention of initialisation cost of storage 2019-03-18 14:37:47 +01:00
Daniel Kirchner
a178486436 Review suggestions. 2019-03-18 14:34:00 +01:00
Chris Ward
61be78b42a Adding populus gotcha covering storage costs 2019-03-18 14:20:47 +01:00
chriseth
f174cb9ab9
Merge pull request #6308 from ethereum/yul-for-continue-tests
[Yul] Adds another test case for multiple continue statements within a for-loop.
2019-03-18 13:16:07 +01:00
Christian Parpart
82ced641e5
[Yul] Adds another test case for multiple continue statements within a for-loop 2019-03-18 12:43:20 +01:00
chriseth
834c23fc38
Merge pull request #6289 from ethereum/strictasm_fuzzer_ascii_only
Discard fuzz input containing non ASCII character(s).
2019-03-18 11:44:06 +01:00
chriseth
5b5c9aa2ff
Merge pull request #6297 from ethereum/proto-add-binary-ops
Add more binary operations to the yul proto spec.
2019-03-18 11:19:29 +01:00