P4C
The P4 Compiler
Loading...
Searching...
No Matches
compute_init_zero_containers.h
1
19#ifndef BACKENDS_TOFINO_BF_P4C_PARDE_LOWERED_COMPUTE_INIT_ZERO_CONTAINERS_H_
20#define BACKENDS_TOFINO_BF_P4C_PARDE_LOWERED_COMPUTE_INIT_ZERO_CONTAINERS_H_
21
22#include "backends/tofino/bf-p4c/common/field_defuse.h"
23#include "backends/tofino/bf-p4c/parde/parde_visitor.h"
24
25namespace Parde::Lowered {
26
35 void postorder(IR::BFN::LoweredParser *parser) override;
36
37 public:
39 const PhvInfo &phv, const FieldDefUse &defuse,
41 const std::map<gress_t, std::set<PHV::Container>> &origParserZeroInitContainers)
42 : phv(phv),
43 defuse(defuse),
44 no_init_fields(no_init),
45 origParserZeroInitContainers(origParserZeroInitContainers) {}
46
47 const PhvInfo &phv;
48 const FieldDefUse &defuse;
49 const ordered_set<const PHV::Field *> &no_init_fields;
50 const std::map<gress_t, std::set<PHV::Container>> &origParserZeroInitContainers;
51};
52
53} // namespace Parde::Lowered
54
55#endif /* BACKENDS_TOFINO_BF_P4C_PARDE_LOWERED_COMPUTE_INIT_ZERO_CONTAINERS_H_ */
Definition ordered_set.h:32
Definition phv_fields.h:1095
Computes containers that have fields relying on parser zero initialization.
Definition compute_init_zero_containers.h:34
Definition field_defuse.h:77
Definition parde_visitor.h:78
Definition lower_parser.cpp:72