Refactor Optimiser Steps Interface.

This commit is contained in:
chriseth
2019-09-24 14:52:01 +02:00
parent c4208a6ab8
commit 9ce1ca2340
49 changed files with 674 additions and 293 deletions
@@ -22,6 +22,7 @@
#pragma once
#include <libyul/optimiser/DataFlowAnalyzer.h>
#include <libyul/optimiser/OptimiserStep.h>
namespace yul
{
@@ -38,8 +39,8 @@ struct SideEffects;
class CommonSubexpressionEliminator: public DataFlowAnalyzer
{
public:
/// Runs the CSE pass. @a _ast needs to be the complete AST of the program!
static void run(Dialect const& _dialect, Block& _ast);
static constexpr char const* name{"CommonSubexpressionEliminator"};
static void run(OptimiserStepContext&, Block& _ast);
private:
CommonSubexpressionEliminator(