Jlm
Loading...
Searching...
No Matches
jlm
hls
backend
rvsdg2rhls
merge-gamma.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_BACKEND_HLS_RVSDG2RHLS_MERGE_GAMMA_HPP
7
#define JLM_BACKEND_HLS_RVSDG2RHLS_MERGE_GAMMA_HPP
8
9
#include <
jlm/rvsdg/Transformation.hpp
>
10
11
namespace
jlm::hls
12
{
13
14
class
GammaMerge
final
:
public
rvsdg::Transformation
15
{
16
public
:
17
~GammaMerge
()
noexcept
override
;
18
19
GammaMerge
();
20
21
GammaMerge
(
const
GammaMerge
&) =
delete
;
22
23
GammaMerge
(
GammaMerge
&&) =
delete
;
24
25
GammaMerge
&
26
operator
=(
const
GammaMerge
&) =
delete
;
27
28
GammaMerge
&
29
operator
=(
GammaMerge
&&) =
delete
;
30
31
void
32
Run
(rvsdg::
RvsdgModule
&
rvsdgModule
, util::
StatisticsCollector
&
statisticsCollector
)
override
;
33
34
static
void
35
CreateAndRun
(rvsdg::
RvsdgModule
&
rvsdgModule
, util::
StatisticsCollector
&
statisticsCollector
)
36
{
37
GammaMerge
gammaMerge
;
38
gammaMerge
.
Run
(
rvsdgModule
,
statisticsCollector
);
39
}
40
};
41
42
}
43
44
#endif
// JLM_BACKEND_HLS_RVSDG2RHLS_MERGE_GAMMA_HPP
statisticsCollector
static jlm::util::StatisticsCollector statisticsCollector
Definition
CommonNodeEliminationTests.cpp:24
Transformation.hpp
jlm::hls::GammaMerge
Definition
merge-gamma.hpp:15
jlm::hls::GammaMerge::Run
void Run(rvsdg::RvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector) override
Perform RVSDG transformation.
Definition
merge-gamma.cpp:170
jlm::hls::GammaMerge::~GammaMerge
~GammaMerge() noexcept override
jlm::hls::GammaMerge::CreateAndRun
static void CreateAndRun(rvsdg::RvsdgModule &rvsdgModule, util::StatisticsCollector &statisticsCollector)
Definition
merge-gamma.hpp:35
jlm::rvsdg::RvsdgModule
Definition
RvsdgModule.hpp:20
jlm::rvsdg::Transformation
Represents an RVSDG transformation.
Definition
Transformation.hpp:21
jlm::util::StatisticsCollector
Definition
Statistics.hpp:444
jlm::hls
Definition
FirrtlToVerilogConverter.cpp:18
jlm::rvsdg::TryGetOwnerNode
NodeType * TryGetOwnerNode(const rvsdg::Input &input) noexcept
Checks if this is an input to a node of specified type.
Definition
node.hpp:872
Generated by
1.9.8