19#ifndef BACKENDS_TOFINO_BF_P4C_PARDE_REWRITE_PARSER_LOCALS_H_
20#define BACKENDS_TOFINO_BF_P4C_PARDE_REWRITE_PARSER_LOCALS_H_
21#include "backends/tofino/bf-p4c/phv/phv_fields.h"
22#include "backends/tofino/bf-p4c/phv/phv_parde_mau_use.h"
23#include "collect_parser_usedef.h"
28 bool preorder(
const IR::BFN::Select *select)
override;
35 Visitor::profile_t init_apply(
const IR::Node *root)
override {
37 return Inspector::init_apply(root);
48 bool preorder(IR::BFN::Extract *)
override;
53 : phv(phv), parserInfo(parserInfo), getSelectField(getSelectField), uses(uses) {}
Definition rewrite_parser_locals.h:41
Definition rewrite_parser_locals.h:25
ordered_map< const PHV::Field *, ordered_set< const IR::BFN::ParserState * > > select_field_to_state
A map of select fields to the states that use them.
Definition rewrite_parser_locals.h:33
Definition ir/pass_manager.h:40
Definition ordered_map.h:32
Definition phv_fields.h:1095
Definition phv_parde_mau_use.h:154
Looks for extracts into temporary local variables used in select statements.
Definition rewrite_parser_locals.h:66