P4C
The P4 Compiler
Toggle main menu visibility
Main Page
P4C Repository Organization
Getting Started
P4C Intermediate Representation (IR)
Frontend
Midend
Backends
Behavioral Model Backend
DPDK Backend
eBPF Backend
TC Backend
uBPF Backend
P4test Backend
Graphs Backend
p4fmt (P4 Formatter)
P4Tools
P4Smith
P4Testgen
Contribute to the P4 Compiler Project
Releases
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
w
x
z
Functions
a
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
w
x
Variables
Typedefs
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
Typedefs
Enumerations
Enumerator
Related Symbols
•
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Modules
Pages
Loading...
Searching...
No Matches
liverange_opti_utils.h
1
19
#ifndef BACKENDS_TOFINO_BF_P4C_PHV_UTILS_LIVERANGE_OPTI_UTILS_H_
20
#define BACKENDS_TOFINO_BF_P4C_PHV_UTILS_LIVERANGE_OPTI_UTILS_H_
21
22
#include "backends/tofino/bf-p4c/phv/analysis/dominator_tree.h"
23
#include "backends/tofino/bf-p4c/phv/utils/slice_alloc.h"
24
#include "ir/ir.h"
25
26
namespace
PHV
{
27
class
Transaction;
28
}
29
31
bool
hasParserUse(
const
PHV::UnitSet
&doms);
32
34
ordered_set<std::pair<const IR::BFN::Unit *, const IR::BFN::Unit *>
> canFUnitsReachGUnits(
35
const
PHV::UnitSet
&f_units,
const
PHV::UnitSet
&g_units,
36
const
ordered_map<gress_t, FlowGraph>
&flowGraph);
37
40
void
getTrimmedDominators(
PHV::UnitSet
&candidates,
const
BuildDominatorTree
&domTree);
41
50
ordered_map<gress_t, FlowGraph>
update_flowgraph(
const
PHV::UnitSet
&g_units,
51
const
PHV::UnitSet
&f_units,
52
const
ordered_map<gress_t, FlowGraph>
&flgraphs,
53
const
PHV::Transaction
&transact,
bool
&canUseARA);
54
55
#endif
/* BACKENDS_TOFINO_BF_P4C_PHV_UTILS_LIVERANGE_OPTI_UTILS_H_ */
BuildDominatorTree
Definition
dominator_tree.h:32
P4::ordered_map
Definition
ordered_map.h:32
P4::ordered_set< const IR::BFN::Unit * >
PHV::Transaction
Definition
phv/utils/utils.h:561
PHV
The namespace encapsulating PHV-related stuff.
Definition
gateway.h:32
backends
tofino
bf-p4c
phv
utils
liverange_opti_utils.h
Generated by
1.12.0