Thorin
1.9.0
The Higher ORder INtermediate representation
Loading...
Searching...
No Matches
debug_print.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
thorin/def.h
>
4
5
#include <
thorin/pass/pass.h
>
6
7
namespace
thorin::plug::compile
{
8
9
class
DebugPrint
:
public
RWPass
<DebugPrint, Lam> {
10
public
:
11
DebugPrint
(
PassMan
&
man
,
int
level_)
12
:
RWPass
(
man
,
"debug_print"
)
13
, level(level_) {}
14
15
void
enter
()
override
;
16
17
private
:
18
int
level;
19
};
20
21
}
// namespace thorin::plug::compile
thorin::PassMan
An optimizer that combines several optimizations in an optimal way.
Definition
pass.h:107
thorin::Pass::man
PassMan & man()
Definition
pass.h:30
thorin::RWPass
Inherit from this class using CRTP, if your Pass does not need state and a fixed-point iteration.
Definition
pass.h:220
thorin::plug::compile::DebugPrint
Definition
debug_print.h:9
thorin::plug::compile::DebugPrint::enter
void enter() override
Invoked just before Pass::rewriteing PassMan::curr_mut's body.
Definition
debug_print.cpp:9
thorin::plug::compile::DebugPrint::DebugPrint
DebugPrint(PassMan &man, int level_)
Definition
debug_print.h:11
def.h
thorin::plug::compile
The compile Plugin
Definition
compile.h:9
pass.h
include
thorin
plug
compile
pass
debug_print.h
Generated by
1.9.8