aboutsummaryrefslogtreecommitdiffstats
path: root/test/libyul/yulOptimizerTests
Commit message (Collapse)AuthorAgeFilesLines
* Stabilize SSAReverser.Daniel Kirchner2019-01-181-3/+3
|
* Undo second SSA transformation and add more tests.Daniel Kirchner2019-01-1813-46/+292
|
* Add SSAReverser to the yul optimiser.Daniel Kirchner2019-01-189-78/+257
|
* Add equivalent function combiner as Yul optimizer step.Daniel Kirchner2019-01-167-114/+301
|
* Update tests.chriseth2019-01-095-155/+174
|
* More code for optimizer tuning.chriseth2019-01-091-42/+91
|
* Use the block flattener.chriseth2019-01-084-232/+198
|
* Merge pull request #5759 from ethereum/anotherBigTestchriseth2019-01-081-0/+1136
|\ | | | | Another ABI test case for the optimizer.
| * Another ABI test case for the optimizer.chriseth2019-01-081-0/+1136
| |
* | Make function grouper idempotent.chriseth2019-01-083-7/+41
|/
* Merge pull request #5716 from ethereum/fixDataSizeOffsetchriseth2019-01-082-0/+44
|\ | | | | Fix data size offset and properly provide builtins.
| * Tests.chriseth2019-01-082-0/+44
| |
* | Add AZTEK code as test.chriseth2019-01-071-0/+416
|/
* 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 ↵chriseth2018-12-136-6/+50
| | | | analyzer.
* 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
|\ | | | | [Yul] Use map join algorithm for performance.
| * 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
|\ | | | | [Yul] Fix data flow analyzer for function definitions.
| * 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.
| * SSA transform - first step.chriseth2018-10-1911-0/+307
| |
* | Merge pull request #5260 from ethereum/flattenMorechriseth2018-10-191-0/+22
|\ \ | | | | | | Flatten more.
| * | Flatten more.chriseth2018-10-181-0/+22
| | |
* | | Merge pull request #5258 from ethereum/coverage2chriseth2018-10-192-0/+56
|\ \ \ | | | | | | | | Add some simplification tests for operations.
| * | | 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
|\ \ | |/ |/| [Yul] Limit name length created by dispenser
| * 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