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
►
P4 Compiler Documentation (P4C)
•
All
Classes
Namespaces
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Modules
Pages
Loading...
Searching...
No Matches
split_padding.h
1
19
#ifndef BF_P4C_PHV_SPLIT_PADDING_H_
20
#define BF_P4C_PHV_SPLIT_PADDING_H_
21
22
#include <ir/ir.h>
23
24
#include "ir/visitor.h"
25
26
class
PhvInfo
;
27
35
class
SplitPadding
:
public
Transform {
36
protected
:
37
const
PhvInfo
&phv;
38
39
const
IR::Node *
preorder
(IR::BFN::ParserState *state)
override
;
40
41
public
:
42
explicit
SplitPadding
(
const
PhvInfo
&phv) : phv(phv) {}
43
};
35
class
SplitPadding
:
public
Transform {
…
};
44
45
#endif
/* BF_P4C_PHV_SPLIT_PADDING_H_ */
PhvInfo
Definition
phv_fields.h:1095
SplitPadding
Splits padding after PHV allocation to prevent extracted padding spanning multiple containers.
Definition
split_padding.h:35
SplitPadding::preorder
const IR::Node * preorder(IR::BFN::ParserState *state) override
Split padding extracts that span container boundaries.
Definition
split_padding.cpp:29
backends
tofino
bf-p4c
phv
split_padding.h
Generated by
1.12.0