|
|
void | addMetadata (gress_t gress, MetadataField src, MetadataField dst) |
| |
|
void | addMetadata (MetadataField src, MetadataField dst) |
| |
|
virtual const IR::P4Program * | create (const IR::P4Program *program)=0 |
| |
|
void | createActions () |
| |
|
virtual void | createControls ()=0 |
| |
|
void | createErrors () |
| | replace with preorder pass
|
| |
|
virtual void | createMain ()=0 |
| |
|
virtual void | createParsers ()=0 |
| |
|
void | createTofinoArch () |
| |
|
void | createTypes () |
| |
|
cstring | getBlockName (cstring name) |
| |
| void | include (cstring filename, IR::Vector< IR::Node > *decls) |
| |
|
bool | isEgress (const IR::P4Control *control) |
| |
|
bool | isEgressDeparser (const IR::P4Control *control) |
| |
|
bool | isEgressParser (const IR::P4Parser *parser) |
| |
|
bool | isIngress (const IR::P4Control *control) |
| |
|
bool | isIngressDeparser (const IR::P4Control *control) |
| |
|
bool | isIngressParser (const IR::P4Parser *parser) |
| |
|
|
ordered_map< const IR::Node *, const IR::Node * > | _map |
| | the translation map.
|
| |
|
std::vector< const IR::Type_Action * > | action_types |
| |
| ordered_map< cstring, cstring > | blockNames |
| |
| ordered_map< cstring, const IR::P4Control * > | controls |
| |
|
IR::IndexedVector< IR::Node > | declarations |
| |
|
std::vector< const IR::Declaration * > | egressDeclarations |
| |
|
std::vector< const IR::Declaration * > | egressDeparserDeclarations |
| |
|
std::vector< const IR::StatOrDecl * > | egressDeparserStatements |
| |
|
std::map< MetadataField, MetadataField > | egressMetadataNameMap |
| |
|
std::vector< const IR::Declaration * > | egressParserDeclarations |
| |
|
ordered_map< cstring, std::vector< const IR::StatOrDecl * > > | egressParserStatements |
| |
|
std::vector< const IR::StatOrDecl * > | egressStatements |
| |
|
ordered_map< cstring, const IR::Type_Enum * > | enums |
| |
|
ordered_set< cstring > | errors |
| | target architecture types
|
| |
|
ordered_map< cstring, const IR::Declaration_Instance * > | global_instances |
| |
|
std::vector< const IR::Declaration * > | ingressDeclarations |
| |
|
std::vector< const IR::Declaration * > | ingressDeparserDeclarations |
| |
|
std::vector< const IR::StatOrDecl * > | ingressDeparserStatements |
| |
| std::map< MetadataField, MetadataField > | ingressMetadataNameMap |
| |
|
std::vector< const IR::Declaration * > | ingressParserDeclarations |
| |
|
ordered_map< cstring, std::vector< const IR::StatOrDecl * > > | ingressParserStatements |
| |
|
std::vector< const IR::StatOrDecl * > | ingressStatements |
| |
|
ordered_map< const IR::Member *, const IR::Member * > | membersToDo |
| |
|
NodeNameMap | nameMap |
| |
|
ordered_map< cstring, const IR::P4Parser * > | parsers |
| |
|
ordered_map< const IR::Member *, gress_t > | pathsThread |
| |
|
ordered_map< const IR::Member *, const IR::Member * > | pathsToDo |
| | maintain the paths to translate and their thread info
|
| |
|
ordered_map< cstring, const IR::Type_SerEnum * > | ser_enums |
| |
|
std::set< MetadataField > | targetMetadataSet |
| |
|
IR::Vector< IR::Node > | targetTypes |
| |
|
const IR::ToplevelBlock * | toplevel |
| | program control block names from P14
|
| |
|
ordered_map< cstring, const IR::Type_Declaration * > | type_declarations |
| |
|
ordered_map< const IR::Member *, const IR::Member * > | typeNamesToDo |
| |
|
std::set< cstring > | unique_names = {"checksum"_cs, "hash"_cs, "random"_cs} |
| | all unique names in the program
|
| |