aboutsummaryrefslogtreecommitdiffstats
path: root/test/libyul/YulOptimizerTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/libyul/YulOptimizerTest.cpp')
-rw-r--r--test/libyul/YulOptimizerTest.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/libyul/YulOptimizerTest.cpp b/test/libyul/YulOptimizerTest.cpp
index bbae9bb4..d1990edb 100644
--- a/test/libyul/YulOptimizerTest.cpp
+++ b/test/libyul/YulOptimizerTest.cpp
@@ -148,6 +148,18 @@ bool YulOptimizerTest::run(ostream& _stream, string const& _linePrefix, bool con
disambiguate();
ExpressionSimplifier::run(*m_ast);
}
+ else if (m_optimizerStep == "fullSimplify")
+ {
+ disambiguate();
+ NameDispenser nameDispenser;
+ nameDispenser.m_usedNames = NameCollector(*m_ast).names();
+ ExpressionSplitter{nameDispenser}(*m_ast);
+ CommonSubexpressionEliminator{}(*m_ast);
+ ExpressionSimplifier::run(*m_ast);
+ UnusedPruner::runUntilStabilised(*m_ast);
+ ExpressionJoiner::run(*m_ast);
+ ExpressionJoiner::run(*m_ast);
+ }
else if (m_optimizerStep == "unusedPruner")
{
disambiguate();