P4C
The P4 Compiler
Loading...
Searching...
No Matches
parde/asm_output.h
1
18
19
#ifndef BF_P4C_PARDE_ASM_OUTPUT_H_
20
#define BF_P4C_PARDE_ASM_OUTPUT_H_
21
22
#include "backends/tofino/bf-p4c/bf-p4c-options.h"
23
#include "backends/tofino/bf-p4c/parde/parser_header_sequences.h"
24
#include "ir/ir.h"
25
26
class
PhvInfo
;
27
class
ClotInfo
;
28
32
struct
ParserAsmOutput {
33
ParserAsmOutput(
const
IR::BFN::Pipe *pipe,
const
PhvInfo
&phv,
const
ClotInfo
&clot_info,
34
gress_t gress);
35
36
private
:
37
friend
std::ostream &operator<<(std::ostream &,
const
ParserAsmOutput &);
38
39
std::vector<const IR::BFN::BaseLoweredParser *> parsers;
40
const
PhvInfo
&phv;
41
const
ClotInfo
&clot_info;
42
};
43
47
struct
Phase0AsmOutput {
48
const
IR::BFN::Pipe *pipe;
49
const
IR::BFN::Phase0 *phase0;
50
Phase0AsmOutput(
const
IR::BFN::Pipe *pipe,
const
IR::BFN::Phase0 *phase0)
51
: pipe(pipe), phase0(phase0) {}
52
53
private
:
54
friend
std::ostream &operator<<(std::ostream &,
const
Phase0AsmOutput &);
55
};
56
60
struct
DeparserAsmOutput {
61
DeparserAsmOutput(
const
IR::BFN::Pipe *pipe,
const
PhvInfo
&phv,
const
ClotInfo
&clot, gress_t);
62
63
const
PhvInfo
&phv;
64
const
ClotInfo
&clot;
65
66
private
:
67
friend
std::ostream &operator<<(std::ostream &,
const
DeparserAsmOutput &);
68
69
const
IR::BFN::LoweredDeparser *deparser;
70
};
71
72
#endif
/* BF_P4C_PARDE_ASM_OUTPUT_H_ */
ClotInfo
Definition
clot_info.h:41
PhvInfo
Definition
phv_fields.h:1095
backends
tofino
bf-p4c
parde
asm_output.h
Generated by
1.13.2