aboutsummaryrefslogtreecommitdiffstats
path: root/test/libyul/yulOptimizerTests
Commit message (Expand)AuthorAgeFilesLines
* Use rematerializer if variable is unreferenced or value is "cheap".chriseth2019-01-0714-99/+128
* Remove VarDeclPropagator.chriseth2018-12-138-99/+0
* Do not create unassigned variables.chriseth2018-12-1315-47/+46
* Add variable declaration initializer.chriseth2018-12-135-0/+96
* Consider return variables to be zero initially.chriseth2018-12-133-34/+64
* Do not inline into already big functions.chriseth2018-12-134-151/+246
* Support unassigned variables in the SSA value tracker and the data flow analy...chriseth2018-12-136-6/+50
* Add structural simplifier as optimization step for Yul.Daniel Kirchner2018-12-0710-10/+75
* Tests for SSAValueTracker ignoring function call on rhsMathias Baumann2018-12-062-0/+26
* Test for unhandled default values in expression simplifierMathias Baumann2018-12-051-0/+14
* Properly recurse in ForLoopInitRewriterDaniel Kirchner2018-12-042-5/+53
* [Yul] Implements a pass to rewrite for-loop's pre block into the parent's Block.Christian Parpart2018-11-163-0/+64
* Update tests.chriseth2018-11-131-66/+66
* Merge pull request #5333 from ethereum/joinPerformancechriseth2018-11-131-0/+654
|\
| * Remove variables that go out of scope from data structure.chriseth2018-11-131-139/+170
| * Use map join algorithm for performance.chriseth2018-11-131-0/+623
* | Deterministic YulStringRepository using string hashes.Daniel Kirchner2018-11-131-6/+7
|/
* Remove trailing whitespace.chriseth2018-11-122-2/+2
* Test case that shows that break/unbreak are more or less inverse.chriseth2018-11-093-0/+61
* Remove side-effect-free statements.chriseth2018-11-092-3/+9
* Merge pull request #5325 from ethereum/fixDataFlowchriseth2018-11-082-0/+104
|\
| * Fix data flow analyzer for function definitions.chriseth2018-11-082-0/+104
* | Use single counter for name dispenser for performance reasons.chriseth2018-11-0813-63/+63
|/
* Yul: Implements empty-var-decl-propagationChristian Parpart2018-10-268-0/+99
* Full suite tests.chriseth2018-10-251-0/+26
* Redundant assign eliminator.chriseth2018-10-2419-0/+400
* Merge pull request #5267 from ethereum/ssatransformchriseth2018-10-1911-0/+307
|\
| * SSA transform - first step.chriseth2018-10-1911-0/+307
* | Merge pull request #5260 from ethereum/flattenMorechriseth2018-10-191-0/+22
|\ \
| * | Flatten more.chriseth2018-10-181-0/+22
* | | Merge pull request #5258 from ethereum/coverage2chriseth2018-10-192-0/+56
|\ \ \
| * | | Add some simplification tests for operations.chriseth2018-10-182-0/+56
| |/ /
* | | Fix a bug in CSE where a variable that was already out of scope was used.chriseth2018-10-181-1/+1
* | | Test case that shows a CSE bug related to scopes.chriseth2018-10-181-0/+25
| |/ |/|
* | Merge pull request #5240 from ethereum/limitDispenserSizechriseth2018-10-182-0/+37
|\ \ | |/ |/|
| * Limit size of generated names and add convenience constructors.chriseth2018-10-172-0/+37
* | Use metrics in the full inliner.chriseth2018-10-173-0/+97
|/
* Inline each function separately.chriseth2018-10-162-41/+16
* Test for crash via inlining.chriseth2018-10-161-0/+84
* New full inliner.chriseth2018-10-169-56/+120
* Add a "full simplify" test that applies multiple elementary transforms.chriseth2018-10-1616-0/+186
* Yul: Introduces a block flattening pass + testsChristian Parpart2018-10-164-0/+87
* Some renaming leftovers.chriseth2018-10-151-1/+1
* Renaming libjulia to libyulChristian Parpart2018-10-15109-0/+1768