47 #include "config_HAVE_FROM_PRAGMA_BUILT.hpp" 48 #include "config_HAVE_ILP_BUILT.hpp" 49 #include "config_HAVE_LIBRARY_CHARACTERIZATION_BUILT.hpp" 50 #include "config_HAVE_SIMULATION_WRAPPER_BUILT.hpp" 51 #include "config_HAVE_TASTE.hpp" 52 #include "config_HAVE_VCD_BUILT.hpp" 125 GENERATE_TASTE_HDL_ARCHITECTURE,
126 GENERATE_TASTE_SYNTHESIS_SCRIPT,
138 #if HAVE_FROM_PRAGMA_BUILT 141 #if HAVE_FROM_PRAGMA_BUILT 144 #if HAVE_FROM_PRAGMA_BUILT 145 OMP_FOR_WRAPPER_CS_SYNTHESIS_FLOW,
147 #if HAVE_FROM_PRAGMA_BUILT 148 OMP_FUNCTION_ALLOCATION,
150 #if HAVE_FROM_PRAGMA_BUILT 151 OMP_FUNCTION_ALLOCATION_CS,
159 #if HAVE_SIMULATION_WRAPPER_BUILT 160 SIMULATION_EVALUATION,
163 #if HAVE_LIBRARY_CHARACTERIZATION_BUILT 164 SYNTHESIS_EVALUATION,
167 TASTE_INTERFACE_GENERATION,
179 VCD_SIGNAL_SELECTION,
218 std::tuple<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship>>
230 const DesignFlowManagerConstRef design_flow_manager,
const HLSFlowStep_Type hls_flow_step_type,
248 std::string GetName()
const override;
265 DesignFlowStepFactoryConstRef CGetDesignFlowStepFactory() const final;
298 return hasher(static_cast<int>(step));
310 struct hash<
std::tuple<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship>>
311 :
public unary_function<
312 std::tuple<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship>, size_t>
315 operator()(std::tuple<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship> step)
const 319 boost::hash_combine(ret, hasher(static_cast<int>(std::get<0>(step))));
320 boost::hash_combine(ret, std::get<1>(step));
321 boost::hash_combine(ret, hasher(static_cast<int>(std::get<2>(step))));
333 struct hash<
std::pair<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef>>
334 :
public unary_function<std::tuple<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef>, size_t>
336 size_t operator()(std::pair<HLSFlowStep_Type, HLSFlowStepSpecializationConstRef> step)
const 340 boost::hash_combine(ret, hasher(static_cast<int>(step.first)));
341 boost::hash_combine(ret, step.second);
const HLS_managerRef HLSMgr
information about all the HLS synthesis
virtual std::string GetKindText() const =0
Return the string representation of this.
RelationshipType
The relationship type.
The base class for design step.
size_t operator()(std::pair< HLSFlowStep_Type, HLSFlowStepSpecializationConstRef > step) const
Definition of hash function for EdgeDescriptor.
const HLSFlowStep_Type hls_flow_step_type
The type of this step.
redefinition of map to manage ordered/unordered structures
virtual std::string GetSignature() const =0
Return the contribution to the signature of a step given by the specialization.
Abstract class containing information about specialization of the single steps.
Base class for step of design flow.
absl::flat_hash_map< T, U, Hash, Eq, Alloc > CustomUnorderedMap
CONSTREF_FORWARD_DECL(Parameter)
Autoheader include.
HLSFlowStepSpecialization()
header include
Template definition of refcount.
size_t operator()(HLSFlowStep_Type step) const
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
Data structure that contains all information about high level synthesis process.
refcount< const HLSFlowStepSpecialization > HLSFlowStepSpecializationConstRef
const refcount definition of the class
virtual ~HLSFlowStepSpecialization()
size_t operator()(std::tuple< HLSFlowStep_Type, HLSFlowStepSpecializationConstRef, HLSFlowStep_Relationship > step) const
static CustomUnorderedMap< std::string, HLSFlowStep_Type > command_line_name_to_enum
Map hls step name to enum.
const HLSFlowStepSpecializationConstRef hls_flow_step_specialization
The information about specialization.