docc 0.8.3 (0d44999b)
C++ API Reference
Loading...
Searching...
No Matches
sdfg::passes::BlockSortingPass Class Reference

#include <sdfg/passes/offloading/code_motion/block_sorting.h>

Inheritance diagram for sdfg::passes::BlockSortingPass:
[legend]

Public Member Functions

virtual std::string name () override
bool bubble_up (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::Sequence &sequence, long long index)
bool bubble_down (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::Sequence &sequence, long long index)
bool sort (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, structured_control_flow::Sequence &sequence)
virtual bool run_pass (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager) override
Public Member Functions inherited from sdfg::passes::Pass
 Pass ()=default
 Pass (const Options &options)
virtual ~Pass ()=default
virtual std::vector< OptionSpec > options ()
bool run (builder::SDFGBuilder &builder, bool create_report=false)
bool run (builder::StructuredSDFGBuilder &builder, analysis::AnalysisManager &analysis_manager, bool create_report=false)
virtual bool run_pass (builder::SDFGBuilder &builder)
virtual void invalidates (analysis::AnalysisManager &analysis_manager, bool applied)

Protected Member Functions

virtual bool is_libnode_side_effect_white_listed (data_flow::LibraryNode *libnode)
virtual bool can_be_bubbled_up (structured_control_flow::Block &block)
virtual bool can_be_bubbled_down (structured_control_flow::Block &block)
virtual std::pair< int, std::string > get_prio_and_order (structured_control_flow::Block *block)
bool is_reference_block (structured_control_flow::Block &block)
bool is_libnode_block (structured_control_flow::Block &next_block)
Protected Member Functions inherited from sdfg::passes::Pass
template<class T>
T option (const OptionKey< T > &key, T fallback=T{}) const

Member Function Documentation

◆ bubble_down()

bool sdfg::passes::BlockSortingPass::bubble_down ( builder::StructuredSDFGBuilder & builder,
analysis::AnalysisManager & analysis_manager,
structured_control_flow::Sequence & sequence,
long long index )

◆ bubble_up()

bool sdfg::passes::BlockSortingPass::bubble_up ( builder::StructuredSDFGBuilder & builder,
analysis::AnalysisManager & analysis_manager,
structured_control_flow::Sequence & sequence,
long long index )

◆ can_be_bubbled_down()

virtual bool sdfg::passes::BlockSortingPass::can_be_bubbled_down ( structured_control_flow::Block & block)
protectedvirtual

◆ can_be_bubbled_up()

virtual bool sdfg::passes::BlockSortingPass::can_be_bubbled_up ( structured_control_flow::Block & block)
protectedvirtual

◆ get_prio_and_order()

virtual std::pair< int, std::string > sdfg::passes::BlockSortingPass::get_prio_and_order ( structured_control_flow::Block * block)
protectedvirtual

◆ is_libnode_block()

bool sdfg::passes::BlockSortingPass::is_libnode_block ( structured_control_flow::Block & next_block)
protected

◆ is_libnode_side_effect_white_listed()

virtual bool sdfg::passes::BlockSortingPass::is_libnode_side_effect_white_listed ( data_flow::LibraryNode * libnode)
protectedvirtual

◆ is_reference_block()

bool sdfg::passes::BlockSortingPass::is_reference_block ( structured_control_flow::Block & block)
protected

◆ name()

virtual std::string sdfg::passes::BlockSortingPass::name ( )
inlineoverridevirtual

◆ run_pass()

virtual bool sdfg::passes::BlockSortingPass::run_pass ( builder::StructuredSDFGBuilder & builder,
analysis::AnalysisManager & analysis_manager )
overridevirtual

Reimplemented from sdfg::passes::Pass.

◆ sort()

bool sdfg::passes::BlockSortingPass::sort ( builder::StructuredSDFGBuilder & builder,
analysis::AnalysisManager & analysis_manager,
structured_control_flow::Sequence & sequence )

The documentation for this class was generated from the following file: