LLVM 17.0.0git
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
llvm::BPFCoreSharedInfo Class Reference

#include "Target/BPF/BPFCORE.h"

Public Types

enum  PatchableRelocKind : uint32_t {
  FIELD_BYTE_OFFSET = 0 , FIELD_BYTE_SIZE , FIELD_EXISTENCE , FIELD_SIGNEDNESS ,
  FIELD_LSHIFT_U64 , FIELD_RSHIFT_U64 , BTF_TYPE_ID_LOCAL , BTF_TYPE_ID_REMOTE ,
  TYPE_EXISTENCE , TYPE_SIZE , ENUM_VALUE_EXISTENCE , ENUM_VALUE ,
  TYPE_MATCH , MAX_FIELD_RELOC_KIND
}
 
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 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 20 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 40 of file BPFCORE.h.

◆ PatchableRelocKind

Enumerator
FIELD_BYTE_OFFSET 
FIELD_BYTE_SIZE 
FIELD_EXISTENCE 
FIELD_SIGNEDNESS 
FIELD_LSHIFT_U64 
FIELD_RSHIFT_U64 
BTF_TYPE_ID_LOCAL 
BTF_TYPE_ID_REMOTE 
TYPE_EXISTENCE 
TYPE_SIZE 
ENUM_VALUE_EXISTENCE 
ENUM_VALUE 
TYPE_MATCH 
MAX_FIELD_RELOC_KIND 

Definition at line 22 of file BPFCORE.h.

◆ PreserveEnumValue

Enumerator
PRESERVE_ENUM_VALUE_EXISTENCE 
PRESERVE_ENUM_VALUE 
MAX_PRESERVE_ENUM_VALUE_FLAG 

Definition at line 55 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 47 of file BPFCORE.h.

Member Function Documentation

◆ insertPassThrough()

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

Member Data Documentation

◆ AmaAttr

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

The attribute attached to globals representing a field access.

Definition at line 63 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 68 of file BPFCORE.h.

Referenced by insertPassThrough().

◆ TypeIdAttr

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

The attribute attached to globals representing a type id.

Definition at line 65 of file BPFCORE.h.

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


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