PandA-2024.02
Public Member Functions | Data Fields
OpNodeInfo Struct Reference

Information associated with a generic operation node. More...

#include <op_graph.hpp>

Inheritance diagram for OpNodeInfo:
Inheritance graph
[legend]
Collaboration diagram for OpNodeInfo:
Collaboration graph
[legend]

Public Member Functions

 OpNodeInfo ()
 Constructor. More...
 
 ~OpNodeInfo () override
 Destructor. More...
 
void Initialize ()
 Initialize variable maps. More...
 
const CustomSet< unsigned int > & GetVariables (const FunctionBehavior_VariableType variable_type, const FunctionBehavior_VariableAccessType access_type) const
 Return a set of accessed scalar variables. More...
 
const std::string GetOperation () const
 Return the operation associated with the vertex. More...
 
unsigned int GetNodeId () const
 Return the node id of the operation associated with the vertex. More...
 
void Print (std::ostream &stream, const BehavioralHelperConstRef behavioral_helper, const bool dotty_format) const
 Print the content of this node. More...
 
- Public Member Functions inherited from TypedNodeInfo
 TypedNodeInfo ()
 Constructor. More...
 
 ~TypedNodeInfo () override
 Destructor. More...
 
void print (std::ostream &, int detail_level=0) const override
 Print the information associated with the node of the graph. More...
 
- Public Member Functions inherited from NodeInfo
 NodeInfo ()
 Constructor. More...
 
virtual ~NodeInfo ()
 Destructor. More...
 

Data Fields

CustomSet< unsigned int > cited_variables
 set of cited variables (i.e., variables which are included in the c printing of this statement) More...
 
CustomMap< FunctionBehavior_VariableType, CustomMap< FunctionBehavior_VariableAccessType, CustomSet< unsigned int > > > variables
 set of scalar ssa accessed in this node More...
 
std::list< unsigned int > actual_parameters
 Set of actual parameters of called function (used in pthread backend. More...
 
tree_nodeRef node
 The tree node associated with this vertex. More...
 
CustomSet< unsigned int > called
 Store the index of called functions. More...
 
unsigned int bb_index
 Store the index of the basic block which this operation vertex belongs to. More...
 
unsigned int cer
 Store the index of the control equivalent region. More...
 
- Data Fields inherited from TypedNodeInfo
std::string node_operation
 Custom vertex property: node_operation. More...
 
std::string vertex_name
 Definition of the node name property. More...
 
unsigned int node_type
 Custom vertex property: node_type. More...
 

Detailed Description

Information associated with a generic operation node.

Definition at line 363 of file op_graph.hpp.

Constructor & Destructor Documentation

◆ OpNodeInfo()

OpNodeInfo::OpNodeInfo ( )

Constructor.

Definition at line 82 of file op_graph.cpp.

References Initialize().

Here is the call graph for this function:

◆ ~OpNodeInfo()

OpNodeInfo::~OpNodeInfo ( )
overridedefault

Destructor.

Referenced by Initialize().

Here is the caller graph for this function:

Member Function Documentation

◆ GetNodeId()

unsigned int OpNodeInfo::GetNodeId ( ) const

Return the node id of the operation associated with the vertex.

Definition at line 144 of file op_graph.cpp.

References ENTRY, ENTRY_ID, EXIT, EXIT_ID, tree_node::index, node, THROW_UNREACHABLE, and TypedNodeInfo::vertex_name.

◆ GetOperation()

const std::string OpNodeInfo::GetOperation ( ) const

Return the operation associated with the vertex.

Definition at line 124 of file op_graph.cpp.

References ENTRY, EXIT, GET_NODE, node, NOP, THROW_ASSERT, and TypedNodeInfo::vertex_name.

◆ GetVariables()

const CustomSet< unsigned int > & OpNodeInfo::GetVariables ( const FunctionBehavior_VariableType  variable_type,
const FunctionBehavior_VariableAccessType  access_type 
) const

Return a set of accessed scalar variables.

Parameters
variable_typeis the type of variables to be considered
access_typeis the type of accesses to be considered

Definition at line 118 of file op_graph.cpp.

References variables.

◆ Initialize()

void OpNodeInfo::Initialize ( )

Initialize variable maps.

This is necessary to be sure that the set exists (even if empty)

Definition at line 87 of file op_graph.cpp.

References ADDRESS, DEFINITION, MEMORY, OVER, SCALAR, USE, variables, VIRTUAL, and ~OpNodeInfo().

Referenced by OpNodeInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Print()

void OpNodeInfo::Print ( std::ostream &  stream,
const BehavioralHelperConstRef  behavioral_helper,
const bool  dotty_format 
) const

Print the content of this node.

Parameters
streamis the stream on which this node has to be printed
behavioral_helperis the helper associated with the function
dotty_formatspecifies if the output has to be formatted for a dotty label

Definition at line 231 of file op_graph.cpp.

References cited_variables, MEMORY, PrintVariablesList(), PrintVariablesLists(), SCALAR, variables, and VIRTUAL.

Here is the call graph for this function:

Field Documentation

◆ actual_parameters

std::list<unsigned int> OpNodeInfo::actual_parameters

Set of actual parameters of called function (used in pthread backend.

Definition at line 373 of file op_graph.hpp.

◆ bb_index

unsigned int OpNodeInfo::bb_index

Store the index of the basic block which this operation vertex belongs to.

Definition at line 382 of file op_graph.hpp.

◆ called

CustomSet<unsigned int> OpNodeInfo::called

Store the index of called functions.

Definition at line 379 of file op_graph.hpp.

◆ cer

unsigned int OpNodeInfo::cer

Store the index of the control equivalent region.

Definition at line 385 of file op_graph.hpp.

◆ cited_variables

CustomSet<unsigned int> OpNodeInfo::cited_variables

set of cited variables (i.e., variables which are included in the c printing of this statement)

Definition at line 366 of file op_graph.hpp.

Referenced by Print().

◆ node

tree_nodeRef OpNodeInfo::node

The tree node associated with this vertex.

Definition at line 376 of file op_graph.hpp.

Referenced by GetNodeId(), and GetOperation().

◆ variables

set of scalar ssa accessed in this node

Definition at line 370 of file op_graph.hpp.

Referenced by GetVariables(), Initialize(), Print(), PrintMemoriesLists(), and PrintVariablesLists().


The documentation for this struct was generated from the following files:

Generated on Mon Feb 12 2024 13:03:59 for PandA-2024.02 by doxygen 1.8.13