P4C
The P4 Compiler
Loading...
Searching...
No Matches
bf-asm/tofino/phv.h
1
17
18
#ifndef BACKENDS_TOFINO_BF_ASM_TOFINO_PHV_H_
19
#define BACKENDS_TOFINO_BF_ASM_TOFINO_PHV_H_
20
21
#include "backends/tofino/bf-asm/phv.h"
22
23
class
Target::Tofino::Phv :
public
Target::Phv {
24
friend
class ::Phv;
25
struct
Register :
public
::Phv::Register {
26
int
parser_id()
const override
{
return
uid; }
27
int
mau_id()
const override
{
return
uid < FIRST_TPHV ? uid : -1; }
28
int
ixbar_id()
const override
{
return
uid < FIRST_TPHV ? uid : -1; }
29
int
deparser_id()
const override
{
return
uid; }
30
};
31
void
init_regs(::Phv &phv)
override
;
32
target_t type()
const override
{
return
TOFINO; }
33
unsigned
mau_groupsize()
const override
{
return
16; }
34
35
public
:
36
enum
{
37
NUM_PHV_REGS = 368,
38
FIRST_8BIT_PHV = 64,
39
COUNT_8BIT_PHV = 64,
40
FIRST_16BIT_PHV = 128,
41
COUNT_16BIT_PHV = 96,
42
FIRST_32BIT_PHV = 0,
43
COUNT_32BIT_PHV = 64,
44
FIRST_TPHV = 256,
45
FIRST_8BIT_TPHV = 288,
46
COUNT_8BIT_TPHV = 32,
47
FIRST_16BIT_TPHV = 320,
48
COUNT_16BIT_TPHV = 48,
49
FIRST_32BIT_TPHV = 256,
50
COUNT_32BIT_TPHV = 32,
51
};
52
static
const
bitvec
tagalong_groups[8];
53
};
54
55
#endif
/* BACKENDS_TOFINO_BF_ASM_TOFINO_PHV_H_ */
P4::bitvec
Definition
bitvec.h:120
backends
tofino
bf-asm
tofino
phv.h
Generated by
1.13.2