24#ifndef BF_P4C_ARCH_V1MODEL_H_
25#define BF_P4C_ARCH_V1MODEL_H_
27#include <boost/algorithm/string.hpp>
29#include "bf-p4c/arch/arch.h"
30#include "bf-p4c/arch/fromv1.0/v1_converters.h"
31#include "bf-p4c/arch/fromv1.0/v1_program_structure.h"
32#include "bf-p4c/bf-p4c-options.h"
33#include "bf-p4c/common/pragma/all_pragmas.h"
34#include "bf-p4c/common/pragma/collect_global_pragma.h"
35#include "bf-p4c/ir/gress.h"
36#include "frontends/common/options.h"
37#include "frontends/p4/cloner.h"
38#include "frontends/p4/coreLibrary.h"
39#include "frontends/p4/methodInstance.h"
40#include "frontends/p4/sideEffects.h"
41#include "frontends/p4/typeChecking/typeChecker.h"
42#include "frontends/p4/uniqueNames.h"
44#include "ir/namemap.h"
53 bool preorder(IR::Declaration_Instance *decl)
override;
58 : structure(structure), refMap(refMap), typeMap(typeMap) {}
68 const IR::ToplevelBlock *toplevel =
nullptr;
72 const IR::ToplevelBlock *getToplevelBlock() {
Definition bf-p4c-options.h:28
Definition ir/pass_manager.h:40
Class used to encode maps from paths to declarations.
Definition referenceMap.h:66
SimpleSwitchTranslation(P4::ReferenceMap *refMap, P4::TypeMap *typeMap, BFN_Options &options)
Definition backends/tofino/bf-p4c/arch/v1model.cpp:2495
Definition backends/tofino/bf-p4c/arch/v1model.h:49
PassManager that governs normalization of v1model architecture.
Definition backends/tofino/bf-p4c/arch/v1model.h:65
The namespace encapsulating Barefoot/Intel-specific stuff.
Definition add_t2na_meta.cpp:21
Definition v1_program_structure.h:36