43 #ifndef COMPATIBILITY_BASED_REGISTER_HPP 44 #define COMPATIBILITY_BASED_REGISTER_HPP 48 #include <boost/graph/adjacency_matrix.hpp> 73 boost::adjacency_matrix<boost::undirectedS, boost::no_property, edge_compatibility_property>;
81 std::vector<CG_vertex_descriptor>
verts;
103 bool is_compatible(
unsigned int sv1,
unsigned int sv2)
const;
const HLS_managerRef HLSMgr
information about all the HLS synthesis
compatibility_graph * CG
compatibility graph
const unsigned int funId
identifier of the function to be processed (0 means that it is a global step)
std::vector< CG_vertex_descriptor > verts
ordered vector containing the vertices of the compatibility graph
const HLSFlowStep_Type hls_flow_step_type
The type of this step.
boost::adjacency_matrix< boost::undirectedS, boost::no_property, edge_compatibility_property > compatibility_graph
boost::graph_traits< compatibility_graph >::vertices_size_type CG_vertices_size_type
bool is_compatible(unsigned int sv1, unsigned int sv2) const
Checks if two storage values are compatible.
const Wrefcount< const DesignFlowManager > design_flow_manager
The design flow manager.
Generic class managing the different register allocation algorithms.
edge_compatibility_property()
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
Base class for all the register allocation algorithms.
~compatibility_based_register() override
refcount< const HLSFlowStepSpecialization > HLSFlowStepSpecializationConstRef
const refcount definition of the class
boost::graph_traits< compatibility_graph >::vertex_descriptor CG_vertex_descriptor
edge_compatibility_property(int _weight)
Constructor with selector.
void create_compatibility_graph()
Creates the compatibility graph.
compatibility_based_register(const ParameterConstRef Param, const HLS_managerRef HLSMgr, unsigned int funId, const DesignFlowManagerConstRef design_flow_manager, const HLSFlowStep_Type hls_flow_step_type, const HLSFlowStepSpecializationConstRef hls_flow_step_specialization=HLSFlowStepSpecializationConstRef())
Constructor.
const HLSFlowStepSpecializationConstRef hls_flow_step_specialization
The information about specialization.