P4C
The P4 Compiler
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
26namespace PHV {
27class Transaction;
28}
29
31bool hasParserUse(const PHV::UnitSet &doms);
32
35 const PHV::UnitSet &f_units, const PHV::UnitSet &g_units,
36 const ordered_map<gress_t, FlowGraph> &flowGraph);
37
40void getTrimmedDominators(PHV::UnitSet &candidates, const BuildDominatorTree &domTree);
41
50ordered_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_ */
Definition dominator_tree.h:32
Definition ordered_map.h:32
Definition phv/utils/utils.h:561
The namespace encapsulating PHV-related stuff.
Definition gateway.h:32