P4C
The P4 Compiler
Loading...
Searching...
No Matches
memoize_min_stage.h
1
19
#ifndef BACKENDS_TOFINO_BF_P4C_PHV_ANALYSIS_MEMOIZE_MIN_STAGE_H_
20
#define BACKENDS_TOFINO_BF_P4C_PHV_ANALYSIS_MEMOIZE_MIN_STAGE_H_
21
22
#include "backends/tofino/bf-p4c/mau/table_dependency_graph.h"
23
#include "backends/tofino/bf-p4c/mau/table_summary.h"
24
#include "backends/tofino/bf-p4c/phv/mau_backtracker.h"
25
#include "backends/tofino/bf-p4c/phv/phv_fields.h"
26
27
// MemoizeStage save table stage mapping to static vairables of PhvInfo object,
28
// both physical stage and min stage.
29
class
MemoizeStage
:
public
Inspector
{
30
private
:
31
const
DependencyGraph
&dg;
// for min stages
32
const
MauBacktracker
&backtracker;
// for physical stages
33
34
profile_t
init_apply(
const
IR::Node
*root)
override
;
35
bool
preorder(
const
IR::MAU::Table *tbl)
override
;
36
37
public
:
38
explicit
MemoizeStage
(
const
DependencyGraph
&d,
const
MauBacktracker
&backtracker)
39
: dg(d), backtracker(backtracker) {}
40
};
41
42
#endif
/* BACKENDS_TOFINO_BF_P4C_PHV_ANALYSIS_MEMOIZE_MIN_STAGE_H_ */
MauBacktracker
Definition
mau_backtracker.h:29
MemoizeStage
Definition
memoize_min_stage.h:29
P4::IR::Node
Definition
node.h:94
P4::Inspector
Definition
visitor.h:400
P4::Visitor::profile_t
Definition
visitor.h:78
DependencyGraph
Definition
table_dependency_graph.h:52
backends
tofino
bf-p4c
phv
analysis
memoize_min_stage.h
Generated by
1.12.0