|
Jlm
|
Mod/Ref Summary. More...
#include <ModRefSummary.hpp>

Public Member Functions | |
| virtual | ~ModRefSummary () noexcept=default |
| virtual const PointsToGraph & | GetPointsToGraph () const noexcept=0 |
| virtual const util::HashSet< PointsToGraph::NodeIndex > & | GetSimpleNodeModRef (const rvsdg::SimpleNode &node) const =0 |
| virtual const util::HashSet< PointsToGraph::NodeIndex > & | GetGammaEntryModRef (const rvsdg::GammaNode &gamma) const =0 |
| virtual const util::HashSet< PointsToGraph::NodeIndex > & | GetGammaExitModRef (const rvsdg::GammaNode &gamma) const =0 |
| virtual const util::HashSet< PointsToGraph::NodeIndex > & | GetThetaModRef (const rvsdg::ThetaNode &theta) const =0 |
| virtual const util::HashSet< PointsToGraph::NodeIndex > & | GetLambdaEntryModRef (const rvsdg::LambdaNode &lambda) const =0 |
| virtual const util::HashSet< PointsToGraph::NodeIndex > & | GetLambdaExitModRef (const rvsdg::LambdaNode &lambda) const =0 |
Mod/Ref Summary.
Contains the memory nodes that are required to be routed into nodes and function bodies.
Definition at line 22 of file ModRefSummary.hpp.
|
virtualdefaultnoexcept |
|
pure virtual |
Provides the set of memory nodes that should be routed into a given gamma node
| gamma | the gamma node |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary.
|
pure virtual |
Provides the set of memory nodes that should be routed out of a given gamma node
| gamma | the gamma node |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary.
|
pure virtual |
Provides the set of memory nodes that are routed in to the given lambda's subregion
| lambda | the lambda node |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary.
|
pure virtual |
Provides the set of memory nodes that are routed out of the given lambda's subregion
| lambda | the lambda node |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary.
|
pure virtualnoexcept |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary, and jlm::llvm::aa::AgnosticModRefSummary.
|
pure virtual |
Provides the set of memory nodes that represent memory locations that may be modified or referenced by the given simple node.
The simple node can be any operation that reads from memory, or produces value of memory, e.g.:
| node | the node operating on memory |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary, and jlm::llvm::aa::AgnosticModRefSummary.
|
pure virtual |
Provides the set of memory nodes that should be routed in and out of a theta node
| theta | the theta node |
Implemented in jlm::llvm::aa::RegionAwareModRefSummary.