const CustomOrderedSet< std::string > & get_shared_functions(unsigned int funID_scope) const
return the set of shared functions allocated in a given function.
bool is_a_shared_function(unsigned int funID_scope, const std::string &fun) const
return true if a given function is a shared function allocated in a given function scope ...
bool has_proxied_shared_functions(unsigned int funID_scope) const
check if the function has proxy shared functions
redefinition of map to manage ordered/unordered structures
const CustomOrderedSet< std::string > & get_proxied_shared_functions(unsigned int funID_scope) const
return the proxied internal functions associated with the function
std::map< std::string, unsigned int > proxied_functions
define where the proxied functions are mapped
void map_shared_function(unsigned int funID_scope, const std::string &fun)
allocate a shared function in a specified function.
redefinition of set to manage ordered/unordered structures
static std::string GetFUName(const std::string &fname, const HLS_managerRef HLSMgr)
Return FU used to implement given function.
virtual ~functions()
Destructor.
Template definition of refcount.
unsigned int get_proxy_mapping(const std::string &fun) const
in case the function is a proxy function, it returns where the function is actually instantiated ...
bool is_a_proxied_shared_function(unsigned int funID_scope, const std::string &fun) const
return true if a given function is a shared function allocated in a given function scope ...
void add_shared_function_proxy(unsigned int funID_scope, const std::string &fun)
allocate a proxy for the function referred within a given function
REF_FORWARD_DECL(HLS_manager)
Template borrowed from the ANTLR library by Terence Parr (http://www.jGuru.com - Software rights: htt...
bool is_a_proxied_function(const std::string &fun) const
return true if the function is a proxied function
std::map< unsigned int, CustomOrderedSet< std::string > > shared_function_proxy
set of function proxies called by a function
int fun(float *A, float *invA, float *b, float *x, float *I)
bool has_shared_functions(unsigned int funID_scope) const
return true in case there are shared functions allocated in a given function.
std::map< unsigned int, CustomOrderedSet< std::string > > shared_functions
reverse map of proxied_functions