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

#include <sdfg/analysis/arguments_analysis.h>

Inheritance diagram for sdfg::analysis::ArgumentsAnalysis:
[legend]

Public Member Functions

 ArgumentsAnalysis (StructuredSDFG &sdfg)
std::string name () const override
void run (analysis::AnalysisManager &analysis_manager) override
const std::map< std::string, RegionArgument > & arguments (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node)
const std::unordered_set< std::string > & locals (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node)
bool inferred_types (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node)
const TypeAnalysis & type_analysis (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node)
 Type analysis restricted to the uses inside node.
const std::unordered_map< std::string, symbolic::Expression > & argument_sizes (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node, bool allow_dynamic_sizes_)
const std::unordered_map< std::string, symbolic::Expression > & argument_element_sizes (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node, bool allow_dynamic_sizes_)
bool argument_size_known (analysis::AnalysisManager &analysis_manager, structured_control_flow::ControlFlowNode &node, bool allow_dynamic_sizes_)
Public Member Functions inherited from sdfg::analysis::Analysis
 Analysis (StructuredSDFG &sdfg)
 Analysis (StructuredSDFG &sdfg, const Options &options)
virtual ~Analysis ()=default
virtual bool invalidate (structured_control_flow::ControlFlowNode &changed)
 Updates the analysis after a change confined to the subtree of changed.
 Analysis (const Analysis &a)=delete
Analysis & operator= (const Analysis &)=delete

Additional Inherited Members

Protected Member Functions inherited from sdfg::analysis::Analysis
template<class T>
T option (const OptionKey< T > &key, T fallback=T{}) const
Protected Attributes inherited from sdfg::analysis::Analysis
StructuredSDFG & sdfg_
symbolic::Assumptions additional_assumptions_
const Options * options_ = &Options::empty()

Constructor & Destructor Documentation

◆ ArgumentsAnalysis()

sdfg::analysis::ArgumentsAnalysis::ArgumentsAnalysis ( StructuredSDFG & sdfg)

Member Function Documentation

◆ argument_element_sizes()

const std::unordered_map< std::string, symbolic::Expression > & sdfg::analysis::ArgumentsAnalysis::argument_element_sizes ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node,
bool allow_dynamic_sizes_ )

◆ argument_size_known()

bool sdfg::analysis::ArgumentsAnalysis::argument_size_known ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node,
bool allow_dynamic_sizes_ )

◆ argument_sizes()

const std::unordered_map< std::string, symbolic::Expression > & sdfg::analysis::ArgumentsAnalysis::argument_sizes ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node,
bool allow_dynamic_sizes_ )

◆ arguments()

const std::map< std::string, RegionArgument > & sdfg::analysis::ArgumentsAnalysis::arguments ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node )

◆ inferred_types()

bool sdfg::analysis::ArgumentsAnalysis::inferred_types ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node )

◆ locals()

const std::unordered_set< std::string > & sdfg::analysis::ArgumentsAnalysis::locals ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node )

◆ name()

std::string sdfg::analysis::ArgumentsAnalysis::name ( ) const
inlineoverridevirtual

◆ run()

void sdfg::analysis::ArgumentsAnalysis::run ( analysis::AnalysisManager & analysis_manager)
overridevirtual

◆ type_analysis()

const TypeAnalysis & sdfg::analysis::ArgumentsAnalysis::type_analysis ( analysis::AnalysisManager & analysis_manager,
structured_control_flow::ControlFlowNode & node )

Type analysis restricted to the uses inside node.


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