44 #ifndef VAR_COMPUTATION_HPP 45 #define VAR_COMPUTATION_HPP 71 const operations_graph_constructorRef
ogc;
CONSTREF_FORWARD_DECL(OpGraph)
DesignFlowStep_Status InternalExec() override
Computes the set of read and written variables.
const BehavioralHelperRef behavioral_helper
The behavioral helper associated with the function.
void RecursivelyAnalyze(const vertex op_vertex, const tree_nodeConstRef &tree_node, const FunctionBehavior_VariableAccessType access_type) const
Recursively analyze a tree_node.
class providing methods to manage an operations graph.
RelationshipType
The relationship type.
This class manages the tree structures extracted from the raw file.
const CustomUnorderedSet< std::pair< FrontendFlowStepType, FunctionRelationship > > ComputeFrontendRelationships(const DesignFlowStep::RelationshipType relationship_type) const override
Return the set of analyses in relationship with this design step.
This class contains the base representation for a generic frontend flow step which works on a single ...
Abstract pure class for the tree structure.
const OpGraphConstRef cfg
The control flow graph of the function.
const operations_graph_constructorRef ogc
The operation graph constructor.
boost::graph_traits< graph >::vertex_descriptor vertex
vertex definition.
const Wrefcount< const DesignFlowManager > design_flow_manager
The design flow manager.
FunctionBehavior_VariableAccessType
The access type to a variable.
DesignFlowStep_Status
The status of a step.
REF_FORWARD_DECL(BehavioralHelper)
~VarComputation() override
Destructor.
Template definition of refcount.
VarComputation(const ParameterConstRef _parameters, const application_managerRef AppM, unsigned int function_id, const DesignFlowManagerConstRef design_flow_manager)
Constructor.
const unsigned int function_id
The index of the function to be analyzed.
void Initialize() override
Initialize the step (i.e., like a constructor, but executed just before exec.
const application_managerRef AppM
The application manager.
struct definition of the common part of a gimple with virtual operands
Class used to describe a particular graph with operations as nodes.
void AnalyzeVops(const vertex op_vertex, const gimple_node *vops) const
Analyze virtual operands associated with a gimple node.