diff --git a/test/libyul/ObjectCompilerTest.cpp b/test/libyul/ObjectCompilerTest.cpp index 6d8cd313e..f4a1c296d 100644 --- a/test/libyul/ObjectCompilerTest.cpp +++ b/test/libyul/ObjectCompilerTest.cpp @@ -18,6 +18,8 @@ #include +#include + #include #include @@ -43,7 +45,16 @@ ObjectCompilerTest::ObjectCompilerTest(string const& _filename): TestCase(_filename) { m_source = m_reader.source(); - m_optimize = m_reader.boolSetting("optimize", false); + m_optimisationPreset = m_reader.enumSetting( + "optimizationPreset", + { + {"none", OptimisationPreset::None}, + {"minimal", OptimisationPreset::Minimal}, + {"standard", OptimisationPreset::Standard}, + {"full", OptimisationPreset::Full}, + }, + "minimal" + ); m_wasm = m_reader.boolSetting("wasm", false); m_expectation = m_reader.simpleExpectations(); } @@ -53,7 +64,7 @@ TestCase::TestResult ObjectCompilerTest::run(ostream& _stream, string const& _li AssemblyStack stack( EVMVersion(), m_wasm ? AssemblyStack::Language::Ewasm : AssemblyStack::Language::StrictAssembly, - m_optimize ? OptimiserSettings::full() : OptimiserSettings::minimal() + OptimiserSettings::preset(m_optimisationPreset) ); if (!stack.parseAndAnalyze("source", m_source)) { diff --git a/test/libyul/ObjectCompilerTest.h b/test/libyul/ObjectCompilerTest.h index 771942e59..e75f72fa9 100644 --- a/test/libyul/ObjectCompilerTest.h +++ b/test/libyul/ObjectCompilerTest.h @@ -20,6 +20,8 @@ #include +#include + namespace solidity::langutil { class Scanner; @@ -54,7 +56,7 @@ private: static void printErrors(std::ostream& _stream, langutil::ErrorList const& _errors); - bool m_optimize = false; + frontend::OptimisationPreset m_optimisationPreset; bool m_wasm = false; }; diff --git a/test/libyul/objectCompiler/long_object_name.yul b/test/libyul/objectCompiler/long_object_name.yul index 322079928..0aa8c4405 100644 --- a/test/libyul/objectCompiler/long_object_name.yul +++ b/test/libyul/objectCompiler/long_object_name.yul @@ -7,7 +7,7 @@ object "t" { } } // ==== -// optimize: true +// optimizationPreset: full // ---- // Assembly: // /* "source":23:147 */ diff --git a/test/libyul/objectCompiler/nested_optimizer.yul b/test/libyul/objectCompiler/nested_optimizer.yul index e4512f03d..01ecf5aff 100644 --- a/test/libyul/objectCompiler/nested_optimizer.yul +++ b/test/libyul/objectCompiler/nested_optimizer.yul @@ -15,7 +15,7 @@ object "a" { } } // ==== -// optimize: true +// optimizationPreset: full // ---- // Assembly: // /* "source":48:49 */ diff --git a/test/libyul/objectCompiler/simple_optimizer.yul b/test/libyul/objectCompiler/simple_optimizer.yul index 40234a1db..375fa6347 100644 --- a/test/libyul/objectCompiler/simple_optimizer.yul +++ b/test/libyul/objectCompiler/simple_optimizer.yul @@ -5,7 +5,7 @@ sstore(add(x, 0), z) } // ==== -// optimize: true +// optimizationPreset: full // ---- // Assembly: // /* "source":26:27 */