Jlm
Loading...
Searching...
No Matches
verilator-harness-hls.hpp
Go to the documentation of this file.
1/*
2 * Copyright 2021 David Metz <david.c.metz@ntnu.no>
3 * See COPYING for terms of redistribution.
4 */
5
6#ifndef JLM_HLS_BACKEND_RHLS2FIRRTL_VERILATOR_HARNESS_HLS_HPP
7#define JLM_HLS_BACKEND_RHLS2FIRRTL_VERILATOR_HARNESS_HLS_HPP
8
11
12namespace jlm::hls
13{
14
15std::string
16ConvertToCType(const rvsdg::Type * type);
17
18std::optional<std::string>
19GetReturnTypeAsC(const rvsdg::LambdaNode & kernel);
20
21std::tuple<size_t, std::string, std::string>
22GetParameterListAsC(const rvsdg::LambdaNode & kernel);
23
25{
27
28 std::string
29 extension() override
30 {
31 return "_harness.cpp";
32 }
33
34 std::string
36
37public:
47};
48
49}
50
51#endif // JLM_HLS_BACKEND_RHLS2FIRRTL_VERILATOR_HARNESS_HLS_HPP
std::string GetText(llvm::LlvmRvsdgModule &rm) override
VerilatorHarnessHLS(util::FilePath verilogFile)
std::tuple< size_t, std::string, std::string > GetParameterListAsC(const rvsdg::LambdaNode &kernel)
std::optional< std::string > GetReturnTypeAsC(const rvsdg::LambdaNode &kernel)
std::string ConvertToCType(const rvsdg::Type *type)
NodeType * TryGetOwnerNode(const rvsdg::Input &input) noexcept
Checks if this is an input to a node of specified type.
Definition node.hpp:872