LLVM 22.0.0git
llvm::BPFCoreSharedInfo Class Reference

#include "Target/BPF/BPFCORE.h"

Public Types

enum  BTFTypeIdFlag : uint32_t { BTF_TYPE_ID_LOCAL_RELOC = 0 , BTF_TYPE_ID_REMOTE_RELOC , MAX_BTF_TYPE_ID_FLAG }
enum  PreserveTypeInfo : uint32_t { PRESERVE_TYPE_INFO_EXISTENCE = 0 , PRESERVE_TYPE_INFO_SIZE , PRESERVE_TYPE_INFO_MATCH , MAX_PRESERVE_TYPE_INFO_FLAG }
enum  PreserveEnumValue : uint32_t { PRESERVE_ENUM_VALUE_EXISTENCE = 0 , PRESERVE_ENUM_VALUE , MAX_PRESERVE_ENUM_VALUE_FLAG }

Static Public Member Functions

static InstructioninsertPassThrough (Module *M, BasicBlock *BB, Instruction *Input, Instruction *Before)
 Insert a bpf passthrough builtin function.
static void removeArrayAccessCall (CallInst *Call)
static void removeStructAccessCall (CallInst *Call)
static void removeUnionAccessCall (CallInst *Call)

Static Public Attributes

static constexpr StringRef AmaAttr = "btf_ama"
 The attribute attached to globals representing a field access.
static constexpr StringRef TypeIdAttr = "btf_type_id"
 The attribute attached to globals representing a type id.
static uint32_t SeqNum
 llvm.bpf.passthrough builtin seq number

Detailed Description

Definition at line 21 of file BPFCORE.h.

Member Enumeration Documentation

◆ BTFTypeIdFlag

Enumerator
BTF_TYPE_ID_LOCAL_RELOC 
BTF_TYPE_ID_REMOTE_RELOC 
MAX_BTF_TYPE_ID_FLAG 

Definition at line 23 of file BPFCORE.h.

◆ PreserveEnumValue

Enumerator
PRESERVE_ENUM_VALUE_EXISTENCE 
PRESERVE_ENUM_VALUE 
MAX_PRESERVE_ENUM_VALUE_FLAG 

Definition at line 38 of file BPFCORE.h.

◆ PreserveTypeInfo

Enumerator
PRESERVE_TYPE_INFO_EXISTENCE 
PRESERVE_TYPE_INFO_SIZE 
PRESERVE_TYPE_INFO_MATCH 
MAX_PRESERVE_TYPE_INFO_FLAG 

Definition at line 30 of file BPFCORE.h.

Member Function Documentation

◆ insertPassThrough()

Instruction * llvm::BPFCoreSharedInfo::insertPassThrough ( Module * M,
BasicBlock * BB,
Instruction * Input,
Instruction * Before )
static

◆ removeArrayAccessCall()

void BPFCoreSharedInfo::removeArrayAccessCall ( CallInst * Call)
static

Definition at line 427 of file BPFAbstractMemberAccess.cpp.

References Call, and replaceWithGEP().

Referenced by removePAICalls().

◆ removeStructAccessCall()

void BPFCoreSharedInfo::removeStructAccessCall ( CallInst * Call)
static

Definition at line 431 of file BPFAbstractMemberAccess.cpp.

References Call, and replaceWithGEP().

Referenced by removePAICalls().

◆ removeUnionAccessCall()

void BPFCoreSharedInfo::removeUnionAccessCall ( CallInst * Call)
static

Definition at line 435 of file BPFAbstractMemberAccess.cpp.

References Call.

Referenced by removePAICalls().

Member Data Documentation

◆ AmaAttr

StringRef llvm::BPFCoreSharedInfo::AmaAttr = "btf_ama"
staticconstexpr

The attribute attached to globals representing a field access.

Definition at line 46 of file BPFCORE.h.

Referenced by llvm::BTFDebug::InstLower().

◆ SeqNum

uint32_t llvm::BPFCoreSharedInfo::SeqNum
static

llvm.bpf.passthrough builtin seq number

Definition at line 51 of file BPFCORE.h.

Referenced by insertPassThrough().

◆ TypeIdAttr

StringRef llvm::BPFCoreSharedInfo::TypeIdAttr = "btf_type_id"
staticconstexpr

The attribute attached to globals representing a type id.

Definition at line 48 of file BPFCORE.h.

Referenced by llvm::BTFDebug::InstLower().


The documentation for this class was generated from the following files: