Supply full object to stack compressor and Optimizer Suite.

This commit is contained in:
chriseth
2019-07-10 18:49:42 +02:00
parent 2a5280faa0
commit 869d69d293
17 changed files with 107 additions and 55 deletions
+8 -2
View File
@@ -305,7 +305,10 @@ TestCase::TestResult YulOptimizerTest::run(ostream& _stream, string const& _line
disambiguate();
(FunctionGrouper{})(*m_ast);
size_t maxIterations = 16;
StackCompressor::run(*m_dialect, *m_ast, true, maxIterations);
Object obj;
obj.code = m_ast;
StackCompressor::run(*m_dialect, obj, true, maxIterations);
m_ast = obj.code;
(BlockFlattener{})(*m_ast);
}
else if (m_optimizerStep == "wordSizeTransform")
@@ -318,7 +321,10 @@ TestCase::TestResult YulOptimizerTest::run(ostream& _stream, string const& _line
else if (m_optimizerStep == "fullSuite")
{
GasMeter meter(dynamic_cast<EVMDialect const&>(*m_dialect), false, 200);
OptimiserSuite::run(*m_dialect, &meter, *m_ast, *m_analysisInfo, true);
yul::Object obj;
obj.code = m_ast;
obj.analysisInfo = m_analysisInfo;
OptimiserSuite::run(*m_dialect, &meter, obj, true);
}
else
{