105 Commits
Author SHA1 Message Date
Harikrishnan Mulackal d8263d331e Ignore warnings for yulOptimizer tests 2020-06-09 13:03:57 +02:00
ssi91 79407c87fb remove extra definition of printIndented
add CommonBaseTestCase class and inherit some of TestCase classes from it. Since that, remove print source extra definitions

create the base defifnition for printUpdatedExpectations and remove extra definitions of the method

make CommonBaseTestCase c-tor explicit

include AnsiColorized.h and sort includes

implement a common result checker

move the common implementations into TastCase
2020-06-02 21:15:00 +07:00
Kamil Śliwak c41a832f65 Move the default optimisation steps from OptimiserSuite to OptimiserSettings
- Now it's a mandatory parameter in OptimiserSuite::run()
2020-04-24 17:30:56 +02:00
chriseth 35eae96a7f Move helper up and avoid trailing spaces. 2020-04-23 13:16:26 +02:00
a3d4 3b9e926559 Moved "step" from settings to expectations. 2020-03-19 13:59:05 +01:00
a3d4 a5ae51fa6e Unified dialect selection in libyul/SyntaxTest and YulOptimizerTest. 2020-03-16 23:22:57 +01:00
a3d4 66783c30ce Introduced TestCaseReader. 2020-03-16 23:14:33 +01:00
chriseth bddbcbe6a4 Use bool type in word size transform. 2020-02-24 15:05:19 +01:00
Djordje Mijovic a52c9af5b9 Adding vardecl optimization for boolean types 2020-02-24 15:05:19 +01:00
Gaith Hallak 24d6702986 [Yul] Prune functions that call each other but are otherwise unreferenced 2020-02-11 20:39:32 +03:00
chriseth 9f0cef97c2 Specify default type for word size transform externally. 2020-02-04 18:13:37 +01:00
chriseth a66782537a Use old yul dialect only in tests. 2020-01-29 19:01:28 +01:00
chriseth fbe5bb0cce Parse default dialect and omit when printing. 2020-01-29 17:25:25 +01:00
Mathias Baumann 00e4d13975 TestFramework: Merge Options.h into Common.h 2020-01-29 12:27:05 +01:00
chriseth 123ea0a250 Remove asm flavour. 2020-01-14 17:16:09 +01:00
Christian Parpart 345f9928ab Library libdevcore renamed to libsolutil. 2020-01-07 15:51:50 +01:00
Christian Parpart ed45b000d1 Adapt tests directory to C++ namespace changes. 2020-01-07 15:51:50 +01:00
chriseth 1e59c19166 Dialect setting for yul optimizer tests. 2019-12-18 21:54:30 +01:00
chriseth 301215f186 Merge pull request #7461 from sifmelcara/licm
[YulOpt] Implement loop-invariant code motion
2019-11-28 12:00:19 +01:00
mingchuan db60d123d0 [YulOpt] Implement loop-invariant code motion 2019-11-28 11:59:29 +01:00
chriseth 0bb88dabb7 Restrict usage of plain "new". 2019-11-27 17:55:11 +01:00
Leonardo Alt be849b3c47 Replace boost::variant by std::variant in libyul 2019-11-19 17:23:18 +01:00
chriseth cca7f01199 Tests for conditional unsimplifier 2019-11-01 14:07:25 +01:00
chriseth 5d6e983be3 Conditional simplifier. 2019-11-01 14:01:56 +01: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 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
Erik Kundt a7a8ba73f9 [isoltest] Moves error types to dedicated file. 2019-08-05 15:00:04 +02:00
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