PandA-2024.02
|
#include <chaining_information.hpp>
Public Member Functions | |
ChainingInformation (const HLS_managerConstRef HLS_mgr, const unsigned int function_id) | |
Constructor. More... | |
void | Initialize () |
Initialize the object (i.e., like a constructor, but executed just before exec of a step) More... | |
size_t | get_representative_in (vertex op1) const |
Return the representative vertex associated with the chained vertices set in input. More... | |
size_t | get_representative_out (vertex op1) const |
Return the representative vertex associated with the chained vertices set in output. More... | |
bool | is_chained_vertex (vertex v) const |
return true in case the vertex is in chaining with something More... | |
bool | may_be_chained_ops (vertex tgt, vertex src) const |
check if two operations are chained in at least one state More... | |
void | add_chained_vertices_in (vertex op1, vertex src) |
put into relation the vertices whith respect the chained vertices connected with the input More... | |
void | add_chained_vertices_out (vertex op1, vertex tgt) |
put into relation the vertices whith respect the chained vertices connected with the output More... | |
Protected Attributes | |
std::map< vertex, unsigned int > | actual_bb_index_map |
relation between operation and basic block More... | |
ChainingSetRef | chaining_relation |
relation between vertices in terms of chaining in input or in output More... | |
CustomOrderedSet< vertex > | is_chained_with |
set of vertices chained with something More... | |
const Wrefcount< const HLS_manager > | HLS_mgr |
The HLS manager. More... | |
const unsigned int | function_id |
The index of the function. More... | |
Friends | |
class | chaining |
class | epdg_sched_based_chaining_computation |
class | sched_based_chaining_computation |
Definition at line 56 of file chaining_information.hpp.
ChainingInformation::ChainingInformation | ( | const HLS_managerConstRef | HLS_mgr, |
const unsigned int | function_id | ||
) |
Constructor.
HLS_mgr | is the HLS manager |
function_id | is the index of the function to which this data structure refers |
Definition at line 90 of file chaining_information.cpp.
put into relation the vertices whith respect the chained vertices connected with the input
op1 | is the considered vertex |
src | is the chained vertex chained in input |
Definition at line 134 of file chaining_information.cpp.
References chaining_relation.
Referenced by sched_based_chaining_computation::InternalExec().
put into relation the vertices whith respect the chained vertices connected with the output
op1 | is the considered vertex |
tgt | is the chained vertex chained in output |
Definition at line 139 of file chaining_information.cpp.
References chaining_relation.
Referenced by sched_based_chaining_computation::InternalExec().
Return the representative vertex associated with the chained vertices set in input.
It is assumed that chaining define an equivalent relation between vertices.
op1 | is the considered vertex |
Definition at line 95 of file chaining_information.cpp.
References chaining_relation.
Referenced by cdfc_module_binding::InternalExec(), and cdfc_module_binding::update_slack_starting_time().
Return the representative vertex associated with the chained vertices set in output.
It is assumed that chaining define an equivalent relation between vertices.
op1 | is the considered vertex |
Definition at line 100 of file chaining_information.cpp.
References chaining_relation.
void ChainingInformation::Initialize | ( | ) |
Initialize the object (i.e., like a constructor, but executed just before exec of a step)
Definition at line 105 of file chaining_information.cpp.
References hls::chaining_information, chaining_relation, FunctionBehavior::FLSAODG, function_id, HLS_mgr, and Wrefcount< T >::lock().
Referenced by sched_based_chaining_computation::Initialize(), and chaining::Initialize().
return true in case the vertex is in chaining with something
v | is the operation |
Definition at line 121 of file chaining_information.cpp.
References is_chained_with.
check if two operations are chained in at least one state
op1 | is the first vertex |
op2 | is the second vertex |
Definition at line 126 of file chaining_information.cpp.
References chaining_relation.
Referenced by cdfc_module_binding::InternalExec(), and cdfc_module_binding::update_slack_starting_time().
|
friend |
Definition at line 59 of file chaining_information.hpp.
|
friend |
Definition at line 60 of file chaining_information.hpp.
|
friend |
Definition at line 61 of file chaining_information.hpp.
relation between operation and basic block
Definition at line 64 of file chaining_information.hpp.
|
protected |
relation between vertices in terms of chaining in input or in output
Definition at line 67 of file chaining_information.hpp.
Referenced by add_chained_vertices_in(), add_chained_vertices_out(), get_representative_in(), get_representative_out(), Initialize(), and may_be_chained_ops().
|
protected |
The index of the function.
Definition at line 76 of file chaining_information.hpp.
Referenced by Initialize().
|
protected |
The HLS manager.
Definition at line 73 of file chaining_information.hpp.
Referenced by Initialize().
|
protected |
set of vertices chained with something
Definition at line 70 of file chaining_information.hpp.
Referenced by sched_based_chaining_computation::InternalExec(), and is_chained_vertex().