chriseth
|
869d69d293
|
Supply full object to stack compressor and Optimizer Suite.
|
2019-07-10 18:49:42 +02:00 |
|
chriseth
|
2b979cba38
|
Also optimize memory.
|
2019-06-20 18:43:37 +02:00 |
|
chriseth
|
1f9d11c644
|
Knowledge about storage.
|
2019-06-20 18:43:37 +02:00 |
|
chriseth
|
ecab46c707
|
Finish word size transform.
|
2019-06-20 10:42:56 +02:00 |
|
chriseth
|
d9d1c4a312
|
Merge pull request #6967 from ethereum/nameDisplacer
[Yul] Name displacer.
|
2019-06-19 18:56:54 +02:00 |
|
chriseth
|
d7b366ff46
|
Name displacer.
|
2019-06-19 14:55:38 +02:00 |
|
chriseth
|
cc5045a56e
|
[Yul] Run optimizer on all dialects.
|
2019-06-19 10:01:16 +02:00 |
|
chriseth
|
6cb6fe35ef
|
Make Yul optimizer not fail for wasm.
|
2019-06-17 18:42:47 +02:00 |
|
Daniel Kirchner
|
547173533c
|
Unify parsing of simple test expectations and require lines to start with `// `.
|
2019-06-11 14:05:45 +02:00 |
|
chriseth
|
1c16124a09
|
Constant optimiser for Yul.
|
2019-05-28 11:35:07 +02:00 |
|
chriseth
|
e5902c58a4
|
Merge pull request #6777 from sifmelcara/loop-cond-rewriter
[YulOpt] Implement ForLoopConditionIntoBody
|
2019-05-23 12:51:51 +02:00 |
|
mingchuan
|
4ab377eb00
|
Add tests for ForLoopConditionIntoBody
|
2019-05-22 21:51:03 +08:00 |
|
chriseth
|
1dc15d5864
|
Modify parser and optimizer.
|
2019-05-20 17:32:56 +02:00 |
|
chriseth
|
4bdb981224
|
Make dialect const& and allocate single instances statically.
|
2019-05-17 12:54:24 +02:00 |
|
chriseth
|
f6437a2016
|
Optimizer rules that combine shifts and masks.
|
2019-05-15 20:30:53 +02:00 |
|
chriseth
|
dd4f9bf1a6
|
Really split structural simplifier.
|
2019-05-13 10:26:57 +02:00 |
|
chriseth
|
d9831c8b96
|
Split structural simplifier.
|
2019-05-13 10:26:57 +02:00 |
|
chriseth
|
eaee4412da
|
Implement word size transform for if.
|
2019-05-09 16:55:39 +02:00 |
|
Daniel Kirchner
|
76b88bdfd8
|
Allow test cases to indicate fatal errors.
|
2019-05-07 18:12:21 +02:00 |
|
mingchuan
|
57fc4fde85
|
Add wordSizeTransform yulOptimizerTests
|
2019-05-03 01:52:01 +08:00 |
|
chriseth
|
fb06451f45
|
Add assertion that DeadCodeEliminator needs ForLoopInitRewriter.
|
2019-04-15 23:26:56 +02:00 |
|
Leonardo
|
dbc9442f9c
|
Merge pull request #6484 from sifmelcara/create-SourceReferenceFormatter-shortcut
Add a shortcut for formatting error information
|
2019-04-12 12:34:08 +02:00 |
|
mingchuan
|
d49733dfc3
|
Fix variable decl scope issue in DeadCodeEliminator
FoorLoopInitRewriter needs to be run before DeadCodeEliminator.
|
2019-04-10 19:00:29 +08:00 |
|
mingchuan
|
f1374066af
|
Add shortcuts for formatting error information
|
2019-04-10 18:44:45 +08:00 |
|
chriseth
|
e3d7a34c2c
|
Make yul a setting.
|
2019-04-03 14:58:20 +02:00 |
|
Mathias Baumann
|
e20acf5d0a
|
Yul Optimizer: Remove dead code
|
2019-04-01 17:16:04 +02:00 |
|
chriseth
|
3264e9abf0
|
Make optimiser settings available to assembly stack.
|
2019-03-28 18:24:13 +01:00 |
|
chriseth
|
8514c0bc60
|
Provide max iterations for stack compressor as parameter.
|
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 |
|
Christian Parpart
|
609855546e
|
Yul: Adds optimizer pass to make variable names suffix-canonical.
|
2019-03-04 17:26:56 +01:00 |
|
chriseth
|
7f5b335b47
|
Make EVM version part of EVM dialect.
|
2019-02-21 21:59:46 +01:00 |
|
chriseth
|
a344381d5e
|
Provide access to AssemblyStack's AST.
|
2019-02-13 14:19:56 +01:00 |
|
chriseth
|
91d224dfb6
|
Merge pull request #5966 from ethereum/AnsiColorized
Adapts tests/ to use AnsiColorized (the generalized/moved version of FormattedScope, which in turn is removed in this PR)
|
2019-02-11 16:41:14 +01:00 |
|
Christian Parpart
|
53f9be8a23
|
Adapts tests/ to use AnsiColorized (the generalized/moved version of FormattedScope, which in turn is removed in this PR)
|
2019-02-11 16:00:24 +01:00 |
|
chriseth
|
83083d2208
|
Stack compressor.
|
2019-02-11 15:48:29 +01:00 |
|
chriseth
|
b34e104173
|
Make dialect a shared pointer.
|
2019-02-11 15:48:29 +01:00 |
|
Daniel Kirchner
|
29f66b2674
|
Stabilize SSAReverser.
|
2019-01-17 21:05:32 +01:00 |
|
Daniel Kirchner
|
6de2d92f20
|
Add SSAReverser to the yul optimiser.
|
2019-01-17 20:37:43 +01:00 |
|
Daniel Kirchner
|
81f24f24e6
|
Add equivalent function combiner as Yul optimizer step.
|
2019-01-15 17:21:03 +01:00 |
|
chriseth
|
5b73c2ae3b
|
Take special functions that require literals into account.
|
2019-01-07 17:23:38 +01:00 |
|
chriseth
|
9222eff08f
|
Make the dialect available everywhere.
|
2019-01-07 16:41:03 +01:00 |
|
chriseth
|
2e9c70add0
|
Use rematerializer if variable is unreferenced or value is "cheap".
|
2019-01-07 14:03:32 +01:00 |
|
chriseth
|
bc22a25a60
|
Remove VarDeclPropagator.
|
2018-12-13 16:51:10 +01:00 |
|
chriseth
|
11209ec48a
|
Add variable declaration initializer.
|
2018-12-13 16:49:04 +01:00 |
|
chriseth
|
fb3a0ac1c7
|
Codegen for object access.
|
2018-12-11 19:24:44 +01:00 |
|
Daniel Kirchner
|
1eb60cbb39
|
Add structural simplifier as optimization step for Yul.
|
2018-12-06 18:37:35 +01:00 |
|
Christian Parpart
|
073b03d90c
|
liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and making use of new SourceLocation's CharStream knowledge
|
2018-12-06 14:01:01 +01:00 |
|
chriseth
|
99db4e3ff4
|
Introduce the concept of builtin functions.
|
2018-12-04 12:06:33 +01:00 |
|
Christian Parpart
|
435f7b3b72
|
liblangutil: Scanner: remove superfluous sourceName field (it's in CharStream already)
Also, ParserBase::sourceName() was dead code. Eliminating it should
increase test coverage (how sneaky) :-)
|
2018-11-30 17:07:17 +01:00 |
|
Christian Parpart
|
22eff22492
|
liblangutil: extends CharStream to know about the respective (file-)name (and adapt codebase to it)
|
2018-11-29 12:45:27 +01:00 |
|