17#ifndef FRONTENDS_P4_SIMPLIFYPARSERS_H_
18#define FRONTENDS_P4_SIMPLIFYPARSERS_H_
20#include "frontends/common/resolveReferences/resolveReferences.h"
21#include "frontends/p4/parserCallGraph.h"
23#include "ir/pass_manager.h"
40 explicit DoSimplifyParsers(
ReferenceMap *refMap) : refMap(refMap) {
42 setName(
"DoSimplifyParsers");
45 const IR::Node *preorder(IR::P4Parser *parser)
override;
46 const IR::Node *preorder(IR::P4Control *control)
override {
52class SimplifyParsers :
public PassManager {
57 setName(
"SimplifyParsers");
Remove unreachable parser states, and collapse simple chains of states.
Definition simplifyParsers.h:36
Class used to encode maps from paths to declarations.
Definition referenceMap.h:66
Definition resolveReferences.h:121
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24