PandA-2024.02
|
Base class description of data information associated with each node of a graph. More...
Go to the source code of this file.
Data Structures | |
struct | TypedNodeInfo |
Macros | |
#define | ENTRY "ENTRY" |
Superclass include. More... | |
#define | EXIT "EXIT" |
constant string identifying an operation node of type exit. More... | |
#define | TYPE_ENTRY 2 |
constant identifying the node type of an entry node. More... | |
#define | TYPE_EXIT 4 |
constant identifying the node type of an exit node. More... | |
#define | TYPE_GENERIC 8 |
constant identifying the node type of a GENERIC operation. More... | |
#define | GET_OPERATION(data, vertex_index) Cget_node_info<TypedNodeInfo>(vertex_index, *(data))->node_operation |
Helper macro returning the operation associated with a node. More... | |
#define | GET_NAME(data, vertex_index) Cget_node_info<TypedNodeInfo>(vertex_index, *(data))->vertex_name |
Helper macro returning the name associated with a node. More... | |
#define | GET_TYPE(data, vertex_index) Cget_node_info<TypedNodeInfo>(vertex_index, *(data))->node_type |
Helper macro returning the type associated with a node. More... | |
Functions | |
template<class Graph > | |
bool | is_entry_node (const Graph *g, typename boost::graph_traits< Graph >::vertex_descriptor node) |
Base class storing user data information. More... | |
template<class Graph > | |
bool | is_exit_node (const Graph *g, typename boost::graph_traits< Graph >::vertex_descriptor node) |
Helper function checking if a node is an exit node. More... | |
Base class description of data information associated with each node of a graph.
Definition in file typed_node_info.hpp.
#define ENTRY "ENTRY" |
Superclass include.
Graph include STD include Utility include constant string identifying an operation node of type entry. Used during the behavioral_manager building starting from the tree(GCC) data structure.
Definition at line 63 of file typed_node_info.hpp.
Referenced by operations_graph_constructor::AddOperation(), structural_manager::build_graph(), operations_cfg_computation::connect_start_nodes(), OpNodeInfo::GetNodeId(), OpNodeInfo::GetOperation(), OpOrderComputation::InternalExec(), operations_cfg_computation::InternalExec(), and allocation::InternalExec().
#define EXIT "EXIT" |
constant string identifying an operation node of type exit.
Used during the behavioral_manager building starting from the tree(GCC) data structure.
Definition at line 69 of file typed_node_info.hpp.
#define GET_NAME | ( | data, | |
vertex_index | |||
) | Cget_node_info<TypedNodeInfo>(vertex_index, *(data))->vertex_name |
Helper macro returning the name associated with a node.
This function should be carefully used. For example it can only be used by cdfg based graphs and not by basic_block based graphs.
data | is the graph. |
vertex_index | is the index of the node. |
Definition at line 178 of file typed_node_info.hpp.
Referenced by conn_binding::add_command_ports(), ASLAP::add_constraints_to_ALAP(), ASLAP::add_constraints_to_ASAP(), operations_graph_constructor::add_edge_info(), fu_binding::add_gate(), parametric_list_based::add_to_priority_queues(), SDCScheduling::AddDelayConstraints(), SDCScheduling::AddDependenceConstraint(), SDCScheduling::AddStageConstraints(), topological_based_sorting_visitor< OutputIterator >::back_edge(), conn_binding::bind_command_port(), conn_binding::bind_selector_port(), FunctionBehavior::CheckReachability(), parametric_list_based::CheckSchedulabilityConditions(), ASLAP::compute_ALAP_fast(), ASLAP::compute_ASAP(), parametric_list_based::compute_exec_stage_time(), parametric_list_based::compute_starting_ending_time_asap(), DataDependenceComputation::Computedependencies(), mux_connection_binding::connect_to_registers(), mux_connection_binding::create_connections(), fsm_controller::create_state_machine(), DataDependenceComputation::do_dependence_reduction(), HWCallPathCalculator::examine_edge(), parametric_list_based::exec(), memory_allocation::finalize_memory_allocation(), AllocationInformation::get_attribute_of_fu_per_op(), StorageValueInformation::get_compatibility_weight(), Schedule::get_cstep(), fsm_controller::get_guard_value(), StateTransitionGraphManager::get_states(), ASLAP::GetCycleLatency(), AllocationInformation::GetNodeTypePrec(), StorageValueInformation::Initialize(), SDCScheduling::Initialize(), cdfc_module_binding::initialize_connection_relation(), pipeline_controller::InternalExec(), BB_based_stg::InternalExec(), unique_binding::InternalExec(), FSM_NI_SSA_liveness::InternalExec(), sched_based_chaining_computation::InternalExec(), OpCdgComputation::InternalExec(), easy_module_binding::InternalExec(), OpOrderComputation::InternalExec(), AddOpPhiFlowEdges::InternalExec(), mem_dominator_allocation::InternalExec(), AddOpLoopFlowEdges::InternalExec(), port_swapping::InternalExec(), SDCScheduling::InternalExec(), allocation::InternalExec(), parametric_list_based::InternalExec(), cdfc_module_binding::InternalExec(), PrioritySorter::operator()(), cs_ordering_functor::operator()(), OpWriter::operator()(), compare_vertex_by_name::operator()(), cg_label_writer::operator()(), edge_integer_order_by_map::operator()(), OpVertexSorter::operator()(), OpEdgeSorter::operator()(), op_vertex_order_by_map::operator()(), StateInfo::print(), TransitionInfo::print(), Schedule::print(), VcdSignalSelection::SelectInternalSignals(), fu_binding::specialise_fu(), cdfc_module_binding::update_slack_starting_time(), cdfc_module_binding::weight_computation(), EdgeCWriter::writeRoutineInstructions_rec(), CWriter::writeRoutineInstructions_rec(), hls::xload(), and hls::xwrite().
#define GET_OPERATION | ( | data, | |
vertex_index | |||
) | Cget_node_info<TypedNodeInfo>(vertex_index, *(data))->node_operation |
Helper macro returning the operation associated with a node.
This function should be carefully used. For example it can only be used by cdfg based graphs and not by basic_block based graphs.
data | is the graph. |
vertex_index | is the index of the node. |
Definition at line 170 of file typed_node_info.hpp.
Referenced by cg_label_writer::operator()().
#define GET_TYPE | ( | data, | |
vertex_index | |||
) | Cget_node_info<TypedNodeInfo>(vertex_index, *(data))->node_type |
Helper macro returning the type associated with a node.
This function should be carefully used. For example it can only be used by cdfg based graphs and not by basic_block based graphs.
data | is the graph. |
vertex_index | is the index of the node. |
Definition at line 186 of file typed_node_info.hpp.
Referenced by conn_binding::add_command_ports(), mux_connection_binding::add_conversion(), ParallelMemoryFuBinding::add_to_SM(), SDCScheduling::AddDelayConstraints(), mux_connection_binding::address_precision(), ASLAP::ASLAP(), cdfc_module_binding::can_be_clustered(), parametric_list_based::check_direct_operation_chaining(), parametric_list_based::check_LOAD_chaining(), parametric_list_based::check_non_direct_operation_chaining(), parametric_list_based::CheckSchedulabilityConditions(), CWriter::compute_phi_nodes(), parametric_list_based::compute_starting_ending_time_asap(), mux_connection_binding::connect_to_registers(), mux_connection_binding::create_connections(), mux_connection_binding::determine_connection(), parametric_list_based::exec(), memory_allocation::finalize_memory_allocation(), StorageValueInformation::get_compatibility_weight(), fsm_controller::get_guard_value(), AddOpPhiFlowEdges::Initialize(), AddOpExitFlowEdges::Initialize(), StorageValueInformation::Initialize(), cdfc_module_binding::initialize_connection_relation(), pipeline_controller::InternalExec(), BB_based_stg::InternalExec(), FSM_NI_SSA_liveness::InternalExec(), AddOpPhiFlowEdges::InternalExec(), mem_dominator_allocation::InternalExec(), AddOpExitFlowEdges::InternalExec(), VarComputation::InternalExec(), port_swapping::InternalExec(), SDCScheduling::InternalExec(), allocation::InternalExec(), cdfc_module_binding::InternalExec(), is_entry_node(), is_exit_node(), BB_based_stg::is_instantaneous_operation(), OpWriter::operator()(), cg_label_writer::operator()(), BB_based_stg::optimize_cycles(), StateInfo::print(), fu_binding::specialise_fu(), parametric_list_based::store_in_chaining_with_load_in(), parametric_list_based::store_in_chaining_with_load_out(), EdgeCWriter::writeRoutineInstructions(), CWriter::writeRoutineInstructions(), EdgeCWriter::writeRoutineInstructions_rec(), and CWriter::writeRoutineInstructions_rec().
#define TYPE_ENTRY 2 |
constant identifying the node type of an entry node.
Definition at line 74 of file typed_node_info.hpp.
Referenced by structural_manager::build_graph(), cdfc_module_binding::can_be_clustered(), StorageValueInformation::get_compatibility_weight(), StorageValueInformation::Initialize(), operations_cfg_computation::InternalExec(), cdfc_module_binding::InternalExec(), is_entry_node(), OpWriter::operator()(), cg_label_writer::operator()(), StateInfo::print(), EdgeCWriter::writeRoutineInstructions(), and CWriter::writeRoutineInstructions().
#define TYPE_EXIT 4 |
constant identifying the node type of an exit node.
Definition at line 79 of file typed_node_info.hpp.
Referenced by structural_manager::build_graph(), cdfc_module_binding::can_be_clustered(), operations_cfg_computation::InternalExec(), cdfc_module_binding::InternalExec(), is_exit_node(), OpWriter::operator()(), cg_label_writer::operator()(), and StateInfo::print().
#define TYPE_GENERIC 8 |
constant identifying the node type of a GENERIC operation.
Definition at line 84 of file typed_node_info.hpp.
Referenced by operations_graph_constructor::add_type(), and operations_cfg_computation::build_operation_recursive().
bool is_entry_node | ( | const Graph * | g, |
typename boost::graph_traits< Graph >::vertex_descriptor | node | ||
) |
Base class storing user data information.
This class is associated with the graph data structure.FIXME: change in function of graph Helper function checking if a node is an entry node.
g | is the graph. |
node | is the examined node. |
Definition at line 99 of file typed_node_info.hpp.
References GET_TYPE, and TYPE_ENTRY.
bool is_exit_node | ( | const Graph * | g, |
typename boost::graph_traits< Graph >::vertex_descriptor | node | ||
) |
Helper function checking if a node is an exit node.
g | is the graph. |
node | is the examined node. |
Definition at line 111 of file typed_node_info.hpp.