P4C
The P4 Compiler
|
Public Member Functions | |
CreateAliasesForVarbitHeaders (const PhvInfo &phv, const ClotInfo &clot_info, PragmaAlias &pragma) | |
Protected Member Functions | |
void | end_apply () override |
Visitor::profile_t | init_apply (const IR::Node *root) override |
bool | preorder (const IR::HeaderOrMetadata *h) override |
Static Protected Member Functions | |
static std::pair< cstring, int > | getHeaderBaseAndSize (cstring name) |
static bool | isVarbitHeaderPattern (cstring name) |
Protected Attributes | |
const ClotInfo & | clot_info |
std::map< gress_t, std::set< cstring > > | desugared_headers |
const PhvInfo & | phv |
PragmaAlias & | pragma |
Identify headers corresponding to varbit fields that were injected during varbit header desugaring. Create aliases for the validity bits for slices of the same header placed in CLOTs.
|
inlineoverrideprotected |
Create aliases for the validity bits for sliced varbit headers that are placed in CLOTS.
|
inlinestaticprotected |
Split the header name into a base and a size
|
inlinestaticprotected |
Check whether the header name matches the varbit header pattern used by DesugarVarbitExtract