|
docc 0.8.3 (0d44999b)
C++ API Reference
|
#include <sdfg/analysis/reference_analysis.h>
Public Member Functions | |
| ReferenceAnalysis (StructuredSDFG &sdfg) | |
| std::string | name () const override |
| void | run (analysis::AnalysisManager &analysis_manager) override |
| void | visit_block (analysis::Users &users, structured_control_flow::Block &block, std::unordered_set< User * > &undefined, std::unordered_map< User *, std::unordered_set< User * > > &open_definitions, std::unordered_map< User *, std::unordered_set< User * > > &closed_definitions) |
| void | visit_sequence (analysis::Users &users, structured_control_flow::Sequence &sequence, std::unordered_set< User * > &undefined, std::unordered_map< User *, std::unordered_set< User * > > &open_definitions, std::unordered_map< User *, std::unordered_set< User * > > &closed_definitions) |
| void | visit_if_else (analysis::Users &users, structured_control_flow::IfElse &if_loop, std::unordered_set< User * > &undefined, std::unordered_map< User *, std::unordered_set< User * > > &open_definitions, std::unordered_map< User *, std::unordered_set< User * > > &closed_definitions) |
| void | visit_for (analysis::Users &users, structured_control_flow::StructuredLoop &for_loop, std::unordered_set< User * > &undefined, std::unordered_map< User *, std::unordered_set< User * > > &open_definitions, std::unordered_map< User *, std::unordered_set< User * > > &closed_definitions) |
| void | visit_while (analysis::Users &users, structured_control_flow::While &while_loop, std::unordered_set< User * > &undefined, std::unordered_map< User *, std::unordered_set< User * > > &open_definitions, std::unordered_map< User *, std::unordered_set< User * > > &closed_definitions) |
| void | visit_return (analysis::Users &users, structured_control_flow::Return &return_statement, std::unordered_set< User * > &undefined, std::unordered_map< User *, std::unordered_set< User * > > &open_definitions, std::unordered_map< User *, std::unordered_set< User * > > &closed_definitions) |
| std::unordered_set< User * > | defines (User &move) |
| std::unordered_map< User *, std::unordered_set< User * > > | definitions (const std::string &container) |
| std::unordered_map< User *, std::unordered_set< User * > > | defined_by (const std::string &container) |
| std::unordered_set< User * > | defined_by (User &user) |
| 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 |
Friends | |
| class | AnalysisManager |
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() |
| sdfg::analysis::ReferenceAnalysis::ReferenceAnalysis | ( | StructuredSDFG & | sdfg | ) |
| std::unordered_map< User *, std::unordered_set< User * > > sdfg::analysis::ReferenceAnalysis::defined_by | ( | const std::string & | container | ) |
| std::unordered_map< User *, std::unordered_set< User * > > sdfg::analysis::ReferenceAnalysis::definitions | ( | const std::string & | container | ) |
|
inlineoverridevirtual |
Implements sdfg::analysis::Analysis.
|
overridevirtual |
Implements sdfg::analysis::Analysis.
| void sdfg::analysis::ReferenceAnalysis::visit_block | ( | analysis::Users & | users, |
| structured_control_flow::Block & | block, | ||
| std::unordered_set< User * > & | undefined, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | open_definitions, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | closed_definitions ) |
| void sdfg::analysis::ReferenceAnalysis::visit_for | ( | analysis::Users & | users, |
| structured_control_flow::StructuredLoop & | for_loop, | ||
| std::unordered_set< User * > & | undefined, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | open_definitions, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | closed_definitions ) |
| void sdfg::analysis::ReferenceAnalysis::visit_if_else | ( | analysis::Users & | users, |
| structured_control_flow::IfElse & | if_loop, | ||
| std::unordered_set< User * > & | undefined, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | open_definitions, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | closed_definitions ) |
| void sdfg::analysis::ReferenceAnalysis::visit_return | ( | analysis::Users & | users, |
| structured_control_flow::Return & | return_statement, | ||
| std::unordered_set< User * > & | undefined, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | open_definitions, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | closed_definitions ) |
| void sdfg::analysis::ReferenceAnalysis::visit_sequence | ( | analysis::Users & | users, |
| structured_control_flow::Sequence & | sequence, | ||
| std::unordered_set< User * > & | undefined, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | open_definitions, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | closed_definitions ) |
| void sdfg::analysis::ReferenceAnalysis::visit_while | ( | analysis::Users & | users, |
| structured_control_flow::While & | while_loop, | ||
| std::unordered_set< User * > & | undefined, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | open_definitions, | ||
| std::unordered_map< User *, std::unordered_set< User * > > & | closed_definitions ) |
|
friend |