Commit Graph

173 Commits

Author SHA1 Message Date
chriseth
845899e305 Use single counter for name dispenser for performance reasons. 2018-11-07 23:09:33 +01:00
chriseth
b2b11eaa00 Fix data flow analyzer for function definitions. 2018-11-07 20:32:55 +01:00
Christian Parpart
f08ab77249
Yul: Implements empty-var-decl-propagation 2018-10-26 13:13:57 +02:00
chriseth
60f1d52f59 Full suite tests. 2018-10-24 18:02:08 +02:00
chriseth
b3911798b3 Redundant assign eliminator. 2018-10-24 13:24:25 +02:00
chriseth
c676b009e1
Merge pull request #5267 from ethereum/ssatransform
SSA transform - first step.
2018-10-19 11:10:08 +02:00
chriseth
5c274a9251
Merge pull request #5260 from ethereum/flattenMore
Flatten more.
2018-10-19 11:08:46 +02:00
chriseth
0ebe572f7d
Merge pull request #5258 from ethereum/coverage2
Add some simplification tests for operations.
2018-10-19 11:04:56 +02:00
chriseth
465845b7a7 SSA transform - first step. 2018-10-18 18:56:22 +02:00
chriseth
48749146da Fix a bug in CSE where a variable that was already out of scope was used. 2018-10-18 14:55:51 +02:00
chriseth
c34fa43d5b Test case that shows a CSE bug related to scopes. 2018-10-18 14:54:23 +02:00
chriseth
e8a2d57075 Flatten more. 2018-10-18 00:58:15 +02:00
chriseth
bda154440c Add some simplification tests for operations. 2018-10-18 00:10:39 +02:00
chriseth
7609e2871e
Merge pull request #5240 from ethereum/limitDispenserSize
[Yul] Limit name length created by dispenser
2018-10-17 22:54:38 +02:00
chriseth
732d09cef1 Limit size of generated names and add convenience constructors. 2018-10-17 17:21:55 +02:00
chriseth
9fb5feed05 Use metrics in the full inliner. 2018-10-17 14:11:20 +02:00
chriseth
2ab6430303 Inline each function separately. 2018-10-16 17:32:21 +02:00
chriseth
a435a14e13 Test for crash via inlining. 2018-10-16 17:29:20 +02:00
chriseth
e2e4a9fe81 New full inliner. 2018-10-16 17:16:03 +02:00
chriseth
ffe44536fe Add a "full simplify" test that applies multiple elementary transforms. 2018-10-16 16:18:39 +02:00
Christian Parpart
04612936c2
Yul: Introduces a block flattening pass + tests 2018-10-15 18:21:34 +02:00
chriseth
0664772ece Some renaming leftovers. 2018-10-15 12:51:50 +02:00
Christian Parpart
9a4bec7e47
Renaming libjulia to libyul 2018-10-15 11:52:35 +02:00