mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Add equivalent function combiner as Yul optimizer step.
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#include <libyul/optimiser/Disambiguator.h>
|
||||
#include <libyul/optimiser/CommonSubexpressionEliminator.h>
|
||||
#include <libyul/optimiser/NameCollector.h>
|
||||
#include <libyul/optimiser/EquivalentFunctionCombiner.h>
|
||||
#include <libyul/optimiser/ExpressionSplitter.h>
|
||||
#include <libyul/optimiser/FunctionGrouper.h>
|
||||
#include <libyul/optimiser/FunctionHoister.h>
|
||||
@@ -128,7 +129,7 @@ public:
|
||||
cout << "(q)quit/(f)flatten/(c)se/initialize var(d)ecls/(x)plit/(j)oin/(g)rouper/(h)oister/" << endl;
|
||||
cout << " (e)xpr inline/(i)nline/(s)implify/(u)nusedprune/ss(a) transform/" << endl;
|
||||
cout << " (r)edundant assign elim./re(m)aterializer/f(o)r-loop-pre-rewriter/" << endl;
|
||||
cout << " s(t)ructural simplifier? " << endl;
|
||||
cout << " s(t)ructural simplifier/equi(v)alent function combiner? " << endl;
|
||||
cout.flush();
|
||||
int option = readStandardInputChar();
|
||||
cout << ' ' << char(option) << endl;
|
||||
@@ -184,6 +185,9 @@ public:
|
||||
case 'm':
|
||||
Rematerialiser::run(*m_dialect, *m_ast);
|
||||
break;
|
||||
case 'v':
|
||||
EquivalentFunctionCombiner::run(*m_ast);
|
||||
break;
|
||||
default:
|
||||
cout << "Unknown option." << endl;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user