diff --git a/test/libyul/YulOptimizerTestCommon.cpp b/test/libyul/YulOptimizerTestCommon.cpp index 64b19182e..7e2a4c959 100644 --- a/test/libyul/YulOptimizerTestCommon.cpp +++ b/test/libyul/YulOptimizerTestCommon.cpp @@ -168,6 +168,12 @@ YulOptimizerTestCommon::YulOptimizerTestCommon( FullInliner::run(*m_context, *m_ast); ExpressionJoiner::run(*m_context, *m_ast); }}, + {"fullInlinerWithoutSplitter", [&]() { + disambiguate(); + FunctionHoister::run(*m_context, *m_ast); + FunctionGrouper::run(*m_context, *m_ast); + FullInliner::run(*m_context, *m_ast); + }}, {"mainFunction", [&]() { disambiguate(); FunctionGrouper::run(*m_context, *m_ast); diff --git a/test/libyul/yulOptimizerTests/fullInlinerWithoutSplitter/simple.sol b/test/libyul/yulOptimizerTests/fullInlinerWithoutSplitter/simple.sol new file mode 100644 index 000000000..80b975903 --- /dev/null +++ b/test/libyul/yulOptimizerTests/fullInlinerWithoutSplitter/simple.sol @@ -0,0 +1,19 @@ +{ + function f(a) -> x { + x := add(a, a) + } + let y := f(2) +} +// ---- +// step: fullInlinerWithoutSplitter +// +// { +// { +// let a_1 := 2 +// let x_2 := 0 +// x_2 := add(a_1, a_1) +// let y := x_2 +// } +// function f(a) -> x +// { x := add(a, a) } +// }