P4C
The P4 Compiler
 
Loading...
Searching...
No Matches
EBPF::PSAArchXDP Class Reference
Inheritance diagram for EBPF::PSAArchXDP:

Public Member Functions

 PSAArchXDP (const EbpfOptions &options, std::vector< EBPFType * > &ebpfTypes, EBPFPipeline *xdpIngress, EBPFPipeline *xdpEgress, EBPFPipeline *tcTrafficManager, EBPFPipeline *tcEgress)
 
void emit (CodeBuilder *builder) const override
 
void emitDummyProgram (CodeBuilder *builder) const
 
void emitInitializerSection (CodeBuilder *builder) const override
 
void emitInstances (CodeBuilder *builder) const override
 
void emitPreamble (CodeBuilder *builder) const override
 
void emitXDP2TCInternalStructures (CodeBuilder *builder) const
 
- Public Member Functions inherited from EBPF::PSAEbpfGenerator
 PSAEbpfGenerator (const EbpfOptions &options, std::vector< EBPFType * > &ebpfTypes, EBPFPipeline *ingress, EBPFPipeline *egress)
 
void emitCommonPreamble (CodeBuilder *builder) const override
 
void emitCRC32LookupTableInitializer (CodeBuilder *builder) const
 
void emitCRC32LookupTableInstance (CodeBuilder *builder) const
 
void emitCRC32LookupTableTypes (CodeBuilder *builder) const
 
void emitGlobalHeadersMetadata (CodeBuilder *builder) const override
 
void emitHelperFunctions (CodeBuilder *builder) const
 
void emitInitializer (CodeBuilder *builder) const
 
void emitInternalStructures (CodeBuilder *pBuilder) const override
 
void emitPacketReplicationTables (CodeBuilder *builder) const
 
void emitPipelineInstances (CodeBuilder *builder) const override
 
void emitPreamble (CodeBuilder *builder) const override
 
void emitPSAIncludes (CodeBuilder *builder) const
 
void emitTypes (CodeBuilder *builder) const override
 
- Public Member Functions inherited from EBPF::EbpfCodeGenerator
 EbpfCodeGenerator (const EbpfOptions &options, std::vector< EBPF::EBPFType * > &ebpfTypes)
 

Public Attributes

EBPFPipelinetcEgressForXDP
 
EBPFPipelinetcIngressForXDP
 
- Public Attributes inherited from EBPF::PSAEbpfGenerator
EBPFPipelineegress
 
EBPFPipelineingress
 
- Public Attributes inherited from EBPF::EbpfCodeGenerator
std::vector< EBPF::EBPFType * > ebpfTypes
 
const EbpfOptionsoptions
 

Static Public Attributes

static const unsigned egressDevmapSize = 256
 
- Static Public Attributes inherited from EBPF::PSAEbpfGenerator
static const unsigned MaxClones = 64
 
static const unsigned MaxCloneSessions = 1024
 

Member Function Documentation

◆ emit()

void EBPF::PSAArchXDP::emit ( CodeBuilder * builder) const
overridevirtual

◆ emitInitializerSection()

void EBPF::PSAArchXDP::emitInitializerSection ( CodeBuilder * builder) const
overridevirtual

◆ emitInstances()

void EBPF::PSAArchXDP::emitInstances ( CodeBuilder * builder) const
overridevirtual

◆ emitPreamble()

void EBPF::PSAArchXDP::emitPreamble ( CodeBuilder * builder) const
overridevirtual