mingchuan
|
db60d123d0
|
[YulOpt] Implement loop-invariant code motion
|
2019-11-28 11:59:29 +01:00 |
|
Leonardo Alt
|
be849b3c47
|
Replace boost::variant by std::variant in libyul
|
2019-11-19 17:23:18 +01:00 |
|
chriseth
|
02d5b7c18a
|
Run literal rematerializer before for loop condition out of body.
|
2019-11-01 14:01:56 +01:00 |
|
chriseth
|
61a2d44f38
|
Conditional unsimplifier
|
2019-11-01 14:01:56 +01:00 |
|
chriseth
|
5d6e983be3
|
Conditional simplifier.
|
2019-11-01 14:01:56 +01:00 |
|
chriseth
|
45705b0e29
|
Debug optimizer steps.
|
2019-10-16 14:06:18 +02:00 |
|
chriseth
|
9ce1ca2340
|
Refactor Optimiser Steps Interface.
|
2019-09-24 14:52:01 +02:00 |
|
chriseth
|
7a79742f3d
|
Out of body again.
|
2019-09-17 12:30:15 +02:00 |
|
chriseth
|
4f80117eef
|
Use builtin iszero for for loop condition rewriting.
|
2019-09-12 10:26:16 +02:00 |
|
chriseth
|
fcfe829534
|
Introduce LiteralRematerializer and thus simplify StructuralSimplifier.
|
2019-09-11 19:50:24 +02:00 |
|
chriseth
|
edbec012ae
|
Activate load resolver.
|
2019-09-04 19:16:54 +02:00 |
|
chriseth
|
127bcfc69d
|
Take user function side-effects into account for unused pruner.
|
2019-09-02 17:41:51 +02:00 |
|
chriseth
|
1c5845e3f2
|
Side-effects of user-defined functions.
|
2019-09-02 17:41:51 +02:00 |
|
chriseth
|
869d69d293
|
Supply full object to stack compressor and Optimizer Suite.
|
2019-07-10 18:49:42 +02:00 |
|
chriseth
|
67f11104c1
|
EVM to eWasm translator.
|
2019-06-25 19:06:18 +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 |
|
chriseth
|
1c16124a09
|
Constant optimiser for Yul.
|
2019-05-28 11:35:07 +02: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
|
570db164c9
|
Make Dialect const.
|
2019-05-16 21:51:54 +02:00 |
|
chriseth
|
d9831c8b96
|
Split structural simplifier.
|
2019-05-13 10:26:57 +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 |
|
chriseth
|
d20b3c9f9f
|
Function grouper is a requirement for the VarNameCleaner.
|
2019-04-05 13:41:38 +02:00 |
|
Mathias Baumann
|
e20acf5d0a
|
Yul Optimizer: Remove dead code
|
2019-04-01 17:16:04 +02: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 |
|
chriseth
|
f35694f655
|
Run yul optimizer until it has no effect anymore.
|
2019-03-05 20:30:13 +01:00 |
|
Christian Parpart
|
609855546e
|
Yul: Adds optimizer pass to make variable names suffix-canonical.
|
2019-03-04 17:26:56 +01:00 |
|
chriseth
|
83083d2208
|
Stack compressor.
|
2019-02-11 15:48:29 +01:00 |
|
chriseth
|
5a34743d88
|
Allow optimizer steps to run on FunctionDefinition and group suite.
|
2019-02-11 15:48:29 +01:00 |
|
chriseth
|
b34e104173
|
Make dialect a shared pointer.
|
2019-02-11 15:48:29 +01:00 |
|
Alex Beregszaszi
|
2fc7928697
|
Merge pull request #5864 from ethereum/tuneOptOrder
Some optimizer tuning.
|
2019-01-28 13:50:09 +00:00 |
|
chriseth
|
12e2187661
|
Some tuning.
|
2019-01-24 23:06:01 +01:00 |
|
chriseth
|
1fc98b8133
|
Fix optimizer suite.
|
2019-01-24 20:42:32 +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
|
5b8b016fae
|
Use the block flattener.
|
2019-01-08 16:02:14 +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 |
|
Daniel Kirchner
|
1eb60cbb39
|
Add structural simplifier as optimization step for Yul.
|
2018-12-06 18:37:35 +01:00 |
|
Christian Parpart
|
ec47c8946b
|
Isolating libyul library API into its own namespace yul .
|
2018-11-23 14:29:00 +01:00 |
|
Christian Parpart
|
713d94476e
|
Reorder some include files and group <libyul/>'s together (as much as possible)
|
2018-11-23 12:37:19 +01:00 |
|
Christian Parpart
|
0f4ed52a71
|
Rewrite header paths to adapt to recent git mv of libsolidity/inlineasm to libyul
|
2018-11-23 11:18:57 +01:00 |
|