P4C
The P4 Compiler
Loading...
Searching...
No Matches
tna.h
1
18
24#ifndef BF_P4C_ARCH_TNA_H_
25#define BF_P4C_ARCH_TNA_H_
26
27#include "arch.h"
28#include "ir/ir.h"
29
30namespace P4 {
31class ReferenceMap;
32class TypeMap;
33} // namespace P4
34
35class BFN_Options;
36
37namespace BFN {
38
40const cstring ExternPortMetadataUnpackString = "port_metadata_unpack"_cs;
42const cstring ExternDynamicHashString = "hash"_cs;
43
63struct NormalizeNativeProgram : public PassManager {
64 NormalizeNativeProgram(P4::ReferenceMap *refMap, P4::TypeMap *typeMap, BFN_Options &options);
65};
66
71struct TnaArchTranslation : public PassManager {
72 TnaArchTranslation(P4::ReferenceMap *refMap, P4::TypeMap *typeMap, BFN_Options &options);
73
74 ProgramPipelines threads;
75};
76
77} // namespace BFN
78
79#endif /* BF_P4C_ARCH_TNA_H_ */
Definition arch.h:293
Definition bf-p4c-options.h:28
Class used to encode maps from paths to declarations.
Definition referenceMap.h:66
Definition typeMap.h:41
Definition cstring.h:85
The namespace encapsulating Barefoot/Intel-specific stuff.
Definition add_t2na_meta.cpp:21
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24