25 std::vector<std::unique_ptr<Pass>> passes_;
27 bool debug_logging_ =
false;
34 virtual std::string
name();
42 template<
class T,
typename... Args>
44 this->passes_.push_back(std::make_unique<T>(std::forward<Args>(args)...));
Definition sdfg_builder.h:13
Note: Even though the class references unique_ptr, it will never delete an SDFG it has a reference to...
Definition structured_sdfg_builder.h:44
static Pipeline memlet_combine()
virtual bool run(builder::SDFGBuilder &builder)
Pipeline(const std::string &name)
static Pipeline dead_code_elimination()
static Pipeline dataflow_simplification(bool block_fusion_ignor_libnodes=false)
static Pipeline symbolic_simplification()
void set_debug_logging(bool enable)
virtual bool run(builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager)
static Pipeline controlflow_simplification()
static Pipeline constant_elimination()
void register_pass(Args &&... args)
Definition pipeline.h:43
virtual std::string name()
static Pipeline expression_combine()
Definition function_builder.h:10
Definition approximate_math.h:12