P4C
The P4 Compiler
Loading...
Searching...
No Matches
ResolveNegativeExtract::AdjustShiftOutOfBuffer Struct Reference

#include <resolve_negative_extract.h>

Inheritance diagram for ResolveNegativeExtract::AdjustShiftOutOfBuffer:
[legend]

Public Member Functions

 AdjustShiftOutOfBuffer (const CollectNegativeExtractOutOfBufferStates &cg)
 
profile_t init_apply (const IR::Node *node) override
 
bool preorder (IR::BFN::PacketRVal *rval) override
 
bool preorder (IR::BFN::ParserState *state) override
 
bool preorder (IR::BFN::Transition *transition) override
 

Public Attributes

const CollectNegativeExtractOutOfBufferStatescollectNegative
 
std::map< cstring, std::vector< const IR::BFN::Extract * > > delayed_statements
 
unsigned max_buff_size = 0
 
std::map< cstring, unsigned > state_delay
 
std::map< cstring, cstringstate_pred
 

Detailed Description

Adjustments for out of buffer negative extracts only. Shift amounts are adjusted and extrct statements are delayed until the child states.