Jlm
Loading...
Searching...
No Matches
dot-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_DOT_HLS_HPP
7#define JLM_HLS_BACKEND_RHLS2FIRRTL_DOT_HLS_HPP
8
10#include <jlm/hls/ir/hls.hpp>
11
12namespace jlm::hls
13{
14
15class DotHLS : public BaseHLS
16{
17 std::string
18 extension() override;
19
20 std::string
22
23private:
24 std::string
26
27 std::string
29
30 std::string
31 node_to_dot(const rvsdg::Node * node);
32
33 std::string
34 edge(std::string src, std::string snk, const jlm::rvsdg::Type & type, bool back = false);
35
36 std::string
38
39 void
41
42 std::string
44
45 int loop_ctr = 0;
46};
47
48}
49
50#endif // JLM_HLS_BACKEND_RHLS2FIRRTL_DOT_HLS_HPP
std::string edge(std::string src, std::string snk, const jlm::rvsdg::Type &type, bool back=false)
Definition dot-hls.cpp:166
std::string loop_to_dot(LoopNode *ln)
Definition dot-hls.cpp:194
void prepare_loop_out_port(LoopNode *ln)
Definition dot-hls.cpp:297
std::string result_to_dot(rvsdg::RegionResult *port)
Definition dot-hls.cpp:48
std::string node_to_dot(const rvsdg::Node *node)
Definition dot-hls.cpp:67
std::string argument_to_dot(rvsdg::RegionArgument *port)
Definition dot-hls.cpp:29
std::string subregion_to_dot(rvsdg::Region *sr)
Definition dot-hls.cpp:349
std::string GetText(llvm::LlvmRvsdgModule &rm) override
Definition dot-hls.cpp:23
std::string extension() override
Definition dot-hls.cpp:17
Represents the argument of a region.
Definition region.hpp:41
Represents the result of a region.
Definition region.hpp:120
Represent acyclic RVSDG subgraphs.
Definition region.hpp:213
NodeType * TryGetOwnerNode(const rvsdg::Input &input) noexcept
Checks if this is an input to a node of specified type.
Definition node.hpp:872