Jlm
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
TestableBaseHLS Class Reference
Inheritance diagram for TestableBaseHLS:
Inheritance graph
[legend]
Collaboration diagram for TestableBaseHLS:
Collaboration graph
[legend]

Public Member Functions

std::string GetText (LlvmRvsdgModule &rm) override
 
std::string extension () override
 
std::vector< rvsdg::RegionResult * > get_mem_reqs (const rvsdg::LambdaNode &lambda)
 
std::vector< rvsdg::RegionArgument * > get_mem_resps (const rvsdg::LambdaNode &lambda)
 
std::string get_node_name (const rvsdg::Node *node)
 
std::vector< rvsdg::RegionArgument * > get_reg_args (const rvsdg::LambdaNode &lambda)
 
std::vector< rvsdg::RegionResult * > get_reg_results (const rvsdg::LambdaNode &lambda)
 
- Public Member Functions inherited from jlm::hls::BaseHLS
virtual ~BaseHLS ()
 
std::string run (llvm::LlvmRvsdgModule &rm)
 

Static Public Member Functions

static std::string get_port_name (jlm::rvsdg::Input *port)
 
static std::string get_port_name (jlm::rvsdg::Output *port)
 
static int JlmSize (const jlm::rvsdg::Type *type)
 
- Static Public Member Functions inherited from jlm::hls::BaseHLS
static int JlmSize (const jlm::rvsdg::Type *type)
 

Public Attributes

std::unordered_map< const rvsdg::Node *, std::string > node_map
 
std::unordered_map< jlm::rvsdg::Output *, std::string > output_map
 

Additional Inherited Members

- Protected Member Functions inherited from jlm::hls::BaseHLS
std::string get_node_name (const rvsdg::Node *node)
 
const rvsdg::LambdaNodeget_hls_lambda (llvm::LlvmRvsdgModule &rm)
 
void create_node_names (rvsdg::Region *r)
 
std::vector< rvsdg::RegionArgument * > get_mem_resps (const rvsdg::LambdaNode &lambda)
 
std::vector< rvsdg::RegionResult * > get_mem_reqs (const rvsdg::LambdaNode &lambda)
 
std::vector< rvsdg::RegionArgument * > get_reg_args (const rvsdg::LambdaNode &lambda)
 
std::vector< rvsdg::RegionResult * > get_reg_results (const rvsdg::LambdaNode &lambda)
 
- Static Protected Member Functions inherited from jlm::hls::BaseHLS
static std::string get_port_name (jlm::rvsdg::Input *port)
 
static std::string get_port_name (jlm::rvsdg::Output *port)
 
static std::string get_base_file_name (const llvm::LlvmRvsdgModule &rm)
 
- Protected Attributes inherited from jlm::hls::BaseHLS
std::unordered_map< const rvsdg::Node *, std::string > node_map
 
std::unordered_map< jlm::rvsdg::Output *, std::string > output_map
 

Detailed Description

Definition at line 17 of file BaseHlsTests.cpp.

Member Function Documentation

◆ extension()

std::string TestableBaseHLS::extension ( )
inlineoverridevirtual

Implements jlm::hls::BaseHLS.

Definition at line 41 of file BaseHlsTests.cpp.

◆ get_mem_reqs()

std::vector< rvsdg::RegionResult * > jlm::hls::BaseHLS::get_mem_reqs ( const rvsdg::LambdaNode &  lambda)
inline

Extracts all region results of the given kernel that represent memory requests. They can take multiple values within a single execution of the region.

Parameters
lambdathe lambda node holding the hls kernel
Returns
the results that represent memory requests

Definition at line 93 of file base-hls.hpp.

◆ get_mem_resps()

std::vector< rvsdg::RegionArgument * > jlm::hls::BaseHLS::get_mem_resps ( const rvsdg::LambdaNode &  lambda)
inline

Extracts all region arguments of the given kernel that represent memory responses. They can provide multiple values within a single execution of the region.

Parameters
lambdathe lambda node holding the hls kernel
Returns
the arguments that represent memory responses

Definition at line 75 of file base-hls.hpp.

◆ get_node_name()

std::string jlm::hls::BaseHLS::get_node_name ( const rvsdg::Node *  node)

Definition at line 48 of file base-hls.cpp.

◆ get_port_name() [1/2]

std::string jlm::hls::BaseHLS::get_port_name ( jlm::rvsdg::Input port)
static

Definition at line 51 of file base-hls.cpp.

◆ get_port_name() [2/2]

std::string jlm::hls::BaseHLS::get_port_name ( jlm::rvsdg::Output port)
static

Definition at line 54 of file base-hls.cpp.

◆ get_reg_args()

std::vector< rvsdg::RegionArgument * > jlm::hls::BaseHLS::get_reg_args ( const rvsdg::LambdaNode &  lambda)
inline

Extracts all region arguments of the given kernel that represent kernel inputs, which may include kernel arguments, state types, and context variables (always in that order). It will not return any arguments that represent memory responses.

Parameters
lambdathe lambda node holding the hls kernel
Returns
the arguments of the lambda that represent kernel inputs

Definition at line 112 of file base-hls.hpp.

◆ get_reg_results()

std::vector< rvsdg::RegionResult * > jlm::hls::BaseHLS::get_reg_results ( const rvsdg::LambdaNode &  lambda)
inline

Extracts all region results from the given kernel that represent results from execution, as opposed to results used for making memory requests.

Parameters
lambdathe lambda node holding the hls kernel
Returns
the results of the lambda that represent the kernel outputs

Definition at line 130 of file base-hls.hpp.

◆ GetText()

std::string TestableBaseHLS::GetText ( LlvmRvsdgModule rm)
inlineoverridevirtual

Implements jlm::hls::BaseHLS.

Definition at line 35 of file BaseHlsTests.cpp.

◆ JlmSize()

int jlm::hls::BaseHLS::JlmSize ( const jlm::rvsdg::Type type)
static

Definition at line 37 of file base-hls.cpp.

Member Data Documentation

◆ node_map

std::unordered_map<const rvsdg::Node *, std::string> jlm::hls::BaseHLS::node_map

Definition at line 44 of file base-hls.hpp.

◆ output_map

std::unordered_map<jlm::rvsdg::Output *, std::string> jlm::hls::BaseHLS::output_map

Definition at line 45 of file base-hls.hpp.


The documentation for this class was generated from the following file: